Блог — Scheme API

Write package definitions in a breeze

24 листопада 2023 року

More than 28,000 packages are available in Guix today, not counting third-party channels. That’s a lot—the 5th largest GNU/Linux distro ! But it’s nothing if the one…

Parameterized Packages for GNU Guix

9 червня 2023 року

Hello Guix! I'm Sarthak and I'll be working on implementing Parameterized Packages for GNU Guix as a Google Summer of Code intern under the guidance of Pjotr Prins…

Dissecting Guix, Part 3: G-Expressions

19 квітня 2023 року

Welcome back to Dissecting Guix ! Last time, we discussed monads , the functional programming idiom used by Guix to thread a store connection through a series of store-related…

Building Toolchains with Guix

15 березня 2023 року

In order to deploy embedded software using Guix we first need to teach Guix how to cross-compile it. Since Guix builds everything from source, this means we must teach…

Dissecting Guix, Part 2: The Store Monad

20 лютого 2023 року

Hello again! In the last post , we briefly mentioned the with-store and run-with-store macros. Today, we'll be looking at those in further…

Dissecting Guix, Part 1: Derivations

4 січня 2023 року

To a new user, Guix's functional architecture can seem quite alien, and possibly offputting. With a combination of extensive #guix -querying, determined manual-reading, and plenty of source-perusing, they…

Keeping one’s home tidy

21 березня 2022 року

How much effort to recreate your work environment when you switch to a new machine? What would it take to roll back to your previous environment once you’ve noticed…

The Big Change

15 грудня 2021 року

Making cross-cutting changes over a large code base is difficult, but it's occasionally necessary if we are to keep the code base tidy and malleable. With almost 800K source…

Taming the ‘stat’ storm with a loader cache

2 серпня 2021 року

It was one of these days where some of us on IRC were rehashing that old problem—that application startup in Guix causes a “ stat storm”—and lamenting…

Reproducible data processing pipelines

11 червня 2021 року

Last week, we at Guix-HPC published videos of a workshop on reproducible software environments we organized on-line. The videos are well worth watching—especially if you’re into reproducible…

Getting bytes to disk more quickly

26 березня 2021 року

Let’s face it: functional package managers like Guix provide unequaled support for reproducibility and transactional upgrades, but the price to pay is that users often spend a fair amount of…

Securing updates

1 липня 2020 року

Software deployment tools like Guix are in a key position when it comes to securing the “software supply chain”—taking source code fresh from repositories and providing users with ready-to-use binaries.…

GNU Shepherd user services

17 травня 2020 року

One of the things which sets Guix apart from other GNU/Linux distributions is that it uses GNU Shepherd instead of the now ubiquitous systemd. A side effect of…

Grafts, continued

6 травня 2020 року

Guix includes a mechanism called grafts that allows us to provide users with security updates in a timely fashion, even for core packages deep down in the…

Guile 3 & Guix

24 січня 2020 року

Version 3.0 of GNU Guile, an implementation of the Scheme programming language , was released just last week . This is a major milestone for Guile, which gets compiler improvements and…

Spreading the news

12 листопада 2019 року

Like most free software projects, Guix has no shortage of communication channels: there’s this blog , the NEWS file for release notes, a bunch of …

Managing Servers with GNU Guix: A Tutorial

4 листопада 2019 року

The outcome of this year's GSoC is a Guile-based programming interface named guix deploy for automatically creating, upgrading, and changing the configurations of machines running the Guix System.…

Towards Guix for DevOps

12 липня 2019 року

Hey, there! I'm Jakob, a Google Summer of Code intern and new contributor to Guix. Since May, I've been working on a DevOps automation tool for the Guix System, which…

Substitutes are now available as lzip

17 червня 2019 року

For a long time, our build farm at ci.guix.gnu.org has been delivering substitutes (pre-built binaries) compressed with gzip. Gzip was never the best choice in terms of compression…

Connecting reproducible deployment to a long-term source code archive

29 березня 2019 року

GNU Guix can be used as a “package manager” to install and upgrade software packages as is familiar to GNU/Linux users, or as an environment manager, but it can also provision…

A packaging tutorial for Guix

10 жовтня 2018 року

Introduction GNU Guix stands out as the hackable package manager, mostly because it uses GNU Guile , a powerful high-level programming language, one of the…

Multi-dimensional transactions and rollbacks, oh my!

24 липня 2018 року

One of the highlights of version 0.15.0 was the overhaul of guix pull , the command that updates Guix and its package collection. In Debian terms,…

Customize GuixSD: Use Stock SSH Agent Everywhere!

26 травня 2018 року

I frequently use SSH. Since I don't like typing my password all the time, I use an SSH agent. Originally I used the GNOME Keyring as my SSH…

Guix at the 2014 GNU Hackers Meeting

11 жовтня 2014 року

The Guix talk of this summer's GNU Hackers Meeting is now available (get the slides ). DOWNLOAD VIDEO (WebM, 60 minutes) …

Guix at the European Lisp Symposium

21 травня 2013 року

A paper presenting the design of Guix's Scheme API and packaging language has been accepted for the 2013 European Lisp Symposium (ELS) . ELS…