mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-23 23:43:30 +00:00
systemd: adding support for systemd-importd
Adding `systemd-importd` to the build, so that `machinectl`s `import-.*` may actually do anything. Currently they fail with ``` Failed to transfer image: The name org.freedesktop.import1 was not provided by any .service files ``` as `systemd-importd` is not built. Also registers the regarding dbus api and service in the systemd module.
This commit is contained in:
parent
d1270ac85b
commit
29ac226225
@ -63,6 +63,7 @@ let
|
||||
"systemd-logind.service"
|
||||
"autovt@.service"
|
||||
"systemd-user-sessions.service"
|
||||
"dbus-org.freedesktop.import1.service"
|
||||
"dbus-org.freedesktop.machine1.service"
|
||||
"user@.service"
|
||||
"user-runtime-dir@.service"
|
||||
@ -145,6 +146,7 @@ let
|
||||
"user.slice"
|
||||
"machine.slice"
|
||||
"machines.target"
|
||||
"systemd-importd.service"
|
||||
"systemd-machined.service"
|
||||
"systemd-nspawn@.service"
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
{ stdenv, lib, fetchFromGitHub, fetchpatch, pkgconfig, intltool, gperf, libcap, kmod
|
||||
, xz, pam, acl, libuuid, m4, utillinux, libffi
|
||||
{ stdenv, lib, fetchFromGitHub, fetchpatch, pkgconfig, intltool, gperf, libcap
|
||||
, curl, kmod, gnupg, gnutar, xz, pam, acl, libuuid, m4, utillinux, libffi
|
||||
, glib, kbd, libxslt, coreutils, libgcrypt, libgpgerror, libidn2, libapparmor
|
||||
, audit, lz4, bzip2, libmicrohttpd, pcre2
|
||||
, linuxHeaders ? stdenv.cc.libc.linuxHeaders
|
||||
@ -15,7 +15,21 @@
|
||||
, withKexectools ? lib.any (lib.meta.platformMatch stdenv.hostPlatform) kexectools.meta.platforms, kexectools
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
let gnupg-minimal = gnupg.override {
|
||||
enableMinimal = true;
|
||||
guiSupport = false;
|
||||
pcsclite = null;
|
||||
sqlite = null;
|
||||
pinentry = null;
|
||||
adns = null;
|
||||
gnutls = null;
|
||||
libusb = null;
|
||||
openldap = null;
|
||||
readline = null;
|
||||
zlib = null;
|
||||
bzip2 = null;
|
||||
};
|
||||
in stdenv.mkDerivation {
|
||||
version = "243";
|
||||
pname = "systemd";
|
||||
|
||||
@ -41,7 +55,7 @@ stdenv.mkDerivation {
|
||||
(buildPackages.python3Packages.python.withPackages ( ps: with ps; [ python3Packages.lxml ]))
|
||||
];
|
||||
buildInputs =
|
||||
[ linuxHeaders libcap kmod xz pam acl
|
||||
[ linuxHeaders libcap curl.dev kmod xz pam acl
|
||||
/* cryptsetup */ libuuid glib libgcrypt libgpgerror libidn2
|
||||
libmicrohttpd pcre2 ] ++
|
||||
stdenv.lib.optional withKexectools kexectools ++
|
||||
@ -67,6 +81,7 @@ stdenv.mkDerivation {
|
||||
"-Ddebug-shell=${bashInteractive}/bin/bash"
|
||||
# while we do not run tests we should also not build them. Removes about 600 targets
|
||||
"-Dtests=false"
|
||||
"-Dimportd=true"
|
||||
"-Dlz4=true"
|
||||
"-Dhostnamed=true"
|
||||
"-Dnetworkd=true"
|
||||
@ -77,7 +92,7 @@ stdenv.mkDerivation {
|
||||
"-Dlocaled=true"
|
||||
"-Dresolve=true"
|
||||
"-Dsplit-usr=false"
|
||||
"-Dlibcurl=false"
|
||||
"-Dlibcurl=true"
|
||||
"-Dlibidn=false"
|
||||
"-Dlibidn2=true"
|
||||
"-Dquotacheck=false"
|
||||
@ -144,6 +159,14 @@ stdenv.mkDerivation {
|
||||
patchShebangs $dir
|
||||
done
|
||||
|
||||
# absolute paths to gpg & tar
|
||||
substituteInPlace src/import/pull-common.c \
|
||||
--replace '"gpg"' '"${gnupg-minimal}/bin/gpg"'
|
||||
for file in src/import/{{export,import,pull}-tar,import-common}.c; do
|
||||
substituteInPlace $file \
|
||||
--replace '"tar"' '"${gnutar}/bin/tar"'
|
||||
done
|
||||
|
||||
substituteInPlace src/journal/catalog.c \
|
||||
--replace /usr/lib/systemd/catalog/ $out/lib/systemd/catalog/
|
||||
'';
|
||||
|
Loading…
Reference in New Issue
Block a user