[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Preparing for an alpha release
From: |
Nikita Karetnikov |
Subject: |
Re: Preparing for an alpha release |
Date: |
Sun, 16 Dec 2012 21:43:20 +0300 |
> things related to command-line tools, such as options documented and
> not implemented in ‘guix-package’;
I'd like to implement '--roll-back' and '--search'.
Questions:
scheme@(guile-user)> ,use (guix-package)
scheme@(guile-user)> %current-profile
$1 = "/nix/var/nix/profiles/per-user/root/guix-profile"
scheme@(guile-user)> %profile-directory
$2 = "/nix/var/nix/profiles/per-user/root"
scheme@(guile-user)> %user-environment-directory
$3 = "/root/.guix-profile"
'ls' doesn't list the above. Why?
# ls -a /nix/var/nix/profiles/per-user/root/
. .. channels channels-1-link
# ls -a /root
. .aptitude .bashrc .gitconfig .nix-channels .profile
.. .bash_history .cache .gnupg .nix-defexpr
How should '--roll-back' work? Does Guix support multiple profiles?
Nix uses the following scheme. [1]
# ls /nix/var/nix/profiles/
default default-2-link default-5-link default-8-link
default-10-link default-3-link default-6-link default-9-link
default-1-link default-4-link default-7-link per-user
What function should be used to access the pointee of 'guix-profile'?
I assume that it should work like this:
1. Get the pointee of 'guix-profile'.
2. Parse the name of the pointee.
3. Decrement the number and save that as '%current-profile'.
Should 'guix-package' also support '--switch-generation',
'--list-generations', and '--switch-profile'? [1]
How to implement '--search'?
One option is to wrap around 'nix-env --search', but there are two
problems with this approach:
1. I don't know how to call it from Guile.
2. We don't want to depend on 'nix-env', do we?
I apologize if my questions sound naive, but I still have a vague
understanding of the internals.
Nikita
[1] http://hydra.nixos.org/build/3488542/download/1/manual/#sec-profiles