systemd: Update to 196
Main change is that systemd now has its own PCI/USB IDs database, so it no longer depends on pciutils/usbutils.
This commit is contained in:
parent
bce3c6db7e
commit
2122adcdd1
@ -1,28 +1,27 @@
|
|||||||
{ stdenv, fetchurl, pkgconfig, intltool, gperf, libcap, dbus, kmod
|
{ stdenv, fetchurl, pkgconfig, intltool, gperf, libcap, dbus, kmod
|
||||||
, xz, pam, acl, cryptsetup, libuuid, m4, utillinux, usbutils, pciutils
|
, xz, pam, acl, cryptsetup, libuuid, m4, utillinux
|
||||||
, glib, kbd, libxslt, coreutils, libgcrypt
|
, glib, kbd, libxslt, coreutils, libgcrypt
|
||||||
}:
|
}:
|
||||||
|
|
||||||
assert stdenv.gcc.libc or null != null;
|
assert stdenv.gcc.libc or null != null;
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "systemd-195";
|
name = "systemd-196";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://www.freedesktop.org/software/systemd/${name}.tar.xz";
|
url = "http://www.freedesktop.org/software/systemd/${name}.tar.xz";
|
||||||
sha256 = "00v3haymdxhjk71pqp17irw9pm5ivfvz35ibvw41v5zdhj5il179";
|
sha256 = "1gz4an5havzwzp7xsinn01prwvf51hgipb8pbciri0fxlmcadm3b";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches =
|
patches =
|
||||||
[ ./reexec.patch
|
[ ./reexec.patch
|
||||||
./ignore-duplicates.patch
|
./ignore-duplicates.patch
|
||||||
./crypt-devices-are-ready.patch
|
./crypt-devices-are-ready.patch
|
||||||
./listunitfiles-abort.patch
|
|
||||||
];
|
];
|
||||||
|
|
||||||
buildInputs =
|
buildInputs =
|
||||||
[ pkgconfig intltool gperf libcap dbus kmod xz pam acl
|
[ pkgconfig intltool gperf libcap dbus kmod xz pam acl
|
||||||
/* cryptsetup */ libuuid m4 usbutils pciutils glib libxslt libgcrypt
|
/* cryptsetup */ libuuid m4 glib libxslt libgcrypt
|
||||||
];
|
];
|
||||||
|
|
||||||
configureFlags =
|
configureFlags =
|
||||||
@ -36,7 +35,6 @@ stdenv.mkDerivation rec {
|
|||||||
"--with-dbussystemservicedir=$(out)/share/dbus-1/system-services"
|
"--with-dbussystemservicedir=$(out)/share/dbus-1/system-services"
|
||||||
"--with-dbussessionservicedir=$(out)/share/dbus-1/services"
|
"--with-dbussessionservicedir=$(out)/share/dbus-1/services"
|
||||||
"--with-firmware-path=/root/test-firmware:/var/run/current-system/firmware"
|
"--with-firmware-path=/root/test-firmware:/var/run/current-system/firmware"
|
||||||
"--with-pci-ids-path=${pciutils}/share/pci.ids"
|
|
||||||
"--with-tty-gid=3" # tty in NixOS has gid 3
|
"--with-tty-gid=3" # tty in NixOS has gid 3
|
||||||
];
|
];
|
||||||
|
|
||||||
@ -52,6 +50,9 @@ stdenv.mkDerivation rec {
|
|||||||
--replace /sbin/swapoff ${utillinux}/sbin/swapoff \
|
--replace /sbin/swapoff ${utillinux}/sbin/swapoff \
|
||||||
--replace /sbin/fsck ${utillinux}/sbin/fsck
|
--replace /sbin/fsck ${utillinux}/sbin/fsck
|
||||||
done
|
done
|
||||||
|
|
||||||
|
substituteInPlace src/journal/catalog.c \
|
||||||
|
--replace /usr/lib/systemd/catalog/ $out/lib/systemd/catalog/
|
||||||
'';
|
'';
|
||||||
|
|
||||||
NIX_CFLAGS_COMPILE =
|
NIX_CFLAGS_COMPILE =
|
||||||
@ -66,7 +67,12 @@ stdenv.mkDerivation rec {
|
|||||||
"-DFS_NOCOW_FL=0x00800000"
|
"-DFS_NOCOW_FL=0x00800000"
|
||||||
];
|
];
|
||||||
|
|
||||||
makeFlags = "CPPFLAGS=-I${stdenv.gcc.libc}/include";
|
# Use /var/lib/udev rather than /etc/udev for the generated hardware
|
||||||
|
# database. Upstream doesn't want this (see commit
|
||||||
|
# 1e1954f53386cb773e2a152748dd31c4d36aa2d8) because using /var is
|
||||||
|
# forbidden in early boot, but in NixOS the initrd guarantees that
|
||||||
|
# /var is mounted.
|
||||||
|
makeFlags = "CPPFLAGS=-I${stdenv.gcc.libc}/include hwdb_bin=/var/lib/udev/hwdb.bin";
|
||||||
|
|
||||||
installFlags = "localstatedir=$(TMPDIR)/var sysconfdir=$(out)/etc sysvinitdir=$(TMPDIR)/etc/init.d";
|
installFlags = "localstatedir=$(TMPDIR)/var sysconfdir=$(out)/etc sysvinitdir=$(TMPDIR)/etc/init.d";
|
||||||
|
|
||||||
@ -88,6 +94,8 @@ stdenv.mkDerivation rec {
|
|||||||
for i in $out/share/dbus-1/system-services/*.service; do
|
for i in $out/share/dbus-1/system-services/*.service; do
|
||||||
substituteInPlace $i --replace /bin/false ${coreutils}/bin/false
|
substituteInPlace $i --replace /bin/false ${coreutils}/bin/false
|
||||||
done
|
done
|
||||||
|
|
||||||
|
rm -rf $out/etc/rpm
|
||||||
''; # */
|
''; # */
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
@ -1,20 +0,0 @@
|
|||||||
diff --git a/src/core/dbus-manager.c b/src/core/dbus-manager.c
|
|
||||||
index ed9784b..6d045cc 100644
|
|
||||||
--- a/src/core/dbus-manager.c
|
|
||||||
+++ b/src/core/dbus-manager.c
|
|
||||||
@@ -491,7 +491,6 @@ static DBusMessage *message_from_file_changes(
|
|
||||||
return reply;
|
|
||||||
|
|
||||||
oom:
|
|
||||||
- dbus_message_unref(reply);
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -1432,7 +1431,6 @@ static DBusHandlerResult bus_manager_message_handler(DBusConnection *connection,
|
|
||||||
r = unit_file_get_list(m->running_as == SYSTEMD_SYSTEM ? UNIT_FILE_SYSTEM : UNIT_FILE_USER, NULL, h);
|
|
||||||
if (r < 0) {
|
|
||||||
unit_file_list_free(h);
|
|
||||||
- dbus_message_unref(reply);
|
|
||||||
return bus_send_error_reply(connection, message, NULL, r);
|
|
||||||
}
|
|
||||||
|
|
Loading…
x
Reference in New Issue
Block a user