all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [bug#53781] [PATCH shepherd] support: Use XDG_STATE_HOME for log files.
@ 2022-02-04  8:07 Liliana Marie Prikler
  2022-02-12 10:37 ` Brice Waegeneire
  2022-03-24 22:10 ` bug#53781: " Ludovic Courtès
  0 siblings, 2 replies; 3+ messages in thread
From: Liliana Marie Prikler @ 2022-02-04  8:07 UTC (permalink / raw)
  To: 53781

As per XDG Base Directory Specification 0.8, "action history" (such as logs)
ought to be stored in $XDG_STATE_HOME, defaulting to $HOME/.local/state.
Respect this specification.

* modules/shepherd/support.scm (%user-log-dir): Define in terms of
XDG_STATE_HOME.
* doc/shepherd.texi: Adjust accordingly.
* tests/basic.sh: Adjust accordingly.
---
 doc/shepherd.texi            | 3 ++-
 modules/shepherd/support.scm | 4 ++--
 tests/basic.sh               | 4 +++-
 3 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/doc/shepherd.texi b/doc/shepherd.texi
index 94f6131..b779a5f 100644
--- a/doc/shepherd.texi
+++ b/doc/shepherd.texi
@@ -419,7 +419,8 @@ permissions are not as expected.
 Log output into @var{file}.
 
 For unprivileged users, the default log file is
-@file{$XDG_DATA_DIR/.local/share/shepherd/shepherd.log}.
+@file{$XDG_STATE_HOME/shepherd/shepherd.log} with @file{$XDG_STATE_HOME}
+defaulting to @file{$HOME/.local/state}.
 
 @cindex syslog
 When running as root, the default behavior is to connect to
diff --git a/modules/shepherd/support.scm b/modules/shepherd/support.scm
index 21c59f7..72b74ba 100644
--- a/modules/shepherd/support.scm
+++ b/modules/shepherd/support.scm
@@ -277,8 +277,8 @@ There is NO WARRANTY, to the extent permitted by law.")))
 
 (define %user-log-dir
   ;; Default log directory if shepherd is run as a normal user.
-  (string-append (or (getenv "XDG_DATA_DIR")
-                     (string-append user-homedir "/.local/share"))
+  (string-append (or (getenv "XDG_STATE_HOME")
+                     (string-append user-homedir "/.local/state"))
                  "/shepherd"))
 
 (define %user-runtime-dir
diff --git a/tests/basic.sh b/tests/basic.sh
index 5079aa1..5ef1fb0 100644
--- a/tests/basic.sh
+++ b/tests/basic.sh
@@ -260,7 +260,9 @@ test -f "$log"
 
 # Set XDG_CONFIG_HOME for configuration files.
 export XDG_CONFIG_HOME=$confdir
-export XDG_DATA_DIR=$datadir
+export XDG_DATA_HOME=$datadir
+# Reuse XDG_DATA_HOME as XDG_STATE_HOME for backwards compatibility.
+export XDG_STATE_HOME=$datadir
 mkdir -p $confdir/shepherd
 mkdir -p $datadir/shepherd
 mv $conf $confdir/shepherd/init.scm
-- 
2.34.0





^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [bug#53781] [PATCH shepherd] support: Use XDG_STATE_HOME for log files.
  2022-02-04  8:07 [bug#53781] [PATCH shepherd] support: Use XDG_STATE_HOME for log files Liliana Marie Prikler
@ 2022-02-12 10:37 ` Brice Waegeneire
  2022-03-24 22:10 ` bug#53781: " Ludovic Courtès
  1 sibling, 0 replies; 3+ messages in thread
From: Brice Waegeneire @ 2022-02-12 10:37 UTC (permalink / raw)
  To: Liliana Marie Prikler; +Cc: 53781

Hello Liliana,


Liliana Marie Prikler <liliana.prikler@gmail.com> writes:

> As per XDG Base Directory Specification 0.8, "action history" (such as logs)
> ought to be stored in $XDG_STATE_HOME, defaulting to $HOME/.local/state.
> Respect this specification.
>
> * modules/shepherd/support.scm (%user-log-dir): Define in terms of
> XDG_STATE_HOME.
> * doc/shepherd.texi: Adjust accordingly.
> * tests/basic.sh: Adjust accordingly.
> ---
>  doc/shepherd.texi            | 3 ++-
>  modules/shepherd/support.scm | 4 ++--
>  tests/basic.sh               | 4 +++-
>  3 files changed, 7 insertions(+), 4 deletions(-)

[...]

> diff --git a/tests/basic.sh b/tests/basic.sh
> index 5079aa1..5ef1fb0 100644
> --- a/tests/basic.sh
> +++ b/tests/basic.sh
> @@ -260,7 +260,9 @@ test -f "$log"
>  
>  # Set XDG_CONFIG_HOME for configuration files.
>  export XDG_CONFIG_HOME=$confdir
> -export XDG_DATA_DIR=$datadir
> +export XDG_DATA_HOME=$datadir
> +# Reuse XDG_DATA_HOME as XDG_STATE_HOME for backwards compatibility.
> +export XDG_STATE_HOME=$datadir
>  mkdir -p $confdir/shepherd
>  mkdir -p $datadir/shepherd
>  mv $conf $confdir/shepherd/init.scm

I don't get why you define XDG_DATA_HOME here, as it wasn't used before and it
is a test and shouldn't need to be backward compatible except for testing  such
backward compatibility.

Otherwise it LGTM! Thank you for the patch.

Cheers,
- Brice




^ permalink raw reply	[flat|nested] 3+ messages in thread

* bug#53781: [PATCH shepherd] support: Use XDG_STATE_HOME for log files.
  2022-02-04  8:07 [bug#53781] [PATCH shepherd] support: Use XDG_STATE_HOME for log files Liliana Marie Prikler
  2022-02-12 10:37 ` Brice Waegeneire
@ 2022-03-24 22:10 ` Ludovic Courtès
  1 sibling, 0 replies; 3+ messages in thread
From: Ludovic Courtès @ 2022-03-24 22:10 UTC (permalink / raw)
  To: Liliana Marie Prikler; +Cc: 53781-done

Hi,

Liliana Marie Prikler <liliana.prikler@gmail.com> skribis:

> As per XDG Base Directory Specification 0.8, "action history" (such as logs)
> ought to be stored in $XDG_STATE_HOME, defaulting to $HOME/.local/state.
> Respect this specification.
>
> * modules/shepherd/support.scm (%user-log-dir): Define in terms of
> XDG_STATE_HOME.
> * doc/shepherd.texi: Adjust accordingly.
> * tests/basic.sh: Adjust accordingly.

Pushed as ec2a0b07a6dedcbec3cf6bb7328b144a117873e8, thanks!

Ludo’.




^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2022-03-24 22:11 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-02-04  8:07 [bug#53781] [PATCH shepherd] support: Use XDG_STATE_HOME for log files Liliana Marie Prikler
2022-02-12 10:37 ` Brice Waegeneire
2022-03-24 22:10 ` bug#53781: " Ludovic Courtès

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.