7787fd2413
This is disabled by default to indicate that is hasn't been adiquately tested with NixOS yet.
326 lines
14 KiB
Diff
326 lines
14 KiB
Diff
From 7dbe84b7c43669dccd90db8ac33c38a70e6b6914 Mon Sep 17 00:00:00 2001
|
|
From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= <joerg@thalheim.io>
|
|
Date: Mon, 26 Feb 2018 14:25:57 +0000
|
|
Subject: [PATCH 12/18] Install default configuration into $out/share/factory
|
|
|
|
By default systemd should read all its configuration from /etc. Therefor
|
|
we rely on -Dsysconfdir=/etc in meson as default value. Unfortunately
|
|
this would also lead to installation of systemd's own configuration
|
|
files to `/etc` whereas we are limited to /nix/store. To counter that
|
|
this commit introduces two new configuration variables `factoryconfdir`
|
|
and `factorypkgconfdir` to install systemd's own configuration into nix
|
|
store again, while having executables looking up files in /etc.
|
|
---
|
|
hwdb.d/meson.build | 2 +-
|
|
meson.build | 11 +++++++----
|
|
network/meson.build | 2 +-
|
|
src/core/meson.build | 10 +++++-----
|
|
src/coredump/meson.build | 2 +-
|
|
src/home/meson.build | 2 +-
|
|
src/journal-remote/meson.build | 4 ++--
|
|
src/journal/meson.build | 2 +-
|
|
src/kernel-install/meson.build | 2 +-
|
|
src/login/meson.build | 2 +-
|
|
src/network/meson.build | 2 +-
|
|
src/pstore/meson.build | 2 +-
|
|
src/resolve/meson.build | 2 +-
|
|
src/timesync/meson.build | 2 +-
|
|
src/udev/meson.build | 4 ++--
|
|
sysctl.d/meson.build | 2 +-
|
|
tmpfiles.d/meson.build | 2 +-
|
|
units/meson.build | 2 +-
|
|
18 files changed, 30 insertions(+), 27 deletions(-)
|
|
|
|
diff --git a/hwdb.d/meson.build b/hwdb.d/meson.build
|
|
index 5c77387a26..6404bc01ba 100644
|
|
--- a/hwdb.d/meson.build
|
|
+++ b/hwdb.d/meson.build
|
|
@@ -43,7 +43,7 @@ if conf.get('ENABLE_HWDB') == 1
|
|
install_dir : udevhwdbdir)
|
|
|
|
meson.add_install_script('sh', '-c',
|
|
- mkdir_p.format(join_paths(sysconfdir, 'udev/hwdb.d')))
|
|
+ mkdir_p.format(join_paths(factoryconfdir, 'udev/hwdb.d')))
|
|
|
|
meson.add_install_script('sh', '-c',
|
|
'test -n "$DESTDIR" || @0@/systemd-hwdb update'
|
|
diff --git a/meson.build b/meson.build
|
|
index 2ef9d4d770..ae7acbd769 100644
|
|
--- a/meson.build
|
|
+++ b/meson.build
|
|
@@ -163,6 +163,9 @@ udevhwdbdir = join_paths(udevlibexecdir, 'hwdb.d')
|
|
catalogdir = join_paths(prefixdir, 'lib/systemd/catalog')
|
|
kernelinstalldir = join_paths(prefixdir, 'lib/kernel/install.d')
|
|
factorydir = join_paths(datadir, 'factory')
|
|
+factoryconfdir = join_paths(datadir, 'factory/etc')
|
|
+factorypkgconfdir = join_paths(datadir, 'factory/etc/systemd')
|
|
+factoryxinitrcdir = join_paths(datadir, 'factory/etc/X11/xinit/xinitrc.d')
|
|
bootlibdir = join_paths(prefixdir, 'lib/systemd/boot/efi')
|
|
testsdir = join_paths(prefixdir, 'lib/systemd/tests')
|
|
systemdstatedir = join_paths(localstatedir, 'lib/systemd')
|
|
@@ -2653,7 +2656,7 @@ if conf.get('ENABLE_BINFMT') == 1
|
|
meson.add_install_script('sh', '-c',
|
|
mkdir_p.format(binfmtdir))
|
|
meson.add_install_script('sh', '-c',
|
|
- mkdir_p.format(join_paths(sysconfdir, 'binfmt.d')))
|
|
+ mkdir_p.format(join_paths(factoryconfdir, 'binfmt.d')))
|
|
endif
|
|
|
|
if conf.get('ENABLE_REPART') == 1
|
|
@@ -2769,7 +2772,7 @@ executable(
|
|
install_dir : rootlibexecdir)
|
|
|
|
install_data('src/sleep/sleep.conf',
|
|
- install_dir : pkgsysconfdir)
|
|
+ install_dir : factorypkgconfdir)
|
|
|
|
public_programs += executable(
|
|
'systemd-sysctl',
|
|
@@ -3103,7 +3106,7 @@ if conf.get('HAVE_KMOD') == 1
|
|
meson.add_install_script('sh', '-c',
|
|
mkdir_p.format(modulesloaddir))
|
|
meson.add_install_script('sh', '-c',
|
|
- mkdir_p.format(join_paths(sysconfdir, 'modules-load.d')))
|
|
+ mkdir_p.format(join_paths(factoryconfdir, 'modules-load.d')))
|
|
endif
|
|
|
|
public_programs += executable(
|
|
@@ -3354,7 +3357,7 @@ install_subdir('factory/etc',
|
|
install_dir : factorydir)
|
|
|
|
install_data('xorg/50-systemd-user.sh',
|
|
- install_dir : xinitrcdir)
|
|
+ install_dir : factoryxinitrcdir)
|
|
install_data('modprobe.d/systemd.conf',
|
|
install_dir : modprobedir)
|
|
install_data('LICENSE.GPL2',
|
|
diff --git a/network/meson.build b/network/meson.build
|
|
index 99a650eac3..8105a4e48d 100644
|
|
--- a/network/meson.build
|
|
+++ b/network/meson.build
|
|
@@ -11,7 +11,7 @@ if conf.get('ENABLE_NETWORKD') == 1
|
|
install_dir : networkdir)
|
|
|
|
meson.add_install_script('sh', '-c',
|
|
- mkdir_p.format(join_paths(sysconfdir, 'systemd/network')))
|
|
+ mkdir_p.format(join_paths(factoryconfdir, 'systemd/network')))
|
|
endif
|
|
|
|
install_data('99-default.link',
|
|
diff --git a/src/core/meson.build b/src/core/meson.build
|
|
index fa95108523..60ee0e31c1 100644
|
|
--- a/src/core/meson.build
|
|
+++ b/src/core/meson.build
|
|
@@ -183,8 +183,8 @@ libcore = static_library(
|
|
systemd_sources = files('main.c')
|
|
|
|
in_files = [['macros.systemd', rpmmacrosdir],
|
|
- ['system.conf', pkgsysconfdir],
|
|
- ['user.conf', pkgsysconfdir],
|
|
+ ['system.conf', factorypkgconfdir],
|
|
+ ['user.conf', factorypkgconfdir],
|
|
['systemd.pc', pkgconfigdatadir],
|
|
['triggers.systemd', '']]
|
|
|
|
@@ -216,6 +216,6 @@ meson.add_install_script('sh', '-c', mkdir_p.format(systemsleepdir))
|
|
meson.add_install_script('sh', '-c', mkdir_p.format(systemgeneratordir))
|
|
meson.add_install_script('sh', '-c', mkdir_p.format(usergeneratordir))
|
|
|
|
-meson.add_install_script('sh', '-c', mkdir_p.format(join_paths(pkgsysconfdir, 'system')))
|
|
-meson.add_install_script('sh', '-c', mkdir_p.format(join_paths(pkgsysconfdir, 'user')))
|
|
-meson.add_install_script('sh', '-c', mkdir_p.format(join_paths(sysconfdir, 'xdg/systemd')))
|
|
+meson.add_install_script('sh', '-c', mkdir_p.format(join_paths(factorypkgconfdir, 'system')))
|
|
+meson.add_install_script('sh', '-c', mkdir_p.format(join_paths(factorypkgconfdir, 'user')))
|
|
+meson.add_install_script('sh', '-c', mkdir_p.format(join_paths(factorypkgconfdir, 'xdg/systemd')))
|
|
diff --git a/src/coredump/meson.build b/src/coredump/meson.build
|
|
index 7fa5942697..34c865dfa0 100644
|
|
--- a/src/coredump/meson.build
|
|
+++ b/src/coredump/meson.build
|
|
@@ -15,7 +15,7 @@ coredumpctl_sources = files('coredumpctl.c')
|
|
|
|
if conf.get('ENABLE_COREDUMP') == 1
|
|
install_data('coredump.conf',
|
|
- install_dir : pkgsysconfdir)
|
|
+ install_dir : factorypkgconfdir)
|
|
endif
|
|
|
|
tests += [
|
|
diff --git a/src/home/meson.build b/src/home/meson.build
|
|
index 797f3a3c6d..232904ab42 100644
|
|
--- a/src/home/meson.build
|
|
+++ b/src/home/meson.build
|
|
@@ -98,5 +98,5 @@ if conf.get('ENABLE_HOMED') == 1
|
|
install_dir : polkitpolicydir)
|
|
|
|
install_data('homed.conf',
|
|
- install_dir : pkgsysconfdir)
|
|
+ install_dir : factoryconfdir)
|
|
endif
|
|
diff --git a/src/journal-remote/meson.build b/src/journal-remote/meson.build
|
|
index 87b8ba6495..daff8ec967 100644
|
|
--- a/src/journal-remote/meson.build
|
|
+++ b/src/journal-remote/meson.build
|
|
@@ -49,7 +49,7 @@ if conf.get('ENABLE_REMOTE') ==1 and conf.get('HAVE_LIBCURL') == 1
|
|
output : 'journal-upload.conf',
|
|
configuration : substs)
|
|
install_data(journal_upload_conf,
|
|
- install_dir : pkgsysconfdir)
|
|
+ install_dir : factorypkgconfdir)
|
|
endif
|
|
|
|
if conf.get('ENABLE_REMOTE') == 1 and conf.get('HAVE_MICROHTTPD') == 1
|
|
@@ -58,7 +58,7 @@ if conf.get('ENABLE_REMOTE') == 1 and conf.get('HAVE_MICROHTTPD') == 1
|
|
output : 'journal-remote.conf',
|
|
configuration : substs)
|
|
install_data(journal_remote_conf,
|
|
- install_dir : pkgsysconfdir)
|
|
+ install_dir : factorypkgconfdir)
|
|
|
|
install_data('browse.html',
|
|
install_dir : join_paths(pkgdatadir, 'gatewayd'))
|
|
diff --git a/src/journal/meson.build b/src/journal/meson.build
|
|
index 5796f77cac..75d975c260 100644
|
|
--- a/src/journal/meson.build
|
|
+++ b/src/journal/meson.build
|
|
@@ -109,7 +109,7 @@ if conf.get('HAVE_QRENCODE') == 1
|
|
endif
|
|
|
|
install_data('journald.conf',
|
|
- install_dir : pkgsysconfdir)
|
|
+ install_dir : factorypkgconfdir)
|
|
|
|
if get_option('create-log-dirs')
|
|
meson.add_install_script(
|
|
diff --git a/src/kernel-install/meson.build b/src/kernel-install/meson.build
|
|
index 9ae342dfba..65df666337 100644
|
|
--- a/src/kernel-install/meson.build
|
|
+++ b/src/kernel-install/meson.build
|
|
@@ -14,5 +14,5 @@ if want_kernel_install
|
|
install_dir : kernelinstalldir)
|
|
|
|
meson.add_install_script('sh', '-c',
|
|
- mkdir_p.format(join_paths(sysconfdir, 'kernel/install.d')))
|
|
+ mkdir_p.format(join_paths(factoryconfdir, 'kernel/install.d')))
|
|
endif
|
|
diff --git a/src/login/meson.build b/src/login/meson.build
|
|
index 0a7d3d5440..ff90149c1c 100644
|
|
--- a/src/login/meson.build
|
|
+++ b/src/login/meson.build
|
|
@@ -75,7 +75,7 @@ if conf.get('ENABLE_LOGIND') == 1
|
|
output : 'logind.conf',
|
|
configuration : substs)
|
|
install_data(logind_conf,
|
|
- install_dir : pkgsysconfdir)
|
|
+ install_dir : factorypkgconfdir)
|
|
|
|
install_data('org.freedesktop.login1.conf',
|
|
install_dir : dbuspolicydir)
|
|
diff --git a/src/network/meson.build b/src/network/meson.build
|
|
index b3a88d9910..be56d1e9d7 100644
|
|
--- a/src/network/meson.build
|
|
+++ b/src/network/meson.build
|
|
@@ -229,7 +229,7 @@ if conf.get('ENABLE_NETWORKD') == 1
|
|
endif
|
|
|
|
install_data('networkd.conf',
|
|
- install_dir : pkgsysconfdir)
|
|
+ install_dir : factorypkgconfdir)
|
|
|
|
fuzzers += [
|
|
[['src/network/fuzz-netdev-parser.c',
|
|
diff --git a/src/pstore/meson.build b/src/pstore/meson.build
|
|
index adbac24b54..e9dc88dfa2 100644
|
|
--- a/src/pstore/meson.build
|
|
+++ b/src/pstore/meson.build
|
|
@@ -6,5 +6,5 @@ systemd_pstore_sources = files('''
|
|
|
|
if conf.get('ENABLE_PSTORE') == 1
|
|
install_data('pstore.conf',
|
|
- install_dir : pkgsysconfdir)
|
|
+ install_dir : factorypkgconfdir)
|
|
endif
|
|
diff --git a/src/resolve/meson.build b/src/resolve/meson.build
|
|
index 92b67b6333..ac5b9a0b0a 100644
|
|
--- a/src/resolve/meson.build
|
|
+++ b/src/resolve/meson.build
|
|
@@ -168,7 +168,7 @@ if conf.get('ENABLE_RESOLVE') == 1
|
|
output : 'resolved.conf',
|
|
configuration : substs)
|
|
install_data(resolved_conf,
|
|
- install_dir : pkgsysconfdir)
|
|
+ install_dir : factorypkgconfdir)
|
|
|
|
install_data('resolv.conf',
|
|
install_dir : rootlibexecdir)
|
|
diff --git a/src/timesync/meson.build b/src/timesync/meson.build
|
|
index e5c118c8db..19235df9ca 100644
|
|
--- a/src/timesync/meson.build
|
|
+++ b/src/timesync/meson.build
|
|
@@ -27,7 +27,7 @@ if conf.get('ENABLE_TIMESYNCD') == 1
|
|
output : 'timesyncd.conf',
|
|
configuration : substs)
|
|
install_data(timesyncd_conf,
|
|
- install_dir : pkgsysconfdir)
|
|
+ install_dir : factorypkgconfdir)
|
|
install_data('org.freedesktop.timesync1.conf',
|
|
install_dir : dbuspolicydir)
|
|
install_data('org.freedesktop.timesync1.service',
|
|
diff --git a/src/udev/meson.build b/src/udev/meson.build
|
|
index aa23b07090..ad004d803a 100644
|
|
--- a/src/udev/meson.build
|
|
+++ b/src/udev/meson.build
|
|
@@ -186,7 +186,7 @@ foreach prog : [['ata_id/ata_id.c'],
|
|
endforeach
|
|
|
|
install_data('udev.conf',
|
|
- install_dir : join_paths(sysconfdir, 'udev'))
|
|
+ install_dir : join_paths(factoryconfdir, 'udev'))
|
|
|
|
configure_file(
|
|
input : 'udev.pc.in',
|
|
@@ -195,7 +195,7 @@ configure_file(
|
|
install_dir : pkgconfigdatadir == 'no' ? '' : pkgconfigdatadir)
|
|
|
|
meson.add_install_script('sh', '-c',
|
|
- mkdir_p.format(join_paths(sysconfdir, 'udev/rules.d')))
|
|
+ mkdir_p.format(join_paths(factoryconfdir, 'udev/rules.d')))
|
|
|
|
fuzzers += [
|
|
[['src/udev/net/fuzz-link-parser.c',
|
|
diff --git a/sysctl.d/meson.build b/sysctl.d/meson.build
|
|
index 3f072e3db7..bd9f843eba 100644
|
|
--- a/sysctl.d/meson.build
|
|
+++ b/sysctl.d/meson.build
|
|
@@ -27,4 +27,4 @@ foreach file : in_files
|
|
endforeach
|
|
|
|
meson.add_install_script('sh', '-c',
|
|
- mkdir_p.format(join_paths(sysconfdir, 'sysctl.d')))
|
|
+ mkdir_p.format(join_paths(factoryconfdir, 'sysctl.d')))
|
|
diff --git a/tmpfiles.d/meson.build b/tmpfiles.d/meson.build
|
|
index 0a9582d8b9..3c56ca7d83 100644
|
|
--- a/tmpfiles.d/meson.build
|
|
+++ b/tmpfiles.d/meson.build
|
|
@@ -58,5 +58,5 @@ endforeach
|
|
if enable_tmpfiles
|
|
meson.add_install_script(
|
|
'sh', '-c',
|
|
- mkdir_p.format(join_paths(sysconfdir, 'tmpfiles.d')))
|
|
+ mkdir_p.format(join_paths(factoryconfdir, 'tmpfiles.d')))
|
|
endif
|
|
diff --git a/units/meson.build b/units/meson.build
|
|
index 275daad3f4..491abd8eef 100644
|
|
--- a/units/meson.build
|
|
+++ b/units/meson.build
|
|
@@ -324,7 +324,7 @@ install_data('user-.slice.d/10-defaults.conf',
|
|
|
|
meson.add_install_script(meson_make_symlink,
|
|
join_paths(pkgsysconfdir, 'user'),
|
|
- join_paths(sysconfdir, 'xdg/systemd/user'))
|
|
+ join_paths(factorypkgconfdir, 'xdg/systemd/user'))
|
|
meson.add_install_script(meson_make_symlink,
|
|
join_paths(dbussystemservicedir, 'org.freedesktop.systemd1.service'),
|
|
join_paths(dbussessionservicedir, 'org.freedesktop.systemd1.service'))
|
|
--
|
|
2.28.0
|
|
|