guix_mirror_bot pushed a commit to branch misc-world-rebuild in repository guix.
commit 1ead5383f3788ac61dcd0e01fe762c33dd8ed5d4 Author: Noé Lopez <[email protected]> AuthorDate: Mon Apr 20 15:10:53 2026 +0200 home: xdg-user-directories: Support Projects directory. * gnu/home/services/xdg.scm (home-xdg-user-directories-configuration): Add projects field. Fix documentation of desktop field. * doc/guix.texi (Miscellaneous Home Services): Add documentation for home-xdg-user-directories. Change-Id: I8935d7c368cc9bd1d47ffbce3d3ab3cb60ac468a Signed-off-by: Noé Lopez <[email protected]> --- doc/guix.texi | 63 +++++++++++++++++++++++++++++++++++++++++++++++ gnu/home/services/xdg.scm | 8 +++--- 2 files changed, 68 insertions(+), 3 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 8859888113..95d0b9a944 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -54331,6 +54331,69 @@ Where the service will write its logs. If unset, it defaults to @end table @end deftp +@node XDG Home Services +@subsection XDG Home Services + +The @code{(gnu home services xdg)} module provides services related to +XDG specifications for the desktop. + +@subsubheading XDG User Directories + +@defvar{home-xdg-user-directories-service-type} + +This service sets the names of default user directories such as +@samp{Downloads} and @samp{Documents}. These settings are respected by +most applications via @var{xdg-user-dirs}. + +To disable a directory, set it to @code{"$HOME"}. + +@end defvar + +@c %start of fragment + +@deftp {Data Type} home-xdg-user-directories-configuration +Available @code{home-xdg-user-directories-configuration} fields are: + +@table @asis +@item @code{desktop} (default: @code{"$HOME/Desktop"}) (type: string) +Default @samp{Desktop} directory, this is what you see on your +background when using a desktop environment, e.g. KDE. + +@item @code{documents} (default: @code{"$HOME/Documents"}) (type: string) +Default directory to put documents like PDFs. + +@item @code{download} (default: @code{"$HOME/Downloads"}) (type: string) +Default directory downloaded files, this is where your Web-broser will +put downloaded files in. + +@item @code{music} (default: @code{"$HOME/Music"}) (type: string) +Default directory for audio files. + +@item @code{pictures} (default: @code{"$HOME/Pictures"}) (type: string) +Default directory for pictures and images. + +@item @code{projects} (default: @code{"$HOME/Projects"}) (type: string) +Default directory for projects. + +@item @code{publicshare} (default: @code{"$HOME/Public"}) (type: string) +Default directory for shared files, which can be accessed by other users +on local machine or via network. + +@item @code{templates} (default: @code{"$HOME/Templates"}) (type: string) +Default directory for templates. They can be used by graphical file +manager or other apps for creating new files with some pre-populated +content. + +@item @code{videos} (default: @code{"$HOME/Videos"}) (type: string) +Default directory for videos. + +@end table + +@end deftp + +@c %end of fragment + + @node Guix Home Services @subsection Guix Home Services diff --git a/gnu/home/services/xdg.scm b/gnu/home/services/xdg.scm index e4121a1e50..04bf2ed418 100644 --- a/gnu/home/services/xdg.scm +++ b/gnu/home/services/xdg.scm @@ -204,9 +204,8 @@ for example)."))) (define-configuration home-xdg-user-directories-configuration (desktop (string "$HOME/Desktop") - "Default ``desktop'' directory, this is what you see on your -desktop when using a desktop environment, -e.g. GNOME (@pxref{XWindow,,,guix.info}).") + "Default @samp{Desktop} directory, this is what you see on your background +when using a desktop environment, e.g. KDE.") (documents (string "$HOME/Documents") "Default directory to put documents like PDFs.") @@ -220,6 +219,9 @@ will put downloaded files in.") (pictures (string "$HOME/Pictures") "Default directory for pictures and images.") + (projects + (string "$HOME/Projects") + "Default directory for projects.") (publicshare (string "$HOME/Public") "Default directory for shared files, which can be accessed by other
