systemd/debian
2022-08-22 12:38:02 +01:00
..
extra homed: make PAM rules higher priority than unix users 2022-07-17 19:22:12 +01:00
patches Rebase patches 2022-08-13 16:56:51 +02:00
source Lintian: ignore source-contains-data-from-ieee-data-oui-db 2022-01-17 13:50:17 +00:00
tests Split systemd-resolved into its own package which takes over /etc/resolv.conf 2022-08-04 16:14:05 +01:00
upstream Set upstream metadata fields: Bug-Submit, Bug-Database, Repository, Repository-Browse 2021-01-18 17:36:20 +01:00
changelog Release version 251.4-1 to unstable 2022-08-14 20:08:11 +02:00
control use systemd-sysusers instead of adduser 2022-08-19 15:55:49 +02:00
copyright d/copyright: remove unused GPL-2 stanza 2022-01-17 13:50:17 +00:00
gbp.conf Upload to unstable 2022-06-10 09:16:45 +02:00
git-cherry-pick Delete empty lines at end of file 2020-05-16 11:25:10 +03:00
gitlab-ci.yml salsa-ci: disable piuparts 2022-06-08 20:04:17 +02:00
libnss-myhostname.install Add nodoc profile support 2022-06-22 12:40:56 +00:00
libnss-myhostname.lintian-overrides Lintian: ignore spare-manual-page 2022-01-17 14:59:32 +00:00
libnss-myhostname.manpages Add nodoc profile support 2022-06-22 12:40:56 +00:00
libnss-myhostname.nss d/libnss-myhostname.nss: Install NSS service myhostname via dh_installnss 2022-07-26 21:49:13 +02:00
libnss-mymachines.install Add nodoc profile support 2022-06-22 12:40:56 +00:00
libnss-mymachines.lintian-overrides Lintian: ignore spare-manual-page 2022-01-17 14:59:32 +00:00
libnss-mymachines.manpages Add nodoc profile support 2022-06-22 12:40:56 +00:00
libnss-mymachines.nss d/libnss-mymaschines.nss: Install NSS service mymaschines via dh_installnss 2022-07-26 21:49:13 +02:00
libnss-resolve.install Add nodoc profile support 2022-06-22 12:40:56 +00:00
libnss-resolve.lintian-overrides Split systemd-resolved into its own package which takes over /etc/resolv.conf 2022-08-04 16:14:05 +01:00
libnss-resolve.manpages Add nodoc profile support 2022-06-22 12:40:56 +00:00
libnss-resolve.nss d/libnss-resolve.nss: Install NSS service resolve via dh_installnss 2022-07-27 10:25:13 +02:00
libnss-systemd.install Add nodoc profile support 2022-06-22 12:40:56 +00:00
libnss-systemd.lintian-overrides Lintian: ignore spare-manual-page 2022-01-17 14:59:32 +00:00
libnss-systemd.manpages Add nodoc profile support 2022-06-22 12:40:56 +00:00
libnss-systemd.nss d/libnss-systemd.nss: Install NSS service systemd via dh_installnss 2022-07-27 10:27:47 +02:00
libpam-systemd.install Add nodoc profile support 2022-06-22 12:40:56 +00:00
libpam-systemd.lintian-overrides Lintian: ignore spare-manual-page 2022-01-17 14:59:32 +00:00
libpam-systemd.manpages Add nodoc profile support 2022-06-22 12:40:56 +00:00
libpam-systemd.postinst Use more consistent shell script headers 2020-01-31 10:46:58 +01:00
libpam-systemd.prerm Use more consistent shell script headers 2020-01-31 10:46:58 +01:00
libsystemd0.install Move libraries and NSS modules from /lib to /usr/lib 2021-01-02 17:05:34 +01:00
libsystemd0.symbols Update symbols file for libsystemd0 2022-05-05 22:29:05 +02:00
libsystemd-dev.install Add nodoc profile support 2022-06-22 12:40:56 +00:00
libsystemd-dev.manpages Add nodoc profile support 2022-06-22 12:40:56 +00:00
libsystemd-shared.install Split out libsystemd-shared into its own package 2022-06-08 20:04:13 +02:00
libsystemd-shared.lintian-overrides Split out libsystemd-shared into its own package 2022-06-08 20:04:13 +02:00
libudev1-udeb.install Move libraries and NSS modules from /lib to /usr/lib 2021-01-02 17:05:34 +01:00
libudev1.install Move libraries and NSS modules from /lib to /usr/lib 2021-01-02 17:05:34 +01:00
libudev1.symbols Update symbol versions for the v247 release 2020-11-26 19:16:01 +01:00
libudev-dev.install Add nodoc profile support 2022-06-22 12:40:56 +00:00
libudev-dev.manpages Add nodoc profile support 2022-06-22 12:40:56 +00:00
README.Debian README.Debian: document KillUserProcesses behavior in Debian 2019-08-31 12:38:02 +02:00
README.source debian/README.source: Update patch and changelog handling to current reality 2017-02-13 22:04:22 +01:00
rules Split systemd-resolved into its own package which takes over /etc/resolv.conf 2022-08-04 16:14:05 +01:00
shlibs.local.in Split out libsystemd-shared into its own package 2022-06-08 20:04:13 +02:00
systemd-boot-efi.install Add nodoc profile support 2022-06-22 12:40:56 +00:00
systemd-boot-efi.lintian-overrides Remove unused Lintian overrides 2022-06-21 21:13:34 +02:00
systemd-boot-efi.manpages Add nodoc profile support 2022-06-22 12:40:56 +00:00
systemd-boot.install sd-boot: add initramfs hook 2022-06-24 16:41:30 +02:00
systemd-boot.lintian-overrides Add systemd-boot-efi multiarch package 2022-06-08 22:40:52 +02:00
systemd-boot.manpages Add nodoc profile support 2022-06-22 12:40:56 +00:00
systemd-container.install Add nodoc profile support 2022-06-22 12:40:56 +00:00
systemd-container.lintian-overrides Lintian: ignore maintainer-script-calls-systemctl in more packages 2022-01-17 14:59:32 +00:00
systemd-container.manpages Add nodoc profile support 2022-06-22 12:40:56 +00:00
systemd-container.postinst Drop pre-stretch migration code 2019-05-08 01:33:37 +02:00
systemd-container.postrm Enable machines.target by default 2016-11-14 16:30:20 -03:00
systemd-coredump.install Add nodoc profile support 2022-06-22 12:40:56 +00:00
systemd-coredump.lintian-overrides Lintian: ignore maintainer-script-calls-systemctl in more packages 2022-01-17 14:59:32 +00:00
systemd-coredump.manpages Add nodoc profile support 2022-06-22 12:40:56 +00:00
systemd-coredump.postinst Use same GECOS field description as upstream for systemd-coredump 2020-03-18 23:15:43 +01:00
systemd-coredump.prerm Use more consistent shell script headers 2020-01-31 10:46:58 +01:00
systemd-homed.install Add nodoc profile support 2022-06-22 12:40:56 +00:00
systemd-homed.lintian-overrides Add systemd-homed package 2022-06-04 00:18:41 +02:00
systemd-homed.manpages Add nodoc profile support 2022-06-22 12:40:56 +00:00
systemd-homed.postinst Add systemd-homed package 2022-06-04 00:18:41 +02:00
systemd-homed.prerm Add systemd-homed package 2022-06-04 00:18:41 +02:00
systemd-journal-remote.install Add nodoc profile support 2022-06-22 12:40:56 +00:00
systemd-journal-remote.lintian-overrides Lintian: ignore package-contains-documentation-outside-usr-share-doc 2022-01-17 14:59:32 +00:00
systemd-journal-remote.manpages Add nodoc profile support 2022-06-22 12:40:56 +00:00
systemd-journal-remote.postinst Use DynamicUser= for systemd-journal-upload.service 2017-11-15 09:08:49 +01:00
systemd-oomd.install Add nodoc profile support 2022-06-22 12:40:56 +00:00
systemd-oomd.lintian-overrides Lintian: ignore maintainer-script-calls-systemctl in more packages 2022-01-17 14:59:32 +00:00
systemd-oomd.manpages Add nodoc profile support 2022-06-22 12:40:56 +00:00
systemd-oomd.postinst Start systemd-oomd.service after package installation 2022-01-06 09:20:49 +01:00
systemd-resolved.install Split systemd-resolved into its own package which takes over /etc/resolv.conf 2022-08-04 16:14:05 +01:00
systemd-resolved.links Split systemd-resolved into its own package which takes over /etc/resolv.conf 2022-08-04 16:14:05 +01:00
systemd-resolved.lintian-overrides Split systemd-resolved into its own package which takes over /etc/resolv.conf 2022-08-04 16:14:05 +01:00
systemd-resolved.manpages Split systemd-resolved into its own package which takes over /etc/resolv.conf 2022-08-04 16:14:05 +01:00
systemd-resolved.postinst resolved: use DPKG_ROOT and make postinst shellcheck-happy 2022-08-22 12:38:02 +01:00
systemd-standalone-sysusers.manpages Add nodoc profile support 2022-06-22 12:40:56 +00:00
systemd-standalone-tmpfiles.manpages Add nodoc profile support 2022-06-22 12:40:56 +00:00
systemd-sysv.install Add nodoc profile support 2022-06-22 12:40:56 +00:00
systemd-sysv.manpages Add nodoc profile support 2022-06-22 12:40:56 +00:00
systemd-sysv.postinst Use more consistent shell script headers 2020-01-31 10:46:58 +01:00
systemd-tests.install Split upstream tests into systemd-tests binary package 2017-04-08 11:40:37 +02:00
systemd-tests.lintian-overrides Update lintian-overrides for false positives 2022-05-15 15:32:15 +01:00
systemd-timesyncd.install Add nodoc profile support 2022-06-22 12:40:56 +00:00
systemd-timesyncd.lintian-overrides Lintian: ignore package-supports-alternative-init-but-no-init.d-script 2022-01-17 14:59:32 +00:00
systemd-timesyncd.manpages Add nodoc profile support 2022-06-22 12:40:56 +00:00
systemd-timesyncd.postinst Small fixups for the previous commit 2020-04-04 08:58:22 +02:00
systemd-timesyncd.postrm Ship systemd-timesyncd in a separate package 2020-04-02 16:36:09 +02:00
systemd-userdbd.install Add nodoc profile support 2022-06-22 12:40:56 +00:00
systemd-userdbd.lintian-overrides Remove unused Lintian overrides 2022-06-21 21:13:34 +02:00
systemd-userdbd.manpages Add nodoc profile support 2022-06-22 12:40:56 +00:00
systemd.bug-control Report status of dbus-user-session in systemd reportbug template 2022-01-25 20:21:09 +01:00
systemd.bug-script Drop fallback for older reportbug versions when attaching files 2016-12-21 20:20:45 +01:00
systemd.dirs Don't enable persistent storage of journal log files. 2013-01-19 15:40:12 +01:00
systemd.install Split systemd-resolved into its own package which takes over /etc/resolv.conf 2022-08-04 16:14:05 +01:00
systemd.links Drop alias for rc.local and urandom as well 2019-11-09 17:06:38 +01:00
systemd.lintian-overrides Split out systemd-boot into its own package 2022-06-08 21:47:51 +02:00
systemd.maintscript systemd-resolved: move conffile from systemd 2022-08-06 00:28:16 +01:00
systemd.manpages Add nodoc profile support 2022-06-22 12:40:56 +00:00
systemd.NEWS Note in systemd.NEWS that resolved has moved to a new package 2022-08-05 20:27:46 +01:00
systemd.postinst debian/systemd.postinst: add --root argument to systemctl and systemd-* calls for DPKG_ROOT support 2022-08-21 06:09:25 +02:00
systemd.postrm Fix systemd-pstore.service enablement symlink on upgrades 2020-04-13 13:57:49 +02:00
systemd.preinst Ship systemd-timesyncd in a separate package 2020-04-02 16:36:09 +02:00
systemd.prerm Use more consistent shell script headers 2020-01-31 10:46:58 +01:00
systemd.triggers Add dpkg file trigger for systemd-binfmt to update binfmt registrations 2022-06-03 18:58:38 +02:00
udev-udeb.dirs Remove obsolete debian/udev*.dirs entries 2013-07-18 20:34:39 +02:00
udev-udeb.install udev-udeb: ship modprobe.d snippet to force scsi_mod.scan=sync in d-i 2022-02-17 21:53:21 +01:00
udev.bug-control Include the state of the udev package when filing a bug against systemd, and vice versa 2015-10-29 01:25:03 +01:00
udev.bug-script Drop fallback for older reportbug versions when attaching files 2016-12-21 20:20:45 +01:00
udev.init Delete empty lines at end of file 2020-05-16 11:25:10 +03:00
udev.install Add nodoc profile support 2022-06-22 12:40:56 +00:00
udev.links Drop /sbin/udevadm compat symlink 2019-05-08 01:33:37 +02:00
udev.lintian-overrides Lintian: ignore spellcheck false positives 2022-01-17 14:59:32 +00:00
udev.manpages Add nodoc profile support 2022-06-22 12:40:56 +00:00
udev.postinst Remove obsolete upgrade code from maintainer scripts 2021-07-30 22:10:06 +02:00
udev.postrm Use more consistent shell script headers 2020-01-31 10:46:58 +01:00
udev.prerm Delete empty lines at end of file 2020-05-16 11:25:10 +03:00
udev.README.Debian Update documentation regarding network interface naming 2020-02-01 04:47:09 +01:00
udev.triggers Switch the hwdb trigger to interest-noawait 2013-07-21 15:33:42 +02:00
watch d/watch: bump to version 4 2022-01-17 13:50:17 +00:00

Building from source
--------------------
Install “git-buildpackage” and run the following steps:

  gbp clone git+ssh://git.debian.org/git/pkg-systemd/systemd.git
  cd systemd
  gbp buildpackage

We recommend you use pbuilder to make sure you build in a clean environment:

  gbp buildpackage --git-pbuilder

Changelog
---------
The systemd package uses gbp dch for automatically generating
debian/changelog entries from the corresponding git commits. This makes
cherry-picking, merging, and rebasing much simpler.

Thus, for any packaging change *don't* modify debian/changelog, just write a
meaningful git commit log with proper bug references (such as "Closes: #12345"
on the last line). For doing a release, run

  gbp dch --auto

then beautify the generated debian/changelog, then run the usual "dch -r" and
"debcommit -ar --sign-tags".

Patch handling
--------------
The systemd package uses gbp pq for maintaining patches with a git-like
workflow in a "patch-queue/<branch>" local branch and then exporting them as
quilt series.  For working on patches you run

  gbp pq import --force

Then you are in the patch-queue branch and can git log, commit, cherry-pick
upstream commits, rebase, etc. there. After you are done, run

  gbp pq export

which will put you back into master and update debian/patches/ (including
series). You need to git add etc. new patches, possibly other
packaging changes, and then git commit as usual.

systemd uses gbp pq's "topic" branches for organizing patches; for simplicity
(as this is the most common operation), upstream cherry-picks go into the
"empty" topic (i. e. directly into debian/patches/), while Debian specific
patches go into "Gbp-Pq: Topic debian" (i. e. debian/patches/debian/).

Rebasing patches to a new upstream version
------------------------------------------
gbp pq's "rebase" command does not work very conveniently as it fails on merge
conflicts. First, ensure you are in the master branch:

  git checkout master  # in case you aren't already

Now, do one of

 (1) To import a new upstream release into the existing master branch for unstable,
do:

  gbp pq import --force
  gbp pq switch   # switch back to master from patch-queue/master
  gbp import-orig [...]
  gbp pq switch   # switch to patch-queue/master
  git rebase master

 (2) To import a new upstream release into a new branch for Debian experimental, do:

  git branch experimental
  git checkout experimental
  editor debian/gbp.conf  # set "debian-branch=experimental"
  gbp import-orig [...]
  git branch patch-queue/experimental patch-queue/master
  git checkout patch-queue/experimental
  git rebase experimental

Now resolve all the conflicts, skip obsolete patches, etc. When you are done, run

  gbp pq export

Note that our debian/gbp.conf disables patch numbers.

Cherry-picking upstream patches
-------------------------------
You can add the systemd upstream branch as an additional remote to the Debian
packaging branch. Call it "github" or similar to avoid confusing it with the
already existing "upstream" branch from git-buildpackage:

  git remote add github https://github.com/systemd/systemd.git
  git fetch github -n

Now you can look at the upstream log and cherry-pick patches into the
patch-queue branch:

  gbp pq import --force
  git log github/master
  git cherry-pick 123DEADBEEF

debian/git-cherry-pick is a nice tool to automate all that:

  debian/git-cherry-pick 123DEADBEEF 987654 AFFE99
  git checkout master  # switch back from patch-queue branch