Hi Leo, Leo Prikler <[email protected]> skribis:
> currently, our configuration is (more or less true to XDG) scattered > around various places. Even if one does not make use of more advanced > features, one will at least have two profiles: > - ~/.config/guix/current > - ~/.guix-profile > If one does have more configuration data, the channels.scm must be put > under ~/$XDG_CONFIG_HOME/guix/. Note, that this need not be > ~/.config/guix, but most likely is. If one wishes to use more than one > profile, so as to keep the build times for each shorter, one has to > write custom code and can not rely on /etc/profile. > > This is a proposal to change the current approach. Instead of > splitting Guix config in a way that tries to conform to XDG, but does > not really, I propose to use a single directory ~/.guix for all > configuration. > This includes: > - ~/.guix/channels.scm > - ~/.guix/channels (instead of ~/.guix/current, to match the name > channels.scm) > - ~/.guix/profile > - user-generated profiles To me, the most important aspect of your proposal is having all profiles in one place (Konrad proposed something similar recently, well, “last year.” :-)) Like I wrote then, ‘guix package --list-profiles’ was an attempt at making it easier to locate profiles, even if they’re not in the same directory, so that you can easily operate on them. What Konrad noted is that this returns all the profiles, including ~/.config/guix/current-kind of profiles, which may be inconvenient. I’m generally wary of enforcing arbitrary conventions, such as a specific directory to store all profiles, but at the same time I agree that this can be convenient, so I’m a bit split! Also, such a change would need a transition plan: what does ‘-p’ become, etc. Thoughts? Ludo’.
