unofficial mirror of help-guix@gnu.org 
 help / color / mirror / Atom feed
* Guix home on foreign distribution
@ 2021-10-18 15:41 Roland Everaert via
  2021-10-18 16:55 ` Oleg Pykhalov
  2021-10-18 17:21 ` Fredrik Salomonsson
  0 siblings, 2 replies; 7+ messages in thread
From: Roland Everaert via @ 2021-10-18 15:41 UTC (permalink / raw)
  To: help-guix@gnu.org

Hello,

Is there anything related to file and directory permissions to be set on foreign distrubution for guix home to work?

I know that feature is still pretty young and some parts are still in dev, yet I have tried it on my fedora 34 system and got the following error, which could be related to permission and file ownership:

---------------------------------------------------

building /gnu/store/564yvkjmdp5bvdijk8w0cwl7ym5q6sdr-bash_profile.drv...
Backtrace:
8 (primitive-load "/gnu/store/lp5wrbb8qi9lc3hyji3dxwjzgg8?")
In ice-9/ports.scm:
463:17 7 (call-with-output-file _ _ #:binary _ #:encoding _)
In ice-9/eval.scm:
159:9 6 (_ #(#(#<directory (guile-user) 7fffefbabf00>) #<outp?>))
163:9 5 (_ #(#(#<directory (guile-user) 7fffefbabf00>) #<outp?>))
155:9 4 (_ #(#(#<directory (guile-user) 7fffefbabf00>) #<outp?>))
159:9 3 (_ #(#(#<directory (guile-user) 7fffefbabf00>) #<outp?>))
In ice-9/boot-9.scm:
152:2 2 (with-fluid* _ _ _)
In ice-9/ports.scm:
440:11 1 (call-with-input-file "export HISTFILE=$HOME/.bash_his?" ?)
In unknown file:
0 (open-file "export HISTFILE=$HOME/.bash_history" "r" # # ?)

ERROR: In procedure open-file:
In procedure open-file: No such file or directory: "export HISTFILE=$HOME/.bash_history"
builder for `/gnu/store/564yvkjmdp5bvdijk8w0cwl7ym5q6sdr-bash_profile.drv' failed with exit code 1
build of /gnu/store/564yvkjmdp5bvdijk8w0cwl7ym5q6sdr-bash_profile.drv failed
View build log at '/var/log/guix/drvs/56/4yvkjmdp5bvdijk8w0cwl7ym5q6sdr-bash_profile.drv.bz2'.
cannot build derivation `/gnu/store/ic73gayslzsj0k2snp61z5aaiwd6l5ck-files.drv': 1 dependencies couldn't be built
applying 2 grafts for /gnu/store/g2wlw2kxszxclfq1pvxyfbs7q15xl1vf-python-future-0.18.2.drv ...
cannot build derivation `/gnu/store/gam06nxwyb6kcqs3pxwh1v8p627ps0df-home.drv': 1 dependencies couldn't be built
guix home: error: build of `/gnu/store/gam06nxwyb6kcqs3pxwh1v8p627ps0df-home.drv' failed

-----------------------------------------------

The guix home configuration file I use:

---------------------------------------------

(use-modules (gnu home)
(gnu home services)
(gnu home services shells)
(gnu services)
(gnu packages admin)
(gnu packages python-xyz)
(gnu packages password-utils)
(gnu packages dunst)
(gnu packages disk)
(gnu packages backup)
(gnu packages libreoffice)
(gnu packages guile)
(gnu packages xdisorg)
(gnu packages tls)
(gnu packages vpn)
(guix gexp))

(home-environment
(packages (list htop glances password-store dunst ranger restic hunspell
;; hunspell-dict-fr hunspell-dict-en
;; guile
neofetch xdotool openssl openvpn xscreensaver))
(services
(list
(service home-bash-service-type
(home-bash-configuration
(guix-defaults? #t)
(bash-profile (list "export HISTFILE=$HOME/.bash_history"))))

(simple-service 'test-config
home-files-service-type
(list `("config/test.conf"
,(plain-file "tmp-file.txt"
"the content of ~/.config/test.conf")))))))
-------------------------------------

Some system related information:
-------------------------------------------------------
[roland@singularity ~]$ guix describe
hint: Consider installing the `glibc-locales' package and defining `GUIX_LOCPATH', along these lines:

guix install glibc-locales
export GUIX_LOCPATH="$HOME/.guix-profile/lib/locale"

See the "Application Setup" section in the manual, for more info.

Generation 45 Oct 18 2021 13:14:31 (current)
guix 84759b7
repository URL: https://git.savannah.gnu.org/git/guix.git
branch: master
commit: 84759b7c20fa4ee7e8004f2fc0ddec694cf9aedd

[roland@singularity ~]$ neofetch --off --package_managers off --title_fqdn off --uptime off
roland@singularity
------------------
OS: Fedora 34 (Workstation Edition) x86_64
Host: B550 GAMING X
Kernel: 5.14.9-200.fc34.x86_64
Uptime: 2 hours, 53 mins
Packages: 2438
Shell: bash 5.0.16
Resolution: 3840x2160
WM: stumpwm
Theme: Adwaita [GTK2/3]
Icons: Adwaita [GTK2/3]
Terminal: alacritty
CPU: AMD Ryzen 7 3800XT (16) @ 3.900GHz
GPU: NVIDIA GeForce RTX 3070
Memory: 4328MiB / 32035MiB
-------------------------------------------------------------------------

Regards,

Roland Everaert
---
Use the F.O.S.S., Luke

Sent with [ProtonMail](https://protonmail.com/) Secure Email.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Guix home on foreign distribution
  2021-10-18 15:41 Guix home on foreign distribution Roland Everaert via
@ 2021-10-18 16:55 ` Oleg Pykhalov
  2021-10-19 11:19   ` Re : " Roland Everaert
  2021-10-18 17:21 ` Fredrik Salomonsson
  1 sibling, 1 reply; 7+ messages in thread
From: Oleg Pykhalov @ 2021-10-18 16:55 UTC (permalink / raw)
  To: Roland Everaert via; +Cc: Roland Everaert

[-- Attachment #1: Type: text/plain, Size: 1342 bytes --]

Hi,

Roland Everaert via <help-guix@gnu.org> writes:

> Is there anything related to file and directory permissions to be set
> on foreign distrubution for guix home to work?
>
> I know that feature is still pretty young and some parts are still in dev, yet
> I have tried it on my fedora 34 system and got the following error, which
> could be related to permission and file ownership:
>
> ...
>
> --8<---------------cut here---------------start------------->8---
> (home-environment
>  (packages (list htop glances password-store dunst ranger restic hunspell
>                  ;; hunspell-dict-fr hunspell-dict-en
>                  ;; guile
>                  neofetch xdotool openssl openvpn xscreensaver))
>  (services
>   (list
>    (service home-bash-service-type
>             (home-bash-configuration
>              (guix-defaults? #t)
>              (bash-profile (list "export HISTFILE=$HOME/.bash_history"))))

This should be a file-like object, e.g. plain-file same as in the test-config.

>    (simple-service 'test-config
>                    home-files-service-type
>                    (list `("config/test.conf"
>                            ,(plain-file "tmp-file.txt"
>                                         "the content of ~/.config/test.conf")))))))
> --8<---------------cut here---------------end--------------->8---

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 861 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Guix home on foreign distribution
  2021-10-18 15:41 Guix home on foreign distribution Roland Everaert via
  2021-10-18 16:55 ` Oleg Pykhalov
@ 2021-10-18 17:21 ` Fredrik Salomonsson
  2021-10-19 11:46   ` Re : " Roland Everaert
  1 sibling, 1 reply; 7+ messages in thread
From: Fredrik Salomonsson @ 2021-10-18 17:21 UTC (permalink / raw)
  To: Roland Everaert, help-guix@gnu.org

Hi Roland,

Roland Everaert via <help-guix@gnu.org> writes:

> Hello,
>
> Is there anything related to file and directory permissions to be set on foreign distrubution for guix home to work?

No special permissions are needed for guix home to work. I'm using it on
a foregin distro and it works (still have some minor papercuts but
unrelated to this). 

> I know that feature is still pretty young and some parts are still in
> dev, yet I have tried it on my fedora 34 system and got the following
> error, which could be related to permission and file ownership:
>
> ---------------------------------------------------
>
> building /gnu/store/564yvkjmdp5bvdijk8w0cwl7ym5q6sdr-bash_profile.drv...
> Backtrace:
> 8 (primitive-load "/gnu/store/lp5wrbb8qi9lc3hyji3dxwjzgg8?")
> In ice-9/ports.scm:
> 463:17 7 (call-with-output-file _ _ #:binary _ #:encoding _)
> In ice-9/eval.scm:
> 159:9 6 (_ #(#(#<directory (guile-user) 7fffefbabf00>) #<outp?>))
> 163:9 5 (_ #(#(#<directory (guile-user) 7fffefbabf00>) #<outp?>))
> 155:9 4 (_ #(#(#<directory (guile-user) 7fffefbabf00>) #<outp?>))
> 159:9 3 (_ #(#(#<directory (guile-user) 7fffefbabf00>) #<outp?>))
> In ice-9/boot-9.scm:
> 152:2 2 (with-fluid* _ _ _)
> In ice-9/ports.scm:
> 440:11 1 (call-with-input-file "export HISTFILE=$HOME/.bash_his?" ?)
> In unknown file:
> 0 (open-file "export HISTFILE=$HOME/.bash_history" "r" # # ?)
>
> ERROR: In procedure open-file:
> In procedure open-file: No such file or directory: "export HISTFILE=$HOME/.bash_history"
> builder for `/gnu/store/564yvkjmdp5bvdijk8w0cwl7ym5q6sdr-bash_profile.drv' failed with exit code 1
> build of /gnu/store/564yvkjmdp5bvdijk8w0cwl7ym5q6sdr-bash_profile.drv failed
> View build log at '/var/log/guix/drvs/56/4yvkjmdp5bvdijk8w0cwl7ym5q6sdr-bash_profile.drv.bz2'.
> cannot build derivation `/gnu/store/ic73gayslzsj0k2snp61z5aaiwd6l5ck-files.drv': 1 dependencies couldn't be built
> applying 2 grafts for /gnu/store/g2wlw2kxszxclfq1pvxyfbs7q15xl1vf-python-future-0.18.2.drv ...
> cannot build derivation `/gnu/store/gam06nxwyb6kcqs3pxwh1v8p627ps0df-home.drv': 1 dependencies couldn't be built
> guix home: error: build of `/gnu/store/gam06nxwyb6kcqs3pxwh1v8p627ps0df-home.drv' failed
>
> -----------------------------------------------
>
> The guix home configuration file I use:
>
> ---------------------------------------------
>
> (use-modules (gnu home)
> (gnu home services)
> (gnu home services shells)
> (gnu services)
> (gnu packages admin)
> (gnu packages python-xyz)
> (gnu packages password-utils)
> (gnu packages dunst)
> (gnu packages disk)
> (gnu packages backup)
> (gnu packages libreoffice)
> (gnu packages guile)
> (gnu packages xdisorg)
> (gnu packages tls)
> (gnu packages vpn)
> (guix gexp))
>
> (home-environment
> (packages (list htop glances password-store dunst ranger restic hunspell
> ;; hunspell-dict-fr hunspell-dict-en
> ;; guile
> neofetch xdotool openssl openvpn xscreensaver))
> (services
> (list
> (service home-bash-service-type
> (home-bash-configuration
> (guix-defaults? #t)
> (bash-profile (list "export HISTFILE=$HOME/.bash_history"))))
>
> (simple-service 'test-config
> home-files-service-type
> (list `("config/test.conf"
> ,(plain-file "tmp-file.txt"
> "the content of ~/.config/test.conf")))))))
> -------------------------------------

I think this is an issue due to the api changed for the
home-bash-service-type and the docs hasn't been updated. See this email
thread [0]. Try changing:

(bash-profile (list "export HISTFILE=$HOME/.bash_history"))

to

(bash-profile (list (plain-file "bash_profile" "export HISTFILE=$HOME/.bash_history")))

[0] https://lists.gnu.org/archive/html/help-guix/2021-10/msg00045.html

I hope that helps.

-- 
s/Fred[re]+i[ck]+/Fredrik/g


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re : Re: Guix home on foreign distribution
  2021-10-18 16:55 ` Oleg Pykhalov
@ 2021-10-19 11:19   ` Roland Everaert
  2021-10-19 13:57     ` Oleg Pykhalov
  0 siblings, 1 reply; 7+ messages in thread
From: Roland Everaert @ 2021-10-19 11:19 UTC (permalink / raw)
  To: Oleg Pykhalov; +Cc: Roland Everaert via

The documentation says otherwise. according to it, it can be a list of strings or gexps for setting environment variables.

Roland Everaert
---
Use the F.O.S.S., Luke

Sent with ProtonMail Secure Email.

‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐

Le lundi 18 octobre 2021 à 18:55, Oleg Pykhalov <go.wigust@gmail.com> a écrit :

> Hi,
>
> Roland Everaert via help-guix@gnu.org writes:
>
> > Is there anything related to file and directory permissions to be set
> >
> > on foreign distrubution for guix home to work?
> >
> > I know that feature is still pretty young and some parts are still in dev, yet
> >
> > I have tried it on my fedora 34 system and got the following error, which
> >
> > could be related to permission and file ownership:
> >
> > ...
> >
> > --8<---------------cut here---------------start------------->8---
> >
> > (home-environment
> >
> > (packages (list htop glances password-store dunst ranger restic hunspell
> >
> > ;; hunspell-dict-fr hunspell-dict-en
> >
> > ;; guile
> >
> > neofetch xdotool openssl openvpn xscreensaver))
> >
> > (services
> >
> > (list
> >
> > (service home-bash-service-type
> >
> > (home-bash-configuration
> >
> > (guix-defaults? #t)
> >
> > (bash-profile (list "export HISTFILE=$HOME/.bash_history"))))
>
> This should be a file-like object, e.g. plain-file same as in the test-config.
>
> > (simple-service 'test-config
> >
> > home-files-service-type
> >
> > (list `("config/test.conf"
> >
> > ,(plain-file "tmp-file.txt"
> >
> > "the content of ~/.config/test.conf")))))))
> >
> > --8<---------------cut here---------------end--------------->8---


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re : Re: Guix home on foreign distribution
  2021-10-18 17:21 ` Fredrik Salomonsson
@ 2021-10-19 11:46   ` Roland Everaert
  0 siblings, 0 replies; 7+ messages in thread
From: Roland Everaert @ 2021-10-19 11:46 UTC (permalink / raw)
  To: Fredrik Salomonsson; +Cc: help-guix@gnu.org

With that syntax it works.

Thank you,

Roland Everaert
---
Use the F.O.S.S., Luke

Sent with ProtonMail Secure Email.

‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐

Le lundi 18 octobre 2021 à 19:21, Fredrik Salomonsson <plattfot@posteo.net> a écrit :

> Hi Roland,
>
> Roland Everaert via help-guix@gnu.org writes:
>
> > Hello,
> >
> > Is there anything related to file and directory permissions to be set on foreign distrubution for guix home to work?
>
> No special permissions are needed for guix home to work. I'm using it on
>
> a foregin distro and it works (still have some minor papercuts but
>
> unrelated to this).
>
> > I know that feature is still pretty young and some parts are still in
> >
> > dev, yet I have tried it on my fedora 34 system and got the following
> >
> > error, which could be related to permission and file ownership:
> >
> > building /gnu/store/564yvkjmdp5bvdijk8w0cwl7ym5q6sdr-bash_profile.drv...
> >
> > Backtrace:
> >
> > 8 (primitive-load "/gnu/store/lp5wrbb8qi9lc3hyji3dxwjzgg8?")
> >
> > In ice-9/ports.scm:
> >
> > 463:17 7 (call-with-output-file _ _ #:binary _ #:encoding )
> >
> > In ice-9/eval.scm:
> >
> > 159:9 6 ( #(#(#<directory (guile-user) 7fffefbabf00>) #<outp?>))
> >
> > 163:9 5 (_ #(#(#<directory (guile-user) 7fffefbabf00>) #<outp?>))
> >
> > 155:9 4 (_ #(#(#<directory (guile-user) 7fffefbabf00>) #<outp?>))
> >
> > 159:9 3 (_ #(#(#<directory (guile-user) 7fffefbabf00>) #<outp?>))
> >
> > In ice-9/boot-9.scm:
> >
> > 152:2 2 (with-fluid* _ _ _)
> >
> > In ice-9/ports.scm:
> >
> > 440:11 1 (call-with-input-file "export HISTFILE=$HOME/.bash_his?" ?)
> >
> > In unknown file:
> >
> > 0 (open-file "export HISTFILE=$HOME/.bash_history" "r" # # ?)
> >
> > ERROR: In procedure open-file:
> >
> > In procedure open-file: No such file or directory: "export HISTFILE=$HOME/.bash_history"
> >
> > builder for `/gnu/store/564yvkjmdp5bvdijk8w0cwl7ym5q6sdr-bash_profile.drv' failed with exit code 1 build of /gnu/store/564yvkjmdp5bvdijk8w0cwl7ym5q6sdr-bash_profile.drv failed View build log at '/var/log/guix/drvs/56/4yvkjmdp5bvdijk8w0cwl7ym5q6sdr-bash_profile.drv.bz2'. cannot build derivation` /gnu/store/ic73gayslzsj0k2snp61z5aaiwd6l5ck-files.drv': 1 dependencies couldn't be built
> >
> > applying 2 grafts for /gnu/store/g2wlw2kxszxclfq1pvxyfbs7q15xl1vf-python-future-0.18.2.drv ...
> >
> > cannot build derivation `/gnu/store/gam06nxwyb6kcqs3pxwh1v8p627ps0df-home.drv': 1 dependencies couldn't be built guix home: error: build of` /gnu/store/gam06nxwyb6kcqs3pxwh1v8p627ps0df-home.drv' failed
> >
> > The guix home configuration file I use:
> >
> > (use-modules (gnu home)
> >
> > (gnu home services)
> >
> > (gnu home services shells)
> >
> > (gnu services)
> >
> > (gnu packages admin)
> >
> > (gnu packages python-xyz)
> >
> > (gnu packages password-utils)
> >
> > (gnu packages dunst)
> >
> > (gnu packages disk)
> >
> > (gnu packages backup)
> >
> > (gnu packages libreoffice)
> >
> > (gnu packages guile)
> >
> > (gnu packages xdisorg)
> >
> > (gnu packages tls)
> >
> > (gnu packages vpn)
> >
> > (guix gexp))
> >
> > (home-environment
> >
> > (packages (list htop glances password-store dunst ranger restic hunspell
> >
> > ;; hunspell-dict-fr hunspell-dict-en
> >
> > ;; guile
> >
> > neofetch xdotool openssl openvpn xscreensaver))
> >
> > (services
> >
> > (list
> >
> > (service home-bash-service-type
> >
> > (home-bash-configuration
> >
> > (guix-defaults? #t)
> >
> > (bash-profile (list "export HISTFILE=$HOME/.bash_history"))))
> >
> > (simple-service 'test-config
> >
> > home-files-service-type
> >
> > (list `("config/test.conf"
> >
> > ,(plain-file "tmp-file.txt"
> >
> > "the content of ~/.config/test.conf")))))))
> > -----------------------------------------------------------------------------------------------------------------------------------------------------------
>
> I think this is an issue due to the api changed for the
>
> home-bash-service-type and the docs hasn't been updated. See this email
>
> thread [0]. Try changing:
>
> (bash-profile (list "export HISTFILE=$HOME/.bash_history"))
>
> to
>
> (bash-profile (list (plain-file "bash_profile" "export HISTFILE=$HOME/.bash_history")))
>
> [0] https://lists.gnu.org/archive/html/help-guix/2021-10/msg00045.html
>
> I hope that helps.
>
> --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> s/Fred[re]+i[ck]+/Fredrik/g


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Guix home on foreign distribution
  2021-10-19 11:19   ` Re : " Roland Everaert
@ 2021-10-19 13:57     ` Oleg Pykhalov
  2021-10-31 23:30       ` Pascal Lorenz
  0 siblings, 1 reply; 7+ messages in thread
From: Oleg Pykhalov @ 2021-10-19 13:57 UTC (permalink / raw)
  To: Roland Everaert; +Cc: Roland Everaert via

[-- Attachment #1: Type: text/plain, Size: 234 bytes --]

Roland Everaert <r.everaert@protonmail.com> writes:

> The documentation says otherwise. according to it, it can be a list of
> strings or gexps for setting environment variables.

Yes it was.  But now it's already fixed in ff20d392.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 861 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Guix home on foreign distribution
  2021-10-19 13:57     ` Oleg Pykhalov
@ 2021-10-31 23:30       ` Pascal Lorenz
  0 siblings, 0 replies; 7+ messages in thread
From: Pascal Lorenz @ 2021-10-31 23:30 UTC (permalink / raw)
  To: Oleg Pykhalov; +Cc: Help Guix

My documentation still seems to be out of date after running guix pull and guix system reconfigure. I opened the doc with info guix. Am I missing a step?

> On 19. Oct 2021, at 15:57, Oleg Pykhalov <go.wigust@gmail.com> wrote:
> 
> Roland Everaert <r.everaert@protonmail.com> writes:
> 
>> The documentation says otherwise. according to it, it can be a list of
>> strings or gexps for setting environment variables.
> 
> Yes it was.  But now it's already fixed in ff20d392.


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2021-10-31 23:30 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-18 15:41 Guix home on foreign distribution Roland Everaert via
2021-10-18 16:55 ` Oleg Pykhalov
2021-10-19 11:19   ` Re : " Roland Everaert
2021-10-19 13:57     ` Oleg Pykhalov
2021-10-31 23:30       ` Pascal Lorenz
2021-10-18 17:21 ` Fredrik Salomonsson
2021-10-19 11:46   ` Re : " Roland Everaert

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).