diff --git a/files/0001-Solus-Separate-unit-stop-timeout-out-and-set-it-to-1.patch b/files/0001-Solus-Separate-unit-stop-timeout-out-and-set-it-to-1.patch deleted file mode 100644 --- a/files/0001-Solus-Separate-unit-stop-timeout-out-and-set-it-to-1.patch +++ /dev/null @@ -1,87 +0,0 @@ -From aab3b95d63a310d4d45fe5c348e2605ecbf43692 Mon Sep 17 00:00:00 2001 -From: Reilly Brogan -Date: Thu, 3 Aug 2023 20:43:06 -0500 -Subject: [PATCH] Solus: Separate unit stop timeout out and set it to 10s by - default - -default-timeout-sec and default-user-timeout-sec both set many timeouts throughout systemd. While these -timeouts are important we want to set the unit stop timeout to a lower value so that logging out and shutdowns/restarts -completely quickly. - -Add a separate constant for this, set it to 10 seconds and then use that for the unit stop timeout only. - ---- - src/basic/constants.h | 1 + - src/core/main.c | 2 +- - src/core/manager.c | 2 +- - src/core/system.conf.in | 2 +- - src/core/user.conf.in | 2 +- - 5 files changed, 5 insertions(+), 4 deletions(-) - -diff --git a/src/basic/constants.h b/src/basic/constants.h -index 5d68cc6332..4221dd4029 100644 ---- a/src/basic/constants.h -+++ b/src/basic/constants.h -@@ -29,6 +29,7 @@ - - /* Many different things, but also system unit start/stop */ - #define DEFAULT_TIMEOUT_USEC (DEFAULT_TIMEOUT_SEC*USEC_PER_SEC) -+#define DEFAULT_STOP_TIMEOUT_USEC (10*USEC_PER_SEC) - /* User unit start/stop */ - #define DEFAULT_USER_TIMEOUT_USEC (DEFAULT_USER_TIMEOUT_SEC*USEC_PER_SEC) - /* Timeout for user confirmation on the console */ -diff --git a/src/core/main.c b/src/core/main.c -index 299cafeda8..c973cc65c6 100644 ---- a/src/core/main.c -+++ b/src/core/main.c -@@ -2452,7 +2452,7 @@ static void reset_arguments(void) { - arg_default_std_error = EXEC_OUTPUT_INHERIT; - arg_default_restart_usec = DEFAULT_RESTART_USEC; - arg_default_timeout_start_usec = manager_default_timeout(arg_system); -- arg_default_timeout_stop_usec = manager_default_timeout(arg_system); -+ arg_default_timeout_stop_usec = DEFAULT_STOP_TIMEOUT_USEC; - arg_default_timeout_abort_usec = manager_default_timeout(arg_system); - arg_default_timeout_abort_set = false; - arg_default_device_timeout_usec = manager_default_timeout(arg_system); -diff --git a/src/core/manager.c b/src/core/manager.c -index 1853526e3f..79e6e3e5d1 100644 ---- a/src/core/manager.c -+++ b/src/core/manager.c -@@ -836,7 +836,7 @@ int manager_new(LookupScope scope, ManagerTestRunFlags test_run_flags, Manager * - .default_tasks_accounting = true, - .default_tasks_max = TASKS_MAX_UNSET, - .default_timeout_start_usec = manager_default_timeout(scope == LOOKUP_SCOPE_SYSTEM), -- .default_timeout_stop_usec = manager_default_timeout(scope == LOOKUP_SCOPE_SYSTEM), -+ .default_timeout_stop_usec = DEFAULT_STOP_TIMEOUT_USEC, - .default_restart_usec = DEFAULT_RESTART_USEC, - .default_device_timeout_usec = manager_default_timeout(scope == LOOKUP_SCOPE_SYSTEM), - -diff --git a/src/core/system.conf.in b/src/core/system.conf.in -index 9572b57f17..cfeb9cf0ef 100644 ---- a/src/core/system.conf.in -+++ b/src/core/system.conf.in -@@ -44,7 +44,7 @@ - #DefaultStandardOutput=journal - #DefaultStandardError=inherit - #DefaultTimeoutStartSec={{DEFAULT_TIMEOUT_SEC}}s --#DefaultTimeoutStopSec={{DEFAULT_TIMEOUT_SEC}}s -+#DefaultTimeoutStopSec=10s - #DefaultTimeoutAbortSec= - #DefaultDeviceTimeoutSec={{DEFAULT_TIMEOUT_SEC}}s - #DefaultRestartSec=100ms -diff --git a/src/core/user.conf.in b/src/core/user.conf.in -index d67650b858..c34b8eba52 100644 ---- a/src/core/user.conf.in -+++ b/src/core/user.conf.in -@@ -25,7 +25,7 @@ - #DefaultStandardOutput=inherit - #DefaultStandardError=inherit - #DefaultTimeoutStartSec={{DEFAULT_USER_TIMEOUT_SEC}}s --#DefaultTimeoutStopSec={{DEFAULT_USER_TIMEOUT_SEC}}s -+#DefaultTimeoutStopSec=10s - #DefaultTimeoutAbortSec= - #DefaultDeviceTimeoutSec={{DEFAULT_USER_TIMEOUT_SEC}}s - #DefaultRestartSec=100ms --- -2.41.0 - diff --git a/files/series b/files/series --- a/files/series +++ b/files/series @@ -7,4 +7,3 @@ 0001-login-Allow-more-active-permissions-to-prevent-permi.patch xdg-autostart-service-handle-gnome-autostart-on-kde.patch 0001-path-lookup-Include-stateless-xdg-path-by-default.patch -0001-Solus-Separate-unit-stop-timeout-out-and-set-it-to-1.patch diff --git a/files/solus-timeout-settings.conf b/files/solus-timeout-settings.conf new file mode 100644 --- /dev/null +++ b/files/solus-timeout-settings.conf @@ -0,0 +1,8 @@ +[Manager] +# Set to 30s to avoid mount unit timeouts during the boot process +# which can result in devices from /etc/fstab not being activated +DefaultTimeoutStartSec=30 +DefaultDeviceTimeoutSec=30 +# Set to 10s to ensure a reasonably snappy shutdown/reboot experience +DefaultTimeoutStopSec=10 + diff --git a/package.yml b/package.yml --- a/package.yml +++ b/package.yml @@ -1,6 +1,6 @@ name : systemd version : '253.7' -release : 117 +release : 118 source : - https://github.com/systemd/systemd-stable/archive/refs/tags/v253.7.tar.gz : ff05e6a10ea38be24f1a426ff2d4328d33a1849a788c39341032948f483a9321 license : @@ -124,6 +124,10 @@ install : | %ninja_install + # Configure solus-specific-timeout values for units + install -Dm00644 -t $installdir/usr/lib/systemd/system.conf.d/ $pkgfiles/solus-timeout-settings.conf + install -Dm00644 -t $installdir/usr/lib/systemd/user.conf.d/ $pkgfiles/solus-timeout-settings.conf + # Solus is responsible for its own glibc + PAM configuration, *not* systemd.. rm -vrf $installdir/usr/share/factory/* diff --git a/pspec_x86_64.xml b/pspec_x86_64.xml --- a/pspec_x86_64.xml +++ b/pspec_x86_64.xml @@ -2,8 +2,8 @@ systemd - Reilly Brogan - solus@reillybrogan.com + Rune Morling + ermo@serpentos.com LGPL-2.1-or-later GPL-2.0-or-later @@ -156,6 +156,7 @@ /usr/lib/systemd/system-preset/90-systemd.preset /usr/lib/systemd/system-shutdown /usr/lib/systemd/system-sleep + /usr/lib/systemd/system.conf.d/solus-timeout-settings.conf /usr/lib/systemd/system/autovt@.service /usr/lib/systemd/system/basic.target /usr/lib/systemd/system/blockdev@.target @@ -488,6 +489,7 @@ /usr/lib/systemd/user-environment-generators/30-systemd-environment-d-generator /usr/lib/systemd/user-generators/systemd-xdg-autostart-generator /usr/lib/systemd/user-preset/90-systemd.preset + /usr/lib/systemd/user.conf.d/solus-timeout-settings.conf /usr/lib/systemd/user/app.slice /usr/lib/systemd/user/background.slice /usr/lib/systemd/user/basic.target @@ -1118,7 +1120,7 @@ emul32 - systemd + systemd /usr/lib32/libnss_myhostname.so.2 @@ -1142,8 +1144,8 @@ programming.devel - systemd-devel - systemd-32bit + systemd-devel + systemd-32bit /usr/lib32/pkgconfig/libsystemd.pc @@ -1157,7 +1159,7 @@ system.devel - systemd + systemd /usr/include/libudev.h @@ -1940,12 +1942,12 @@ - + 2023-08-04 253.7 Packaging update - Reilly Brogan - solus@reillybrogan.com + Rune Morling + ermo@serpentos.com \ No newline at end of file