systemd/debian
2015-09-15 12:03:42 +02:00
..
extra systemd-networkd-dispatcher: Add some missing ifupdown variables, clean environment 2015-09-09 16:13:07 +02:00
patches insserv-generator: Use correct type for variable 'e' 2015-09-09 17:11:55 +02:00
po Add Turkish debconf translations 2014-08-13 12:35:44 +02:00
source No longer necessary with gbp 2014-04-26 10:25:11 +02:00
tests debian/tests/networkd: Check that /etc/resolv.conf gets the DHCP's nameserver 2015-09-09 14:40:00 +02:00
changelog Fix changing virtio network interface names on upgrades 2015-09-15 09:37:25 +02:00
compat Bump to debhelper 9. 2012-06-29 22:34:45 +02:00
control Drop libsystemd-login-dev 2015-09-09 16:49:59 +02:00
copyright Drop installation of readahead related services and code 2014-11-28 10:52:32 +01:00
gbp.conf Switch debian/gbp.conf to experimental branch 2014-11-28 10:52:22 +01: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 Add libnss-myhostname binary package 2015-05-26 21:16:02 +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 Add libnss-mymachines binary package 2015-05-26 21:13:01 +02: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 debian/libsystemd0.symbols: Add new symbols from this release 2015-09-09 07:58:25 +02:00
libsystemd-daemon-dev.install Install the new combined libsystemd0 library 2014-07-16 23:29:00 +02:00
libsystemd-dev.install Install API documentation for libudev and libsystemd in their respective packages 2015-06-23 00:59:22 +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 Update symbols files 2014-09-04 18:50:20 +02:00
libudev-dev.install Install API documentation for libudev and libsystemd in their respective packages 2015-06-23 00:59:22 +02:00
libudev-dev.maintscript libudev-dev: Transition doc symlink -> dir too 2015-06-29 17:32:06 +02:00
README.Debian systemd-networkd-dispatcher: Also pass on the DNS server list to if-up.d/ as $IF_DNS_NAMESERVERS 2015-09-09 15:26:46 +02:00
README.source Update build instructions to use "gbp clone" instead of "gbp-clone" 2015-09-09 16:52:17 +02:00
rules Drop libsystemd-login-dev 2015-09-09 16:49:59 +02:00
shlibs.local Drop the obsolete libsystemd-* libraries 2015-01-26 15:16:25 +01:00
systemd-container.install Move systemd-machined.service into new systemd-container package as well 2015-08-24 14:05:36 +02:00
systemd-container.postinst Move conffile from systemd to systemd-container package 2015-08-28 13:20:22 -03:00
systemd-journal-remote.install Enable GnuTLS support as systemd-journal-remote makes sense mostly with encryption enabled 2015-08-30 21:55:26 +02: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-script systemd.bug-script: Really capture stderr of systemd-delta 2014-12-01 17:01:57 +01:00
systemd.dirs Don't enable persistent storage of journal log files. 2013-01-19 15:40:12 +01:00
systemd.install Simplify debian-fixup.service 2015-09-09 08:30:48 +02:00
systemd.links Add sigpwr-container-shutdown.service: Power off when receiving SIGPWR in a container 2015-05-21 08:11:18 +02:00
systemd.lintian-overrides Quiesce possibly-insecure-handling-of-tmp-files lintian warning 2014-12-28 12:05:28 +01:00
systemd.maintscript Move conffile from systemd to systemd-container package 2015-08-28 13:20:22 -03:00
systemd.NEWS Split out "systemd-container" package with machined and nspawn and enable importd 2015-08-22 16:51:12 +02:00
systemd.postinst Rework networkd ifupdown integration 2015-09-09 10:46:46 +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 systemd.{pre,post}inst: Clean up obsolete upgrade fixes 2015-05-12 09:24:17 +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 Rename 01-mac-for-usb.link to 90-mac-for-usb.link so that it becomes easier to override 2015-09-08 12:36:23 +02:00
udev-udeb.links Create /sbin/udevadm compat symlink for udev-udeb 2013-07-18 16:54:22 +02:00
udev.bug-script Update udev bug-script to attach instead of paste extra info if a new enough reportbug version is available. 2014-06-25 10:54:50 +02:00
udev.init debian/udev.init: Drop noexec from /dev again 2015-09-15 07:17:17 +02:00
udev.install Drop udev-finish 2015-09-04 08:09:38 +02:00
udev.links Drop udev-finish 2015-09-04 08:09:38 +02:00
udev.maintscript Bump version to 226-1 for rm_conffile since 225-2 was never released 2015-09-10 16:31:18 +02:00
udev.NEWS Switch to net.ifnames persistant network interfaces 2015-06-15 20:09:57 +02:00
udev.postinst udev.postinst: Check that 50-virtio-kernel-names.link does not already exist 2015-09-15 12:03:42 +02:00
udev.postrm Remove /var/log/udev on purge 2014-04-26 22:57:48 +02:00
udev.preinst udev: Remove obsolete rm_conffile/mv_conffile functions from udev.preinst 2015-07-21 22:29:08 +02:00
udev.prerm Stop using /sbin/udevd and drop the compat symlink 2015-06-02 01:15:27 +02:00
udev.README.Debian Fix typo: persistant → persistent, thanks lintian 2015-06-18 15:36:21 +02:00
udev.templates Merge remaining files from udev 175-7 2013-07-18 18:57:39 +02: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