From 9322bee98823df6abcf989e6c0749711b30de56e Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 6 Nov 2012 13:01:44 +0100 Subject: Use systemd instead of udev, and don't use consolekit --- pkgs/os-specific/linux/upower/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'pkgs/os-specific') diff --git a/pkgs/os-specific/linux/upower/default.nix b/pkgs/os-specific/linux/upower/default.nix index 2f870e5d999..6ae4c22f48a 100644 --- a/pkgs/os-specific/linux/upower/default.nix +++ b/pkgs/os-specific/linux/upower/default.nix @@ -1,6 +1,6 @@ { stdenv, fetchurl, pkgconfig, glib, dbus, dbus_glib, dbus_tools, polkit , intltool, libxslt, docbook_xsl, udev, libusb1, pmutils -, useSystemd ? false, systemd ? null +, useSystemd ? true, systemd }: assert stdenv.isLinux; -- cgit 1.4.1 From 726b1bebbc3f4c50a0e4b6b152f35b3b537fd389 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 13 Dec 2012 11:42:00 +0100 Subject: Remove udev 173 --- pkgs/os-specific/linux/udev/173.nix | 58 -------------- pkgs/os-specific/linux/udev/custom-rules.patch | 91 ---------------------- .../linux/udev/pre-accept4-kernel.patch | 43 ---------- pkgs/top-level/all-packages.nix | 1 - 4 files changed, 193 deletions(-) delete mode 100644 pkgs/os-specific/linux/udev/173.nix delete mode 100644 pkgs/os-specific/linux/udev/custom-rules.patch delete mode 100644 pkgs/os-specific/linux/udev/pre-accept4-kernel.patch (limited to 'pkgs/os-specific') diff --git a/pkgs/os-specific/linux/udev/173.nix b/pkgs/os-specific/linux/udev/173.nix deleted file mode 100644 index 795826cf6bf..00000000000 --- a/pkgs/os-specific/linux/udev/173.nix +++ /dev/null @@ -1,58 +0,0 @@ -{ stdenv, fetchurl, gperf, pkgconfig, glib, acl -, libusb, usbutils, pciutils }: - -assert stdenv ? glibc; - -stdenv.mkDerivation rec { - name = "udev-173"; - - src = fetchurl { - url = "mirror://kernel/linux/utils/kernel/hotplug/${name}.tar.bz2"; - sha256 = "1bxadi4bi11v8ipzj22wknv8hsb0wgdb99bx3w9w33rgl4aq78bh"; - }; - - buildInputs = [ gperf pkgconfig glib acl libusb usbutils ]; - - configureFlags = - '' - --with-pci-ids-path=${pciutils}/share/pci.ids - --enable-udev_acl --enable-edd - --disable-introspection --libexecdir=$(out)/lib/udev - --with-firmware-path=/root/test-firmware:/var/run/current-system/firmware - ''; - - # Workaround for the Linux kernel headers being too old. - NIX_CFLAGS_COMPILE = "-DBTN_TRIGGER_HAPPY=0x2c0"; - - postInstall = - '' - # The path to rule_generator.functions in write_cd_rules and - # write_net_rules is broken. Also, don't store the mutable - # persistant rules in /etc/udev/rules.d but in - # /var/lib/udev/rules.d. - for i in $out/lib/udev/write_cd_rules $out/lib/udev/write_net_rules; do - substituteInPlace $i \ - --replace /lib/udev $out/lib/udev \ - --replace /etc/udev/rules.d /var/lib/udev/rules.d - done - - # Don't set PATH to /bin:/sbin; won't work in NixOS. - sed -e '/PATH=/d' -i $out/lib/udev/rule_generator.functions - - ln -sv $out/lib/ConsoleKit $out/etc/ConsoleKit - - rm -frv $out/share/gtk-doc - ''; - - patches = [ ./custom-rules.patch ] ++ - [(fetchurl { - url = https://bugs.archlinux.org/task/25356?getfile=7281; - sha256 = "01xib1pfdbwacgx8dqxgrf67a0mwkpm4kxy9f9v3df93v0m4pmbm"; - })] ++ - stdenv.lib.optional stdenv.isArm ./pre-accept4-kernel.patch; - - meta = { - homepage = http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev.html; - description = "Udev manages the /dev filesystem"; - }; -} diff --git a/pkgs/os-specific/linux/udev/custom-rules.patch b/pkgs/os-specific/linux/udev/custom-rules.patch deleted file mode 100644 index 647691acfb1..00000000000 --- a/pkgs/os-specific/linux/udev/custom-rules.patch +++ /dev/null @@ -1,91 +0,0 @@ -commit c49ec33ba0f1a7f11b188913bb4895360ced67f8 -Author: Yury G. Kudryashov -Date: Tue Aug 16 16:28:56 2011 +0400 - - Upstream considers presence of rules_dir=... in udev.conf as a very special case. - In particular, they disable /dev/.udev/*. Re-enable it. - -diff --git a/udev/udev-rules.c b/udev/udev-rules.c -index 6bf2726..c1ae1f3 100644 ---- a/udev/udev-rules.c -+++ b/udev/udev-rules.c -@@ -1812,6 +1812,7 @@ struct udev_rules *udev_rules_new(struct udev *udev, int resolve_names) - struct udev_list file_list; - struct udev_list_entry *file_loop; - struct token end_token; -+ char runpathrules[UTIL_PATH_SIZE]; - - rules = calloc(1, sizeof(struct udev_rules)); - if (rules == NULL) -@@ -1854,22 +1855,21 @@ struct udev_rules *udev_rules_new(struct udev *udev, int resolve_names) - rules->trie_nodes_cur = 1; - - if (udev_get_rules_path(udev) == NULL) { -- char filename[UTIL_PATH_SIZE]; - - /* /lib/udev -- default/package rules */ - add_matching_files(udev, &file_list, LIBEXECDIR "/rules.d", ".rules"); - - /* /etc/udev -- system-specific/user/admin rules */ - add_matching_files(udev, &file_list, SYSCONFDIR "/udev/rules.d", ".rules"); -- -- /* /run/udev -- throw-away/temporary rules */ -- util_strscpyl(filename, sizeof(filename), udev_get_run_path(udev), "/rules.d", NULL); -- add_matching_files(udev, &file_list, filename, ".rules"); - } else { - /* custom rules files location for testing */ - add_matching_files(udev, &file_list, udev_get_rules_path(udev), ".rules"); - } - -+ /* /run/udev -- throw-away/temporary rules */ -+ util_strscpyl(runpathrules, sizeof(runpathrules), udev_get_run_path(udev), "/rules.d", NULL); -+ add_matching_files(udev, &file_list, runpathrules, ".rules"); -+ - /* add all filenames to the string buffer */ - udev_list_entry_foreach(file_loop, udev_list_get_entry(&file_list)) { - const char *filename = udev_list_entry_get_value(file_loop); -diff --git a/udev/udevd.c b/udev/udevd.c -index f1a31e7..45d10b6 100644 ---- a/udev/udevd.c -+++ b/udev/udevd.c -@@ -1198,6 +1198,8 @@ int main(int argc, char *argv[]) - struct epoll_event ep_ctrl, ep_inotify, ep_signal, ep_netlink, ep_worker; - struct udev_ctrl_connection *ctrl_conn = NULL; - int rc = 1; -+ char filename[UTIL_PATH_SIZE]; -+ struct stat statbuf; - - udev = udev_new(); - if (udev == NULL) -@@ -1480,23 +1482,21 @@ int main(int argc, char *argv[]) - inotify_add_watch(fd_inotify, udev_get_rules_path(udev), - IN_DELETE | IN_MOVE | IN_CLOSE_WRITE); - } else { -- char filename[UTIL_PATH_SIZE]; -- struct stat statbuf; - - inotify_add_watch(fd_inotify, LIBEXECDIR "/rules.d", - IN_DELETE | IN_MOVE | IN_CLOSE_WRITE); - inotify_add_watch(fd_inotify, SYSCONFDIR "/udev/rules.d", - IN_DELETE | IN_MOVE | IN_CLOSE_WRITE); -+ } - -- /* watch dynamic rules directory */ -- util_strscpyl(filename, sizeof(filename), udev_get_run_path(udev), "/rules.d", NULL); -- if (stat(filename, &statbuf) != 0) { -- util_create_path(udev, filename); -- mkdir(filename, 0755); -- } -- inotify_add_watch(fd_inotify, filename, -- IN_DELETE | IN_MOVE | IN_CLOSE_WRITE); -+ /* watch dynamic rules directory */ -+ util_strscpyl(filename, sizeof(filename), udev_get_run_path(udev), "/rules.d", NULL); -+ if (stat(filename, &statbuf) != 0) { -+ util_create_path(udev, filename); -+ mkdir(filename, 0755); - } -+ inotify_add_watch(fd_inotify, filename, -+ IN_DELETE | IN_MOVE | IN_CLOSE_WRITE); - udev_watch_restore(udev); - - /* block and listen to all signals on signalfd */ diff --git a/pkgs/os-specific/linux/udev/pre-accept4-kernel.patch b/pkgs/os-specific/linux/udev/pre-accept4-kernel.patch deleted file mode 100644 index 2cf549d99a7..00000000000 --- a/pkgs/os-specific/linux/udev/pre-accept4-kernel.patch +++ /dev/null @@ -1,43 +0,0 @@ -From: -https://github.com/archlinuxarm/PKGBUILDs/blob/master/core/udev-oxnas/pre-accept4-kernel.patch - -diff -urN a/udev/udev-ctrl.c b/udev/udev-ctrl.c ---- a/udev/udev-ctrl.c 2011-10-09 17:10:32.000000000 -0600 -+++ b/udev/udev-ctrl.c 2011-10-25 15:11:09.000000000 -0600 -@@ -15,6 +15,7 @@ - #include - #include - #include -+#include - #include - #include - #include -@@ -182,6 +183,7 @@ - struct ucred ucred; - socklen_t slen; - const int on = 1; -+ int flgs; - - conn = calloc(1, sizeof(struct udev_ctrl_connection)); - if (conn == NULL) -@@ -189,13 +191,19 @@ - conn->refcount = 1; - conn->uctrl = uctrl; - -- conn->sock = accept4(uctrl->sock, NULL, NULL, SOCK_CLOEXEC|SOCK_NONBLOCK); -+// conn->sock = accept4(uctrl->sock, NULL, NULL, SOCK_CLOEXEC|SOCK_NONBLOCK); -+ conn->sock = accept(uctrl->sock, NULL, NULL); - if (conn->sock < 0) { - if (errno != EINTR) - err(uctrl->udev, "unable to receive ctrl connection: %m\n"); - goto err; - } - -+// Since we don't have accept4 -+ flgs = fcntl(conn->sock, F_GETFL, NULL); -+ if(flgs >= 0) fcntl(conn->sock, F_SETFL, flgs | O_NONBLOCK); -+ fcntl(conn->sock, F_SETFD, FD_CLOEXEC); -+ - /* check peer credential of connection */ - slen = sizeof(ucred); - if (getsockopt(conn->sock, SOL_SOCKET, SO_PEERCRED, &ucred, &slen) < 0) { diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 9221efcf956..994ac509533 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6269,7 +6269,6 @@ let }); udev145 = callPackage ../os-specific/linux/udev/145.nix { }; - udev173 = callPackage ../os-specific/linux/udev/173.nix { }; udev = pkgs.systemd; udisks = callPackage ../os-specific/linux/udisks { }; -- cgit 1.4.1 From b11e1305b51eff17ef10bf375031be0749f4812a Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 13 Dec 2012 13:14:58 +0100 Subject: udisks: Hack to work with the latest udev We should probably update to udisks2, but I'm not sure if it's compatible at the D-Bus interface level. http://hydra.nixos.org/build/3488623 --- pkgs/os-specific/linux/udisks/default.nix | 7 +------ pkgs/os-specific/linux/udisks/no-pci-db.patch | 13 +++++++++++++ 2 files changed, 14 insertions(+), 6 deletions(-) create mode 100644 pkgs/os-specific/linux/udisks/no-pci-db.patch (limited to 'pkgs/os-specific') diff --git a/pkgs/os-specific/linux/udisks/default.nix b/pkgs/os-specific/linux/udisks/default.nix index 4987e90429c..b46efd46874 100644 --- a/pkgs/os-specific/linux/udisks/default.nix +++ b/pkgs/os-specific/linux/udisks/default.nix @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { sha256 = "1xgqifddwaavmjc8c30i0mdffyirsld7c6qhfyjw7f9khwv8jjw5"; }; - patches = [ ./purity.patch ]; + patches = [ ./purity.patch ./no-pci-db.patch ]; postPatch = '' @@ -30,11 +30,6 @@ stdenv.mkDerivation rec { configureFlags = "--localstatedir=/var --enable-lvm2"; - preConfigure = - '' - # Ensure that udisks can find the necessary programs. - ''; - meta = { homepage = http://www.freedesktop.org/wiki/Software/udisks; description = "A daemon and command-line utility for querying and manipulating storage devices"; diff --git a/pkgs/os-specific/linux/udisks/no-pci-db.patch b/pkgs/os-specific/linux/udisks/no-pci-db.patch new file mode 100644 index 00000000000..b323b515c40 --- /dev/null +++ b/pkgs/os-specific/linux/udisks/no-pci-db.patch @@ -0,0 +1,13 @@ +Systemd no longer has the pci-db program. + +diff -ru -x '*~' udisks-1.0.4-orig/data/80-udisks.rules udisks-1.0.4/data/80-udisks.rules +--- udisks-1.0.4-orig/data/80-udisks.rules 2011-08-25 23:31:20.000000000 +0200 ++++ udisks-1.0.4/data/80-udisks.rules 2012-12-13 13:06:52.189650854 +0100 +@@ -3,7 +3,6 @@ + + # import names for PCI storage controllers + # +-SUBSYSTEM=="pci", ACTION=="add|change", ENV{ID_MODEL_FROM_DATABASE}=="", ATTR{class}=="0x01*", IMPORT{program}="pci-db %p" + + # Set eSATA port type for known eSATA CardBus adapters - first we want to ensure + # the device is on a cardbus controller (upper PCI device) - then we check -- cgit 1.4.1 From bafdf87367798b481fc19eb9e2397ef78c60c267 Mon Sep 17 00:00:00 2001 From: Rickard Nilsson Date: Tue, 1 Jan 2013 17:13:33 +0100 Subject: wpa_supplicant: Update to 1.1 --- pkgs/os-specific/linux/wpa_supplicant/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'pkgs/os-specific') diff --git a/pkgs/os-specific/linux/wpa_supplicant/default.nix b/pkgs/os-specific/linux/wpa_supplicant/default.nix index f947bc9a1e7..3f26e159b43 100644 --- a/pkgs/os-specific/linux/wpa_supplicant/default.nix +++ b/pkgs/os-specific/linux/wpa_supplicant/default.nix @@ -1,13 +1,13 @@ { stdenv, fetchurl, openssl, dbus_libs, pkgconfig, libnl }: stdenv.mkDerivation rec { - version = "1.0"; + version = "1.1"; name = "wpa_supplicant-${version}"; src = fetchurl { url = "http://hostap.epitest.fi/releases/${name}.tar.gz"; - sha256 = "171b9027rbzy64zaal4832ix9i3mm6ypwmynbpia5bss793ivm4i"; + sha256 = "00lyifj8cz7qyal6dy1dxbpk3g3bywvdarik8gbj9ds7zmfbwkd5"; }; preBuild = '' -- cgit 1.4.1 From 9c2bc27eb2ccded853aabd1382fd912df4b5e4ef Mon Sep 17 00:00:00 2001 From: LluĂ­s Batlle i Rossell Date: Sun, 20 Jan 2013 18:51:41 +0100 Subject: Fixing mcelog, so it puts the proper files in share/doc It was running "cp mce.pdf $out/share/doc", which created the file 'doc'. Then buildEnv complained that 'share/doc' exists. --- pkgs/os-specific/linux/mcelog/default.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'pkgs/os-specific') diff --git a/pkgs/os-specific/linux/mcelog/default.nix b/pkgs/os-specific/linux/mcelog/default.nix index 82c502ede72..b60b6134fdd 100644 --- a/pkgs/os-specific/linux/mcelog/default.nix +++ b/pkgs/os-specific/linux/mcelog/default.nix @@ -25,9 +25,13 @@ in stdenv.mkDerivation { makeFlags = "prefix=$(out) etcprefix=$(out) DOCDIR=$(out)/share/doc"; + preInstall = '' + ensureDir $out/share/doc + ''; + meta = { description = "Tool to display logged machine check exceptions"; homepage = http://mcelog.org/; license = stdenv.lib.licenses.gpl2; }; -} \ No newline at end of file +} -- cgit 1.4.1