From: "Sébastien Rey-Coyrehourcq" <sebastien.rey-coyrehourcq@univ-rouen.fr>
To: Julien Lepiller <julien@lepiller.eu>, help-guix@gnu.org
Subject: Re: Guix home, guix system, channels, some noob questions
Date: Thu, 12 May 2022 14:32:15 +0200 [thread overview]
Message-ID: <635b0475-0134-acb4-8245-afcb571327a0@univ-rouen.fr> (raw)
In-Reply-To: <441E1AD5-DFC9-4BBD-A45C-8328B51BE8D6@lepiller.eu>
[-- Attachment #1.1.1: Type: text/plain, Size: 12206 bytes --]
Thanks,
I made some test on my own to understand :
1 - Like you say, installing things with *guix install* is for current
user (for example *firefox* and *sshpass*)
2 - Adding a package that don't exist to * myhome.scm* and reconfigure
it with *guix home reconfigure* file will download a package (ex
"ncdu"), but this package doesn't appear into "guix package
--list-installed"
3 - Adding a package that already exist for user (ex : firefox already
installed with guix install) to *myhome.scm* doesn't reinstall package,
that's normal.
I don't understand the step 2, why *guix home* installed package (*ncdu*
here) are not listed with *guix install --list-installed*, is there a
difference ?
- using *which ncdu*, bin is located into .guix-home/profile/bin/ncdu
- using *which firefox*, bin is located into .guix-home/profile/bin/firefox
- using *which sshpass*, bin is located into .guix-home/profile/bin/sshpass
Ok for secrets, but i don't understand the "out-of-band" reference in
your previous mail.
Thanks !
Best regards
Le 12/05/2022 à 11:28, Julien Lepiller a écrit :
> 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 //
>>
[-- Attachment #1.1.2: OpenPGP public key --]
[-- Type: application/pgp-keys, Size: 8861 bytes --]
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
next prev parent reply other threads:[~2022-05-12 12:32 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-05-11 9:09 Guix home, guix system, channels, some noob questions Sébastien Rey-Coyrehourcq
2022-05-11 10:47 ` Julien Lepiller
2022-05-11 14:36 ` Sébastien Rey-Coyrehourcq
2022-05-11 14:55 ` Sébastien Rey-Coyrehourcq
2022-05-11 15:48 ` Julien Lepiller
2022-05-12 8:40 ` Sébastien Rey-Coyrehourcq
2022-05-12 9:28 ` Julien Lepiller
2022-05-12 12:32 ` Sébastien Rey-Coyrehourcq [this message]
2022-05-17 7:26 ` Daniel Meißner
2022-05-17 8:01 ` Sébastien Rey-Coyrehourcq
2022-05-17 8:57 ` Daniel Meißner
2022-05-17 9:20 ` Sébastien Rey-Coyrehourcq
2022-05-17 10:15 ` Daniel Meißner
2022-05-17 16:02 ` Sébastien Rey-Coyrehourcq
2022-05-25 13:34 ` Daniel Meißner
2022-05-25 18:45 ` Efraim Flashner
2022-07-11 6:06 ` Joshua Branson
2022-05-26 0:31 ` Dominic Martinez
2022-06-01 20:38 ` Sébastien Rey-Coyrehourcq
2022-06-12 19:32 ` sebastien rey-coyrehourcq
2022-06-13 19:31 ` Dominic Martinez
2022-06-14 10:36 ` Sébastien Rey-Coyrehourcq
2022-05-11 21:56 ` Mekeor Melire
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
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=635b0475-0134-acb4-8245-afcb571327a0@univ-rouen.fr \
--to=sebastien.rey-coyrehourcq@univ-rouen.fr \
--cc=help-guix@gnu.org \
--cc=julien@lepiller.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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).