fwupd/contrib
Mario Limonciello cc8eb5ca8c trivial: Merge python steps from contrib/setup into helper script
This avoids having to hardcode profile targets in multiple places
and also fixes the confusing entry points into scripts both by
arguments and environment variables.

It also makes the setup script a lot more debuggable and scalable.

OS detection is a lot more robust, where it will try to use pip to
set up the distro python package, and if pip is missing try to install
it.

If OS detection fails now, a user can use --os on contrib/setup for
specifying it.
2021-09-17 10:59:35 -05:00
..
ci trivial: Merge python steps from contrib/setup into helper script 2021-09-17 10:59:35 -05:00
debian Convert the device test script to a fwupdmgr subcommand 2021-09-16 15:01:36 +01:00
firmware_packager trivial: don't use built-in types 2021-08-18 07:58:17 -05:00
flatpak@3e60bea4e7 contrib: Adjust flatpak build for moving to flathub 2018-11-01 06:51:23 -05:00
freebsd Add support for devices supporting the Logitech bulk controller protocol 2021-08-29 20:33:16 +01:00
qubes trivial: update markdown for pre-commit style 2021-07-18 14:42:47 -05:00
snap trivial: fix various shellcheck warnings 2021-08-18 07:58:17 -05:00
standalone-installer trivial: update markdown for pre-commit style 2021-07-18 14:42:47 -05:00
vscode trivial: fix various shellcheck warnings 2021-08-18 07:58:17 -05:00
codespell.cfg trivial: add a codespell pre-commit hook 2021-06-16 06:41:46 -05:00
fix_translations.py trivial: Fix Python linting issue spotted by Codacy 2021-07-14 15:20:57 +01:00
fwupd.spec.in Convert the device test script to a fwupdmgr subcommand 2021-09-16 15:01:36 +01:00
generate-version-script.py trivial: update python black style to 21.6b0 2021-06-16 06:41:46 -05:00
meson.build Rename some confusing API 2021-08-06 19:49:53 +01:00
mingw64.cross Allow building on Windows with MinGW 2019-12-03 16:33:43 +00:00
PKGBUILD trivial: Write some initial release notes 2021-07-31 20:46:03 +01:00
prepare-system trivial: symlink in grub configuration too 2021-07-28 10:25:47 -05:00
README.md trivial: update markdown for pre-commit style 2021-07-18 14:42:47 -05:00
reformat-code.py trivial: make contrib/reformat-code.py easier to use 2021-07-30 06:42:57 -05:00
setup trivial: Merge python steps from contrib/setup into helper script 2021-09-17 10:59:35 -05:00
setup-win32.nsi.in Rename some confusing API 2021-08-06 19:49:53 +01:00

Distribution packages

The relevant packaging necessary to generate RPM, DEB and PKG distribution packages is contained here. It is used regularly for continuous integration using Travis CI. The generated packages can be used on a distribution such as Fedora, Debian, Ubuntu or Arch Linux.

The build can be performed using Linux containers with Docker.

RPM packages

A Dockerfile for Fedora can be generated in contrib.

To prepare the Docker container run this command:

OS=fedora ./generate_docker.py build

To build the RPMs run this command (from the root of your git checkout):

docker run --privileged -t -v `pwd`:/github/workspace fwupd-fedora

RPMs will be made available in your working directory when complete.

To build additional RPM packages for Qubes OS (fwupd-qubes-dom0 and fwupd-qubes-vm) add QUBES=true environment variable:

docker run --privileged -e QUBES=true  -t -v `pwd`:/github/workspace fwupd-fedora

DEB packages

A Dockerfile for Debian or Ubuntu can be generated in contrib.

To prepare the Docker container run one of these commands:

OS=debian-x86_64 ./generate_docker.py build
OS=debian-i386 ./generate_docker.py build
OS=ubuntu-x86_64 ./generate_docker.py build

To build the DEBs run one of these commands (from the root of your git checkout):

docker run --privileged -t -v `pwd`:/github/workspace fwupd-debian-x86_64
docker run --privileged -t -v `pwd`:/github/workspace fwupd-debian-i386
docker run --privileged -t -v `pwd`:/github/workspace fwupd-ubuntu-x86_64

DEBs will be made available in your working directory when complete.

To build additional DEB package for Qubes OS (fwupd-qubes-vm-whonix) add QUBES=true environment variable:

docker run --privileged -t -v `pwd`:/github/workspace fwupd-debian-x86_64-qubes

PKG packages

A Dockerfile for Arch can be generated in contrib.

To prepare the Docker container run this command:

OS=arch ./generate_docker.py

To build the PKGs run this command (from the root of your git checkout):

docker run -t -v `pwd`:/build fwupd-arch

PKGs will be made available in your working directory when complete.

Additional packages

Submissions for generating additional packages for other distribution mechanisms are also welcome. All builds should occur in Docker containers.

Please feel free to submit the following:

  • Dockerfile for the container for your distro
  • Relevant technical packaging scripts (such as ebuilds, spec file etc)
  • A shell script that can be launched in the container to generate distribution packages