Getting the source

The source for linux-firmware in Ubuntu is available via git.

  • git clone git://

The master branch tracks the master branch of the upstream linux-firmware git repository. There are also branches for each Ubuntu release.


The upstream linux-firmware maintainers do not do formal releases, so there is no upstream version number to use when packaging for Ubuntu. The Ubuntu version numbers for linux-firmware are of the format 1.x[.y], e.g. 1.127.10 or 1.138. For the development release the y component is omitted, and the x component is incremented for each new release. The first stable release in a series will have the y component added and set to 1, and the y component is incremented for each subsequent stable release.

Each new release should be accompanied by a signed tag in git, e.g.

  • git tag -sa -m "Ubuntu-1.139" Ubuntu-1.139

Updating against upstream

Updating linux-firmware against upstream is done by rebasing the Ubuntu patches on top of the upstream master branch. E.g.

  • git remote add upstream git://
    git fetch upstream
    git checkout <branch>
    git rebase -i upstream/master

Then sanity check the patches that git says will be rebased and resolve any conflicts that arise during the rebase.

When testing after a rebase, be sure to test installation along with linux-firmware-nonfree. Firmware files may have been added upstream which are already present in linux-firmware-nonfree, which may lead to conflicts.

Kernel/Dev/LinuxFirmwareMaintenance (last edited 2014-12-12 15:10:44 by sforshee)