From 2bea9a55dd3da16949dc5a8719e842b436565866 Mon Sep 17 00:00:00 2001 From: EuAndreh Date: Thu, 6 Feb 2020 02:22:20 -0300 Subject: Rewrite md with link references --- _posts/2018-07-17-running-guix-on-nixos.md | 43 +++++++++++++++++------------- 1 file changed, 24 insertions(+), 19 deletions(-) (limited to '_posts') diff --git a/_posts/2018-07-17-running-guix-on-nixos.md b/_posts/2018-07-17-running-guix-on-nixos.md index c12a417..e409f3c 100644 --- a/_posts/2018-07-17-running-guix-on-nixos.md +++ b/_posts/2018-07-17-running-guix-on-nixos.md @@ -6,9 +6,10 @@ lang: en ref: running-guix-on-nixos --- I wanted to run -Guix on a NixOS machine. Even though the Guix manual explains how to do -it [step by step](https://www.gnu.org/software/guix/manual/en/html_node/Binary-Installation.html#Binary-Installation), -I needed a few extra ones to make it work properly. +Guix on a NixOS machine. Even though the Guix manual explains how to do it +[step by step][0], I needed a few extra ones to make it work properly. + +[0]: https://www.gnu.org/software/guix/manual/en/html_node/Binary-Installation.html#Binary-Installation I couldn't just install GuixSD because my wireless network card doesn't have any free/libre drivers (yet). @@ -18,10 +19,10 @@ doesn't have any free/libre drivers (yet). Guix requires you to create non-root users that will be used to perform the builds in the isolated environments. -The -[manual](https://www.gnu.org/software/guix/manual/en/html_node/Build-Environment-Setup.html#Build-Environment-Setup) -already provides you with a ready to run (as root) command for creating -the build users: +The [manual][1] already provides you with a ready to run (as root) command for +creating the build users: + +[1]: https://www.gnu.org/software/guix/manual/en/html_node/Build-Environment-Setup.html#Build-Environment-Setup ```bash groupadd --system guixbuild @@ -34,10 +35,11 @@ do done ``` -However, In my personal NixOS I have disabled -[`users.mutableUsers`](https://nixos.org/nixos/manual/index.html#sec-user-management), -which means that even if I run the above command it means that they'll -be removed once I rebuild my OS: +However, In my personal NixOS I have disabled [`users.mutableUsers`][2], which +means that even if I run the above command it means that they'll be removed once +I rebuild my OS: + +[2]: https://nixos.org/nixos/manual/index.html#sec-user-management ```shell $ sudo nixos-rebuild switch @@ -112,10 +114,11 @@ First I couldn't just copy the `.service` file to `/etc` since in NixOS that folder isn't writable. But also I wanted the service to be better integrated with the OS. -That was a little easier than creating the users, all I had to do was -translate the provided -[`guix-daemon.service.in`](https://git.savannah.gnu.org/cgit/guix.git/tree/etc/guix-daemon.service.in?id=00c86a888488b16ce30634d3a3a9d871ed6734a2) -configuration to an equivalent Nix expression +That was a little easier than creating the users, all I had to do was translate +the provided [`guix-daemon.service.in`][3] configuration to an equivalent Nix +expression + +[3]: https://git.savannah.gnu.org/cgit/guix.git/tree/etc/guix-daemon.service.in?id=00c86a888488b16ce30634d3a3a9d871ed6734a2 ```ini # This is a "service unit file" for the systemd init system to launch @@ -183,9 +186,11 @@ Hello, world! Some improvements to this approach are: -1. looking into [NixOS modules](https://nixos.org/nixos/manual/index.html#sec-writing-modules) - and trying to bundle everything together into a single logical unit; -2. [build Guix from source](https://www.gnu.org/software/guix/manual/en/html_node/Requirements.html#Requirements) - and share the Nix store and daemon with Guix. +1. looking into [NixOS modules][4] and trying to bundle everything together + into a single logical unit; +2. [build Guix from source][5] and share the Nix store and daemon with Guix. Happy Guix/Nix hacking! + +[4]: https://nixos.org/nixos/manual/index.html#sec-writing-modules +[5]: https://www.gnu.org/software/guix/manual/en/html_node/Requirements.html#Requirements -- cgit v1.2.3