Subject: Re: [bug#60521] [PATCH] home: Add home-stow-migration-service.

From: Ludovic Courtès <[email-masked]>
Date: Mon, 23 Jan 2023 11:23:27 +0100

Hi,

Andrew Tropin <[email-masked]> skribis:

>>> +A suitable configuration would then be:
>>> +
>>> +@lisp
>>> +  (home-stow-migration-service
>>> +   (string-append (getenv "HOME")
>>> +                  "/.dotfiles"))
>>> +@end lisp
>
> The service looks neat!  Thank you, Giacomo.
>
> Ludo, wouldn't it be better and safer to use (local-file "./dotfiles"
> #:recursive? #t) here?  I find it kinda dangerous for reproducibility to
> reference local files and make logic inside the service to depend on it.

Currently I don’t think that’s possible because the service imports
those files at configuration time, but the end result is the same: those
dot files are copied to the store and that’s what’s referenced.

I think it’s okay like this, but I don’t have a strong opinion.

That said, from a usability viewpoint, it does mean that users would
typically have to version-controlled directories (one with the Home
config file, and one with the Stow-style dot file tree), which is not
great.  Perhaps the manual could say something about it.

Thanks,
Ludo’.