Subject: bug#34136: closed (Re: bug#34136: guix pull -l fails on fresh user profiles)

From: [email-masked] (GNU bug Tracking System)
Date: Sun, 20 Jan 2019 22:57:02 +0000

Your bug report

#34136: guix pull -l fails on fresh user profiles

which was filed against the guix package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
34136: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=34136
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#34136: guix pull -l fails on fresh user profiles
From: Ludovic Courtès <[email-masked]>
To: Pierre Neidhardt <[email-masked]>
Cc: [email-masked]
Date: Sun, 20 Jan 2019 23:56:24 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

Pierre Neidhardt <[email-masked]> skribis:

> Switch to a new user, or simply log in as 'root' if you've never "guix
> pull"ed with it, then
>
> # guix pull -l
> Backtrace:
>            8 (apply-smob/1 #<catch-closure 11508e0>)
> In ice-9/boot-9.scm:
>     705:2  7 (call-with-prompt _ _ #<procedure default-prompt-handle…>)
> In ice-9/eval.scm:
>     619:8  6 (_ #(#(#<directory (guile-user) 11d2140>)))
> In guix/ui.scm:
>   1644:12  5 (run-guix-command _ . _)
> In ice-9/boot-9.scm:
>     829:9  4 (catch srfi-34 #<procedure 2e24be0 at guix/ui.scm:622:…> …)
>     829:9  3 (catch system-error #<procedure 2e24c80 at guix/script…> …)
>     829:9  2 (catch git-error #<procedure 2e24b40 at guix/scripts/p…> …)
>     829:9  1 (catch system-error #<procedure 2e28c40 at guix/script…> …)
> In unknown file:
>            0 (raise #<condition &profile-not-found-error [profile: "…>)
>
> ERROR: In procedure raise:
> Wrong type (expecting exact integer): #<condition &profile-not-found-error [profile: "/var/guix/profiles/per-user/root/current-guix"] 2e1e8c0>

Fixed in c49b45c917eff17122aea5f7a57ae4cef02f1003.  A missing import and
the wrong ‘raise’ was being used.

> I think we should make `guix pull -l' return a value that can be used
> meaningfully in deployment scripts.  For instance, a non-zero
> exit code could mean this is a fresh user profile.

Yep, that’s what was intended and what happens now.  :-)

Thanks,
Ludo’.

Subject: guix pull -l fails on fresh user profiles
From: Pierre Neidhardt <[email-masked]>
To: [email-masked]
Date: Sat, 19 Jan 2019 18:55:05 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

Switch to a new user, or simply log in as 'root' if you've never "guix
pull"ed with it, then

--8<---------------cut here---------------start------------->8---
# guix pull -l
Backtrace:
           8 (apply-smob/1 #<catch-closure 11508e0>)
In ice-9/boot-9.scm:
    705:2  7 (call-with-prompt _ _ #<procedure default-prompt-handle…>)
In ice-9/eval.scm:
    619:8  6 (_ #(#(#<directory (guile-user) 11d2140>)))
In guix/ui.scm:
  1644:12  5 (run-guix-command _ . _)
In ice-9/boot-9.scm:
    829:9  4 (catch srfi-34 #<procedure 2e24be0 at guix/ui.scm:622:…> …)
    829:9  3 (catch system-error #<procedure 2e24c80 at guix/script…> …)
    829:9  2 (catch git-error #<procedure 2e24b40 at guix/scripts/p…> …)
    829:9  1 (catch system-error #<procedure 2e28c40 at guix/script…> …)
In unknown file:
           0 (raise #<condition &profile-not-found-error [profile: "…>)

ERROR: In procedure raise:
Wrong type (expecting exact integer): #<condition &profile-not-found-error [profile: "/var/guix/profiles/per-user/root/current-guix"] 2e1e8c0>
--8<---------------cut here---------------end--------------->8---

I think we should make `guix pull -l' return a value that can be used
meaningfully in deployment scripts.  For instance, a non-zero
exit code could mean this is a fresh user profile.

Thoughts?

-- 
Pierre Neidhardt
https://ambrevar.xyz/