help-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Guix home, guix system, channels, some noob questions


From: Julien Lepiller
Subject: Re: Guix home, guix system, channels, some noob questions
Date: Thu, 12 May 2022 11:28:46 +0200
User-agent: K-9 Mail for Android

guix install something installs for the current user. Note that, if you do that 
as root, the package is also only available to root. The only way to install or 
remove a global package is through guix system and its configuration file.

I don't know how guix home interacts with other solutions.

We don't have a good solution for secrets. We advise to manage the 
"out-of-band" to make sure that you don't share the secret accidentally (eg. 
publishing your configuration with others) and that the secret doesn't end up 
in the store (it's world-readable).

On May 12, 2022 10:40:18 AM GMT+02:00, "Sébastien Rey-Coyrehourcq" 
<sebastien.rey-coyrehourcq@univ-rouen.fr> wrote:
>Thanks Julien,
>
>Ok i see, like you say jpoiret also say me that the concept are orthogonal, so 
>if i understand well :
>
>- adding emacs as system package, i suppose this is available for all users
>
>- adding emacs as home package, i suppose this is available only for me
>
>And *guix install something* install for which, system or home or both ?
>
>Some other general questions :
>
>- About dotfile management, is it possible to use chezmoi, yadm, stow in // of 
>guix home ?
>
>I'm interested by some example if you have.
>
>- About secrets management, i know this is very complicated in nix (there are 
>one hundred way to do the things, more or less secure), how that works if i 
>want to inject *secrets* into guix home scm file and maintain security when i 
>share or publish my config with/to others ?
>
>Thanks,
>
>Best regards
>
>
>Le 11/05/2022 à 17:48, Julien Lepiller a écrit :
>> Guix home and guix system are pretty similar as they are used to 
>> declaratively manage configuration. But, they are not mutually exclusive. 
>> Guix system is the only way to install and update the Guix System (hence the 
>> name ;)).
>> 
>> Guix home manages your user's configuration (in /home) while guix system 
>> manages the system's configuration (traditionally in /etc, though less true 
>> for guix). The two are acting in a very similar on two different things.
>> 
>> Also, you can use guix home on a foreign distro, or choose to not use guix 
>> home on the Guix System.
>> 
>> HTH!
>> 
>> On May 11, 2022 4:55:23 PM GMT+02:00, "Sébastien Rey-Coyrehourcq" 
>> <sebastien.rey-coyrehourcq@univ-rouen.fr> wrote:
>> 
>>     Hi,
>> 
>>     My other question remain about guix home / guix system relation, and 
>> sudo, but jpoiret found my main problem, my channels.scm are not well 
>> defined / not good ...
>> 
>>     - I made (cons * (channel ...)) (cons* (channel ...)) etc.
>> 
>>     - and .. the correct way is (cons * (channel ...) (channel ...))
>> 
>>     Everything run fine now with *guix system reconfigure 
>> /.config/guix/system.scm*
>> 
>>     Best
>> 
>>     Le 11/05/2022 à 16:36, Sébastien Rey-Coyrehourcq a écrit :
>> 
>>         Hi, Thanks Julien, I see on the doc that *sudo* run command as
>>         user and not as root like other distro. So, to be sure, if i
>>         run *sudo guix something*, i don't change user to run this
>>         command isn't it ? Actually i only work with my account
>>         "myuser" into group ("users","wheel",etc.) using or not using
>>         *sudo* (this is not clear when i need or not) for running
>>         *guix* command. About the commands with
>>         /.config/guix/channels.scm (see content here
>>         https://paste.debian.net/1240553)  : a) *guix describe* and
>>         *sudo guix describe* and *sudo -E guix describe* return
>>         Génération 7    11 mai 2022 16:01:25    (actuelle)   guix
>>         d24ad39     URL du dépôt :
>>         https://git.savannah.gnu.org/git/guix.git     branche : master
>>             commit : d24ad3949127a938cad306f0524c120afe5e2e4f b) *guix
>>         system describe* return Génération 7    10 mai 2022
>>         12:39:34    (actuelle)   nom de fichier :
>>         /var/guix/profiles/system-7-link   nom de fichier canonique :
>>         /gnu/store/az1ff4ll80dbrbkayc4y0jqgnc2m37mp-system   étiquette
>>         : GNU with Linux 5.17.5   chargeur de démarrage : grub-efi  
>>         périphérique racine : /dev/mapper/cryptroot   noyau :
>>         /gnu/store/0ffifgs0ixgz0bf1pcahkfdkx9f7h720-linux-5.17.5/bzImage
>>           canaux :     nonguix:       URL du dépôt :
>>         https://gitlab.com/nonguix/nonguix       branche : master
>>               commit : 1de0c32142c54bc73af5556d5e45c77152b31f0f    
>>         guix:       URL du dépôt :
>>         https://git.savannah.gnu.org/git/guix.git       branche :
>>         master       commit : d775a24344d4a910f6a19072c595bdafcf104b6f
>>           fichier de configuration :
>>         /gnu/store/idr8ds86m69gbx217g5h3qm6m353wliz-configuration.scm
>>         c) *guix home describe* return Génération 1    10 mai 2022
>>         16:59:14    (actuelle)   nom de fichier :
>>         /var/guix/profiles/per-user/reyman/guix-home-1-link   nom de
>>         fichier canonique :
>>         /gnu/store/3q599hyjkx8c5ywsdy2gqfmx2bjzgzmm-home   canaux :
>>             flat:       URL du dépôt :
>>         https://github.com/flatwhatson/guix-channel.git       branche
>>         : master       commit :
>>         094746c1e2e90f2df1e598ab1fd0abb4d75ce84d     guix:       URL
>>         du dépôt : https://git.savannah.gnu.org/git/guix.git      
>>         branche : master       commit :
>>         0f705472126f7b935e0783bcd8fec831b7a0593b   fichier de
>>         configuration :
>>         /gnu/store/ip90ffd0bzlr7j6kw5ky2pgxpyq1x23c-configuration.scm
>>         With jpoiret, i try to resolve the issue on chat, i also try
>>         to run manually *guix pull -C ./config/guix/channels.scm*
>>         without success. A *command -v guix* return
>>         */home/myuser/.config/current/bin/guix* Best regards, SR Le
>>         11/05/2022 à 12:47, Julien Lepiller a écrit :
>> 
>>             Hi Sébastien, When you run guix describe, it's running the
>>             guix for your user, which miggt be different from the one
>>             you run when you use sudo. That could explain why the
>>             modules are not found. I don't think guix home has
>>             anything to do with that. I noticed that the first time
>>             you use sudo -E, whereas you use only sudo on step 5.
>>             Mayée that's why it fails? I would run sudo guix describe
>>             and sudo -E guix describe to see how the two might be
>>             different from your user's guix :) HTH! On May 11, 2022
>>             11:09:19 AM GMT+02:00, "Sébastien Rey-Coyrehourcq"
>>             <sebastien.rey-coyrehourcq@univ-rouen.fr> wrote:     Hi
>>             Guix people :)     I'm starting guix, picking information
>>             when needed into documentation.     I'm facing
>>             difficulties with channels.scm since i start using "guix
>>             home", i read the doc page, but i need some other things
>>             to understand.     Here my logic to start just after
>>             install :     1 - I modify my //etc/guix/channels.scm/
>>             file to add some modules : /nonguix/ (my computer don't
>>             work well without) and /emacs-native-dep/ from flatwhatson
>>             flat channel.     2 - I /guix -E guix system reconfigure
>>             /etc/config.scm/, /guix pull/, and everything goes well
>>                 3 - Like explained in the doc, I run /guix home import
>>             ~/src/guix-config /that generate /a
>>             //home-configuration.scm//     /     /4 - /Into
>>             /home-configuration.scm///i add the package htop and
>>             /emacs-native-comp/     5 - In the guix home doc the next
>>             command is /guix home reconfigure config.scm /but this is
>>             probably a typo and i run /guix home reconfigure
>>             ~/src/guix-config/home-configuration.scm/     6 -
>>             Everything goes well, emacs-native-dep compile during 1
>>             hour, problems arrive after that.     7 - I'm moving the
>>             //etc/guix/config.scm/ and //etc/guix/channels.scm /to my
>>             home /~/.config/guix/ , /and i run /sudo guix system
>>             reconfigure ~/.config/guix/system.scm///*, that fail*/,
>>             /it seems the module (nongnu and emacs-native-dep) are not
>>             referenced, like the error say /"no code for module (
>>             nongnu ..." /But when i run /guix system describe/, the
>>             corresponding channel are well defined. /     /     After
>>             that, i try many thing, like moving channels.scm and
>>             system.scm back to /etc/guix/ but every reconfigure
>>             command fail in link with channel/module not recognized
>>             (emacs-native-dep or nongnu)     - /guix home reconfigure
>>             ~/src/guix-config/home-configuration.scm/     - /guix
>>             system reconfigure ~/.config/guix/system.scm/     - /guix
>>             system reconfigure ~/etc/guix/config.scm/     So my
>>             question is first, why that fail after switching to guix
>>             home ? and how and where i need to define/set correctly
>>             the /channel.scm/ file to repair that ?     For example,
>>             /guix system//describe/ and /guix home describe/ and /guix
>>             describe/ return all different channel referenced, how i
>>             manage that ?     I suppose there is a "workflow to use
>>             well guix home"? but this is not actually in the doc. For
>>             example, perhaps after creating and switching to guix home
>>             profile, running guix system is impossible or prohibited ?
>>             I suppose this will be added in the future.     Thanks a
>>             lot for your help.
>>             
>> ------------------------------------------------------------------------
>>                 Sebastien Rey-C     // 


reply via email to

[Prev in Thread] Current Thread [Next in Thread]