aboutsummaryrefslogtreecommitdiff
path: root/site/posts
diff options
context:
space:
mode:
Diffstat (limited to 'site/posts')
-rw-r--r--site/posts/2018-07-15-running-guix-on-nixos.org48
1 files changed, 48 insertions, 0 deletions
diff --git a/site/posts/2018-07-15-running-guix-on-nixos.org b/site/posts/2018-07-15-running-guix-on-nixos.org
index c21ee84..ebf5400 100644
--- a/site/posts/2018-07-15-running-guix-on-nixos.org
+++ b/site/posts/2018-07-15-running-guix-on-nixos.org
@@ -2,3 +2,51 @@
title: Running Guix on NixOS
date: 2018-07-15
---
+https://riot.im/app/#/room/#freenode_#guix:matrix.org/$1531510045400627zjGbq:matrix.org
+* h1
+** h2
+#+BEGIN_SRC nix -n
+ # FIXME: add line number
+ { config, pkgs, ...}:
+
+ {
+
+ # NixOS usual config
+
+ users = {
+ mutableUsers = false;
+
+ extraUsers =
+ let
+ andrehUser = {
+ andreh = {
+ # my custom user config
+ };
+ };
+ # From the Guix manual:
+ # https://www.gnu.org/software/guix/manual/en/html_node/Build-Environment-Setup.html#Build-Environment-Setup
+ buildUser = (i:
+ {
+ "guixbuilder${i}" = { # guixbuilder$i
+ group = "guixbuild"; # -g guixbuild
+ extraGroups = ["guixbuild"]; # -G guixbuild
+ home = "/var/empty"; # -d /var/empty
+ shell = pkgs.nologin; # -s `which nologin`
+ description = "Guix build user ${i}"; # -c "Guix buid user $i"
+ isSystemUser = true; # --system
+ };
+ }
+ );
+ in
+ # merge all users
+ pkgs.lib.fold (str: acc: acc // buildUser str)
+ andrehUser
+ # for i in `seq -w 1 10`
+ (map (pkgs.lib.fixedWidthNumber 2) (builtins.genList (n: n+1) 10));
+
+ extraGroups.guixbuild = {
+ name = "guixbuild";
+ };
+ };
+ }
+#+END_SRC