Linux Firmware Daily

PPA description

This PPA provides a linux-firmware package with everything contained in the upstream source, the kernel linux-firmware git repo, updated, when the packages are automatically rebuilt in this PPA.

I have tested ubuntu 20.04 focal. As shown below, the files are identical to installing the upstream version manually. 20.10 groovy should work.
I am not updating 21.04 hirsuite because of this bug: https://bugs.launchpad.net/launchpad/+bug/1908006

The updated files are those listed in the WHENCE file. It does not update the files listed in the WHENCE.ubuntu file, which have other upstream sources. It may in the future.

It starts with the existing ubuntu linux-firmware package, copies the upstream kernel linux-firmware repo into the build directory as upstream/, and adds this line in the Makefile:
        cd upstream && ../copy-firmware.sh $(DESTDIR)$(FIRMWAREDIR)

Also, in the debian/control file, it adds Conflicts/Provides/Replaces for the package amd64-microcode. Because the contents of that package are included in this upstream kernel repo, but ubuntu splits them out into a separate package for licensing.

Put another way, these are all the modified lines in the source package:

diff --git a/Makefile b/Makefile
+ cd upstream && ../copy-firmware.sh $(DESTDIR)$(FIRMWAREDIR)
diff --git a/debian/control b/debian/control
+Provides: atmel-firmware, amd64-microcode
+Conflicts: atmel-firmware, amd64-microcode
+Replaces: atmel-firmware, linux-restricted-common, linux-firmware-snapdragon (<= 1.2-0ubuntu1), amd64-microcode

To sanity check the contents of this package against manually updating from the kernel repo:

# Verify /lib/firmware only contains files from linux-firmware and amd64-microcode before deleting it to cleanly reinstall them:
dpkg -S /lib/firmware

apt update && apt dist-upgrade
mkdir ~/linux-firmware.tmp
git clone git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git ~/linux-firmware.tmp/linux-firmware
cd /lib
mv firmware firmware.bak
apt reinstall linux-firmware amd64-microcode # get rid of cruft
cd ~/linux-firmware.tmp/linux-firmware
# Because installing directly to /lib/firmware won't overwrite old symlinks:
./copy-firmware.sh -v ~/linux-firmware.tmp/installed
cp -a ~/linux-firmware.tmp/installed/* /lib/firmware/
cd /lib
mv firmware firmware.goal
add-apt-repository ppa:darxus/linux-firmware-daily
apt update && apt dist-upgrade
# this should not output anything, unless upstream has updated in the last day:
diff -r firmware.goal firmware

Differences between the contents of this PPA, and manually copying over the files from the repo: https://www.reddit.com/r/linuxhardware/comments/jxz06r/ppa_to_automatically_upgrade_everything_in_the/gczlt00/

The other PPA, that only updates the amdgpu directory in the linux-firmware package: https://launchpad.net/~darxus/+archive/ubuntu/linux-firmware-amdgpu-daily

Reddit post about this PPA: https://www.reddit.com/r/linuxhardware/comments/jxz06r/ppa_to_automatically_upgrade_everything_in_the/

I'm not happy with how ppa-purge handles removing this PPA: https://bugs.launchpad.net/ubuntu/+source/ppa-purge/+bug/1905092
You should note the packages that a purge uninstalls, and consider reinstalling them. For me, this has been: linux-generic-hwe-20.04 linux-image-generic linux-image-generic-hwe-20.04

As of 2020-12-23 I have three weeks of uptime with this package. I'm switching back to the amdgpu only PPA because more people are using it, might as well test that one more.

Adding this PPA to your system

You can update your system with unsupported packages from this untrusted PPA by adding ppa:darxus/linux-firmware-daily to your system's Software Sources. (Read about installing)

sudo add-apt-repository ppa:darxus/linux-firmware-daily
sudo apt update
        
Technical details about this PPA

This PPA can be added to your system manually by copying the lines below and adding them to your system's software sources.

Display sources.list entries for:
deb https://ppa.launchpadcontent.net/darxus/linux-firmware-daily/ubuntu YOUR_UBUNTU_VERSION_HERE main 
deb-src https://ppa.launchpadcontent.net/darxus/linux-firmware-daily/ubuntu YOUR_UBUNTU_VERSION_HERE main 
Signing key:
1024R/AB0D56DBC0E682D29CD59549DCC9EDB29626882B (What is this?)
Fingerprint:
AB0D56DBC0E682D29CD59549DCC9EDB29626882B

For questions and bugs with software in this PPA please contact Darxus.

PPA statistics

Activity
0 updates added during the past month.
View package details

Overview of published packages

13 of 3 results
Package Version Uploaded by
linux-firmware 1.192+20201130~ubuntu21.04.1 Darxus ()
linux-firmware 1.190.6+20210719~ubuntu20.10.1 Darxus ()
linux-firmware 1.187.21+20211203~ubuntu20.04.1 (Newer version available) Darxus ()
13 of 3 results

Latest updates

  • linux-firmware 125 weeks ago
    Successfully built
  • linux-firmware 144 weeks ago
    Successfully built
  • linux-firmware 177 weeks ago
    Successfully built