systemd/debian
2017-01-18 10:37:26 +01:00
..
extra Redirect try-restart in init-functions hook 2017-01-18 10:16:08 +01:00
patches Revert "core: turn on specifier expansion for more unit file settings" 2017-01-18 09:52:28 +01:00
source No longer necessary with gbp 2014-04-26 10:25:11 +02:00
tests Add policykit-1 test dependency for networkd-test.py 2016-11-20 13:47:47 +01:00
changelog Release version 232-10 to unstable 2017-01-13 05:09:06 +01:00
compat Bump to debhelper 9. 2012-06-29 22:34:45 +02:00
control Drop obsolete Conflicts, Breaks and Replaces 2017-01-18 10:37:26 +01:00
copyright Update debian/copyright 2016-12-19 09:11:40 +01:00
gbp.conf debian/gbp.conf: Enable dch options "full" and "multimaint-merge" 2016-07-14 14:08:55 +02:00
git-cherry-pick git-cherry-pick: always recreate the patch-queue branch 2016-09-03 10:03:42 -03:00
libnss-myhostname.install Move a few files into their correct packages 2015-07-08 18:49:15 +02:00
libnss-myhostname.postinst nss-my*.postinst: configure at the end of the hosts line, not before files. 2015-07-27 15:06:21 +02:00
libnss-myhostname.postrm libnss-*.prerm: Remove possible [key=value] options from NSS modules as well 2016-09-20 13:25:28 +02:00
libnss-mymachines.install Move a few files into their correct packages 2015-07-08 18:49:15 +02:00
libnss-mymachines.postinst nss-my*.postinst: configure at the end of the hosts line, not before files. 2015-07-27 15:06:21 +02:00
libnss-mymachines.postrm libnss-*.prerm: Remove possible [key=value] options from NSS modules as well 2016-09-20 13:25:28 +02:00
libnss-resolve.install Add libnss-resolve package 2015-11-11 11:20:27 +01:00
libnss-resolve.postinst libnss-resolve.postinst: Skip dns fallback if resolve is present 2016-10-02 08:35:38 +02:00
libnss-resolve.postrm libnss-*.prerm: Remove possible [key=value] options from NSS modules as well 2016-09-20 13:25:28 +02:00
libnss-systemd.install Package libnss-systemd 2016-11-30 14:24:24 +01:00
libnss-systemd.postinst Package libnss-systemd 2016-11-30 14:24:24 +01:00
libnss-systemd.postrm Package libnss-systemd 2016-11-30 14:24:24 +01:00
libpam-systemd.install Clean up Debian specific file installation 2015-01-22 09:46:15 +01:00
libpam-systemd.postinst Add pam-auth-update calls to libpam-systemd's postinst and prerm 2010-09-01 21:10:41 +02:00
libpam-systemd.prerm Do proper refcounting of the PAM module package on prerm 2014-04-26 12:38:03 +02:00
libsystemd0.install Install the new combined libsystemd0 library 2014-07-16 23:29:00 +02:00
libsystemd0.symbols New upstream release 232 2016-11-03 21:10:37 +02:00
libsystemd-dev.install Strip leading / for consistencies sake 2016-09-27 21:38:24 +02:00
libudev1-udeb.install Add .install files for the udev packages 2013-07-18 16:54:10 +02:00
libudev1.install Add .install files for the udev packages 2013-07-18 16:54:10 +02:00
libudev1.symbols Add Build-Depends-Package to libudev1.symbols and libsystemd0.symbols 2016-07-08 11:42:31 +02:00
libudev-dev.install Strip leading / for consistencies sake 2016-09-27 21:38:24 +02:00
libudev-dev.maintscript libudev-dev: Transition doc symlink -> dir too 2015-06-29 17:32:06 +02:00
README.Debian debian/README.Debian: Document how to generate a shutdown log 2016-11-21 10:32:49 +01:00
README.source Update build instructions to use "gbp clone" instead of "gbp-clone" 2015-09-09 16:52:17 +02:00
rules Switch to bfd linker on mips* 2017-01-18 09:41:11 +01:00
shlibs.local.in debian/shlibs.local.in: More precisely define version of internal shared lib 2016-09-25 23:08:22 +02:00
systemd-container.install debian/systemd-container.install: Drop *.busname installation 2016-06-13 08:08:59 +03:00
systemd-container.postinst Enable machines.target by default 2016-11-14 16:30:20 -03:00
systemd-container.postrm Enable machines.target by default 2016-11-14 16:30:20 -03:00
systemd-coredump.install Move systemd-coredump socket and service into systemd-coredump binary package 2016-02-27 12:02:30 +01:00
systemd-coredump.postinst debian/systemd-coredump.postinst: Do daemon-reload before starting systemd-coredump 2016-04-25 09:00:29 +02:00
systemd-coredump.prerm systemd-coredump.{prerm,postinst}: Fix order 2016-03-14 17:13:22 +01:00
systemd-journal-remote.install Install new journal-upload.conf man pages in systemd-journal-remote 2016-11-04 00:37:36 +01:00
systemd-journal-remote.postinst Add necessary system groups for systemd-journal-remote 2015-08-30 20:38:56 +02:00
systemd-sysv.install Add systemd-sysv package which ships the symlinks that replaces sysvinit 2010-07-07 22:01:32 +02:00
systemd-sysv.links Update /sbin/init symlink. The systemd binary was moved to $pkglibdir. 2012-03-06 18:07:25 +01:00
systemd-sysv.postinst systemd-sysv.postinst: Adjust syntax for better portability 2015-03-26 08:30:11 +01:00
systemd.bug-control Register interest in the status of dracut and initramfs-tools in reportbug template 2016-10-17 20:44:50 -03: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 systemd: Ship /var/lib 2016-11-20 11:48:15 +01:00
systemd.links Drop sigpwr-container-shutdown.service 2016-07-20 16:31:09 +02:00
systemd.lintian-overrides Quiesce possibly-insecure-handling-of-tmp-files lintian warning 2014-12-28 12:05:28 +01:00
systemd.maintscript Remove obsolete /etc/systemd/bootchart.conf conffile on upgrades 2016-05-23 03:06:24 +02:00
systemd.NEWS systemd.NEWS: Point out that alternatively rcS scripts can be moved to rc[2-5] 2016-08-25 11:08:25 +02:00
systemd.postinst Ubuntu: Move ondemand.service from static to runtime enablement 2016-09-19 22:37:07 +02:00
systemd.postrm Don't fail in postrm during cleanup if directories don't exist 2015-04-29 16:02:05 +02:00
systemd.preinst debian/systemd.preinst: Correctly determine whether a service is enabled 2016-06-21 23:10:41 +02:00
systemd.prerm Update the checks which test if systemd is the active init. 2013-06-20 01:17:00 +02:00
systemd.triggers Trigger a systemctl daemon-reload when init scripts are installed or removed 2015-04-08 10:54:30 +02:00
udev-udeb.dirs Remove obsolete debian/udev*.dirs entries 2013-07-18 20:34:39 +02:00
udev-udeb.install Split out udev rule to name USB network interfaces by MAC address into 73-usb-net-by-mac.rules 2016-05-11 22:48:37 +02:00
udev-udeb.links Create /sbin/udevadm compat symlink for udev-udeb 2013-07-18 16:54:22 +02: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 debian/udev.init: Drop noexec from /dev again 2015-09-15 07:17:17 +02:00
udev.install udev: Drop hotplug.functions 2016-05-13 14:44:31 +02:00
udev.links Drop udev-finish 2015-09-04 08:09:38 +02:00
udev.maintscript Ship fbdev-blacklist.conf in /lib/modprobe.d/ instead of /etc/modprobe.d/ 2016-04-27 00:19:18 +02:00
udev.NEWS debian/udev.NEWS: Reformat old entry 2016-07-14 14:09:59 +02:00
udev.postinst Disable 99-default.link instead of the udev rule for disabling persistent interface names 2016-11-15 08:53:06 +01:00
udev.postrm Remove /var/log/udev on purge 2014-04-26 22:57:48 +02:00
udev.preinst Remove obsolete udev maintainer script checks 2016-02-08 23:21:36 +01:00
udev.prerm Stop testing for unknown arguments in udev maintainer scripts 2015-12-10 15:58:53 +01:00
udev.README.Debian Disable 99-default.link instead of the udev rule for disabling persistent interface names 2016-11-15 08:53:06 +01:00
udev.triggers Switch the hwdb trigger to interest-noawait 2013-07-21 15:33:42 +02:00
udev.udevmonitor.upstart Remove any vestiges of /dev/.udev/ 2015-06-02 01:15:33 +02:00
udev.udevtrigger.upstart Add changes from 175-7.1 NMU (upstart support) 2013-07-18 19:29:15 +02:00
udev.upstart debian/udev.upstart: Fix path to udevd 2013-11-06 15:52:09 +01:00
watch debian/watch: Adjust to new upstream release model of only providing the github tag tarballs 2015-07-08 07:06:30 +02: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

Patch handling
--------------
The official form of modifications to the upstream source are quilt patches in
debian/patches/, like most Debian packages do. You are welcome to use quilt to
add or modify patches, but you might prefer using a git commit based approach.
gbp-pq provides that by synthesizing a "patch-queue/<branch>" local branch
which represents each quilt patch as git commit. You create this with

  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, add a changelog and other
packaging changes, and then debcommit as usual.

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