From 09dd6a64fcfcdd86eb103c162087bb5c45b54c41 Mon Sep 17 00:00:00 2001 From: Jaka Hudoklin Date: Sat, 12 Oct 2013 19:31:44 +0200 Subject: [PATCH 1/3] systemd: add optional python support --- pkgs/os-specific/linux/systemd/default.nix | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/systemd/default.nix b/pkgs/os-specific/linux/systemd/default.nix index 2c2ed582083..d7af0a6d36b 100644 --- a/pkgs/os-specific/linux/systemd/default.nix +++ b/pkgs/os-specific/linux/systemd/default.nix @@ -1,11 +1,13 @@ { stdenv, fetchurl, pkgconfig, intltool, gperf, libcap, dbus, kmod , xz, pam, acl, cryptsetup, libuuid, m4, utillinux , glib, kbd, libxslt, coreutils, libgcrypt, sysvtools, docbook_xsl -, kexectools +, kexectools, python ? null, pythonSupport ? false }: assert stdenv.isLinux; +assert pythonSupport -> python != null; + stdenv.mkDerivation rec { version = "203"; name = "systemd-${version}"; @@ -25,7 +27,7 @@ stdenv.mkDerivation rec { buildInputs = [ pkgconfig intltool gperf libcap dbus.libs kmod xz pam acl /* cryptsetup */ libuuid m4 glib libxslt libgcrypt docbook_xsl - ]; + ] ++ stdenv.lib.optional pythonSupport python; configureFlags = [ "--localstatedir=/var" From ae9c22df3f0e51ac89480b80676bcd49bd4ba2c1 Mon Sep 17 00:00:00 2001 From: Jaka Hudoklin Date: Fri, 13 Dec 2013 17:58:11 +0100 Subject: [PATCH 2/3] systemd: enable journal http gateway by adding libmicrohttp --- pkgs/os-specific/linux/systemd/default.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/os-specific/linux/systemd/default.nix b/pkgs/os-specific/linux/systemd/default.nix index d7af0a6d36b..caa69a9e3a8 100644 --- a/pkgs/os-specific/linux/systemd/default.nix +++ b/pkgs/os-specific/linux/systemd/default.nix @@ -1,7 +1,8 @@ { stdenv, fetchurl, pkgconfig, intltool, gperf, libcap, dbus, kmod , xz, pam, acl, cryptsetup, libuuid, m4, utillinux , glib, kbd, libxslt, coreutils, libgcrypt, sysvtools, docbook_xsl -, kexectools, python ? null, pythonSupport ? false +, kexectools, libmicrohttpd +, python ? null, pythonSupport ? false }: assert stdenv.isLinux; @@ -27,6 +28,7 @@ stdenv.mkDerivation rec { buildInputs = [ pkgconfig intltool gperf libcap dbus.libs kmod xz pam acl /* cryptsetup */ libuuid m4 glib libxslt libgcrypt docbook_xsl + libmicrohttpd ] ++ stdenv.lib.optional pythonSupport python; configureFlags = From 616b4b5b0ef8ac9bcb2ce7b577040f0b209e34b6 Mon Sep 17 00:00:00 2001 From: Jaka Hudoklin Date: Sat, 1 Feb 2014 14:50:20 +0100 Subject: [PATCH 3/3] nixos/systemd: add journal http gateway support --- nixos/modules/misc/ids.nix | 2 ++ nixos/modules/system/boot/systemd.nix | 19 +++++++++++++++++++ 2 files changed, 21 insertions(+) diff --git a/nixos/modules/misc/ids.nix b/nixos/modules/misc/ids.nix index 16eec904321..0a585139521 100644 --- a/nixos/modules/misc/ids.nix +++ b/nixos/modules/misc/ids.nix @@ -110,6 +110,7 @@ openldap = 99; memcached = 100; cgminer = 101; + systemd-journal-gateway = 102; # When adding a uid, make sure it doesn't match an existing gid. @@ -199,6 +200,7 @@ haproxy = 92; openldap = 93; connman = 94; + systemd-journal-gateway = 95; # When adding a gid, make sure it doesn't match an existing uid. diff --git a/nixos/modules/system/boot/systemd.nix b/nixos/modules/system/boot/systemd.nix index b575deb24b7..aaa49695540 100644 --- a/nixos/modules/system/boot/systemd.nix +++ b/nixos/modules/system/boot/systemd.nix @@ -132,6 +132,11 @@ let ++ optionals cfg.enableEmergencyMode [ "emergency.target" "emergency.service" + ] + + ++ optionals config.services.journald.enableHttpGateway [ + "systemd-journal-gatewayd.socket" + "systemd-journal-gatewayd.service" ]; upstreamWants = @@ -372,6 +377,10 @@ let ln -s ../local-fs.target ../remote-fs.target ../network.target ../nss-lookup.target \ ../nss-user-lookup.target ../swap.target $out/multi-user.target.wants/ + + ${ optionalString config.services.journald.enableHttpGateway '' + ln -s ../systemd-journal-gatewayd.service $out/multi-user-target.wants/ + ''} ''; # */ in @@ -567,6 +576,14 @@ in ''; }; + services.journald.enableHttpGateway = mkOption { + default = false; + type = types.bool; + description = '' + Enable journal http gateway + ''; + }; + services.logind.extraConfig = mkOption { default = ""; type = types.lines; @@ -673,6 +690,8 @@ in }; users.extraGroups.systemd-journal.gid = config.ids.gids.systemd-journal; + users.extraUsers.systemd-journal-gateway.uid = config.ids.uids.systemd-journal-gateway; + users.extraGroups.systemd-journal-gateway.gid = config.ids.gids.systemd-journal-gateway; # Generate timer units for all services that have a ‘startAt’ value. systemd.timers =