Guix officially is my preferred GNU/Linux distribution.

Cool package manager. Great docs. Expressive Scheme API. Easy to write new packages. Super friendly community.

I wish more people used and contributed to Guix.

@brown121407 Great docs?

This can't be serious.

I agree in all the rest :D

Maybe i'm doing something wrong! IDK

@ekaitz_zarraga @brown121407 well, they are working on having good docs, although it's not Arch Wiki level good just yet.

Yeah, that's why I said great, not best.

Arch definitely has the most comprehensive wiki there is for GNU/Linux systems (or that I know of). Guix has great docs regarding Guixy things IMO. I know there is room from improvement though.

@ekaitz_zarraga why did the docs let you down? Maybe we can make them better in those areas.


@brown121407 @miguel @grainloom hmm
my experience have been good in general but very bad in specific moments.
Those moments are in general when I was trying to make my own packages because I think the tooling has a low discoverability. For instance, I had to go to the code of other packages often and try to copy-paste it to make packages work and I'd preferred to just read all those descriptions in a place where they can be understood in depth.

@brown121407 @miguel @grainloom
I'm really considering to use GuixOS as my everyday distro so my general view is it's cool and I like the package manager but sometimes it's hard.


There are some aspects regarding more complex package definitions that I agree are not good enough documented (or not discoverable enough).

Have you tried sending in a bug report ( if I recall correctly) or something for the things you consider could be better described in the docs? The Guix guys seem to be really friendly on the mailing lists.

@miguel @grainloom

@brown121407 @miguel @grainloom I didn't. I just did that once but it was a package update :D

Now I remember i wasn't able to understand correctly the new patches for packages. Like, if I want to update a package to the last version, is the previous one rewritten? if it is -> how isn't it making people unable to install the previous version by hand?

@ekaitz_zarraga @miguel @grainloom doesn't sound silly to me. Those seem to be valid concerns and curiosities. You can always shoot those things at or on on freenode (IRC). Whenever I have a question that I feel isn't answered in the docs I hop on the IRC and someone eventually answers me.

@brown121407 I'm a social anxious piece of shit and sometimes I'm worried of asking something that is already in the docs and I didn't found...

I should change :D

@ekaitz_zarraga I feel you. I almost shit myself when I sent my first patch and then a bug report for that very patch cause things weren't working as expected.

Guix seems to have a warm community though. Once you get the courage to step in, I don't think you'll regret it. I feel they get excited when people show interest in their system, so you asking stuff and getting into conversation should be a nice thing for both you and them.

@brown121407 I believe you!
I'll try to contact and start playing around with it further than what I did.


Thanks for pushing me. This is the kind of exercise I need to do.

@ekaitz_zarraga I'm glad I made you look into it a bit more.

Besides the official channels, you can always ping me if you think you need to. I'm no expert, but I'm willing to try to help.

@ekaitz_zarraga @miguel @grainloom I don't think Guix has having all the versions of a software available as a goal. Some packages though have multiple versions but I think that's mostly for bootstrapability (or however you spell that). Usually, definitions just get edited to adapt when a new version comes out (from what I saw).

@brown121407 @miguel @grainloom good to know that! Thanks!
I thought it was a desirable goal too.
Somehow they are keeping all the previous definitions under version control so... they exist (somewhere).

@ekaitz_zarraga @miguel @grainloom I'm no Guix maintainer so I can't know for sure. You can ask on the IRC and someone more knowledgeable will surely give you a better answer.

You can also subscribe to to get all the information about what the Guix developers are thinkering with at the moment:

@brown121407 @miguel @grainloom I was subscribed in the past but I got bored for a reason I don't remember now :D

@ekaitz_zarraga @miguel @grainloom @brown121407 Yeah, generally if you want an old version you just get it from an old guix. guix pull allows you to pick a commit, and with imperative home management you can just mix and match. Multiple versions in one guix is mostly when required as dependencies or for things like python 2/3.

There's also this inferior thing that allows you to mix packages from different versions of guix in a declarative/programmatic manner. Never had to use it though, so can't help more than say it exists :)
@ekaitz_zarraga @miguel @grainloom @brown121407

@clacke @ekaitz_zarraga @miguel @brown121407 isn't that what the (relatively new) time-machine subcommand for?

@brown121407 how does it compare to MX? What's the default desktop? Does it rely on systemctl?

Quite different from MX, as it is stateless and declarative, not following the FHS (like nix).
There isn't a default desktop as such, but KDE Plasma is not yet packaged in its entirety, so for "heavy" desktop it's GNOME. Quite a few lightweight options.
It doesn't use systemd, but rather GNU shepherd - services can be added or modified in Scheme.

@CyReVolt I haven't tried Gentoo (yet!)

Packaging is very easy though. In Guix, each package is a Scheme expression. Look here for an example definition:

For getting packages from sources like MELPA or Hackage or pypi etc. Guix also has importers which generate the package definition for you (which is pretty damn cool):

After you have a definition in place, you put it in the source tree, send a patch to the ML and that's it!

@brown121407 it's too bad the lispyboys are bad at marketing
Sign in to participate in the conversation

Fosstodon is an English speaking Mastodon instance that is open to anyone who is interested in technology; particularly free & open source software.