* Guix home, guix system, channels, some noob questions
@ 2022-05-11 9:09 Sébastien Rey-Coyrehourcq
2022-05-11 10:47 ` Julien Lepiller
0 siblings, 1 reply; 23+ messages in thread
From: Sébastien Rey-Coyrehourcq @ 2022-05-11 9:09 UTC (permalink / raw)
To: help-guix
[-- Attachment #1.1.1: Type: text/plain, Size: 2510 bytes --]
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 --]
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: Guix home, guix system, channels, some noob questions
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
0 siblings, 1 reply; 23+ messages in thread
From: Julien Lepiller @ 2022-05-11 10:47 UTC (permalink / raw)
To: Sébastien Rey-Coyrehourcq, help-guix
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
>
>
>//
>
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: Guix home, guix system, channels, some noob questions
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
0 siblings, 1 reply; 23+ messages in thread
From: Sébastien Rey-Coyrehourcq @ 2022-05-11 14:36 UTC (permalink / raw)
To: Julien Lepiller, help-guix
[-- Attachment #1.1.1: Type: text/plain, Size: 6125 bytes --]
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 --]
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: Guix home, guix system, channels, some noob questions
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-11 21:56 ` Mekeor Melire
0 siblings, 2 replies; 23+ messages in thread
From: Sébastien Rey-Coyrehourcq @ 2022-05-11 14:55 UTC (permalink / raw)
To: Julien Lepiller, help-guix
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
>>
>>
>> //
>>
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: Guix home, guix system, channels, some noob questions
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-11 21:56 ` Mekeor Melire
1 sibling, 1 reply; 23+ messages in thread
From: Julien Lepiller @ 2022-05-11 15:48 UTC (permalink / raw)
To: sebastien.rey-coyrehourcq, Sébastien Rey-Coyrehourcq,
help-guix
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
>>>
>>>
>>> //
>>>
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: Guix home, guix system, channels, some noob questions
2022-05-11 14:55 ` Sébastien Rey-Coyrehourcq
2022-05-11 15:48 ` Julien Lepiller
@ 2022-05-11 21:56 ` Mekeor Melire
1 sibling, 0 replies; 23+ messages in thread
From: Mekeor Melire @ 2022-05-11 21:56 UTC (permalink / raw)
To: sebastien.rey-coyrehourcq; +Cc: help-guix
2022-05-11 / 16:55 / sebastien.rey-coyrehourcq@univ-rouen.fr:
> 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 ...))
For the record: Make sure you use (cons* …) and not (cons * …), i.e.
don't add a space there. The identifier is `cons*`. :)
> 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
> >>
> >>
> >> //
> >>
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: Guix home, guix system, channels, some noob questions
2022-05-11 15:48 ` Julien Lepiller
@ 2022-05-12 8:40 ` Sébastien Rey-Coyrehourcq
2022-05-12 9:28 ` Julien Lepiller
0 siblings, 1 reply; 23+ messages in thread
From: Sébastien Rey-Coyrehourcq @ 2022-05-12 8:40 UTC (permalink / raw)
To: Julien Lepiller, help-guix
[-- Attachment #1.1.1: Type: text/plain, Size: 9398 bytes --]
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 --]
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: Guix home, guix system, channels, some noob questions
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
0 siblings, 1 reply; 23+ messages in thread
From: Julien Lepiller @ 2022-05-12 9:28 UTC (permalink / raw)
To: Sébastien Rey-Coyrehourcq, help-guix
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 //
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: Guix home, guix system, channels, some noob questions
2022-05-12 9:28 ` Julien Lepiller
@ 2022-05-12 12:32 ` Sébastien Rey-Coyrehourcq
2022-05-17 7:26 ` Daniel Meißner
0 siblings, 1 reply; 23+ messages in thread
From: Sébastien Rey-Coyrehourcq @ 2022-05-12 12:32 UTC (permalink / raw)
To: Julien Lepiller, help-guix
[-- 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 --]
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: Guix home, guix system, channels, some noob questions
2022-05-12 12:32 ` Sébastien Rey-Coyrehourcq
@ 2022-05-17 7:26 ` Daniel Meißner
2022-05-17 8:01 ` Sébastien Rey-Coyrehourcq
0 siblings, 1 reply; 23+ messages in thread
From: Daniel Meißner @ 2022-05-17 7:26 UTC (permalink / raw)
To: Sébastien Rey-Coyrehourcq; +Cc: Julien Lepiller, help-guix
Hi Guix,
Sébastien Rey-Coyrehourcq writes:
> 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 ?
‘guix install’ installs into the current user’s profile which can be
found at ~/.guix-profile whereas ‘guix home’ creates an immutable
profile under ~/.guix-home/profile.¹ You can install the same package to
different profiles but of course they will be built only once (provided
you use the same Guix revision). You can list the packages which are
installed in your Guix home profile via:
guix package --profile="$HOME/.guix-home/profile" --list-installed
Best
¹ IIUC the profile under ~/.guix-profile is also immutable (as are all
profiles). ‘guix install icecat’, for example, would create a new
profile that contains all packages from the previous generation of
~/.guix-profile plus the packages icecat and then it would link the
new profile to ~/.guix-profile. In contrast you cannot do the same
with ‘guix install’ for ~/.guix-home/profile. Invoking
guix install --profile="$HOME/.guix-home/profile" icecat
to try to install icecat to the profile ~/.guix-home/profile yields:
guix install: error: open-file: Read-only file system: "/home/daniel/.guix-home/profile.lock"
--
Daniel
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: Guix home, guix system, channels, some noob questions
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
0 siblings, 1 reply; 23+ messages in thread
From: Sébastien Rey-Coyrehourcq @ 2022-05-17 8:01 UTC (permalink / raw)
To: Daniel Meißner; +Cc: Julien Lepiller, help-guix
[-- Attachment #1.1.1: Type: text/plain, Size: 2580 bytes --]
Le 17/05/2022 à 09:26, Daniel Meißner a écrit :
> Hi Guix,
>
> Sébastien Rey-Coyrehourcq writes:
>
>> 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 ?
> ‘guix install’ installs into the current user’s profile which can be
> found at ~/.guix-profile whereas ‘guix home’ creates an immutable
> profile under ~/.guix-home/profile.¹ You can install the same package to
> different profiles but of course they will be built only once (provided
> you use the same Guix revision). You can list the packages which are
> installed in your Guix home profile via:
>
> guix package --profile="$HOME/.guix-home/profile" --list-installed
>
> Best
>
>
>
> ¹ IIUC the profile under ~/.guix-profile is also immutable (as are all
> profiles). ‘guix install icecat’, for example, would create a new
> profile that contains all packages from the previous generation of
> ~/.guix-profile plus the packages icecat and then it would link the
> new profile to ~/.guix-profile. In contrast you cannot do the same
> with ‘guix install’ for ~/.guix-home/profile. Invoking
>
> guix install --profile="$HOME/.guix-home/profile" icecat
>
> to try to install icecat to the profile ~/.guix-home/profile yields:
>
> guix install: error: open-file: Read-only file system: "/home/daniel/.guix-home/profile.lock"
>
Thanks Daniel,
So if i understand well, in the common use case, if you install guix
home and use it in parallel with guix install, these profile are
"cumulative",
software installed are available no matter how I set them up (guix
install or using guix home declarative file + reconfigure) ?
It is a bit confusing at first for new user, what's the best workflow,
using the guix home declarative file and "reconfigure" or directly guix
install ?
SRC
>
> --
> Daniel
[-- 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 --]
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: Guix home, guix system, channels, some noob questions
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
0 siblings, 1 reply; 23+ messages in thread
From: Daniel Meißner @ 2022-05-17 8:57 UTC (permalink / raw)
To: Sébastien Rey-Coyrehourcq; +Cc: Julien Lepiller, help-guix
Hi Sébastien,
Sébastien Rey-Coyrehourcq writes:
> Thanks Daniel,
>
> So if i understand well, in the common use case, if you install guix
> home and use it in parallel with guix install, these profile are
> "cumulative",
> software installed are available no matter how I set them up (guix
> install or using guix home declarative file + reconfigure) ?
Yes, these two profiles are normally both loaded in the sense that the
shell scripts ~/.guix-profile/etc/profile and
~/.guix-home/setup-environment are sourced.
> It is a bit confusing at first for new user, what's the best workflow,
> using the guix home declarative file and "reconfigure" or directly
> guix install ?
It depends on what you want to achieve. You could use also both at the
same time. I like to use only Guix home to manage the packages that I
need on a regular basis. However, this is mainly because I also have
some dotfiles in my home-environment. If you just want to declaratively
manage the packages you use, you could also do it with manifests¹.
Additionally, sometimes, when I need a package, that I presumably only
use once, I use ‘guix shell’² for it.
Best
¹ https://guix.gnu.org/en/manual/devel/en/html_node/Writing-Manifests.html
² https://guix.gnu.org/en/manual/devel/en/html_node/Invoking-guix-shell.html#Invoking-guix-shell
--
Daniel
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: Guix home, guix system, channels, some noob questions
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
0 siblings, 1 reply; 23+ messages in thread
From: Sébastien Rey-Coyrehourcq @ 2022-05-17 9:20 UTC (permalink / raw)
To: Daniel Meißner; +Cc: Julien Lepiller, help-guix
[-- Attachment #1.1.1: Type: text/plain, Size: 1792 bytes --]
Le 17/05/2022 à 10:57, Daniel Meißner a écrit :
> Hi Sébastien,
>
> Sébastien Rey-Coyrehourcq writes:
>
>> Thanks Daniel,
>>
>> So if i understand well, in the common use case, if you install guix
>> home and use it in parallel with guix install, these profile are
>> "cumulative",
>> software installed are available no matter how I set them up (guix
>> install or using guix home declarative file + reconfigure) ?
> Yes, these two profiles are normally both loaded in the sense that the
> shell scripts ~/.guix-profile/etc/profile and
> ~/.guix-home/setup-environment are sourced.
Ok !
>
>> It is a bit confusing at first for new user, what's the best workflow,
>> using the guix home declarative file and "reconfigure" or directly
>> guix install ?
> It depends on what you want to achieve. You could use also both at the
> same time. I like to use only Guix home to manage the packages that I
> need on a regular basis. However, this is mainly because I also have
> some dotfiles in my home-environment. If you just want to declaratively
> manage the packages you use, you could also do it with manifests¹.
> Additionally, sometimes, when I need a package, that I presumably only
> use once, I use ‘guix shell’² for it.
Ok, i suppose manifest are similar to config.scm used for reconfiguring
system for exemple.
If you have some example of guix home profile that use dotfile manager
i'm interested :)
I'm planned to use chezmoi with pass (https://www.chezmoi.io/) in go
that use git to version file.
Thanks !
>
> Best
>
>
> ¹ https://guix.gnu.org/en/manual/devel/en/html_node/Writing-Manifests.html
> ² https://guix.gnu.org/en/manual/devel/en/html_node/Invoking-guix-shell.html#Invoking-guix-shell
>
> --
> Daniel
[-- 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 --]
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: Guix home, guix system, channels, some noob questions
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
0 siblings, 1 reply; 23+ messages in thread
From: Daniel Meißner @ 2022-05-17 10:15 UTC (permalink / raw)
To: Sébastien Rey-Coyrehourcq; +Cc: Julien Lepiller, help-guix
Sébastien Rey-Coyrehourcq writes:
> If you have some example of guix home profile that use dotfile manager
> i'm interested :)
> I'm planned to use chezmoi with pass (https://www.chezmoi.io/) in go
> that use git to version file.
IIUC you can use Guix home directly and dispense with chezmoi. However,
I did not know chezmoi before so there might be a use-case that is not
covered by Guix home, in principle though, Guix home is itself a dotfile
manager. I use it for example to manage my Git config, Emacs config and
others. The manual has a chapter about it:
https://guix.gnu.org/de/manual/devel/en/html_node/Home-Configuration.html#Home-Configuration
A simple example would be the following:
--8<---------------cut here---------------start------------->8---
(use-modules (gnu home)
(gnu home services)
(gnu home services shells)
(gnu services)
(gnu packages admin)
(guix gexp))
(home-environment
(packages (list htop))
(services
(list
(service home-bash-service-type
(home-bash-configuration
(environment-variables
'(("HISTFILE" . "$XDG_STATE_HOME/bash_history")))))
(simple-service 'git-config
home-files-service-type
(list `(".gitconfig"
,(plain-file "gitconfig"
"[user]
email = daniel.meissner-i4k@ruhr-uni-bochum.de
name = Daniel Meißner
")))))))
--8<---------------cut here---------------end--------------->8---
This would create a home-environment with the package ‘htop’, a bash
configuration that sets the HISTFILE env var as well as the .gitconfig
file with the above contents. You can test this environment using:
guix home container test-home.scm
This spawns a shell where your home environment is set up as specified
but using a container. So your actual home directory is not modified.
You don’t have to embed all your config files inside the Scheme file
directly. You can also load from other files, for example, you could
replace the ,(plain-file ...) call with a ,(local-file "gitconfig.txt")
which would use the contents of the file gitconfig.txt which lives next
to your Scheme file for the generation of the .gitconfig file.
Best
--
Daniel
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: Guix home, guix system, channels, some noob questions
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-26 0:31 ` Dominic Martinez
0 siblings, 2 replies; 23+ messages in thread
From: Sébastien Rey-Coyrehourcq @ 2022-05-17 16:02 UTC (permalink / raw)
To: Daniel Meißner; +Cc: Julien Lepiller, help-guix
[-- Attachment #1.1.1: Type: text/plain, Size: 3967 bytes --]
Le 17/05/2022 à 12:15, Daniel Meißner a écrit :
> Sébastien Rey-Coyrehourcq writes:
>
>> If you have some example of guix home profile that use dotfile manager
>> i'm interested :)
>> I'm planned to use chezmoi with pass (https://www.chezmoi.io/) in go
>> that use git to version file.
> IIUC you can use Guix home directly and dispense with chezmoi. However,
> I did not know chezmoi before so there might be a use-case that is not
> covered by Guix home, in principle though, Guix home is itself a dotfile
> manager.
Thanks, in fact when i see *guix home* that was my first intention
(like home-manager in nix).
The only things holding me back at the moment is two things :
a) doom emacs flavour, how to manage the fact that doom use straigt.el
to maintain packages
I suppose i only save the .doom.d and ignore the .emacs.d that contain
all packages downloaded by .doom.d/init.el and config.el
b) "password / secrets" management ?
There are two things, file to directly encrypt (like ssh key) and
password to hide into configuration file (templating)
b.1) So, that need to encrypt/decrypt more or less "on-the-fly" the
files using gpg/yubikey or age like yadm (
https://yadm.io/docs/encryption ) or chezmoi
(https://www.chezmoi.io/user-guide/encryption/gpg/) do ?
b.2) And for templating, like replacing ${mypassword} into some
configuration file by getting info stored into password manager like
"pass", i also don't know how to do that.
Actually I have no idea how to do that with guile / guix home for b.1 / b.2
c) synchronization of my .dotfiles between two different OS/System :
Ubuntu (home) / Guix (work & home)
Lot of people use Ubuntu in my work environment, so i need to maintain
some sort of compatibility between both systems for my dotfile (before
everyone use guix in 2030 ? :D).
I suppose guix home work well with guix on top of ubuntu ?
Best.
> I use it for example to manage my Git config, Emacs config and
> others. The manual has a chapter about it:
>
> https://guix.gnu.org/de/manual/devel/en/html_node/Home-Configuration.html#Home-Configuration
>
> A simple example would be the following:
>
> --8<---------------cut here---------------start------------->8---
> (use-modules (gnu home)
> (gnu home services)
> (gnu home services shells)
> (gnu services)
> (gnu packages admin)
> (guix gexp))
>
>
> (home-environment
> (packages (list htop))
> (services
> (list
> (service home-bash-service-type
> (home-bash-configuration
> (environment-variables
> '(("HISTFILE" . "$XDG_STATE_HOME/bash_history")))))
>
> (simple-service 'git-config
> home-files-service-type
> (list `(".gitconfig"
> ,(plain-file "gitconfig"
> "[user]
> email = daniel.meissner-i4k@ruhr-uni-bochum.de
> name = Daniel Meißner
> ")))))))
> --8<---------------cut here---------------end--------------->8---
>
> This would create a home-environment with the package ‘htop’, a bash
> configuration that sets the HISTFILE env var as well as the .gitconfig
> file with the above contents. You can test this environment using:
>
> guix home container test-home.scm
>
> This spawns a shell where your home environment is set up as specified
> but using a container. So your actual home directory is not modified.
> You don’t have to embed all your config files inside the Scheme file
> directly. You can also load from other files, for example, you could
> replace the ,(plain-file ...) call with a ,(local-file "gitconfig.txt")
> which would use the contents of the file gitconfig.txt which lives next
> to your Scheme file for the generation of the .gitconfig file.
>
> Best
>
> --
> Daniel
[-- 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 --]
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: Guix home, guix system, channels, some noob questions
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
1 sibling, 2 replies; 23+ messages in thread
From: Daniel Meißner @ 2022-05-25 13:34 UTC (permalink / raw)
To: Sébastien Rey-Coyrehourcq; +Cc: Julien Lepiller, help-guix
Hi Sébastien,
Sébastien Rey-Coyrehourcq writes:
> Thanks, in fact when i see *guix home* that was my first intention
> (like home-manager in nix).
>
> The only things holding me back at the moment is two things :
>
> a) doom emacs flavour, how to manage the fact that doom use straigt.el
> to maintain packages
I am sorry, I am not using Doom Emacs, so I cannot be of any help in
this regard. I manage my (relatively few) Emacs packages with Guix
directly.
> b) "password / secrets" management ?
>
> There are two things, file to directly encrypt (like ssh key) and
> password to hide into configuration file (templating)
>
> b.1) So, that need to encrypt/decrypt more or less "on-the-fly" the
> files using gpg/yubikey or age like yadm (
> https://yadm.io/docs/encryption ) or chezmoi
> (https://www.chezmoi.io/user-guide/encryption/gpg/) do ?
>
> b.2) And for templating, like replacing ${mypassword} into some
> configuration file by getting info stored into password manager like
> "pass", i also don't know how to do that.
>
> Actually I have no idea how to do that with guile / guix home for b.1
> / b.2
Yes, that's indeed a problem and I haven't come up with a solution. I
simply copy the respective files from machine to machine. Maybe someone
else on this list has a better idea...
> c) synchronization of my .dotfiles between two different OS/System :
> Ubuntu (home) / Guix (work & home)
>
> Lot of people use Ubuntu in my work environment, so i need to maintain
> some sort of compatibility between both systems for my dotfile (before
> everyone use guix in 2030 ? :D).
>
> I suppose guix home work well with guix on top of ubuntu ?
Yes, I think so, I haven't tested it though. You can, in principle,
adapt the generated dotfiles to the machines you're deploying them to.
You could, for example, use the hostname to distinguish them (untested):
--8<---------------cut here---------------start------------->8---
(mixed-text-file
"test.txt"
"setting = "
#~(case (gethostname)
(("hosta") => "foo")
(("hostb") => "bar")
(else => "foobar")))
--8<---------------cut here---------------end--------------->8---
Best
--
Daniel
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: Guix home, guix system, channels, some noob questions
2022-05-25 13:34 ` Daniel Meißner
@ 2022-05-25 18:45 ` Efraim Flashner
2022-07-11 6:06 ` Joshua Branson
1 sibling, 0 replies; 23+ messages in thread
From: Efraim Flashner @ 2022-05-25 18:45 UTC (permalink / raw)
To: Daniel Meißner
Cc: Sébastien Rey-Coyrehourcq, Julien Lepiller, help-guix
[-- Attachment #1: Type: text/plain, Size: 2898 bytes --]
On Wed, May 25, 2022 at 03:34:58PM +0200, Daniel Meißner wrote:
> Hi Sébastien,
>
> Sébastien Rey-Coyrehourcq writes:
>
> > Thanks, in fact when i see *guix home* that was my first intention
> > (like home-manager in nix).
> >
> > The only things holding me back at the moment is two things :
> >
> > a) doom emacs flavour, how to manage the fact that doom use straigt.el
> > to maintain packages
>
> I am sorry, I am not using Doom Emacs, so I cannot be of any help in
> this regard. I manage my (relatively few) Emacs packages with Guix
> directly.
>
> > b) "password / secrets" management ?
> >
> > There are two things, file to directly encrypt (like ssh key) and
> > password to hide into configuration file (templating)
> >
> > b.1) So, that need to encrypt/decrypt more or less "on-the-fly" the
> > files using gpg/yubikey or age like yadm (
> > https://yadm.io/docs/encryption ) or chezmoi
> > (https://www.chezmoi.io/user-guide/encryption/gpg/) do ?
> >
> > b.2) And for templating, like replacing ${mypassword} into some
> > configuration file by getting info stored into password manager like
> > "pass", i also don't know how to do that.
> >
> > Actually I have no idea how to do that with guile / guix home for b.1
> > / b.2
>
> Yes, that's indeed a problem and I haven't come up with a solution. I
> simply copy the respective files from machine to machine. Maybe someone
> else on this list has a better idea...
>
> > c) synchronization of my .dotfiles between two different OS/System :
> > Ubuntu (home) / Guix (work & home)
> >
> > Lot of people use Ubuntu in my work environment, so i need to maintain
> > some sort of compatibility between both systems for my dotfile (before
> > everyone use guix in 2030 ? :D).
> >
> > I suppose guix home work well with guix on top of ubuntu ?
>
> Yes, I think so, I haven't tested it though. You can, in principle,
> adapt the generated dotfiles to the machines you're deploying them to.
> You could, for example, use the hostname to distinguish them (untested):
>
> --8<---------------cut here---------------start------------->8---
> (mixed-text-file
> "test.txt"
> "setting = "
> #~(case (gethostname)
> (("hosta") => "foo")
> (("hostb") => "bar")
> (else => "foobar")))
> --8<---------------cut here---------------end--------------->8---
>
I check for /run/current-system/provenance¹ and based on that I make
some changes to what gets placed in my dot-files.
¹ https://git.sr.ht/~efraim/guix-config/tree/master/item/efraim-home.scm#L31
² https://git.sr.ht/~efraim/guix-config/tree/master/item/efraim-home.scm#L342-346
--
Efraim Flashner <efraim@flashner.co.il> אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: Guix home, guix system, channels, some noob questions
2022-05-17 16:02 ` Sébastien Rey-Coyrehourcq
2022-05-25 13:34 ` Daniel Meißner
@ 2022-05-26 0:31 ` Dominic Martinez
2022-06-01 20:38 ` Sébastien Rey-Coyrehourcq
1 sibling, 1 reply; 23+ messages in thread
From: Dominic Martinez @ 2022-05-26 0:31 UTC (permalink / raw)
To: sebastien.rey-coyrehourcq; +Cc: Daniel Meißner, Julien Lepiller, help-guix
[-- Attachment #1: Type: text/plain, Size: 2755 bytes --]
Sébastien Rey-Coyrehourcq
<sebastien.rey-coyrehourcq@univ-rouen.fr> writes:
> The only things holding me back at the moment is two things :
>
> a) doom emacs flavour, how to manage the fact that doom use
> straigt.el
> to maintain packages
I don't think it's possible to use Doom with Guix emacs packages,
but you can just set up Doom as you would on another distro. I did
this while I transitioned to a Guix config, using
~home-files-service-type~ to deploy my Doom config files.
> b) "password / secrets" management ?
>
> There are two things, file to directly encrypt (like ssh key)
> and
> password to hide into configuration file (templating)
>
> b.1) So, that need to encrypt/decrypt more or less "on-the-fly"
> the
> files using gpg/yubikey or age like yadm (
> https://yadm.io/docs/encryption ) or chezmoi
> (https://www.chezmoi.io/user-guide/encryption/gpg/) do ?
I use small wrappers around GPG's built in encryption
(https://git.sr.ht/~dominicm/dotfiles/tree/main/item/System.org#L2663)
and decryption
(https://git.sr.ht/~dominicm/dotfiles/tree/main/item/System.org#L2691)
functions to manage secrets directly in my repository on the
fly. Then I can have supported services call the script to get
secrets without storing them in plain-text
(https://git.sr.ht/~dominicm/dotfiles/tree/main/item/System.org#L1648).
> b.2) And for templating, like replacing ${mypassword} into some
> configuration file by getting info stored into password manager
> like
> "pass", i also don't know how to do that.
Org makes this really convienent. Using noweb and shell scripts I
can decrypt and insert secrets into templated areas when I tangle
my configuration files. That way my repo only contains encrypted
secrets, but as long as I have my GPG keys I can build my
configuration files locally. See
https://git.sr.ht/~dominicm/dotfiles/tree/main/item/System.org#L5
and
https://git.sr.ht/~dominicm/dotfiles/tree/main/item/System.org#L1937.
> c) synchronization of my .dotfiles between two different
> OS/System :
> Ubuntu (home) / Guix (work & home)
I keep all my configuration in a git repository, then use ~guix
home~ to put all the files in the right places. As others have
noted, there are many ways to identify the current system and do
system-specific operations. I personally use an environment
variable to keep track, and wrap guix operations with scripts that
detect the system and use different system/home configurations
(https://git.sr.ht/~dominicm/dotfiles/tree/main/item/System.org#L2366). Then
all I have to do is supply the script with the system name on the
first run, and ~home-environment-variables-service-type~ takes it
from there.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 227 bytes --]
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: Guix home, guix system, channels, some noob questions
2022-05-26 0:31 ` Dominic Martinez
@ 2022-06-01 20:38 ` Sébastien Rey-Coyrehourcq
2022-06-12 19:32 ` sebastien rey-coyrehourcq
0 siblings, 1 reply; 23+ messages in thread
From: Sébastien Rey-Coyrehourcq @ 2022-06-01 20:38 UTC (permalink / raw)
To: Dominic Martinez; +Cc: Daniel Meißner, Julien Lepiller, help-guix
[-- Attachment #1.1.1: Type: text/plain, Size: 3166 bytes --]
Thanks Julien, Daniel, Dominic, Efraim for these very detailed answers
and snippets, that will be very useful in my current migration from
Ubuntu to Guix.
I answer here if i need some highlights or if i found interesting
questions or remarks to share with you.
Best regards,
Le 26/05/2022 à 02:31, Dominic Martinez a écrit :
>
> Sébastien Rey-Coyrehourcq <sebastien.rey-coyrehourcq@univ-rouen.fr>
> writes:
>
>> The only things holding me back at the moment is two things :
>>
>> a) doom emacs flavour, how to manage the fact that doom use straigt.el
>> to maintain packages
>
> I don't think it's possible to use Doom with Guix emacs packages, but
> you can just set up Doom as you would on another distro. I did this
> while I transitioned to a Guix config, using ~home-files-service-type~
> to deploy my Doom config files.
>
>> b) "password / secrets" management ?
>>
>> There are two things, file to directly encrypt (like ssh key) and
>> password to hide into configuration file (templating)
>>
>> b.1) So, that need to encrypt/decrypt more or less "on-the-fly" the
>> files using gpg/yubikey or age like yadm (
>> https://yadm.io/docs/encryption ) or chezmoi
>> (https://www.chezmoi.io/user-guide/encryption/gpg/) do ?
>
> I use small wrappers around GPG's built in encryption
> (https://git.sr.ht/~dominicm/dotfiles/tree/main/item/System.org#L2663)
> and decryption
> (https://git.sr.ht/~dominicm/dotfiles/tree/main/item/System.org#L2691)
> functions to manage secrets directly in my repository on the fly. Then
> I can have supported services call the script to get secrets without
> storing them in plain-text
> (https://git.sr.ht/~dominicm/dotfiles/tree/main/item/System.org#L1648).
>
>> b.2) And for templating, like replacing ${mypassword} into some
>> configuration file by getting info stored into password manager like
>> "pass", i also don't know how to do that.
>
> Org makes this really convienent. Using noweb and shell scripts I can
> decrypt and insert secrets into templated areas when I tangle my
> configuration files. That way my repo only contains encrypted secrets,
> but as long as I have my GPG keys I can build my configuration files
> locally. See
> https://git.sr.ht/~dominicm/dotfiles/tree/main/item/System.org#L5 and
> https://git.sr.ht/~dominicm/dotfiles/tree/main/item/System.org#L1937.
>
>> c) synchronization of my .dotfiles between two different OS/System :
>> Ubuntu (home) / Guix (work & home)
>
> I keep all my configuration in a git repository, then use ~guix home~
> to put all the files in the right places. As others have noted, there
> are many ways to identify the current system and do system-specific
> operations. I personally use an environment variable to keep track,
> and wrap guix operations with scripts that detect the system and use
> different system/home configurations
> (https://git.sr.ht/~dominicm/dotfiles/tree/main/item/System.org#L2366).
> Then all I have to do is supply the script with the system name on the
> first run, and ~home-environment-variables-service-type~ takes it from
> there.
[-- 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 --]
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: Guix home, guix system, channels, some noob questions
2022-06-01 20:38 ` Sébastien Rey-Coyrehourcq
@ 2022-06-12 19:32 ` sebastien rey-coyrehourcq
2022-06-13 19:31 ` Dominic Martinez
0 siblings, 1 reply; 23+ messages in thread
From: sebastien rey-coyrehourcq @ 2022-06-12 19:32 UTC (permalink / raw)
To: sebastien.rey-coyrehourcq, Dominic Martinez
Cc: Daniel Meißner, help-guix, Julien Lepiller
Hi,
I jump into guile world by learning and copy/pasting Dominic Martinez config :)
Everything going pretty well but now i'm blocked with yubikey configuration.
And without yubikey that contain your only private key to sign/decrypt everything, that's a little complicated ...
Running "gpg --card-status" my yubikey is correclty detected. That a good news ... BUT that's all,
other command don't work, for example both :
gpg --list-secret-keys
gpg --list-keys
don't ask pin, and return nothing when yubikey is plugged ...
gnome seahorse also see nothing ...
emacs see anything when i try to decipher thing ...
I reboot and retry without success ...
I miss something with this $# gpg-agent conf ?
I post the home config here :
https://gitlab.com/reyman64/dotfiles
June 1, 2022 10:38:09 PM CEST "Sébastien Rey-Coyrehourcq" <sebastien.rey-coyrehourcq@univ-rouen.fr> wrote:Thanks Julien, Daniel, Dominic, Efraim for these very detailed answers
and snippets, that will be very useful in my current migration from
Ubuntu to Guix.
I answer here if i need some highlights or if i found interesting
questions or remarks to share with you.
Best regards,
Le 26/05/2022 à 02:31, Dominic Martinez a écrit :
>
> Sébastien Rey-Coyrehourcq <sebastien.rey-coyrehourcq@univ-rouen.fr>
> writes:
>
>> The only things holding me back at the moment is two things :
>>
>> a) doom emacs flavour, how to manage the fact that doom use straigt.el
>> to maintain packages
>
> I don't think it's possible to use Doom with Guix emacs packages, but
> you can just set up Doom as you would on another distro. I did this
> while I transitioned to a Guix config, using ~home-files-service-type~
> to deploy my Doom config files.
>
>> b) "password / secrets" management ?
>>
>> There are two things, file to directly encrypt (like ssh key) and
>> password to hide into configuration file (templating)
>>
>> b.1) So, that need to encrypt/decrypt more or less "on-the-fly" the
>> files using gpg/yubikey or age like yadm (
>> https://yadm.io/docs/encryption ) or chezmoi
>> (https://www.chezmoi.io/user-guide/encryption/gpg/) do ?
>
> I use small wrappers around GPG's built in encryption
> (https://git.sr.ht/~dominicm/dotfiles/tree/main/item/System.org#L2663)
> and decryption
> (https://git.sr.ht/~dominicm/dotfiles/tree/main/item/System.org#L2691)
> functions to manage secrets directly in my repository on the fly. Then
> I can have supported services call the script to get secrets without
> storing them in plain-text
> (https://git.sr.ht/~dominicm/dotfiles/tree/main/item/System.org#L1648).
>
>> b.2) And for templating, like replacing ${mypassword} into some
>> configuration file by getting info stored into password manager like
>> "pass", i also don't know how to do that.
>
> Org makes this really convienent. Using noweb and shell scripts I can
> decrypt and insert secrets into templated areas when I tangle my
> configuration files. That way my repo only contains encrypted secrets,
> but as long as I have my GPG keys I can build my configuration files
> locally. See
> https://git.sr.ht/~dominicm/dotfiles/tree/main/item/System.org#L5 and
> https://git.sr.ht/~dominicm/dotfiles/tree/main/item/System.org#L1937.
>
>> c) synchronization of my .dotfiles between two different OS/System :
>> Ubuntu (home) / Guix (work & home)
>
> I keep all my configuration in a git repository, then use ~guix home~
> to put all the files in the right places. As others have noted, there
> are many ways to identify the current system and do system-specific
> operations. I personally use an environment variable to keep track,
> and wrap guix operations with scripts that detect the system and use
> different system/home configurations
> (https://git.sr.ht/~dominicm/dotfiles/tree/main/item/System.org#L2366).
> Then all I have to do is supply the script with the system name on the
> first run, and ~home-environment-variables-service-type~ takes it from
> there.
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: Guix home, guix system, channels, some noob questions
2022-06-12 19:32 ` sebastien rey-coyrehourcq
@ 2022-06-13 19:31 ` Dominic Martinez
2022-06-14 10:36 ` Sébastien Rey-Coyrehourcq
0 siblings, 1 reply; 23+ messages in thread
From: Dominic Martinez @ 2022-06-13 19:31 UTC (permalink / raw)
To: sebastien rey-coyrehourcq; +Cc: Daniel Meißner, help-guix, Julien Lepiller
[-- Attachment #1: Type: text/plain, Size: 2171 bytes --]
sebastien rey-coyrehourcq
<sebastien.rey-coyrehourcq@univ-rouen.fr> writes:
> Hi,
>
> I jump into guile world by learning and copy/pasting Dominic
> Martinez config :)
Nice to know my config helped someone! Sorry it's a bit of a mess,
I didn't really document anything.
> Everything going pretty well but now i'm blocked with yubikey
> configuration.
>
> And without yubikey that contain your only private key to
> sign/decrypt everything, that's a
> little complicated ...
>
> Running "gpg --card-status" my yubikey is correclty
> detected. That a good news ... BUT
> that's all,
> other command don't work, for example both :
>
> gpg --list-secret-keys
> gpg --list-keys
When you say it doesn't work, do you mean it doesn't list any
keys? If you have keys on your Yubikey that you used with GPG on a
different system, you'll have to re-export the key stubs for GPG
to use the Yubikey for authentication (see
https://github.com/drduh/YubiKey-Guide#switching-between-two-or-more-yubikeys).
If you're getting other errors, you might need to enable some
system services. For instance, you need the pcscd service
(https://guix.gnu.org/manual/devel/en/guix.html#index-pcscd), and
also the udev rules appropriate for your Yubikey model
(https://github.com/Yubico/libfido2/blob/main/udev/70-u2f.rules). The
below snippet should get all Yubikey functionality working:
#+begin_src scheme
(service pcscd-service-type)
(udev-rules-service 'yubikey-rules
(udev-rule
"70-u2f.rules"
(string-append
;; All keys
"ACTION!=\"add|change\",
GOTO=\"u2f_end\"\n"
;; Yubikey
"KERNEL==\"hidraw*\", "
"SUBSYSTEM==\"hidraw\", "
"ATTRS{idVendor}==\"1050\", "
"ATTRS{idProduct}==\"0113|0114|0115|0116|0120|0121|0200|0402|0403|0406|0407|0410\",
"
"TAG+=\"uaccess\", MODE=\"0660\"\n"
;; End all keys
"LABEL=\"u2f_end\"")))
#+end_src
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 227 bytes --]
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: Guix home, guix system, channels, some noob questions
2022-06-13 19:31 ` Dominic Martinez
@ 2022-06-14 10:36 ` Sébastien Rey-Coyrehourcq
0 siblings, 0 replies; 23+ messages in thread
From: Sébastien Rey-Coyrehourcq @ 2022-06-14 10:36 UTC (permalink / raw)
To: Dominic Martinez; +Cc: Daniel Meißner, help-guix, Julien Lepiller
[-- Attachment #1.1.1: Type: text/plain, Size: 3086 bytes --]
Le 13/06/2022 à 21:31, Dominic Martinez a écrit :
>
> sebastien rey-coyrehourcq <sebastien.rey-coyrehourcq@univ-rouen.fr>
> writes:
>
>> Hi,
>>
>> I jump into guile world by learning and copy/pasting Dominic Martinez
>> config :)
>
> Nice to know my config helped someone! Sorry it's a bit of a mess, I
> didn't really document anything.
I'm interested to better understand some Guile snippet of your config,
if you're ok, is it possible to ask that in another mail or irc ?
>
>> Everything going pretty well but now i'm blocked with yubikey
>> configuration.
>>
>> And without yubikey that contain your only private key to
>> sign/decrypt everything, that's a
>> little complicated ...
>>
>> Running "gpg --card-status" my yubikey is correclty detected. That a
>> good news ... BUT
>> that's all,
>> other command don't work, for example both :
>>
>> gpg --list-secret-keys
>> gpg --list-keys
>
> When you say it doesn't work, do you mean it doesn't list any keys? If
> you have keys on your Yubikey that you used with GPG on a different
> system, you'll have to re-export the key stubs for GPG to use the
> Yubikey for authentication (see
> https://github.com/drduh/YubiKey-Guide#switching-between-two-or-more-yubikeys).
>
Thanks! This only manipulation seems not enough and i finally found that
importing public key is required, from server or directly from the key ....
yourkey.asc | gpg --import
After that, everything goes well !
> If you're getting other errors, you might need to enable some system
> services. For instance, you need the pcscd service
> (https://guix.gnu.org/manual/devel/en/guix.html#index-pcscd), and also
> the udev rules appropriate for your Yubikey model
> (https://github.com/Yubico/libfido2/blob/main/udev/70-u2f.rules). The
> below snippet should get all Yubikey functionality working:
>
> #+begin_src scheme
> (service pcscd-service-type)
> (udev-rules-service 'yubikey-rules
> (udev-rule
> "70-u2f.rules"
> (string-append
> ;; All keys
> "ACTION!=\"add|change\",
> GOTO=\"u2f_end\"\n"
> ;; Yubikey
> "KERNEL==\"hidraw*\", "
> "SUBSYSTEM==\"hidraw\", "
> "ATTRS{idVendor}==\"1050\", "
> "ATTRS{idProduct}==\"0113|0114|0115|0116|0120|0121|0200|0402|0403|0406|0407|0410\",
> "
> "TAG+=\"uaccess\", MODE=\"0660\"\n"
> ;; End all keys
> "LABEL=\"u2f_end\"")))
> #+end_src
I already copy paste this part from your config :)
Thanks again !
Sébastien RC.
[-- 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 --]
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: Guix home, guix system, channels, some noob questions
2022-05-25 13:34 ` Daniel Meißner
2022-05-25 18:45 ` Efraim Flashner
@ 2022-07-11 6:06 ` Joshua Branson
1 sibling, 0 replies; 23+ messages in thread
From: Joshua Branson @ 2022-07-11 6:06 UTC (permalink / raw)
To: Daniel Meißner
Cc: Sébastien Rey-Coyrehourcq, Julien Lepiller, help-guix
Daniel Meißner <daniel.meissner-i4k@ruhr-uni-bochum.de> writes:
> Hi Sébastien,
>
> Sébastien Rey-Coyrehourcq writes:
>
>> Thanks, in fact when i see *guix home* that was my first intention
>> (like home-manager in nix).
>>
>> The only things holding me back at the moment is two things :
>>
>> a) doom emacs flavour, how to manage the fact that doom use straigt.el
>> to maintain packages
I actually use doom emacs on guix system. I have not yet migrated to
guix home just yet. I had an issue with doom emacs NOT having debbugs
installed. This worked for me:
$ guix install emacs-debbugs
Then I opened up: .doom.d/config.el
(require 'debbugs-autoloads)
$ doom sync
Now I can use doom emacs and debbugs!
Maybe you can add other emacs packages to doom that way.
>> b) "password / secrets" management ?
>>
>> There are two things, file to directly encrypt (like ssh key) and
>> password to hide into configuration file (templating)
>>
>> b.1) So, that need to encrypt/decrypt more or less "on-the-fly" the
>> files using gpg/yubikey or age like yadm (
>> https://yadm.io/docs/encryption ) or chezmoi
>> (https://www.chezmoi.io/user-guide/encryption/gpg/) do ?
>>
>> b.2) And for templating, like replacing ${mypassword} into some
>> configuration file by getting info stored into password manager like
>> "pass", i also don't know how to do that.
>>
This is probably heresy...but I use an ~/.authinfo file. It's a plain
text file. I have never been able to figure out how to use a
~/.authinfo.gpg. Or rather I did figure out how to use it...Then lost
my gpg key, and then lost all of my passwords. So now I have an
.authinfo file, and I have a private git repo of my /home/joshua of
various files. It's probably a poor way of doing it, but it's how I do it.
Hope that helps,
--
Joshua Branson
https://gnucode.me
https://video.hardlimit.com/a/joshua_branson/video-channels
mastodon: thegnuguy@fosstodon.org
Sent from Emacs, Gnus, and the Hurd!
^ permalink raw reply [flat|nested] 23+ messages in thread
end of thread, other threads:[~2022-07-11 6:07 UTC | newest]
Thread overview: 23+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
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
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
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.