[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Erlang + Emacs profile

From: Zelphir Kaltstahl
Subject: Re: Erlang + Emacs profile
Date: Mon, 29 Jun 2020 22:37:52 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Icedove/68.8.0

Hi Ricardo!

On 29.06.20 22:24, Ricardo Wurmus wrote:
> Zelphir Kaltstahl <> writes:
>> I just did the edit thing and I am not sure how to then "upload" a
>> package. But I will read the docs a little and will probably all clear up.
> “guix edit” only opens the source file containing a package definition
> in your editor.
> To contribute packages please see the Contributing section in the manual.
>>> The point is that Guix has a really large collection of Emacs packages:
>>> --8<---------------cut here---------------start------------->8---
>>> $ du -sh gnu/packages/*.scm | sort -nr | head -n5
>>> 908K    gnu/packages/crates-io.scm
>>> 884K    gnu/packages/emacs-xyz.scm
>>> 784K    gnu/packages/cran.scm
>>> 732K    gnu/packages/python-xyz.scm
>>> 636K    gnu/packages/bioinformatics.scm
>>> --8<---------------cut here---------------end--------------->8---
>>> and if your needs is not there then "guix import elpa" eases the task
>>> for adding it. :-)
>> So if I understand this correctly, there are different channels for
>> different types of packages, for example for Rust packages we have
>> `gnu/packages/crates-io.scm` and for Emacs packages we have
>> `gnu/packages/emacs-xyz.scm`.
> No, these are not channels.  These are all modules that are part of the
> default channel called “guix”.
>> The command `guix describe -f channels` does not work for me:
>> ~~~~
>> xiaolong@xlx200:~$ guix describe -f channels
>> guix describe: error: failed to determine origin
>> hint: Perhaps this `guix' command was not obtained with `guix pull'? Its 
>> version string is
>> 36da62f1b9c78a2729658143a7df1845cd532afa.
>> ~~~~
> “guix describe” will work when you use a “guix” that was obtained with
> “guix pull”.  It will usually be in ~/.config/guix/current/bin/guix.
>> I did another `guix pull` and `guix package -u` and this is after a
>> fresh Guix package manager install and and installing the following
>> packages:
>> ~~~~
>> xiaolong@xlx200:~$ sudo -i guix package -I
>> glibc-utf8-locales   2.31    out     
>> /gnu/store/z7a6sbvqzb5zapwpznmjkq2rsxil6i67-glibc-utf8-locales-2.31
>> xiaolong@xlx200:~$ sudo -i guix package -I
>> glibc-utf8-locales   2.31    out     
>> /gnu/store/z7a6sbvqzb5zapwpznmjkq2rsxil6i67-glibc-utf8-locales-2.31
>> xiaolong@xlx200:~$ guix package -I
>> guile        3.0.4   out     
>> /gnu/store/ah16zr8mmfkqy23rr7jy5a842ca1q9h1-guile-3.0.4
>> erlang       out     
>> /gnu/store/6x8ycgi8hv5rh8gq3vrdbcq5sh3qfq7i-erlang-
>> emacs-ob-erlang      20180827-1.f1a8c66      out     
>> /gnu/store/czg6wqga0hvc57axbz1cjp892k5r8ybp-emacs-ob-erlang-20180827-1.f1a8c66
>> icecat       68.9.0-guix0-preview1   out     
>> /gnu/store/7qakza7zdiz57l5hldd8162324fwbw8s-icecat-68.9.0-guix0-preview1
>> libreoffice out     
>> /gnu/store/swk410ahw9v4k0hjmsd4f33bqw5fdyqa-libreoffice-
>> lyx out     /gnu/store/p7z5436jhgjlgdbx44np44vzjhrwi2ns-lyx-
>> python       3.8.2   out     
>> /gnu/store/6sr11m4i1d3vbqlmbpzmfj1lihbc5iz4-python-3.8.2
>> rust 1.39.0  out     /gnu/store/24pbvvdwaj9kbsdfi6kgxkvxkjayfz74-rust-1.39.0
>> openvpn      2.4.9   out     
>> /gnu/store/3rh4i3wbkdwkrmrxy30d3f3nbg6kdl02-openvpn-2.4.9
>> emacs        26.3    out     
>> /gnu/store/528p0v6gg5gx53jd0x52dmghb01bfhc5-emacs-26.3
>> glibc-utf8-locales   2.31    out     
>> /gnu/store/z7a6sbvqzb5zapwpznmjkq2rsxil6i67-glibc-utf8-locales-2.31
>> guile-colorized      0.1     out     
>> /gnu/store/5h0jfssgyx49cq82wrmw57an7ngb7kkz-guile-colorized-0.1
>> ~~~~
> I don’t know what this is supposed to demonstrate.  “sudo -i guix” runs
> Guix as the root user, which has a different default profile.

I made a typo when pasting the output from terminal. There are two
package -I outputs I posted, if you check. The one with fewer packages
is the root profile, of which you can see the command I used. The one
with more packages is not the root profile, but the `guix package -I`.
Perhaps I could have split it into two parts to make it more clear.

This is supposed to show, that I already installed some software,
instead of starting completely from a clean install, in case, that the
error I got could be caused by anything I installed already. I don't
know how it works internally, so perhaps it would be of use to someone
knowing more than me about Guix package manager. Better to put all the
info out there, than making others ask for it, because it's missing.
That was the idea I had behind that.

>> The other command to show the count of packages also does not work for me:
>> ~~~~
>> xiaolong@xlx200:/$ sudo du -sh gnu/packages/*.scm | sort -nr | head -n5
>> du: cannot access 'gnu/packages/*.scm': No such file or directory
>> ~~~~
> That’s not a general command to count packages.  This was just simon’s
> way of showing you that the file containing package definitions for
> Emacs packages in the Guix repository is among the largest modules.
> To show all available packages use “guix package --list-available”.
>> Do I need to create channels, like a custom way of structuring packages
>> for myself, before running these commands?
> No.  The command line that simon showed you is a simple combination of
> coreutils commands that operate on the Guix source code.  If you want to
> run the same command you need to do this in the directory containing a
> checkout of the Guix source code.

OK I see, thanks!



reply via email to

[Prev in Thread] Current Thread [Next in Thread]