Over a year ago, the Guix Build Coordinator was building lots of things for substitutes octodon.social/@cbaines/104297

It's taken a while, but now it should be benefiting general users of

I do hate it when the GNU Shepherd kills services that are starting, but haven't started...

I'm not sure how this helps, most of the time I'm watching the logs for a long while before I realise the Shepherd has done the opposite of starting the service.

I thought I was having a good day with computers, but after upgrading a system, I now can't login through the GDM, and hours of debugging has left me none the wiser.

Something is broken, and it seems there's very little to help work out what.

Reinstalling the OS shouldn't be necessary to fix this kind of issue, but that's what I might have to do...

I forget exactly when I had a proof of concept for using the Guix Build Coordinator to build things for substitutes.

It seems like I had a working setup for x86-64-linux around a year ago (a year ago exactly in ~3 weeks).

Show thread

Real world events are getting in the way of my concentration, it probably doesn't help that I studied the conflicts involving in school.

There's so much to the conflict though, I think I only learned recently of the engagement involving the USS Liberty en.wikipedia.org/wiki/USS_Libe an attack by the Israeli air force and navy on a US intelligence ship.

This is an account of the attack by a survivor youtube.com/watch?v=eUU08xnVaG

#GNU #Guix 1.3.0 is out, woohoo! 🎉

👉 guix.gnu.org/en/blog/2021/gnu-

Lots of good stuff in there: usability improvements, performance improvements, #POWER9 support, and more!

“Building derivations, how complicated can it be?”
guix.gnu.org/en/blog/2021/buil

@cbaines writes about the challenges of distributing #Guix builds, the limitations of the existing offload mechanism, and how the Guix Build Coordinator addresses them. 👍

I did another round of Guix Build Coordinator database improvements, and the results are pretty good.

The graph here shows the 95th percentile time for a few database operations. The blue one (allocating builds to agents) has gone from taking up to a second most of the time to barely registering (5ms or less).

I think fitting in WAL checkpoints between allocations, prompting SQLite to "optimize" and not caching query plans forever are the main changes which helped bring this about.

I've had this hardware (i5-2500k with a capable cooler) for ages now, and I haven't been using it for many years.

It still works though, and I've managed to overclock the processor to 5Ghz.

I haven't got around to measuring the single core performance, though at some point I want to see how it compares to my i7-8700K.

I never thought a saw would be important when plugging in this connector, but it now fits, so I'm pretty happy!

armhf-linux builds are now happening at pace for guix.cbaines.net/ 🎉

There were some problematic derivations, and I had to unblock those manually. There could have been some Guix Build Coordinator bugs involved too though.

I'm excited to see how well this works, mixing native aarch64 hardware and QEMU emulation for aarch64-linux seems to have worked well. For armhf-linux, I'm using a mixture of compatible aarch64 hardware and QEMU on x86_64.

I did it! I merged #Guix code that includes 4- and 6-year old commits, no less, and that have been rebased a number of times.

It's about using G-expressions all the way down, including for packages. Finishing a transition started 6 years ago, yay!

Build Coordinator progress, I made some database schema changes, and the size of the guix.cbaines.net database dropped from ~43GB to ~11.5GB!

When I started writing it, I used natural keys, UUID's for the builds, and /gnu/store/... names to identify derivations. This was fine at small scale, but with lots of builds and derivations, it made for a much bigger database, and slower queries.

This morning on actual things expects you to read:

```
WARNING: WARNING: (guix-build-coordinator coordinator): imp(guix-build-coordinator datastore sqlite)orte::d imopdurlee d module (fibers) overrides core booivndrinig e`s core binding `'
```

Whoo, it's pretty rough around the edges, but this is probably the first Build Coordinator agent build on the GNU Hurd!

Guix has made it into Debian Unstable! This means Debian users can use Guix as a "userspace" package manager now! tracker.debian.org/pkg/guix

This is really wonderful! Debian and Guix both care deeply about reproducibility.

This could be a big win for user freedom on both (cotd ...)

Wooo, I wasn't planning to spend this evening debugging cryptsetup hanging on my laptop, but that's what I've been up to.

Show older
Octodon

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!