[Top][All Lists]

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

First impressions from delving into Guix

From: Lulu
Subject: First impressions from delving into Guix
Date: Sun, 11 Oct 2020 04:14:20 +0300 (TRT)

Hello everyone!

I've been navigating Guix for the past couple days. Here's how it went:

At first, I added a skeleton for `guix git log' by copying from
`guix git authenticate'. It might be useful to have a generic template for Guix
scripts, with conventions and all, by the way, because there isn't much in
"(guix)Coding Style".

I figured it would make things easier to use Guix System in a VM, so I booted
the QCOW2 image using the given libvirt config in "(guix)Running Guix in a VM"
(although there were some typos and grammar errors, maybe I should send a patch
for them). It worked without a hitch, but I got stumped when it came to
configuration. I scanned through the info page to no avail. It's not exactly
clear from the documentation that there are no configuration in the Unix sense,
but rather single-use configuration scripts (which is admittedly really cool).
I spent some time trying to find where the `operating-system' variable is
defined, but people helpfully clarified in #guix that I need to make a script
declaratively defining the setup I have in mind, then let Guix adapt itself to
that automatically. Equipped with that knowledge, I decided I'm better off
generating my own VM image once I have a better idea of what sort of Guix setup
I want. It might be a good idea to clarify this in the info page.

Next, I went back to installing Guix normally on Arch Linux (I tried it on
Fedora previously and ran into SELinux issues). The AUR script is a bit wonky
due to dependencies so I just used the official binary installer. When I tried
to bootstrap Guile, I ran into the problem that Guile 3.0 is unavailable.
Indeed, Arch developers have been neglecting to add Guile 3.0 to the official
repos. (Scheme is a bit neglected in this respect. The MIT/GNU Scheme package
has been broken for a while as well.) So I got a build script off AUR (although
I had to patch it because it tried to replace Guile 2.2, which breaks programs
like `make' that are linked to libguile2.2) and built Guile.

Now that I had a working Guix + Guile 3 setup, I ran into the seemingly common
`setlocale' issue which was quickly solved by installing both `glibc-locales`
/and/ `glibc-utf8-locales` (and updating them with each glibc update), then
setting `$GUILE_LOCPATH' accordingly for both root and my user. I did a
`guix pull' and everything was dandy.

With no more yaks to shave, I ran finished bootstrapping, ran the post install
environment and my subcommand works! Now I can go back to add the functional
parts of the script. I'll keep you updated!


reply via email to

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