Dariqq
92869fcc75
gnu: home: Use ‘shepherd-for-home’ as the default shepherd.
...
Fixes <https://issues.guix.gnu.org/73903 >.
* gnu/home/services/shepherd.scm (home-shepherd-configuration): Change default
value of shepherd field to shepherd-for-home.
Change-Id: I3773403bb1fcdcbe2acb1bbcbfaa009f4d31ace4
Signed-off-by: Ludovic Courtès <ludo@gnu.org >
2025-05-14 18:11:07 +02:00
Ludovic Courtès
a35fa2d2cb
services: shepherd: Add ‘shepherd-timer’.
...
* gnu/services/shepherd.scm (shepherd-timer): New procedure.
* gnu/home/services/shepherd.scm: Re-export it.
Suggested-by: Luis Guilherme Coelho <lgcoelho@disroot.org >
Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com >
Change-Id: I5f702d4119eee47381a7a1ac650b8ad3fc5e6cdd
2025-03-23 19:30:57 +01:00
Ludovic Courtès
aed019b646
services: shepherd: Factorize ‘trigger’ action.
...
* gnu/services/shepherd.scm (shepherd-trigger-action): New variable.
* gnu/services/admin.scm (log-cleanup-shepherd-services)
(unattended-upgrade-shepherd-services): Use it.
* gnu/services/backup.scm (restic-backup-job->shepherd-service): Use it.
* gnu/home/services/shepherd.scm: Re-export ‘shepherd-trigger-action’.
Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com >
Change-Id: I834b5b9b61c78f012ee9306df6cf4fd8a93dd6d2
2025-03-23 19:29:14 +01:00
Ludovic Courtès
5cfbf7b513
home: services: shepherd: Add ‘transient’ and ‘timer’ services.
...
* gnu/home/services/shepherd.scm (home-shepherd-timer-service-type)
(home-shepherd-transient-service-type): New variables.
* doc/guix.texi (Shepherd Home Service): Document them.
(Shepherd Services): Add anchor.
Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com >
Change-Id: Ia4eb7cf043f4661c64f5ca81b8989a451532aa18
2025-01-26 22:09:27 +01:00
Ludovic Courtès
8eb7176fef
home: services: shepherd: Default to 1.0.
...
* gnu/home/services/shepherd.scm (<home-shepherd-configuration>)[shepherd]:
Default to SHEPHERD-0.10.
Change-Id: I2c4acc28978ac3376fe5683f60941e28edea5746
2024-12-09 23:15:44 +01:00
Dariqq
53ef4bf537
home: services: Use %user-log-dir as the log directory for all services.
...
* gnu/home/services/desktop.scm (home-dbus-shepherd-services): Log to
%user-log-dir.
* gnu/home/services/desktop.scm (home-unclutter-shepherd-services): Same.
* gnu/home/services/pm.scm (home-batsignal-shepherd-services): Same.
* gnu/home/services/shepherd.scm (launch-shepherd-gexp): Don't overwrite
default log-file.
Change-Id: I2742371cbddd1bf4d981efc41f3eae8f148336be
Signed-off-by: Ludovic Courtès <ludo@gnu.org >
2024-11-20 22:57:38 +01:00
Dariqq
41b5b723b3
doc: Document home-shepherd-configuration-daemonize?
...
* gnu/home/services/shepherd.scm: Export home-shepherd-configuration-daemonize?.
* doc/guix.texi (home-shepherd-configuration): Add entry for daemonize? field.
Change-Id: Ifd1518c89fe8d5869d5e6469823dafd8457f24f1
Signed-off-by: Ludovic Courtès <ludo@gnu.org >
2024-10-14 14:08:42 +02:00
Dariqq
8221a6a1ac
home: home-shepherd-configuration: Add silent? field.
...
* gnu/home/services/shepherd.scm (home-shepherd-configuration): Add silent? field.
(launch-shepherd-gexp): Conditionally invoke shepherd with --silent.
* doc/guix.texi (home-shepherd-configuration): Document it.
Change-Id: I1ce7a92c2777ebded39fe293b0bdcbd03562b4fc
Signed-off-by: Ludovic Courtès <ludo@gnu.org >
2024-10-14 14:08:42 +02:00
Ludovic Courtès
8da4eab244
home: services: shepherd: Replace use of deprecated ‘action’ procedure.
...
This is a followup to 1964531ce5 .
* gnu/home/services/shepherd.scm (home-shepherd-configuration-file):
Use ‘perform-service-action’ rather than ‘action’.
Change-Id: I669750c319083836416c3e093c112ebfeba32e64
2024-09-16 00:16:20 +02:00
Richard Sent
59bb53823e
services: Add the Guix Home service.
...
This patch adds a Guix Home service, which allows for configuring/deploying an
operating-system declaration with an associated home-environment.
* gnu/services/guix.scm: Add guix-home-service and guix-home-shepherd-service
* gnu/home/services/shepherd.scm: Don't attempt to launch user shepherd when
the system shepherd runs guix-home-<user>
* doc/guix.texi: Add documentation for guix-home-service
* gnu/tests/guix.scm: Add a test to verify guix-home-service-type is able to
activate a home environment
Change-Id: Ifbcc0878d934aa4abe34bb2123b5081fb432aa8e
Signed-off-by: Ludovic Courtès <ludo@gnu.org >
2024-04-17 12:13:03 +02:00
Ludovic Courtès
6f9d844d2e
services: shepherd: Load each service file in a fresh module.
...
Fixes <https://issues.guix.gnu.org/67649 >.
* gnu/home/services/shepherd.scm (home-shepherd-configuration-file)[config]:
Define ‘make-user-module’. Call ‘load’ in ‘save-module-excursion’.
* gnu/services/shepherd.scm (shepherd-configuration-file): Likewise.
Reported-by: Attila Lendvai <attila@lendvai.name >
Change-Id: I7df11c81b5bbbf2b24a8daa02502a000e0826fe0
2024-03-21 17:43:15 +01:00
Ludovic Courtès
1964531ce5
home: services: shepherd: Use the 0.10.x interface.
...
* gnu/home/services/shepherd.scm (home-shepherd-configuration-file):
Pass ‘register-services’ a list. Call ‘start-in-the-background’
unconditionally.
Change-Id: Id7ba005949653a9ac065c47eddb425df4f4792aa
2024-01-08 23:14:46 +01:00
Ludovic Courtès
161d010d40
home: services: Support mapping of System services to Home services.
...
* gnu/home/services.scm (service-type-mapping)
(system->home-service-type): New procedures.
(define-service-type-mapping, define-service-type-mappings): New macros.
(%system/home-service-type-mapping): New variable.
<top level>: Use 'define-service-type-mappings'.
* gnu/home/services/shepherd.scm <top level>: Likewise.
2023-08-20 22:48:47 +02:00
Bruno Victal
f74df2ab87
home: services: xdg-base-directories: Deprecate XDG_LOG_HOME.
...
XDG_LOG_HOME is non-standard and log files should go to XDG_STATE_HOME
according to the XDG Base Directory Specification.
Fixes <https://issues.guix.gnu.org/61809 >.
* gnu/home/services/desktop.scm (home-dbus-shepherd-services): Log to XDG_STATE_HOME.
* gnu/home/services/desktop.scm (home-unclutter-shepherd-services): Log to
XDG_STATE_HOME.
* gnu/home/services/mcron.scm (home-mcron-shepherd-services): Ditto.
* gnu/home/services/pm.scm (home-batsignal-shepherd-services): Ditto.
* gnu/home/services/shepherd.scm (launch-shepherd-gexp): Ditto.
* gnu/home/services/xdg.scm
(home-xdg-base-directories-configuration)[log-home]: Deprecate and unset default value.
(home-xdg-base-directories-environment-variables-service)
(ensure-xdg-base-dirs-on-activation): Handle field deprecation.
(home-xdg-base-directories-service-type): Update description.
Co-authored-by: Andrew Tropin <andrew@trop.in >
Signed-off-by: Andrew Tropin <andrew@trop.in >
2023-06-15 13:19:29 +04:00
Ludovic Courtès
134c10241a
services: shepherd: Default to 0.10.
...
* gnu/services/shepherd.scm (<shepherd-configuration>)[shepherd]:
Default to SHEPHERD-0.10.
* gnu/home/services/shepherd.scm (<home-shepherd-configuration>)[shepherd]:
Likewise.
2023-05-13 16:27:55 +02:00
Ludovic Courtès
8b56983999
home: services: redshift: Add 'configuration' action.
...
* gnu/home/services/shepherd.scm: Re-export
'shepherd-configuration-action'.
* gnu/home/services/desktop.scm (redshift-shepherd-service): Add
'actions' field.
2022-11-18 15:44:40 +01:00
Andrew Tropin
6cdde65bb5
home: shepherd: Add daemonize? option to configuration.
...
* gnu/home/services/shepherd.scm (home-shepherd-configuration):
Add DAEMONIZE?.
(home-shepherd-configuration-file): Use CONFIG argument instead of two
separate SERVICES and SHEPHERD, respect DAEMONIZE?.
(ensure-shepherd-gexp, launch-shepherd-gexp,
shepherd-xdg-configuration-files): Adjust according to arguments changes in
HOME-SHEPHERD-CONFIGURATION-FILE.
2022-09-14 18:25:11 +03:00
Andrew Tropin
70d58d1556
home: shepherd: Add shepherd/init.scm to XDG_CONFIG_HOME.
...
* gnu/home/services/shepherd.scm (shepherd-xdg-configuration-files):
New variable.
(home-shepherd-service-type)[extensions]:
Add HOME-XDG-CONFIGURATION-FILES-SERVICE-TYPE extension.
2022-09-12 08:43:08 +03:00
Ludovic Courtès
dd2ab92d9d
home: shepherd: Redirect input port to /dev/null.
...
Suggested by Aleksandr Vityazev <avityazev@posteo.org >.
* gnu/home/services/shepherd.scm (home-shepherd-configuration-file):
Redirect input port to /dev/null.
2022-04-21 00:02:21 +02:00
Ludovic Courtès
bc867b2ab0
home: shepherd: "shepherd.conf" returns one value.
...
Fixes <https://issues.guix.gnu.org/54779 >.
Reported by Aleksandr Vityazev <avityazev@posteo.org >
and Nicolas Graves <ngraves@ngraves.fr >.
* gnu/home/services/shepherd.scm (home-shepherd-configuration-file):
Return one value.
2022-04-21 00:00:14 +02:00
Andrew Tropin
8805c7eab1
home: shepherd: Prevent launching the second instance.
...
Fixes <https://issues.guix.gnu.org/54545 >.
* gnu/home/services/shepherd.scm (launch-shepherd-gexp): Launch shepherd
if and only if its socket file does not already exist.
Signed-off-by: Ludovic Courtès <ludo@gnu.org >
2022-04-12 23:30:09 +02:00
Ludovic Courtès
22ab901466
home: shepherd: Default to version 0.9.
...
* gnu/home/services/shepherd.scm (<home-shepherd-configuration>)[shepherd]:
Default to SHEPHERD-0.9.
(home-shepherd-configuration-file): Use 'start-in-the-background' when
it is defined.
2022-04-07 00:08:56 +02:00
Ludovic Courtès
e607c377bb
home: services: Export record type accessors.
...
* gnu/home/services/shepherd.scm: Export <home-shepherd-configuration>
accessors. Re-export <shepherd-service> accessors.
2022-03-18 16:03:33 +01:00
Oleg Pykhalov
0e8d2df0f1
Move (gnu home-services) to (gnu home services).
...
* gnu/home-services.scm (%guix-home-root-directory): Replace
gnu/home-services.scm with "gnu/home/services.scm".
Rename to gnu/home/services.scm.
* gnu/local.mk
(GNU_SYSTEM_MODULES): Rename gnu/home-services.scm to gnu/home/services.scm.
* doc/he-config-bare-bones.scm:
Replace (gnu home-services) with (gnu home services).
* gnu/home.scm: Same.
* gnu/home/services/fontutils.scm: Same.
* gnu/home/services/mcron.scm: Same.
* gnu/home/services/shells.scm: Same.
* gnu/home/services/shepherd.scm: Same.
* gnu/home/services/symlink-manager.scm: Same.
* gnu/home/services/xdg.scm: Same.
* guix/scripts/home.scm: Same.
* guix/self.scm: Same.
2021-10-09 19:24:18 +03:00
Oleg Pykhalov
ba8ddb3480
gnu: Move (gnu home-services) to (gnu home services).
...
* gnu/home-services/configuration.scm: Move the content ...
* gnu/home/services/configuration.scm: ... here.
* doc/guix.texi:
Replace (gnu home-services mcron) with (gnu home services mcron).
Replace (gnu home-services) with (gnu home services).
* gnu/home.scm:
Replace (gnu home-services fontutils) with (gnu services fontutils).
Replace (gnu home-services shells) with (gnu home services shells).
Replace (gnu home-services symlink-manager) with
(gnu home services symlink-manager).
Replace (gnu home-services xdg) with (gnu home services xdg).
* gnu/home-services/fontutils.scm: Rename to gnu/services/fontutils.scm.
* gnu/home-services/mcron.scm: Move to gnu/home/services/mcron.scm.
Replace (gnu home-services shepherd) with (gnu home services shepherd).
* gnu/home-services.scm (%service-type-path):
Search home services in "gnu/services".
* gnu/home-services/shells.scm: Replace (gnu home-services configuration) with
(gnu home services configuration).
Rename to gnu/home/services/shells.scm.
Replace (gnu home-services utils) with (gnu home services utils).
* gnu/home-services/shepherd.scm: Move to gnu/home/services/shepherd.scm.
* gnu/home-services/symlink-manager.scm:
Rename to gnu/home/services/symlink-manager.scm.
* gnu/home-services/utils.scm: Rename to gnu/home/services/utils.scm.
* gnu/home-services/xdg.scm: Rename to gnu/home/services/xdg.scm.
* guix/scripts/home/import.scm:
Replace (gnu home-services bash) with (gnu home services bash).
* gnu/home-services.scm: Update documentation string.
* doc/he-config-bare-bones.scm:
Apply new (gnu home-services ...) modules location.
* gnu/local.mk (GNU_SYSTEM_MODULES): Same.
2021-10-08 15:36:18 +03:00