all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: "Philip McGrath" <philip@philipmcgrath.com>
To: "Andrew Tropin" <andrew@trop.in>, "Bruno Victal" <mirai@makinata.eu>
Cc: 61982@debbugs.gnu.org
Subject: [bug#61982] [PATCH 2/2] home: services: xdg-base-directories: Deprecate XDG_LOG_HOME.
Date: Sun, 09 Apr 2023 15:09:14 -0400	[thread overview]
Message-ID: <92d07a8a-aac9-42c7-809d-66373358c77b@app.fastmail.com> (raw)
In-Reply-To: <875ya7x3kl.fsf@trop.in>

Hi,

On Fri, Apr 7, 2023, at 8:46 AM, Andrew Tropin wrote:
> On 2023-04-07 12:47, Bruno Victal wrote:
>
>> Hi Andrew,
>>
>> On 2023-04-07 09:45, Andrew Tropin wrote:
>>> On 2023-03-05 15:19, Bruno Victal wrote:
>>>> --- a/gnu/home/services/desktop.scm
>>>> +++ b/gnu/home/services/desktop.scm
>>>> @@ -206,8 +206,8 @@ (define (home-dbus-shepherd-services config)
>>>>                           (default-environment-variables))
>>>>                     #:log-file
>>>>                     (format #f "~a/dbus.log"
>>>> -                           (or (getenv "XDG_LOG_HOME")
>>>> -                               (format #f "~a/.local/var/log"
>>>> +                           (or (getenv "XDG_STATE_HOME")
>>>> +                               (format #f "~a/.local/state"
>>> 
>>> If we deprecate XDG_LOG_HOME, maybe it's a good idea to make a helper
>>> function, which can be reused across different services?  
>>> 
>>> Also, how about appending /log subdirectory by default?
>>>> WDYT?
>>
>> I'm wondering if this continued usage of XDG_LOG_HOME was a good idea,
>> maybe the service should just start using XDG_STATE_HOME as soon as possible?
>> (in which case, this patch will have to be reworked to reflect that)
>> This way we avoid introducing yet more code to handle deprecated code.
>>
>> It shouldn't result in any kind of problems, XDG_LOG_HOME will still be set in the meantime
>> for scripts and code that happen to use it and are not part of (upstream) guix.
>>
>> WDYT?
>
> I meant introducing something like this
> (define (get-log-dir)
>  (string-append
>   (getenv "XDG_STATE_HOME") "/log"))
>

Within the XDG directories, I think (unless perhaps you only use a single file) you are supposed to keep everything in a subdirectory named for your application (or with a well-known name for things shared among multiple applications). For example, on my system, I can find log files in "$XDG_DATA_HOME/akonadi/Akonadi.error", "$XDG_DATA_HOME/akonadi/Akonadi.error.old", "$XDG_DATA_HOME/sddm/wayland-session.log", and "$XDG_DATA_HOME/sddm/xorg-session.log". (Apparently SDDM and Akonadi haven't been updated to use $XDG_STATE_HOME.) I think Guix Home services should follow that convention, rather than putting all logs together in "$XDG_STATE_HOME/log/".

>
> and use it instead of
> (or (getenv "XDG_STATE_HOME")
>  (format #f "~a/.local/state" (getenv "HOME")))
>

Perhaps my least-favorite part of the XDG Base Directory specification is having to repeat the default values so many times. But I understood the conclusion from <https://issues.guix.gnu.org/56050#3> to be that Guix should be able to assume that the XDG variables are all explicitly set, either by Guix System or by the installation process for Guix on a foreign distro.

-Philip 




  reply	other threads:[~2023-04-09 19:10 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-03-05 15:16 [bug#61982] [PATCH 0/2] Respect XDG Base Directory Specification 0.8 Bruno Victal
2023-03-05 15:19 ` [bug#61982] [PATCH 1/2] home: services: xdg-base-directories: Set correct value for XDG_STATE_HOME Bruno Victal
2023-03-05 15:19   ` [bug#61982] [PATCH 2/2] home: services: xdg-base-directories: Deprecate XDG_LOG_HOME Bruno Victal
2023-04-07  8:45     ` Andrew Tropin
2023-04-07 11:47       ` Bruno Victal
2023-04-07 12:46         ` Andrew Tropin
2023-04-09 19:09           ` Philip McGrath [this message]
2023-04-09 19:57             ` ( via Guix-patches via
2023-04-09 20:01               ` ( via Guix-patches via
2023-06-15  9:35     ` bug#61982: " Andrew Tropin
2023-06-15 18:09       ` [bug#61982] " Philip McGrath
2023-06-16  3:28         ` Andrew Tropin
2023-06-17 18:22           ` Philip McGrath
2023-04-07  6:43   ` [bug#61982] [PATCH 1/2] home: services: xdg-base-directories: Set correct value for XDG_STATE_HOME Andrew Tropin
2023-06-09 21:01     ` [bug#61982] [PATCH 0/2] Respect XDG Base Directory Specification 0.8 Ludovic Courtès
2023-06-14  9:27       ` Andrew Tropin
2023-04-11 20:01 ` [bug#61982] [PATCH 2/2] home: services: xdg-base-directories: Deprecate XDG_LOG_HOME ( via Guix-patches via
2023-04-12 17:17   ` Andrew Tropin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=92d07a8a-aac9-42c7-809d-66373358c77b@app.fastmail.com \
    --to=philip@philipmcgrath.com \
    --cc=61982@debbugs.gnu.org \
    --cc=andrew@trop.in \
    --cc=mirai@makinata.eu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.