unofficial mirror of help-guix@gnu.org 
 help / color / mirror / Atom feed
* Sorry, stupid question about guix pull
@ 2019-01-08 16:52 Jone
  2019-01-08 17:03 ` Julien Lepiller
  0 siblings, 1 reply; 5+ messages in thread
From: Jone @ 2019-01-08 16:52 UTC (permalink / raw)
  To: help-guix

I need execute this as root? For upgrade system libraries and kernel.
Part of my config:

(packages
 (let ((trash (map specification->package
                   '("zile" "wireless-tools"))))
   (append (map specification->package
                '("xfce" "slim" "gvfs" "xrandr" "unzip"
                  "emacs" "w3m" "emacs-guix" "alsa-lib"
                  "moreutils" "mlocate" "tree" "file"
                  "autobuild" "autoconf" "autogen" "automake" "ccache" "cmake"
"gcc-toolchain" "make"
                  ;;; and dependences - visibly!
                  "gnutls" "ncurses" "libx11" "gtk+" "imagemagick" "acl" "zlib"
"dbus" "glibc-utf8-locales"
                  ;;; new/additional
                  "alsa-utils" "nss-certs"))
           (remove (lambda (pkg)
                        (memq pkg trash))
                   %base-packages))))  ;;  %base-packages selected here!

I don't really understand how it works, but it was OK before, and now
I can't upgrade the system (the current version is 0.15).
Many libraries have not been updated with this config when you try to
update as 'su -l; guix pull'.

What is my mistake - I would like to use simple package names, but I
want them to be the latest versions. And after 'guix pull' I run 'guix
package -u', but no upgrade.

I see a message when I try to update individual packages: "Need
upgrade X with Y".

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

* Re: Sorry, stupid question about guix pull
  2019-01-08 16:52 Sorry, stupid question about guix pull Jone
@ 2019-01-08 17:03 ` Julien Lepiller
  2019-01-08 17:49   ` Jone
  0 siblings, 1 reply; 5+ messages in thread
From: Julien Lepiller @ 2019-01-08 17:03 UTC (permalink / raw)
  To: Jone; +Cc: help-guix

Le 2019-01-08 17:52, Jone a écrit :
> I need execute this as root? For upgrade system libraries and kernel.
> Part of my config:
> 
> (packages
>  (let ((trash (map specification->package
>                    '("zile" "wireless-tools"))))
>    (append (map specification->package
>                 '("xfce" "slim" "gvfs" "xrandr" "unzip"
>                   "emacs" "w3m" "emacs-guix" "alsa-lib"
>                   "moreutils" "mlocate" "tree" "file"
>                   "autobuild" "autoconf" "autogen" "automake" "ccache" 
> "cmake"
> "gcc-toolchain" "make"
>                   ;;; and dependences - visibly!
>                   "gnutls" "ncurses" "libx11" "gtk+" "imagemagick" 
> "acl" "zlib"
> "dbus" "glibc-utf8-locales"
>                   ;;; new/additional
>                   "alsa-utils" "nss-certs"))
>            (remove (lambda (pkg)
>                         (memq pkg trash))
>                    %base-packages))))  ;;  %base-packages selected 
> here!

Hi Jone,

don't be sorry, we're here to answer your questions anyway. And no 
question is stupid ;)

this looks like it's part of an operating-system declaration. Is that 
right?

> 
> I don't really understand how it works, but it was OK before, and now
> I can't upgrade the system (the current version is 0.15).
> Many libraries have not been updated with this config when you try to
> update as 'su -l; guix pull'.

When you run guix pull, a new guix is installed for the user who ran it.
That new guix comes with updated package definitions, but it doesn't 
update
anything by itself.

> 
> What is my mistake - I would like to use simple package names, but I
> want them to be the latest versions. And after 'guix pull' I run 'guix
> package -u', but no upgrade.

'guix package -u' upgrades packages that are present in the user's 
profile
according to package definitions that were updated with 'guix pull'.
But you want to update the system profile itself, which is managed 
separately
from root's or you user's profile. Try 'guix system reconfigure <path to 
config.scm>'
instead.

> 
> I see a message when I try to update individual packages: "Need
> upgrade X with Y".

I'm not sure what that is... can you give a more concrete example?

I hope I could help a little :)

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

* Re: Sorry, stupid question about guix pull
  2019-01-08 17:03 ` Julien Lepiller
@ 2019-01-08 17:49   ` Jone
  2019-01-08 20:13     ` Julien Lepiller
  0 siblings, 1 reply; 5+ messages in thread
From: Jone @ 2019-01-08 17:49 UTC (permalink / raw)
  To: Julien Lepiller; +Cc: help-guix

> this looks like it's part of an operating-system declaration. Is that right?

That's right.

> When you run guix pull, a new guix is installed for the user who ran it.

And who updates the system libraries and kernel? Root? Well, what is
stated in  operating-system declaration?

> Try 'guix system reconfigure <path to config.scm>' instead.

A! That is the question! So what to use for the upgrade system?!
Upgrade or reconfigure? My operating-system declaration is the same.
Not perfect, but I'll fix it later, with the help of 'reconfigure'
(add noatime options as example).

> I'm not sure what that is... can you give a more concrete example?

I'll leave it for later, it seems particular.

> I hope I could help a little :)

In general, I understand everything. But! Update 0.15 -> 0.16 did not
work. Errors are not saved, I will try again.

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

* Re: Sorry, stupid question about guix pull
  2019-01-08 17:49   ` Jone
@ 2019-01-08 20:13     ` Julien Lepiller
  2019-01-09 18:27       ` Jone
  0 siblings, 1 reply; 5+ messages in thread
From: Julien Lepiller @ 2019-01-08 20:13 UTC (permalink / raw)
  To: Jone; +Cc: help-guix

Le Tue, 8 Jan 2019 17:49:40 +0000,
Jone <yeger9@gmail.com> a écrit :

> > this looks like it's part of an operating-system declaration. Is
> > that right?  
> 
> That's right.
> 
> > When you run guix pull, a new guix is installed for the user who
> > ran it.  
> 
> And who updates the system libraries and kernel? Root? Well, what is
> stated in  operating-system declaration?
> 
> > Try 'guix system reconfigure <path to config.scm>' instead.  
> 
> A! That is the question! So what to use for the upgrade system?!
> Upgrade or reconfigure? My operating-system declaration is the same.
> Not perfect, but I'll fix it later, with the help of 'reconfigure'
> (add noatime options as example).
> 
> > I'm not sure what that is... can you give a more concrete example?  
> 
> I'll leave it for later, it seems particular.
> 
> > I hope I could help a little :)  
> 
> In general, I understand everything. But! Update 0.15 -> 0.16 did not
> work. Errors are not saved, I will try again.

Generally speaking, you have to remember that there are at least three
profiles involved in Guix:

your user's profile (managed with 'guix package' as a user),
root's profile (managed with 'guix package' as root),
and the system profile when you use GuixSD (managed with 'guix system'
as root).

the operating-system declaration in your config.scm file is used to
instantiate a new system profile, which is separate from root's
profile. So you use that file with 'guix system reconfigure'. 'guix
package -u' will only upgrade root's or your user's profile.

The kernel is installed in the system profile, not in root's profile.
System libraries do not really exist in guix, because of the
functionnal model. So upgrading the system profile will upgrade system
software, grub and kernel as well as system services, but it doesn't
update anything in root or users' profiles.

A full upgrade consists in running 'guix pull' once as each user
(including root), then running 'guix package -u' (or 'guix package -m'
if you use a manifest) as every user, including root, and 'guix system
reconfigure' to also upgrade the system profile.

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

* Re: Sorry, stupid question about guix pull
  2019-01-08 20:13     ` Julien Lepiller
@ 2019-01-09 18:27       ` Jone
  0 siblings, 0 replies; 5+ messages in thread
From: Jone @ 2019-01-09 18:27 UTC (permalink / raw)
  To: Julien Lepiller; +Cc: help-guix, yeger9


Thank you! I did not understand before what a system profile is. As such
'root profile' in my system and no, there is only a user profile and
system profile (i. e. 0 packages at root).

But it seems the upgrade errors were on stage 'guix package -u' at
user.. Ok, I'll try with more attention. 

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

end of thread, other threads:[~2019-01-09 15:28 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-01-08 16:52 Sorry, stupid question about guix pull Jone
2019-01-08 17:03 ` Julien Lepiller
2019-01-08 17:49   ` Jone
2019-01-08 20:13     ` Julien Lepiller
2019-01-09 18:27       ` Jone

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