LVFS – Linux Vendor Firmware Service
fwupd.org
fwupd.org
It's really nice to read the author's blogposts describing how he forces hardware vendors to get their shit together and either use a standardized update mechanism or create a thoroughly tested open source plugin.
I remember the first time I got a Dell laptop and put Ubuntu on it, GNOME Software immediately prompted me to install a firmware update. I was so amazed by this. It really felt like Ubuntu was finally a first-class citizen. I'm still completely sold on Dell because of this experience. Sadly they still don't upload all the firmware for all machines. I have no idea why though..
Hence things like Linux firmware updaters that just download the windows firmware file (which they have rights to) and extracting the firmware blob (which they know exactly where it is) so they can avoid the question if they can distribute the blob directly.
The other thing that is great is the testing and validation groups allows you to setup target groups so you can fully validate your updates internally before staging rollouts.
Also @hughsient is really responsive at fixing issues.
We use fwupd at Framework Computer.
We bought a 10gbit enabled PowerConnect switch only to learn that the “10gbit” part didn’t actually work until they released a new firmware.
I got a Dell laptop from work with Windows on it. Installed Ubuntu and it immediately prompted me to update the firmware. What an amazing experience!
I always recommend Dell to people looking for a Linux laptop. Although I hear Lenovo started to get their shit together too in the last few years.
Not sure this applies also to non Latitude/Thinkpad consumer models though but I tend to never recommend them anyway.
However, I will say that their Linux laptops I've used have been fine executions of their concepts, and the Linux support, including for firmware updates, has been problem-free even though I don't run the stock OS.
They're a good choice for Linux laptops if thin and light ultraportables are your style.
Mandatory: I use arch btw :D
https://fedoraproject.org/wiki/Changes/SystemFirmwareUpdates
> Using as a substitute for PulseAudio/JACK/ALSA
> Debian 11
> As per Simon McVittie, "This is not a supported scenario for Debian 11, and is considered experimental."
(Debian Wiki, PipeWire)
In Fedora, it is default since Fedora 35 (released in 2021/11).
NixOS doesn't curate a default desktop experience like Fedora does, but it's also a great place to enjoy some of this tech early, and in a very risk-free way thanks to declarative configuration and rollbacks. PipeWire has been effortless to set up (and impressively compatible, performance, and unobtrusive in its own right!) on NixOS for some time now.
A rolling release or a cutting edge kind of distro, even with regular releases, can be really nice if you're into exploring this stuff, like you say.
Example is iptables-nft. On every other distribution installing that is enough to make all applications use the nft version. In NixOS, you can easily change the environment path to iptables-nft, but any package that can modify rules won't be updated. And a package that updates rules is systemd. So attempting what is normally a 1 minute change is now recompiling every single package.
There, I suppose GuixSD is a stronger proposition than NixOS at the moment.
It’s like a package-manager for system firmware. For the devices supported, it feels infinitely better than downloading random files from the various vendor-sites on the internet and running setup wizards and all kinds of bloated inconsistent nonsense.
I’d argue fwupdmgr actually represents something objectively done better on Linux than Windows, and my only complaint overall is that not enough vendors are supporting it.
Does anyone know why this is running 24/7? I don't expect my firmware to be changing minute to minute. I need to get OpenSnitch running to keep an eye on these things, heard it was making it into Debian and hopefully derivatives soon.
It's really not. The fwupd process doesn't have any internet access at all -- all communication is done through a socket over DBus. All the telemetry is done with the user explicitly opting in -- we even show the JSON in the terminal that is going to be sent.
> Does anyone know why this is running 24/7
We auto-quit on idle or for low memory conditions -- unless you have hardware that's expensive (either in terms of power, or time) like thunderbolt and synaptics MST. The resident RSS is tiny as we mmap all the data files which can be paged out by the kernel -- we can even run fwupd on the tiny BMC processor as well. I'd be interested in what OpenSnitch says, but the D-Bus interface is the only way in and out. Interesting, the daemon doesn't actually do any policy actions itself; all actions have to be initiated by the front end -- which includes downloading new firmware metadata.
The other main reasons is that some hardware is really, really slow (like 8 seconds to query a dock PD version, or 12 seconds to query a thunderbolt retimer version) and you can't really build a GUI that can do firmware update operations with potentially minutes of delay for each action. Also, cache invalidation is hard if you can't see the device uevents and usb hotplug events.
(Thought I'd seen a GUI for firmware but can't find it at the moment.)
I think what yesterday's SSD discussion revealed is that an open database of "leaked" SMART data would be of immense value to users and should have happened years ago. It sucks that privacy derangement vetoes the development of things of real value.
I can imagine your future assault robbery trial. "But your honor, stealing his wallet was good for him! Couldn't get into the bar that night and gave his liver a well-needed break." :-D
Are you using this to refer to the attitude of companies that want to collect as much data as possible whether or not they have a clear and good use for it, or the attitude of users who are no longer willing to trust large-scale data collection efforts?
Big Tech does not want your stupid private data. It is in all objective respects toxic waste. But they do want to know if your CPU is overheating, or your SSD is failing early, or if your programs run slowly. Telemetry is good and valuable.
This is so obviously contradicted by the actual behavior of Google and most other tech companies, big and small. From the inside, you may see a clear distinction between telemetry and the truly creepy amount of personal data collection happening in other parts of the company. But you should have no trouble understanding how end users are less able to draw that distinction, especially when they are not offered the choice to only opt-in to some of the data collection and "personalization".
So, do you really think that a user being suspicious of large-scale data collection means they're deranged?
Still waiting for that to arrive in next Debian…
I’m sure it’s useful to Dell users, but not much to anyone with DIY setups.
This is the second comment I've noticed "waiting for it to hit Debian" and I don't understand.
hbarta@olive:~$ apt-cache policy fwupd
fwupd:
Installed: 1.5.7-4
Candidate: 1.5.7-4
Version table:
\*\* 1.5.7-4 500
500 http://deb.debian.org/debian bullseye/main amd64
Packages
100 /var/lib/dpkg/status
hbarta@olive:~$
It's even on Raspberry Pi OS and I wonder if it serves any purpose there. Pi firmware is updated via APT unless I misunderstand what I see getting updated (raspi-firmware). Would fwupd handle updates for USB connected devices such as SSDs?I’m waiting for fixes to Software center, so that there are no visible side effects after masking fwupd. I do know this was addressed in or before Fedora 37, but is an issue in current Debian stable.
The only time I saw fwupd itself working is when it attempted to update uefi firmware in my VM :)
Unfortunately it doesn't seem like Samsung is uploading that much firmware. "Is uploading firmware on behalf of other vendors" according to the site.
With most things I just complain a bit and then go on with my life, but this actually feels like it could work. Samsung does already release some sort of broken Linux livecd for fw updates, seems like LVFS would be easier for everyone.
https://wiki.debian.org/Firmware/Updates https://help.ubuntu.com/community/BIOSUpdate https://wiki.gentoo.org/wiki/BIOS_Update https://en.opensuse.org/SDB:How_update_your_bios https://wiki.archlinux.org/index.php/Flashing_BIOS_from_Linu...
> This site is used by all major Linux distributions to provide metadata for clients such as fwupdmgr and GNOME Software.
Based upon that statement and the fact fwupdmgr does not come with Slackware, maybe major equates to GNOME Based ?
But with some extra work, looks like this could be useful for non-GNOME distros.
Slackware is niche, sorry.
And yes, fwupdmgr works fine on Arch too.
Also I feel that openSUSE qualifies as a major distro despite not appearing on that list!
Is there an alternative organization that gathers firmware that ends up on Slackware? If so, then sure there is an argument to be made that companies need to pay attention to both and one shouldn't be claiming to be fully authoritative. But if not, then progress would be Slack getting firmware updates from here, if the distro is interested in such things.
Also Slackware does have fwupd, at least in its "SlackBuilds" system where a lot of optional packages end up AFAICT.
What does that mean? We've got a very comprehensive privacy policy... https://lvfs.readthedocs.io/en/latest/privacy.html
Edit: again, why is this any part of a firmware updater?
Edit2: this doesn't even get into unsigned kernels, out of tree modules, and unencrypted swaps (or at least not encrypted in the special way fwupd wants them to be)