forked from mirrors/nixpkgs
e373b423c7
This has only been used by Dysnomia, which has been removed from Nixpkgs in https://github.com/NixOS/nixpkgs/pull/110799 after being broken for more than a year. If Dysnomia comes back, it can probably just use /nix/var/nix/profiles/default/lib/systemd/system, or set its own systemd flavour looking in that location via the `systemd.package`.
115 lines
5.9 KiB
Diff
115 lines
5.9 KiB
Diff
From 95e4533f1eeb6e0d509f9129d0133f0b849cc3c5 Mon Sep 17 00:00:00 2001
|
|
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
|
|
Date: Fri, 19 Dec 2014 14:46:17 +0100
|
|
Subject: [PATCH 05/18] Add some NixOS-specific unit directories
|
|
|
|
Look in `/nix/var/nix/profiles/default/lib/systemd/{system,user}` for
|
|
units provided by packages installed into the default profile via
|
|
`nix-env -iA nixos.$package`.
|
|
|
|
Also, remove /usr and /lib as these don't exist on NixOS.
|
|
---
|
|
src/basic/path-lookup.c | 17 ++---------------
|
|
src/core/systemd.pc.in | 5 +++--
|
|
2 files changed, 5 insertions(+), 17 deletions(-)
|
|
|
|
diff --git a/src/basic/path-lookup.c b/src/basic/path-lookup.c
|
|
index 96b82170d0..bf66bd6b77 100644
|
|
--- a/src/basic/path-lookup.c
|
|
+++ b/src/basic/path-lookup.c
|
|
@@ -94,11 +94,7 @@ int xdg_user_data_dir(char **ret, const char *suffix) {
|
|
}
|
|
|
|
static const char* const user_data_unit_paths[] = {
|
|
- "/usr/local/lib/systemd/user",
|
|
- "/usr/local/share/systemd/user",
|
|
USER_DATA_UNIT_DIR,
|
|
- "/usr/lib/systemd/user",
|
|
- "/usr/share/systemd/user",
|
|
NULL
|
|
};
|
|
|
|
@@ -616,15 +612,13 @@ int lookup_paths_init(
|
|
persistent_config,
|
|
SYSTEM_CONFIG_UNIT_DIR,
|
|
"/etc/systemd/system",
|
|
+ "/nix/var/nix/profiles/default/lib/systemd/system",
|
|
STRV_IFNOTNULL(persistent_attached),
|
|
runtime_config,
|
|
"/run/systemd/system",
|
|
STRV_IFNOTNULL(runtime_attached),
|
|
STRV_IFNOTNULL(generator),
|
|
- "/usr/local/lib/systemd/system",
|
|
SYSTEM_DATA_UNIT_PATH,
|
|
- "/usr/lib/systemd/system",
|
|
- STRV_IFNOTNULL(flags & LOOKUP_PATHS_SPLIT_USR ? "/lib/systemd/system" : NULL),
|
|
STRV_IFNOTNULL(generator_late));
|
|
break;
|
|
|
|
@@ -640,14 +634,11 @@ int lookup_paths_init(
|
|
persistent_config,
|
|
USER_CONFIG_UNIT_DIR,
|
|
"/etc/systemd/user",
|
|
+ "/nix/var/nix/profiles/default/lib/systemd/user",
|
|
runtime_config,
|
|
"/run/systemd/user",
|
|
STRV_IFNOTNULL(generator),
|
|
- "/usr/local/share/systemd/user",
|
|
- "/usr/share/systemd/user",
|
|
- "/usr/local/lib/systemd/user",
|
|
USER_DATA_UNIT_DIR,
|
|
- "/usr/lib/systemd/user",
|
|
STRV_IFNOTNULL(generator_late));
|
|
break;
|
|
|
|
@@ -797,7 +788,6 @@ char **generator_binary_paths(UnitFileScope scope) {
|
|
case UNIT_FILE_SYSTEM:
|
|
add = strv_new("/run/systemd/system-generators",
|
|
"/etc/systemd/system-generators",
|
|
- "/usr/local/lib/systemd/system-generators",
|
|
SYSTEM_GENERATOR_DIR);
|
|
break;
|
|
|
|
@@ -805,7 +795,6 @@ char **generator_binary_paths(UnitFileScope scope) {
|
|
case UNIT_FILE_USER:
|
|
add = strv_new("/run/systemd/user-generators",
|
|
"/etc/systemd/user-generators",
|
|
- "/usr/local/lib/systemd/user-generators",
|
|
USER_GENERATOR_DIR);
|
|
break;
|
|
|
|
@@ -844,12 +833,10 @@ char **env_generator_binary_paths(bool is_system) {
|
|
if (is_system)
|
|
add = strv_new("/run/systemd/system-environment-generators",
|
|
"/etc/systemd/system-environment-generators",
|
|
- "/usr/local/lib/systemd/system-environment-generators",
|
|
SYSTEM_ENV_GENERATOR_DIR);
|
|
else
|
|
add = strv_new("/run/systemd/user-environment-generators",
|
|
"/etc/systemd/user-environment-generators",
|
|
- "/usr/local/lib/systemd/user-environment-generators",
|
|
USER_ENV_GENERATOR_DIR);
|
|
|
|
if (!add)
|
|
diff --git a/src/core/systemd.pc.in b/src/core/systemd.pc.in
|
|
index f2c045511d..d38a3a0302 100644
|
|
--- a/src/core/systemd.pc.in
|
|
+++ b/src/core/systemd.pc.in
|
|
@@ -38,10 +38,11 @@ systemdsystemconfdir=${systemd_system_conf_dir}
|
|
systemd_user_conf_dir=${sysconfdir}/systemd/user
|
|
systemduserconfdir=${systemd_user_conf_dir}
|
|
|
|
-systemd_system_unit_path=${systemd_system_conf_dir}:/etc/systemd/system:/run/systemd/system:/usr/local/lib/systemd/system:${systemd_system_unit_dir}:/usr/lib/systemd/system:/lib/systemd/system
|
|
+systemd_system_unit_path=${systemd_system_conf_dir}:/etc/systemd/system:/nix/var/nix/profiles/default/lib/systemd/system:/run/systemd/system:${systemdsystemunitdir}
|
|
systemdsystemunitpath=${systemd_system_unit_path}
|
|
|
|
-systemd_user_unit_path=${systemd_user_conf_dir}:/etc/systemd/user:/run/systemd/user:/usr/local/lib/systemd/user:/usr/local/share/systemd/user:${systemd_user_unit_dir}:/usr/lib/systemd/user:/usr/share/systemd/user
|
|
+systemd_user_unit_path=${systemd_user_conf_dir}:/etc/systemd/user:/nix/var/nix/profiles/default/lib/systemd/user:/run/systemd/user:${systemduserunitdir}
|
|
+
|
|
systemduserunitpath=${systemd_user_unit_path}
|
|
|
|
systemd_system_generator_dir=${root_prefix}/lib/systemd/system-generators
|
|
--
|
|
2.29.2
|
|
|