From 2122adcdd13e5e6ab4e307421a177560b88354a3 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 29 Nov 2012 18:50:07 +0100 Subject: 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. --- pkgs/os-specific/linux/systemd/default.nix | 22 +++++++++++++++------- .../linux/systemd/listunitfiles-abort.patch | 20 -------------------- 2 files changed, 15 insertions(+), 27 deletions(-) delete mode 100644 pkgs/os-specific/linux/systemd/listunitfiles-abort.patch (limited to 'pkgs/os-specific/linux/systemd') diff --git a/pkgs/os-specific/linux/systemd/default.nix b/pkgs/os-specific/linux/systemd/default.nix index bab8dfa4a89b..a207213d12d5 100644 --- a/pkgs/os-specific/linux/systemd/default.nix +++ b/pkgs/os-specific/linux/systemd/default.nix @@ -1,28 +1,27 @@ { 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 }: assert stdenv.gcc.libc or null != null; stdenv.mkDerivation rec { - name = "systemd-195"; + name = "systemd-196"; src = fetchurl { url = "http://www.freedesktop.org/software/systemd/${name}.tar.xz"; - sha256 = "00v3haymdxhjk71pqp17irw9pm5ivfvz35ibvw41v5zdhj5il179"; + sha256 = "1gz4an5havzwzp7xsinn01prwvf51hgipb8pbciri0fxlmcadm3b"; }; patches = [ ./reexec.patch ./ignore-duplicates.patch ./crypt-devices-are-ready.patch - ./listunitfiles-abort.patch ]; buildInputs = [ pkgconfig intltool gperf libcap dbus kmod xz pam acl - /* cryptsetup */ libuuid m4 usbutils pciutils glib libxslt libgcrypt + /* cryptsetup */ libuuid m4 glib libxslt libgcrypt ]; configureFlags = @@ -36,7 +35,6 @@ stdenv.mkDerivation rec { "--with-dbussystemservicedir=$(out)/share/dbus-1/system-services" "--with-dbussessionservicedir=$(out)/share/dbus-1/services" "--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 ]; @@ -52,6 +50,9 @@ stdenv.mkDerivation rec { --replace /sbin/swapoff ${utillinux}/sbin/swapoff \ --replace /sbin/fsck ${utillinux}/sbin/fsck done + + substituteInPlace src/journal/catalog.c \ + --replace /usr/lib/systemd/catalog/ $out/lib/systemd/catalog/ ''; NIX_CFLAGS_COMPILE = @@ -66,7 +67,12 @@ stdenv.mkDerivation rec { "-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"; @@ -88,6 +94,8 @@ stdenv.mkDerivation rec { for i in $out/share/dbus-1/system-services/*.service; do substituteInPlace $i --replace /bin/false ${coreutils}/bin/false done + + rm -rf $out/etc/rpm ''; # */ enableParallelBuilding = true; diff --git a/pkgs/os-specific/linux/systemd/listunitfiles-abort.patch b/pkgs/os-specific/linux/systemd/listunitfiles-abort.patch deleted file mode 100644 index 4bbb0a9b1bea..000000000000 --- a/pkgs/os-specific/linux/systemd/listunitfiles-abort.patch +++ /dev/null @@ -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); - } - -- cgit 1.4.1