me
/
guix
Archived
1
0
Fork 0
Commit Graph

148 Commits (bd7042bf31c7a6d6ab320ed70715f1938fe71a11)

Author SHA1 Message Date
Tomas Volf 8144c587f8
home: services: Add home-startx-command-service-type.
* gnu/home/services/desktop.scm (home-startx-command-service-type): New
variable.
(startx-command-service-type): New service-type mapping.
* doc/guix.texi (Guix Home Services): Document
home-startx-command-service-type.

Change-Id: Id38b5dc7b9235e04e3a9a1b70a35b02e8fae95f0
Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2024-05-30 22:40:54 +01:00
Richard Sent 44c8ce8334
home: services: bash: Move default PS1 prompt to bashrc
Fixes <https://issues.guix.gnu.org/70164>.

* home/services/shells.scm (add-bash-configuration): Move default PS1 prompt
from .bash_profile to .bashrc.

Change-Id: Ic437458ee362cc4aa803a71c9962af866749f59a
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-04-29 23:54:13 +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
Jason Darby 0b38c9401b
home: services: bash: Reorder aliases.
Reported in <https://issues.guix.gnu.org/67652>.

* home/services/shells.scm (add-bash-configuration): Reorder aliases.

Change-Id: I288856bb6befe378ca60ef78578acc069cb18532
Reported-by: Atte Torri <atte.torri@universite-paris-saclay.fr>
Signed-off-by: Hilton Chain <hako@ultrarare.space>
2024-03-27 22:25:19 +08: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
Giacomo Leidi 01f685d560
gnu: home: dotfiles: Properly support both plain and Stow directory layouts.
Fixes <https://issues.guix.gnu.org/68848>.

The current implementation of the home-dotfiles-service-type contradicts
the Guix manual.  This patch properly implements both the plain and Stow
dotfiles directory layouts.

It does so by refactoring home-dotfiles-configuration adding a new
packages field to support GNU Stow's users workflow and introducing
a new layout field to switch between the two directory layouts.

* gnu/home/services/dotfiles (home-dotfiles-configuration): Migrate to
(gnu services configuration);
[packages]: new field;
[layout]: new field;
(strip-stow-dotfile): new variable;
(strip-plain-dotfile): new variable;
(home-dotfiles-configuration->files): use the new fields;
[directory-contents]: allow for
selecting a subset of application dotfile directories;
* doc/guix.texi: document the new layouts.

Change-Id: I2e96037608353e360828290f055ec5271cfdfd48
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-03-06 23:25:51 +01:00
Nicolas Graves b1ec85533a
home: symlink-manager: Allow busy device skip.
* gnu/home/services/symlink-manager.scm (update-symlinks-script):
Allow busy device skip.

Change-Id: Iff91c8a30309d25c02a8311d8d5ddbf54e90f5ad
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-02-19 18:43:32 +01:00
Giacomo Leidi 2f67528edd
home: Add home-dotfiles-service.
* gnu/home/service/dotfiles.scm: New file;
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* po/guix/POTFILES.in: Add it.
* doc/guix.texi (Essential Home Services): Document it.

Change-Id: I6769169cfacefc3842faa5b31bee081c56c28743
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2024-01-28 22:50:49 +01:00
Ludovic Courtès 68b2a19c20
home: services: Add missing import.
* gnu/home/services.scm: Import (srfi srfi-34) for ‘raise’.

Change-Id: Ib0e8d134f3953c78a09b623f697e7e5b251d5611
2024-01-28 22:50:48 +01:00
Efraim Flashner 299ce524c9
home: fontutils: Don't install fontconfig.
* gnu/home/services/fontutils.scm (home-fontconfig-service-type): Don't
add fontconfig to the profile.

Change-Id: I28208461efdfa4a585ee61db3a23bed05eb38d02
2024-01-17 11:13:45 +02:00
Efraim Flashner 0f967dde76
home: services: zsh: Use unified zprofile.
* gnu/home/services/shells.scm (zsh-file-zprofile): Use the zprofile
defined in (gnu system shadow) as a base.

Change-Id: Iaf4c4f66d1ccbc0bd0166136b3d082229bdec201
2024-01-17 11:11:10 +02: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
Brian Cully afdbf7f271
gnu: home: Add home-pipewire service.
This adds a set of home Shepherd services which will start the required
services for a functional PipeWire setup.

* gnu/home/services/sound.scm (home-pipewire-shepherd-service,
home-wireplumber-shepherd-service, home-pipewire-shepherd-services,
home-pipewire-asoundrc, home-pipewire-xdg-configuration,
home-pipewire-pulseaudio-shepherd-service): New procedures.
(home-pipewire-service-type): New service type.
(home-pipewire-configuration): New struct.
(home-pipewire-disable-pulseaudio-auto-start): New variable.
* doc/guix.texi (Sound Home Services): Document it.

Change-Id: I99e0ae860de91d459c3c554ec5503bf35f785a2a
Signed-off-by: Oleg Pykhalov <go.wigust@gmail.com>
2023-12-26 15:41:59 +03:00
Janneke Nieuwenhuizen b0715d7cd2
gnu: Use ‘libc-utf8-locales-for-target’.
* guix/packages.scm (%standard-patch-inputs): Use
‘libc-utf8-locales-for-target’ instead of ‘glibc-utf8-locales’.
* guix/self.scm (%packages): Likewise.
* gnu/home/services/ssh.scm (file-join): Likewise
* gnu/installer.scm (build-compiled-file): Likewise.
* gnu/packages/chromium.scm (ungoogled-chromium/wayland): Likewise.
* gnu/packages/gnome.scm (libgweather4, tracker): Likewise.
* gnu/packages/javascript.scm (js-mathjax): Likewise.
* gnu/packages/package-management.scm (guix, flatpak): Likewise.
* gnu/packages/raspberry-pi.scm (raspi-arm64-chainloader): Likewise.
* gnu/packages/suckless.scm (svkbd): Likewise.
* gnu/services.scm (cleanup-gexp): Likewise.
* gnu/services/base.scm (guix-publish-shepherd-service): Likewise.
* gnu/services/guix.scm (guix-build-coordinator-shepherd-services)
(guix-build-coordinator-agent-shepherd-services): Likewise.
* gnu/services/guix.scm (guix-build-coordinator-queue-builds-shepherd-services):
(guix-data-service-shepherd-services)
(nar-herder-shepherd-services)
(bffe-shepherd-services): Likewise.
* gnu/services/web.scm (anonip-shepherd-service)
(mumi-shepherd-services): Likewise.
* gnu/system/image.scm (system-disk-image, system-iso9660-image)
(system-docker-image, system-tarball-image): Likewise.
* gnu/system/install.scm (%installation-services): Likewise.
* guix/profiles.scm (info-dir-file): Likewise.
(ca-certificate-bundle, profile-derivation): Likewise.
* guix/scripts/pack.scm (store-database, set-utf8-locale): Likewise.
* tests/pack.scm: Likewise.
* tests/profiles.scm ("profile-derivation, cross-compilation"):
Likewise.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
Co-authored-by: Christopher Baines <mail@cbaines.net>
Change-Id: I24239f427bcc930c29d2ba5d00dc615960a6c374
2023-12-02 12:25:45 +01:00
Ludovic Courtès 08d94fe20e
home: services: Add 'x11-display' service.
* gnu/home/services/desktop.scm (x11-shepherd-service): New procedure.
(home-x11-service-type): New variable.
(redshift-shepherd-service): Add 'requirement' field.
(home-redshift-service-type): Extend 'home-x11-service-type'.
* doc/guix.texi (Desktop Home Services): Document it.

Change-Id: Ibd46d71cbb80fcdff8dbf3e8dbcfc3b24163bdb6
2023-11-05 23:23:23 +01:00
Rostislav Svoboda 2de3004267
home: services: Fix regression in generated ‘on-first-login’ script.
Fixes <https://issues.guix.gnu.org/66659>.

Fixes a regression introduced in 6b0a321969. The
first attempt in e098ba2f49 to fix this issue didn't work.

* gnu/home/services.scm (compute-on-first-login-script): Add
‘begin *unspecified*’ around #$@gexps.

Change-Id: I14339ad684ffe93e692e507b57dcd221d96210ef
Signed-off-by: Clément Lassieur <clement@lassieur.org>
2023-10-27 16:51:58 +02:00
Ludovic Courtès e098ba2f49
home: services: Fix regression in generated ‘on-first-login’ script.
Fixes <https://issues.guix.gnu.org/66659>.

Fixes a regression introduced in
6b0a321969.

* gnu/home/services.scm (compute-on-first-login-script): Add ‘begin’
around #$@gexps.

Reported-by: Nils Landt <nils@landt.email>
2023-10-21 16:00:14 +02:00
Carlo Zancanaro 6b0a321969
home: services: Fix race condition when detecting first login.
* gnu/home/services.scm (compute-on-first-login-script): Use open-fdes to
atomically check whether a file exists and create it if not.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2023-10-20 00:33:27 +02:00
Saku Laesvuori d2a751c14e
gnu: home: zsh: Load environment when running via ssh
* gnu/home/services/shells.scm (zsh-file-zshenv): Add snippet to source
/etc/profile when running via ssh.
(zsh-get-configuration-files): Always add .zshenv as it is never empty.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2023-09-17 15:31:04 +02:00
Kjartan Oli Agustsson 2643fa3513
home: services: redshift: Use redshift package specified in configuration
* gnu/home/services/desktop.scm (redshift-shepherd-service): Use the redshift
package specified by config.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2023-09-14 15:53:23 +02:00
Efraim Flashner 1af35bbb25
home: Add parcimonie service.
* gnu/home/services/gnupg.scm (home-parcimonie-service-type,
home-parcimonie-configuration): New variables.
* doc/guix.texi (GNU Privacy Guard): Document it.
2023-09-04 11:11:58 +03:00
Ludovic Courtès cf6abf50db
home: services: dicod, syncthing: Import (gnu home services shepherd).
Fixes <https://issues.guix.gnu.org/65510>.

Without this import, 'shepherd-service-type' is not mapped, leading to
an error about missing 'system' target.

* gnu/home/services/dict.scm,
gnu/home/services/syncthing.scm: Add #:use-module clause.

Reported-by: Morgan Smith <Morgan.J.Smith@outlook.com>
2023-08-29 11:42:16 +02:00
Nicolas Graves 613e913836
home: services: ssh: Fix compilation warning with 'serialize-match-criteria'.
* gnu/home/services/ssh.scm (serialize-match-criteria): New procedure.
(serialize-openssh-host): Use it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2023-08-20 22:59:09 +02:00
Ludovic Courtès 7605c01fcc
home: services: Add Syncthing.
* gnu/home/services/syncthing.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* gnu/services/syncthing.scm (<syncthing-configuration>)[home-service?]:
New field.
Adjust 'provision' and 'requirement' depending on 'home-service?', and
likewise for #:user and #:group.
Use 'filter' + 'negate' instead of 'remove'.
* doc/guix.texi (Networking Services): Add note and cross-reference to
"Networking Home Services".
(Networking Home Services): New node.
2023-08-20 22:48:48 +02:00
Ludovic Courtès 1ce3424e22
home: services: Add dicod.
* gnu/home/services/dict.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* gnu/services/dict.scm (<dicod-configuration>)[home-service?]: New
field.
(dicod-shepherd-service): Do not map /dev/log when 'home-service?' is
true.  Remove 'user-processes' requirement when 'home-service?' is
true.
(dicod-shepherd-service): Set #:user and #:group to #f when
'home-service?' is true.
* doc/guix.texi (Miscellaneous Home Services): New node.
(Miscellaneous Services): Add cross-reference.
2023-08-20 22:48:47 +02:00
Ludovic Courtès 1c30d5a6bf
home: services: mcron: Define as a mapping of the system service.
* gnu/services/mcron.scm (list-of-gexps?): Remove.
(<mcron-configuration>): Rewrite using 'define-record-type*'.
[home-service?]: New field.
[log-file]: Make thunked and changed default value.
(mcron-shepherd-services): Honor 'home-service?' and remove use of
'maybe-value-set?'.
(mcron-service-type): Inherit 'home-service?' from CONFIG.
(generate-doc): Remove.
* gnu/home/services/mcron.scm (list-of-gexp?)
(<home-mcron-configuration>, job-files, shepherd-schedule-action)
(home-mcron-shepherd-services, home-mcron-profile)
(home-mcron-extend, generate-doc): Remove.
(home-mcron-configuration): Turn into a macro.
(home-mcron-service-type): Define in terms of
'system->home-service-type'.
<top level>: Add service type mapping.
2023-08-20 22:48:47 +02: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
Ludovic Courtès 7d9fdfb19d
home: services: bash: Properly quote shell aliases.
Fixes <https://issues.guix.gnu.org/63048>.
Reported by Ekaitz Zarraga <ekaitz@elenq.tech>.

* gnu/home/services.scm (with-shell-quotation-bindings): New procedure.
(environment-variable-shell-definitions): Use it instead of inline copy.
* gnu/home/services/shells.scm (bash-serialize-aliases): Use it.  Add
clause for 'literal-string?'.
* tests/guix-home.sh: Add 'aliases' to 'home-bash-extension' and test it.
2023-07-11 15:47:56 +02:00
Efraim Flashner 69d051f715
home: Add inputrc service.
* gnu/home/services/shells.scm (home-inputrc-service-type,
home-inputrc-configuration): New variables.
(serialize-inputrc-key-bindings, serialize-inputrc-variables,
serialize-inputrc-conditional-constructs,
serialize-inputrc-extra-content): New procedures.
* doc/guix.texi (Shells Home Services): Document it.
2023-07-05 18:57:32 +03: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
Efraim Flashner 87cf2a859d
home: services: ssh: Allow unset boolean options in ssh-config.
From man 5 ssh_config:
Unless noted otherwise, for each parameter, the first obtained value
will be used.

We want to allow falling through to the first explicitly chosen user
defined value.

* gnu/home/services.ssh.scm (define-maybe boolean): New configuration.
(openssh-host)[forward-x11?, forward-x11-trusted?, forward-agent?,
compression?]: Replace default value with maybe-boolean.
* doc/guix.texi (Secure Shell): Update documentation to match the
changes in the code.
2023-06-14 21:51:44 +03:00
Nicolas Graves 9504dd2c3e
home: services: ssh: Export home-ssh-agent variables.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2023-06-09 23:28:45 +02:00
Nicolas Graves b97f158456
home: services: ssh: Export configuration predicates.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2023-06-09 23:28:37 +02:00
Nicolas Graves 95853e61a7
home: services: ssh: Add 'match-criteria' option.
* gnu/home/services/ssh.scm (serialize-address-family): Raise
'&formatted-message' instead of '&error'.
(ssh-match-keywords): New variable.
(match-criteria?): New procedure.
(match-criteria): New maybe type.
(openssh-host)[name]: Turn into 'maybe-string'.
[match-criteria]: New field.
(serialize-openssh-host): Adjust accordingly.
* doc/guix.texi (Secure Shell): Document it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2023-06-09 23:28:18 +02:00
Nicolas Graves f19e1b4f96
home: services: ssh: Add 'add-keys-to-agent' field.
* gnu/home/services/ssh.scm (<home-openssh-configuration>)[add-keys-to-agent]:
New field.
(serialize-add-keys-to-agent): New procedure.
(openssh-configuration->string): Use it.
* doc/guix.texi (Secure Shell): Document it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2023-06-09 23:27:52 +02:00
Tanguy Le Carrour 110462bb2f
home: services: Add msmtp service.
* gnu/home/services/mail.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* doc/guix.texi (Mail Home Services): New node.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2023-05-30 00:15:30 +02:00
Janneke Nieuwenhuizen c57693846c
home: services: ssh: Do not empty ~/.ssh/authorized_keys by default.
The default was an empty list which would remove any ~/.ssh/authorized_keys
file and replace it with a symlink to an empty file.  On some systems, notably
Ubuntu 22.10, the guix home generated ~/.ssh/authorized_keys file does not
allow login.

* doc/guix.texi (Secure Shell): Update, describe default #false value.
* gnu/home/services/ssh.scm (<home-openssh-configuration>)
[authorized-keys]: Change default to #f.
(openssh-configuration-files): Cater for default #f value: Do not register
"authorized_keys".
2023-05-24 11:56:12 +02: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
Andrew Patterson 8d442e8a53
gnu: home: services: fontutils: Add support for SXML fragments.
* gnu/home/services/fontutils.scm (add-fontconfig-config-file): Add
support for adding arbitrary SXML configuration into fonts.conf;
* doc/guix.texi (Fonts Services): Update the documentation.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2023-05-11 16:38:27 +02:00
Saku Laesvuori 9043e23196
home: services: openssh: Add configuration option for jump proxies
Add a new 'proxy' field to openssh-host to allow ProxyCommand or
ProxyJump, but not both, to be configured. Configuring both would cause
the serialization order to determine which one is used. Deprecate the
'proxy-command' field because the 'proxy' field replaces it.

* gnu/home/services/ssh.scm (proxy-jump->string,
proxy-command-or-jump-list?, serialize-proxy-command-or-jump-list,
sanitize-proxy-command): New procedure.
(proxy-jump, proxy-command): New record type.
(openssh-host)[proxy-command]: Mark field as deprecated because OpenSSH
can't have ProxyCommand and ProxyJump configured at the same time.
* doc/guix.texi (Secure Shell): Update to match the changes to the
service.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2023-04-21 17:09:50 +02:00
Ludovic Courtès 6420015e6d
home: Add gpg-agent service.
* gnu/home/services/gnupg.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* doc/guix.texi (GNU Privacy Guard): New node.
(Secure Shell): Link to it.
2023-04-08 22:56:19 +02:00
Bruno Victal 5c893787be
home: xdg-base-directories: Set correct value for XDG_STATE_HOME.
XDG Base Directory Specification 0.8 officially introduces the
XDG_STATE_HOME environment variable.

Fixes <https://issues.guix.gnu.org/issue/61809>.

* gnu/home/services/xdg.scm
(home-xdg-base-directories-configuration)[state-home]: Set default value
according to spec.  Update field documentation.
(home-xdg-base-directories-service-type): Update service description.

Signed-off-by: Andrew Tropin <andrew@trop.in>
2023-04-07 09:07:32 +04:00
Bruno Victal 0fbb356714
services: replace bare serializers with (serializer ...)
* gnu/home/services/shells.scm
(home-zsh-configuration)[environment-variables]: Use (serializer ...).
(home-bash-configuration)[aliases, environment-variables]: Likewise.
(home-fish-configuration)[abbreviations, aliases]
[environment-variables]: Likewise.
* gnu/services/audio.scm (mpd-configuration)[music-dir, playlist-dir]
[endpoints, address, inputs, archive-plugins, input-cache-size]
[decoders, filters, playlist-plugins]: Likewise.
* gnu/services/linux.scm (fstrim-configuration)[extra-arguments]:
Likewise.
* gnu/services/security.scm (fail2ban-jail-configuration)[backend]
[log-encoding, extra-content]: Likewise.
* tests/services/configuration.scm: Update tests.
("serialize-configuration [deprecated]"): New test.

Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2023-04-02 12:35:30 +02:00
Jan (janneke) Nieuwenhuizen 8304634260
home: services: Export home-xmodmap-service-type and configuration.
This is a follow-up to commit
    511ae8325d
    home: services: Add home-xmodmap-service-type.

* gnu/home/services/desktop.scm (home-xmodmap-service-type,
home-xmodmap-configuration): Export.
2023-03-26 19:57:07 +02:00
conses 511ae8325d
home: services: Add home-xmodmap-service-type.
* gnu/home/services/desktop.scm (home-xmodmap-service-type)
(home-xmodmap-configuration): New variables;
(serialize-xmodmap-configuration)
(xmodmap-shepherd-service): New procedures;
* doc/guix.texi (Desktop Services): Document it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2023-03-17 23:20:36 +01:00
Jan (janneke) Nieuwenhuizen 2714c9ef2d
home: services: ssh-agent: Handle setting of SSH_AUTH_SOCK.
* gnu/home/services/ssh.scm (home-ssh-agent-environment-variables): New
procedure.
(home-ssh-agent-service-type): Use it as ahome-environment-service type
extension.
* doc/guix.texi (Secure Shell): Remove advice about, and examples of setting
SSH_AUTH_SOCK.
2023-03-17 12:44:33 +01:00
Ludovic Courtès 8f219e658d
home: services: kodi, znc, ssh-agent: Use 'match-record'.
* gnu/home/services/media.scm (home-kodi-services): Use 'match-record'
instead of 'match'.
* gnu/home/services/messaging.scm (home-znc-services): Likewise.
* gnu/home/services/ssh.scm (home-ssh-agent-services): Likewise.
2023-03-16 23:03:17 +01:00
Ludovic Courtès c68648a8a5
home: services: znc: Remove host-side use of (shepherd support).
This is a followup to 193f547ca3, which
inadvertently pulled in (shepherd support) on the host side.

* gnu/home/services/messaging.scm (home-znc-services): Change 'command' and
'log-file' to gexps.  Add 'modules' field to 'shepherd-service'.
2023-03-16 17:29:03 +01:00
Ludovic Courtès 6afd1fd6bc
home: services: kodi: Remove host-side use of (shepherd support).
This is a followup to 70056b1b2b, which
inadvertently pulled in (shepherd support) on the host side.

* gnu/home/services/media.scm (home-kodi-services): Change 'command' and
'logfile' to gexps.  Add 'modules' field to 'shepherd-service'.
2023-03-16 17:23:51 +01:00
Ludovic Courtès be7e2bf7eb
home: services: ssh-agent: Remove host-side use of (shepherd support).
This is a followup to 2c2f382e75, which
inadvertently pulled in (shepherd support) on the host side.

* gnu/home/services/ssh.scm (<home-ssh-agent-configuration>)[socket-directory]:
Change value to a gexp.
(home-ssh-agent-services): Change 'socket-file' and 'command' to a
gexp.  Add 'modules' field to 'shepherd-service'.
* doc/guix.texi (Secure Shell): Adjust accordingly.
2023-03-16 17:09:46 +01:00