unofficial mirror of help-guix@gnu.org 
 help / color / mirror / Atom feed
* How to Rescue GuixSD when guile and guix arebroken?
@ 2018-09-21 12:06 znavko
  2018-09-21 13:17 ` Ricardo Wurmus
  0 siblings, 1 reply; 6+ messages in thread
From: znavko @ 2018-09-21 12:06 UTC (permalink / raw)
  To: help-guix\@gnu.org

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

Hello! I want to ask novice's question, cause the first I want, having trouble, is to re-install GuixSD, but rescue with USB-stick is faster.
I have for second time a bug described here: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=31162
Both times, as I think, it happened this way. I run `guix pull`, switch off notebook while it is running (just a mistake) and then I run again `guix pull`, it works, but gives the errors.
Here it is log I copied from terminal: https://pastebin.com/7c06ER7v
Guix is not working at all.

# guix gc -R $(readlink -f ~/.config/guix/latest)
Backtrace:
In ice-9/boot-9.scm:
   222:17 19 (map1 (((guix store)) ((guix monads)) ((guix #)) ((…)) …))
  2788:17 18 (resolve-interface (guix store) #:select _ #:hide _ # _ …)
  2714:10 17 (_ (guix store) _ _ #:ensure _)
  2982:16 16 (try-module-autoload _ _)
   2312:4 15 (save-module-excursion _)
  3002:22 14 (_)
In unknown file:
          13 (primitive-load-path "guix/store" #<procedure 12d41e0 a…>)
In guix/store.scm:
     20:0 12 (_)
In ice-9/boot-9.scm:
   2862:4 11 (define-module* _ #:filename _ #:pure _ #:version _ # _ …)
  2875:24 10 (_)
   222:29  9 (map1 (((guix utils)) ((guix config)) ((guix #)) ((…)) …))
   222:29  8 (map1 (((guix config)) ((guix memoization)) ((guix …)) …))
   222:29  7 (map1 (((guix memoization)) ((guix serialization)) (#) …))
   222:29  6 (map1 (((guix serialization)) ((guix monads)) ((# #)) …))
   222:29  5 (map1 (((guix monads)) ((guix base16)) ((guix #)) (#) …))
   222:29  4 (map1 (((guix base16)) ((guix base32)) ((gcrypt #)) # …))
   222:29  3 (map1 (((guix base32)) ((gcrypt hash)) ((guix #)) (#) …))
   222:17  2 (map1 (((gcrypt hash)) ((guix profiling)) ((rnrs #)) # …))
   2791:6  1 (resolve-interface _ #:select _ #:hide _ #:prefix _ # _ …)
In unknown file:
           0 (scm-error misc-error #f "~A ~S" ("no code for modu…" …) …)

ERROR: In procedure scm-error:
no code for module (gcrypt hash)

I reported this bug to Bugs Maillist. But for future want to ask how can I rescue broken system booting with GuixSD USB-stick?

[-- Attachment #2: Type: text/html, Size: 3074 bytes --]

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

* Re: How to Rescue GuixSD when guile and guix arebroken?
  2018-09-21 12:06 How to Rescue GuixSD when guile and guix arebroken? znavko
@ 2018-09-21 13:17 ` Ricardo Wurmus
  2018-09-21 14:57   ` znavko
  0 siblings, 1 reply; 6+ messages in thread
From: Ricardo Wurmus @ 2018-09-21 13:17 UTC (permalink / raw)
  To: znavko; +Cc: help-guix@gnu.org


Hello,

> Both times, as I think, it happened this way. I run `guix pull`,
> switch off notebook while it is running (just a mistake) and then I
> run again `guix pull`, it works, but gives the errors.

The mechanism used by “guix pull” has changed.  These errors no longer
happen with the new mechanism.

> # guix gc -R $(readlink -f ~/.config/guix/latest)

~/.config/guix/latest is no longer used.  Instead “guix pull” installs a
full self-contained Guix to ~/.config/guix/current/bin/.

If you don’t have this you are likely upgrading from an old version of
Guix before that change was made.  In that case you need to upgrade to a
version of Guix that has a guile-gcrypt package, then install it, and
only then run “guix pull”.

With the new mechanism you can simply use any of the older variants of
Guix you have in ~/.config/guix/current-n-link/bin.

Hope this helps!

--
Ricardo

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

* Re: How to Rescue GuixSD when guile and guix arebroken?
  2018-09-21 13:17 ` Ricardo Wurmus
@ 2018-09-21 14:57   ` znavko
  2018-09-21 16:08     ` Ricardo Wurmus
  0 siblings, 1 reply; 6+ messages in thread
From: znavko @ 2018-09-21 14:57 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: help-guix\@gnu.org

Thank you, Ricardo Wurmus, for these exact instructions.

> If you don’t have this you are likely upgrading from an old version of
> Guix before that change was made. In that case you need to upgrade to a
> version of Guix that has a guile-gcrypt package, then install it, and
> only then run “guix pull”.

I have that bin directory:

# cd ~/.config/guix/current/bin/
~/.config/guix/current/bin# ls
guix  guix-daemon

And I have no upgrades for guix. As I thought before upgrading process is `guix pull && guix package -u ATOM`

# guix package -u guix
# guix --version
guix (GNU Guix) e67ad5532f76b53e955149da2f1e237696ff0893
Copyright (C) 2018 the Guix authors
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.


Did you mean Guix version  67ad5532f76b53e955149da2f1e237696ff0893 that provide gcrypt?
Can I run `guix pull` now?


‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
пятница, сентябрь 21, 2018 4:17 дня, Ricardo Wurmus <rekado@elephly.net> пишет:

> Hello,
>
> > Both times, as I think, it happened this way. I run `guix pull`,
> > switch off notebook while it is running (just a mistake) and then I
> > run again `guix pull`, it works, but gives the errors.
>
> The mechanism used by “guix pull” has changed. These errors no longer
> happen with the new mechanism.
>
> > guix gc -R $(readlink -f ~/.config/guix/latest)
> >
> > ================================================
>
> ~/.config/guix/latest is no longer used. Instead “guix pull” installs a
> full self-contained Guix to ~/.config/guix/current/bin/.
>
> If you don’t have this you are likely upgrading from an old version of
> Guix before that change was made. In that case you need to upgrade to a
> version of Guix that has a guile-gcrypt package, then install it, and
> only then run “guix pull”.
>
> With the new mechanism you can simply use any of the older variants of
> Guix you have in ~/.config/guix/current-n-link/bin.
>
> Hope this helps!
>
> ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Ricardo

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

* Re: How to Rescue GuixSD when guile and guix arebroken?
  2018-09-21 14:57   ` znavko
@ 2018-09-21 16:08     ` Ricardo Wurmus
  2018-09-21 17:43       ` znavko
  0 siblings, 1 reply; 6+ messages in thread
From: Ricardo Wurmus @ 2018-09-21 16:08 UTC (permalink / raw)
  To: znavko; +Cc: help-guix@gnu.org


znavko <znavko@protonmail.com> writes:

>> If you don’t have this you are likely upgrading from an old version of
>> Guix before that change was made. In that case you need to upgrade to a
>> version of Guix that has a guile-gcrypt package, then install it, and
>> only then run “guix pull”.
>
> I have that bin directory:
>
> # cd ~/.config/guix/current/bin/
> ~/.config/guix/current/bin# ls
> guix  guix-daemon
>
> And I have no upgrades for guix. As I thought before upgrading process is `guix pull && guix package -u ATOM`
>
> # guix package -u guix

Oh, you have “guix” installed with Guix…?  Could you please show me the
output of “which guix”?  You should be using
~/.config/guix/current/bin/guix — that directory should be first on
PATH, and you probably shouldn’t install the “guix” package itself,
because it will necessarily be older than the version of Guix you used
to install it.

--
Ricardo

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

* Re: How to Rescue GuixSD when guile and guix arebroken?
  2018-09-21 16:08     ` Ricardo Wurmus
@ 2018-09-21 17:43       ` znavko
  2018-09-24 15:33         ` Ludovic Courtès
  0 siblings, 1 reply; 6+ messages in thread
From: znavko @ 2018-09-21 17:43 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: help-guix\@gnu.org

Hello, Ricardo Wurmus!
>
> Oh, you have “guix” installed with Guix…? Could you please show me the
> output of “which guix”? You should be using
> ~/.config/guix/current/bin/guix — that directory should be first on
> PATH, and you probably shouldn’t install the “guix” package itself,
> because it will necessarily be older than the version of Guix you used
> to install it.
>



# which guix
/root/.config/guix/current/bin/guix
# echo $PATH
/root/.config/guix/current/bin:/root/.guix-profile/bin:/root/.guix-profile/sbin:/root/.guix-profile/bin:/run/setuid-programs:/run/current-system/profile/bin:/run/current-system/profile/sbin

So, I can run `guix pull` ?
One more question. Often I have troubles that installed by root packages are not visible for root. I think this is because of PATH. So I have added this to /root/.bashrc , as these instructions appeared while I run `guix package -i ATOM` :

# tail -n 6 /root/.bashrc

# my
export PATH="/root/.guix-profile/bin${PATH:+:}$PATH"
export PATH="/root/.guix-profile/bin:/root/.guix-profile/sbin${PATH:+:}$PATH"
export PATH="/root/.config/guix/current/bin${PATH:+:}$PATH"

Is it right way? Does it work, when I run `su`?


PS. Hope my mail will not appear in Maillist archive.

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

* Re: How to Rescue GuixSD when guile and guix arebroken?
  2018-09-21 17:43       ` znavko
@ 2018-09-24 15:33         ` Ludovic Courtès
  0 siblings, 0 replies; 6+ messages in thread
From: Ludovic Courtès @ 2018-09-24 15:33 UTC (permalink / raw)
  To: znavko; +Cc: help-guix@gnu.org

Hello,

znavko <znavko@protonmail.com> skribis:

> One more question. Often I have troubles that installed by root packages are not visible for root. I think this is because of PATH. So I have added this to /root/.bashrc , as these instructions appeared while I run `guix package -i ATOM` :
>
> # tail -n 6 /root/.bashrc
>
> # my
> export PATH="/root/.guix-profile/bin${PATH:+:}$PATH"
> export PATH="/root/.guix-profile/bin:/root/.guix-profile/sbin${PATH:+:}$PATH"
> export PATH="/root/.config/guix/current/bin${PATH:+:}$PATH"
>
> Is it right way?

Environment variable definitions should go to ~/.bash_profile rather
than ~/.bashrc (the former is for “login shells”, the latter isn’t).
Other than that it looks good.

> Does it work, when I run `su`?

‘su’ doesn’t source root’s ~/.bash_profile; you have to run ‘su -’ to do
that.

HTH,
Ludo’.

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

end of thread, other threads:[~2018-09-24 15:33 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-09-21 12:06 How to Rescue GuixSD when guile and guix arebroken? znavko
2018-09-21 13:17 ` Ricardo Wurmus
2018-09-21 14:57   ` znavko
2018-09-21 16:08     ` Ricardo Wurmus
2018-09-21 17:43       ` znavko
2018-09-24 15:33         ` Ludovic Courtès

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).