mirror of
https://git.proxmox.com/git/systemd
synced 2025-12-26 19:30:07 +00:00
| .. | ||
| extra | ||
| patches | ||
| po | ||
| source | ||
| tests | ||
| changelog | ||
| compat | ||
| control | ||
| copyright | ||
| gbp.conf | ||
| libnss-myhostname.install | ||
| libnss-myhostname.postinst | ||
| libnss-myhostname.postrm | ||
| libnss-mymachines.install | ||
| libnss-mymachines.postinst | ||
| libnss-mymachines.postrm | ||
| libpam-systemd.install | ||
| libpam-systemd.postinst | ||
| libpam-systemd.prerm | ||
| libsystemd0.install | ||
| libsystemd0.symbols | ||
| libsystemd-daemon-dev.install | ||
| libsystemd-dev.install | ||
| libudev1-udeb.install | ||
| libudev1.install | ||
| libudev1.symbols | ||
| libudev-dev.install | ||
| libudev-dev.maintscript | ||
| README.Debian | ||
| README.source | ||
| rules | ||
| shlibs.local | ||
| systemd-container.install | ||
| systemd-container.postinst | ||
| systemd-journal-remote.install | ||
| systemd-journal-remote.postinst | ||
| systemd-sysv.install | ||
| systemd-sysv.links | ||
| systemd-sysv.postinst | ||
| systemd.bug-script | ||
| systemd.dirs | ||
| systemd.install | ||
| systemd.links | ||
| systemd.lintian-overrides | ||
| systemd.maintscript | ||
| systemd.NEWS | ||
| systemd.postinst | ||
| systemd.postrm | ||
| systemd.preinst | ||
| systemd.prerm | ||
| systemd.triggers | ||
| udev-udeb.dirs | ||
| udev-udeb.install | ||
| udev-udeb.links | ||
| udev.bug-script | ||
| udev.init | ||
| udev.install | ||
| udev.links | ||
| udev.maintscript | ||
| udev.NEWS | ||
| udev.postinst | ||
| udev.postrm | ||
| udev.preinst | ||
| udev.prerm | ||
| udev.README.Debian | ||
| udev.templates | ||
| udev.triggers | ||
| udev.udevmonitor.upstart | ||
| udev.udevtrigger.upstart | ||
| udev.upstart | ||
| watch | ||
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