systemd/debian
Martin Pitt 2e27dcc8f6 debian/README.source: Upstream repository moved to github
Adjust cherry-picking instructions accordingly.
2015-06-03 08:24:00 +02:00
..
extra Add debian/extra/rules/80-debian-compat.rules 2015-06-02 07:50:20 +02:00
patches Add debian/extra/rules/80-debian-compat.rules 2015-06-02 07:50:20 +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 ifupdown-hotplug autopkgtest: Fix systemctl status call 2015-06-01 12:57:21 +02:00
changelog debian/README.source: Upstream repository moved to github 2015-06-03 08:24:00 +02:00
compat Bump to debhelper 9. 2012-06-29 22:34:45 +02:00
control Make sure we have the proper sulogin implementation from util-linux 2015-06-01 19:27:56 +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 Add libnss-myhostname binary package 2015-05-26 21:16:02 +02:00
libnss-myhostname.postinst Add libnss-myhostname binary package 2015-05-26 21:16:02 +02:00
libnss-myhostname.postrm Add libnss-myhostname binary package 2015-05-26 21:16:02 +02:00
libnss-mymachines.install Add libnss-mymachines binary package 2015-05-26 21:13:01 +02:00
libnss-mymachines.postinst Add libnss-mymachines binary package 2015-05-26 21:13:01 +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 libsystemd0.symbols: Add new symbols from this release 2015-05-25 19:50:56 +02:00
libsystemd-daemon-dev.install Install the new combined libsystemd0 library 2014-07-16 23:29:00 +02:00
libsystemd-dev.install Install the new combined libsystemd0 library 2014-07-16 23:29:00 +02:00
libsystemd-id128-dev.install Install the new combined libsystemd0 library 2014-07-16 23:29:00 +02:00
libsystemd-journal-dev.install Install the new combined libsystemd0 library 2014-07-16 23:29:00 +02:00
libsystemd-login-dev.install Install the new combined libsystemd0 library 2014-07-16 23:29:00 +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 Add .install files for the udev packages 2013-07-18 16:54:10 +02:00
python3-systemd.install Build python3-systemd for Python 3 bindings. 2014-08-04 08:32:22 +02:00
README.Debian debian/README.Debian: Drop setfacl call for /var/log/journal 2015-02-18 07:21:19 +01:00
README.source debian/README.source: Upstream repository moved to github 2015-06-03 08:24:00 +02:00
rules Ignore test failures on mipsel 2015-06-01 07:17:45 +02:00
shlibs.local Drop the obsolete libsystemd-* libraries 2015-01-26 15:16:25 +01: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 Remove our update-rc.d patches, replace them with upstream patches 2015-05-29 08:45:03 +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 Rename conffiles for logind and journald 2013-07-17 20:24:08 +02:00
systemd.postinst systemd.{pre,post}inst: Clean up obsolete upgrade fixes 2015-05-12 09:24:17 +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 Clean up Debian specific file installation 2015-01-22 09:46:15 +01: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 Remove any vestiges of /dev/.udev/ 2015-06-02 01:15:33 +02:00
udev.install Drop debian/extra/60-keyboard.hwdb for now 2015-05-25 19:50:56 +02:00
udev.links Stop using /sbin/udevd and drop the compat symlink 2015-06-02 01:15:27 +02:00
udev.maintscript Kill /etc/udev/links.conf, create_static_nodes, and associated code. 2014-04-26 20:25:56 +02:00
udev.postinst Drop udev migration code from pre-wheezy 2015-06-02 01:17:13 +02:00
udev.postrm Remove /var/log/udev on purge 2014-04-26 22:57:48 +02:00
udev.preinst Drop udev migration code from pre-wheezy 2015-06-02 01:17:13 +02:00
udev.prerm Stop using /sbin/udevd and drop the compat symlink 2015-06-02 01:15:27 +02:00
udev.README.Debian debian/udev.README.Debian: Trim the parts which are obsolete, wrong, or described in manpages 2015-01-30 15:56:44 +01: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.udev-fallback-graphics.upstart udev-fallback-graphics upstart job: Guard the modprobe with || true 2014-12-14 13:52:36 +01:00
udev.udev-finish.init Source lsb init-functions in udev-finish SysV init script 2014-08-26 13:57:37 +02:00
udev.udev-finish.upstart Remove any vestiges of /dev/.udev/ 2015-06-02 01:15:33 +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 Add watch file to track new upstream releases. 2012-10-24 02:29:36 +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