'Globally-Visible Packages' not shown by 'M-x guix-installed-packages'

DoneSubmitted by myglc2.
Details
3 participants
  • Alex Kost
  • Ludovic Courtès
  • myglc2
Owner
unassigned
Severity
normal
M
M
myglc2 wrote on 8 Feb 2016 16:08
(address . bug-guix@gnu.org)
87zivb6xyy.fsf@gmail.com
In guixSD, 'Globally-Visible Packages' packages installed accoding to'7.2.1 Using the Configuration System' are not shown by 'M-xguix-installed-packages' and are shown as uninstalled in the 'M-xguix-all-packages' 'list' buffers.
A
A
Alex Kost wrote on 8 Feb 2016 22:58
(name . myglc2)(address . myglc2@gmail.com)(address . 22600@debbugs.gnu.org)
87egcmrhjj.fsf@gmail.com
myglc2 (2016-02-08 18:08 +0300) wrote:
Toggle quote (5 lines)> In guixSD, 'Globally-Visible Packages' packages installed accoding to> '7.2.1 Using the Configuration System' are not shown by 'M-x> guix-installed-packages' and are shown as uninstalled in the 'M-x> guix-all-packages' 'list' buffers.
"M-x guix-installed-packages" shows the packages installed in a currentprofile (which is ~/.guix-profile by default), the same way as "guixpackage --list-installed" does. You can prefix this command with C-u tochoose a profile you want. See also (info "(guix) Emacs Commands").
If you want to look at the packages installed globally, you can run "M-xguix-system-generations" and press RET on the latest generation (I thinkfor convenience we can add "M-x guix-system-packages" command).
-- Alex
L
L
Ludovic Courtès wrote on 8 Feb 2016 23:51
(name . Alex Kost)(address . alezost@gmail.com)
87d1s6u870.fsf@gnu.org
Alex Kost <alezost@gmail.com> skribis:
Toggle quote (16 lines)> myglc2 (2016-02-08 18:08 +0300) wrote:>>> In guixSD, 'Globally-Visible Packages' packages installed accoding to>> '7.2.1 Using the Configuration System' are not shown by 'M-x>> guix-installed-packages' and are shown as uninstalled in the 'M-x>> guix-all-packages' 'list' buffers.>> "M-x guix-installed-packages" shows the packages installed in a current> profile (which is ~/.guix-profile by default), the same way as "guix> package --list-installed" does. You can prefix this command with C-u to> choose a profile you want. See also (info "(guix) Emacs Commands").>> If you want to look at the packages installed globally, you can run "M-x> guix-system-generations" and press RET on the latest generation (I think> for convenience we can add "M-x guix-system-packages" command).
Indeed, this is not a bug to me.
myglc2: if you think anything is unclear in the documentation, let usknow how we could improve it!
Thanks,Ludo’.
Closed
L
L
Ludovic Courtès wrote on 8 Feb 2016 23:51
control message for bug #22600
(address . control@debbugs.gnu.org)
87bn7qu86s.fsf@gnu.org
tags 22600 notabug
M
M
myglc2 wrote on 9 Feb 2016 03:29
Re: bug#22600: 'Globally-Visible Packages' not shown by 'M-x guix-installed-packages'
(address . bug-guix@gnu.org)
87io1y7h1r.fsf@gmail.com
ludo@gnu.org (Ludovic Courtès) writes:
Toggle quote (18 lines)> Alex Kost <alezost@gmail.com> skribis:>>> myglc2 (2016-02-08 18:08 +0300) wrote:>>>>> In guixSD, 'Globally-Visible Packages' packages installed accoding to>>> '7.2.1 Using the Configuration System' are not shown by 'M-x>>> guix-installed-packages' and are shown as uninstalled in the 'M-x>>> guix-all-packages' 'list' buffers.>>>> "M-x guix-installed-packages" shows the packages installed in a current>> profile (which is ~/.guix-profile by default), the same way as "guix>> package --list-installed" does. You can prefix this command with C-u to>> choose a profile you want. See also (info "(guix) Emacs Commands").>>>> If you want to look at the packages installed globally, you can run "M-x>> guix-system-generations" and press RET on the latest generation (I think>> for convenience we can add "M-x guix-system-packages" command).
WOW! That IS a beautiful thing. And, the Guix Pack Info ... AWESOME!
Toggle quote (8 lines)>> Indeed, this is not a bug to me.> myglc2: if you think anything is unclear in the documentation, let us> know how we could improve it!>> Thanks,> Ludo’.
SIDEBAR:
I hope it is OK that I am taking the liberty of reporting things thatseem counterintutive or difficult to understand in the bugschannel. These may well be operator error or misunderstandings on mypart. I am happy to report in a different channel if that is better. Orto have you say, "enough of this!"
About me: I want to never learn another distribution, package manager,configuration approach, or deployment manager. So I really want you tosucceed. I have spent ~ 3 weeks studying and using Nix, NixOS andguixSD. I have used computers to build models since 1975 and I hope touse guix in my next work. I figure that if something puzzles me, it maybe puzzeling to others and a barrier to guix' adoption. I want to helpreduce such barriers.
I am writing in the first person to convey the way that I visualize thatyour new users, which hopefully will come and stay to play, mightexperience guix. It is not my intent to pick on guix or the doc, both ofwhich are truly outstanding.
BACK TO THE "BUG"
Yes, it is probably not a bug in a technical sense and/or given the wayyou conceptualize guix. But, at the risk of being a bore, may I pleaserestate:
It seemed really counterintuitive that when I did ...
'M-x guix-installed packages'
... I saw ...
"No package outputs installed in profile '/var/guix/profiles/per-user/glc/guix-profile'."
My concern is that this experience might leave a new user thinking,"Geez, I know back in the fog of the USB install I added packages. Whatkind of package manager is this? It doesn't show me the packages that Ipainfully typed in using zile at the console". IMO this is the kind ofdoubt that can undermine confidence during the critical first few hoursof software test driving and lead a user to abandon the experment.
My own experience: I had been going back to the config.scm files ortyping 'which' to see what was installed. I knew there were generations.But believe it or not, in the course of working with guixSD for ~ 10days, I had not used ...
1) "M-x guix-system-generations"
2) press RET on the latest generation
So say I am a dummy. I am fine with that.
But, wouldn't it be better to combine these functions so even a duummywill see all the packages?
Maybe later, for the roadmap?
A
A
Alex Kost wrote on 9 Feb 2016 20:21
(name . myglc2)(address . myglc2@gmail.com)(address . 22600@debbugs.gnu.org)
871t8lbsg6.fsf@gmail.com
myglc2 (2016-02-09 05:29 +0300) wrote:
[...]
Toggle quote (6 lines)> I hope it is OK that I am taking the liberty of reporting things that> seem counterintutive or difficult to understand in the bugs> channel. These may well be operator error or misunderstandings on my> part. I am happy to report in a different channel if that is better. Or> to have you say, "enough of this!"
I think it's ok to do it in bugs. Perhaps guix-devel ML will be moresuitable, but I don't know.
Toggle quote (8 lines)> About me: I want to never learn another distribution, package manager,> configuration approach, or deployment manager. So I really want you to> succeed. I have spent ~ 3 weeks studying and using Nix, NixOS and> guixSD. I have used computers to build models since 1975 and I hope to> use guix in my next work. I figure that if something puzzles me, it may> be puzzeling to others and a barrier to guix' adoption. I want to help> reduce such barriers.
And thank you for this!
Toggle quote (21 lines)> BACK TO THE "BUG">> Yes, it is probably not a bug in a technical sense and/or given the way> you conceptualize guix. But, at the risk of being a bore, may I please> restate:>> It seemed really counterintuitive that when I did ...>> 'M-x guix-installed packages'>> ... I saw ...>> "No package outputs installed in profile '/var/guix/profiles/per-user/glc/guix-profile'.">> My concern is that this experience might leave a new user thinking,> "Geez, I know back in the fog of the USB install I added packages. What> kind of package manager is this? It doesn't show me the packages that I> painfully typed in using zile at the console". IMO this is the kind of> doubt that can undermine confidence during the critical first few hours> of software test driving and lead a user to abandon the experment.
I would say that a user should get acquainted with the basic concepts ofGuix before using it. I think per-user package management is one of suchconcepts, and it is described in the beginning of (info "(guix) Features")section of the manual.
Toggle quote (14 lines)> My own experience: I had been going back to the config.scm files or> typing 'which' to see what was installed. I knew there were generations.> But believe it or not, in the course of working with guixSD for ~ 10> days, I had not used ...>> 1) "M-x guix-system-generations">> 2) press RET on the latest generation>> So say I am a dummy. I am fine with that.>> But, wouldn't it be better to combine these functions so even a duummy> will see all the packages?
As I suggested in the previous mail, we can add "M-x guix-system-packages".Maybe it would be good to add "M-x guix-user-packages", or maybe name them:
- guix-installed-system-packages (for /run/current-system/profile)- guix-installed-user-packages (for ~/.guix-profile)
And to leave "M-x guix-installed-packages" for an arbitrary profilespecified by a user. WDYT?
-- Don't install packages globally, use a user profile!
M
M
myglc2 wrote on 10 Feb 2016 03:30
(address . bug-guix@gnu.org)
87bn7p5mbf.fsf@gmail.com
Alex Kost <alezost@gmail.com> writes:
Toggle quote (15 lines)> myglc2 (2016-02-09 05:29 +0300) wrote:> [...]>> My concern is that this experience might leave a new user thinking,>> "Geez, I know back in the fog of the USB install I added packages. What>> kind of package manager is this? It doesn't show me the packages that I>> painfully typed in using zile at the console". IMO this is the kind of>> doubt that can undermine confidence during the critical first few hours>> of software test driving and lead a user to abandon the experment.>> I would say that a user should get acquainted with the basic concepts of> Guix before using it. I think per-user package management is one of such> concepts, and it is described in the beginning of (info "(guix) Features")> section of the manual.>
Per-user features are very important for guix adopters. But asdescribed in my other post, global (aka system) features are equallyimportant for guixSD adopters. It is fantastic that guix + guixSDsupport both use cases.
OTOH, these use cases appear to be fighting against each other. Thismakes the documentation hard to write and understand. It makes theuser interface hard to do. If we let the conflict get out of controlit will confuse the marketplace and undermine guix/SD.
So we need to embrace and understand this natural yin and yang in agreat solution that spans user, package, distribution, and systemmanagment. If we can do that I think guix/SD will be very successful.
Toggle quote (12 lines)>> But, wouldn't it be better to combine these functions so even a duummy>> will see all the packages?>> As I suggested in the previous mail, we can add "M-x guix-system-packages".> Maybe it would be good to add "M-x guix-user-packages", or maybe name them:>> - guix-installed-system-packages (for /run/current-system/profile)> - guix-installed-user-packages (for ~/.guix-profile)>> And to leave "M-x guix-installed-packages" for an arbitrary profile> specified by a user. WDYT?
I like it. I tried to summarize what I think I understand in the tablebelow. Could you take a look and fix it up?
| Recipe Source | install | Profile | UI access | Scope | Generations ||-------------------------+----------------------------------------------------------------------------+-----------------------------+--------------------------------------+--------+-----------------------------|| guix pull | sudo guix system reconfigure <config> | /run/current-system/profile | * M-x guix-installed-system-packages | global | M-x guix-system-generations || guix pull | guix -i <package> | ~/.guix-profile | * M-x guix-installed-user-packages | global | M-x guix-generations || | | | | | || git pull w/wo user mods | [env]$ sudo ./pre-inst-env guix system reconfigure ../configs/config.k.scm | /run/current-system/profile | * M-x guix-installed-system-packages | user | M-x guix-system-generations || git pull w/wo user mods | ??? | ~/.guix-profile | * M-x guix-installed-user-packages | user | M-x guix-generations || | | | | | || <user custom> | ??? | <user specfied> | M-x guix-installed-packages | ouser | ??? || | | | | | |
Notes: * - proposed ??? - don't know
A
A
Alex Kost wrote on 10 Feb 2016 10:04
(name . myglc2)(address . myglc2@gmail.com)(address . 22600@debbugs.gnu.org)
87pow5542q.fsf@gmail.com
myglc2 (2016-02-10 05:30 +0300) wrote:
Toggle quote (2 lines)> Alex Kost <alezost@gmail.com> writes:>
[...]
Toggle quote (16 lines)>> As I suggested in the previous mail, we can add "M-x guix-system-packages".>> Maybe it would be good to add "M-x guix-user-packages", or maybe name them:>>>> - guix-installed-system-packages (for /run/current-system/profile)>> - guix-installed-user-packages (for ~/.guix-profile)>>>> And to leave "M-x guix-installed-packages" for an arbitrary profile>> specified by a user. WDYT?>> I like it. I tried to summarize what I think I understand in the table> below. Could you take a look and fix it up?>> | Recipe Source | install | Profile | UI access | Scope | Generations |> |-------------------------+----------------------------------------------------------------------------+-----------------------------+--------------------------------------+--------+-----------------------------|> | guix pull | sudo guix system reconfigure <config> | /run/current-system/profile | * M-x guix-installed-system-packages | global | M-x guix-system-generations |> | guix pull | guix -i <package> | ~/.guix-profile | * M-x guix-installed-user-packages | global | M-x guix-generations |
guix package -i <package>
Toggle quote (4 lines)> | | | | | | |> | git pull w/wo user mods | [env]$ sudo ./pre-inst-env guix system reconfigure ../configs/config.k.scm | /run/current-system/profile | * M-x guix-installed-system-packages | user | M-x guix-system-generations |> | git pull w/wo user mods | ??? | ~/.guix-profile | * M-x guix-installed-user-packages | user | M-x guix-generations |
I don't understand what "w/wo user mods" means, but if you are talkingabout running guix commands using a git repo; "pre-inst-env" is the wayto go, for example: "./pre-inst-env guix package -i ..."
Toggle quote (2 lines)> | <user custom> | ??? | <user specfied> | M-x guix-installed-packages | ouser | ??? |
For a custom package (if that's what you mean), it's the same: "guixpackage -i <user-package>", but at first you need to add a directorywith your packages to GUIX_PACKAGE_PATH as described in the manual:(info "(guix) Package Modules")
If you want to install packages in an arbitrary profile, run "guixpackage" command with "--profile=..." option.
Toggle quote (4 lines)> Notes:> * - proposed> ??? - don't know
Also I don't understand what "scope" column means.
-- Alex
M
M
myglc2 wrote on 10 Feb 2016 21:25
(address . bug-guix@gnu.org)
87si1048k6.fsf@gmail.com
Alex Kost <alezost@gmail.com> writes:[...]
Toggle quote (2 lines)> I don't understand what "w/wo user mods" means,
That "official" guix recipes in local repo may be modified.
Revised table:
** Sources of and ways to install packages in guixSD
| Recipe source | avail to | recipe upgrade | location | package install | profile | display packages | display generations ||-----------------------+----------+----------------+------------+------------------------------------------------------------------+-----------------------------+----------------------------------------+-----------------------------|| guix ??? | system | guix pull | /gnu/store | sudo guix system reconfigure <config.scm> | /run/current-system/profile | (1) M-x guix-installed-system-packages | M-x guix-system-generations || guix ??? | user | guix pull | /gnu/store | sudo guix package -i <package> | ~/.guix-profile | (1) M-x guix-installed-user-packages | M-x guix-generations || guix git repo | system | (2) git pull | PWD | [env]$ sudo ./pre-inst-env guix system reconfigure <configs.scm> | /current-system/profile | (1) M-x guix-installed-system-packages | M-x guix-system-generations || guix git repo | user | (2) git pull | PWD | [env]$ sudo ./pre-inst-env guix package -i <package> | ~/.guix-profile | (1) M-x guix-installed-user-packages | M-x guix-generations || <user-dir>/<user.scm> | system | N/A | <user-dir> | sudo guix system reconfigure <config.scm w/ user-package> | /run/current-system/profile | (1) M-x guix-installed-system-packages | M-x guix-system-generations || <user-dir>/<user.scm> | user | N/A | <user-dir> | (3) [env]$ sudo guix package -i <user-package> | ~/.guix-profile | M-x guix-installed-packages | M-x guix-generations ||-----------------------+----------+----------------+------------+------------------------------------------------------------------+-----------------------------+----------------------------------------+-----------------------------|
Notes:(1) proposed(2) Recipes obtained this way may be modified by the user. Set up the guix git repo as described in the manual (info "(guix) Building from Git"). (3) Add <user-dir> to GUIX_PACKAGE_PATH as described in the manual (info "(guix) Package Modules")
Trying to help a new user get their bearings. What do you think?
A
A
Alex Kost wrote on 13 Feb 2016 21:37
(name . myglc2)(address . myglc2@gmail.com)(address . 22600@debbugs.gnu.org)
87ziv4fitl.fsf@gmail.com
myglc2 (2016-02-10 23:25 +0300) wrote:
Toggle quote (10 lines)> Alex Kost <alezost@gmail.com> writes:> [...]>> I don't understand what "w/wo user mods" means,>> That "official" guix recipes in local repo may be modified.>> Revised table:>> ** Sources of and ways to install packages in guixSD
[...]
I received this table corrupted, I hope the following one will survivethe mail sending.
| Recipe source | avail to | recipe upgrade | location | package install | profile | display packages | display generations ||-----------------------+----------+----------------+------------+------------------------------------------------------------------+-----------------------------+----------------------------------------+-----------------------------|| guix ??? | system | guix pull | /gnu/store | sudo guix system reconfigure <config.scm> | /run/current-system/profile | (1) M-x guix-installed-system-packages | M-x guix-system-generations || guix ??? | user | guix pull | /gnu/store | sudo guix package -i <package> | ~/.guix-profile | (1) M-x guix-installed-user-packages | M-x guix-generations || guix git repo | system | (2) git pull | PWD | [env]$ sudo ./pre-inst-env guix system reconfigure <configs.scm> | /current-system/profile | (1) M-x guix-installed-system-packages | M-x guix-system-generations || guix git repo | user | (2) git pull | PWD | [env]$ sudo ./pre-inst-env guix package -i <package> | ~/.guix-profile | (1) M-x guix-installed-user-packages | M-x guix-generations || <user-dir>/<user.scm> | system | N/A | <user-dir> | sudo guix system reconfigure <config.scm w/ user-package> | /run/current-system/profile | (1) M-x guix-installed-system-packages | M-x guix-system-generations || <user-dir>/<user.scm> | user | N/A | <user-dir> | (3) [env]$ sudo guix package -i <user-package> | ~/.guix-profile | M-x guix-installed-packages | M-x guix-generations ||-----------------------+----------+----------------+------------+------------------------------------------------------------------+-----------------------------+----------------------------------------+-----------------------------|
Toggle quote (7 lines)> Notes:> (1) proposed> (2) Recipes obtained this way may be modified by the user. Set up the guix git repo as described in the manual (info "(guix) Building from Git"). > (3) Add <user-dir> to GUIX_PACKAGE_PATH as described in the manual (info "(guix) Package Modules")>> Trying to help a new user get their bearings. What do you think?
It looks ok to me except you use "sudo" everywhere. This may bemisleading as "sudo" is not needed when a user installs a package in ahis/her profile.
-- Alex
A
A
Alex Kost wrote on 22 Feb 2016 20:55
(name . myglc2)(address . myglc2@gmail.com)(address . 22600@debbugs.gnu.org)
87povoy0xy.fsf@gmail.com
Alex Kost (2016-02-09 22:21 +0300) wrote:
[...]
Toggle quote (6 lines)> As I suggested in the previous mail, we can add "M-x guix-system-packages".> Maybe it would be good to add "M-x guix-user-packages", or maybe name them:>> - guix-installed-system-packages (for /run/current-system/profile)> - guix-installed-user-packages (for ~/.guix-profile)
These commands are added in commit cfb1c62.
-- Alex
?
Your comment

This issue is archived.

To comment on this conversation send email to 22600@debbugs.gnu.org