all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [question] How to use data that was previously downloaded using "guix pull" in a new system user?
@ 2024-08-02  1:27 Rodrigo Morales
  0 siblings, 0 replies; 3+ messages in thread
From: Rodrigo Morales @ 2024-08-02  1:27 UTC (permalink / raw)
  To: help-guix


I'm running guix in Ubuntu 22.04.4 LTS on my desktop computer.

On my desktop computer, I like running experiments just to see what
happens. When I want to run an experiment related to the default
behavior of a tool, I create a new system user (using the command =sudo
useradd --create-home experiment-1=) and execute whatever command I want
to experiment with, this way I make sure that none of my dotfiles change
the default behavior of the tool. On my desktop computer, =rodrigo= is
the user that has all my dotfiles, and the users that I use for running
experiments are called =experiment-1=, =experiment-2=, =experiment-3=
and so on.

I want to run some experiments that involve using the =guix= command.

In Ubuntu, I installed =guix= using =sudo apt install guix=. If I create
a new system user, =guix version= reports the following version:

#+BEGIN_SRC sh
$ guix --version
guix (GNU Guix) 1.3.0
Copyright (C) 2021 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.
#+END_SRC

If I create a new system user and I run =guix pull=. Upon completion of
the command =guix pull=, =guix version= reports the following version:

#+BEGIN_SRC text
$ guix --version
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.

guix (GNU Guix) 2b4e3c9847dce02e371ff4dce615789fdfd101fa
Copyright (C) 2024 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.
#+END_SRC

In the experiments that I want to run, I don't want to use the verison
1.3.0 (i.e. the one that is installed through "sudo apt
install"). Instead, I want to use the latest version that exists on my
system. This way, I avoid having to run "guix pull", which requires
significant time (more than 20 minutes on my system). The reason I want
to do this is that when I am running experiments, I very often need to
use a newly created system user.

My question is: In a newly created system user, how to make the =guix=
command be aware of data that has been previously downloaded through
=guix pull=?


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

* [question] How to use data that was previously downloaded using "guix pull" in a new system user?
@ 2024-08-02  1:59 Rodrigo Morales
  2024-08-05 18:59 ` Vagrant Cascadian
  0 siblings, 1 reply; 3+ messages in thread
From: Rodrigo Morales @ 2024-08-02  1:59 UTC (permalink / raw)
  To: help-guix


I'm running guix in Ubuntu 22.04.4 LTS on my desktop computer.

On my desktop computer, I like running experiments just to see what
happens. When I want to run an experiment related to the default
behavior of a tool, I create a new system user (using the command =sudo
useradd --create-home experiment-1=) and execute whatever command I want
to experiment with, this way I make sure that none of my dotfiles change
the default behavior of the tool. On my desktop computer, =rodrigo= is
the user that has all my dotfiles, and the users that I use for running
experiments are called =experiment-1=, =experiment-2=, =experiment-3=
and so on.

I want to run some experiments that involve using the =guix= command.

In Ubuntu, I installed =guix= using =sudo apt install guix=. If I create
a new system user, =guix version= reports the following version:

#+BEGIN_SRC sh
$ guix --version
guix (GNU Guix) 1.3.0
Copyright (C) 2021 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.
#+END_SRC

If I create a new system user and I run =guix pull=. Upon completion of
the command =guix pull=, =guix version= reports the following version:

#+BEGIN_SRC text
$ guix --version
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.

guix (GNU Guix) 2b4e3c9847dce02e371ff4dce615789fdfd101fa
Copyright (C) 2024 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.
#+END_SRC

In the experiments that I want to run, I don't want to use the verison
1.3.0 (i.e. the one that is installed through "sudo apt
install"). Instead, I want to use the latest version that exists on my
system. This way, I avoid having to run "guix pull", which requires
significant time (more than 20 minutes on my system). The reason I want
to do this is that when I am running experiments, I very often need to
use a newly created system user.

My question is: In a newly created system user, how to make the =guix=
command be aware of data that has been previously downloaded through
=guix pull=?


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

* Re: [question] How to use data that was previously downloaded using "guix pull" in a new system user?
  2024-08-02  1:59 Rodrigo Morales
@ 2024-08-05 18:59 ` Vagrant Cascadian
  0 siblings, 0 replies; 3+ messages in thread
From: Vagrant Cascadian @ 2024-08-05 18:59 UTC (permalink / raw)
  To: Rodrigo Morales, help-guix

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

On 2024-08-01, Rodrigo Morales wrote:
> I'm running guix in Ubuntu 22.04.4 LTS on my desktop computer.
>
> On my desktop computer, I like running experiments just to see what
> happens. When I want to run an experiment related to the default
> behavior of a tool, I create a new system user (using the command =sudo
> useradd --create-home experiment-1=) and execute whatever command I want
> to experiment with, this way I make sure that none of my dotfiles change
> the default behavior of the tool. On my desktop computer, =rodrigo= is
> the user that has all my dotfiles, and the users that I use for running
> experiments are called =experiment-1=, =experiment-2=, =experiment-3=
> and so on.
>
> I want to run some experiments that involve using the =guix= command.
...
> My question is: In a newly created system user, how to make the =guix=
> command be aware of data that has been previously downloaded through
> =guix pull=?

Calling the binary from the other user profile directly should work:

  /var/guix/profiles/per-user/rodrigo/current-guix/bin/guix build SOMEPACKAGE

Or alternately looking at the store item that that user's profile points
to and using it even more directly:

 ls -l /var/guix/profiles/per-user/rodrigo/current-guix

 /gnu/store/.../bin/guix build SOMEPACKAGE

You might be able to manually register that same store item as your
user's "current-guix" profile too by symlinking the correct
things... though I am less sure of how to do that correctly off the top
of my head.


live well,
  vagrant

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

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

end of thread, other threads:[~2024-08-05 19:00 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-08-02  1:27 [question] How to use data that was previously downloaded using "guix pull" in a new system user? Rodrigo Morales
  -- strict thread matches above, loose matches on Subject: below --
2024-08-02  1:59 Rodrigo Morales
2024-08-05 18:59 ` Vagrant Cascadian

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.