From ca1db1b637cdc8b40eb1918fde7c5ab1b89eeb8d Mon Sep 17 00:00:00 2001 From: Ben Sima Date: Sat, 26 Jun 2021 06:21:56 -0400 Subject: Begin packaging guix for nix --- Biz/Dev/Guix.nix | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 Biz/Dev/Guix.nix (limited to 'Biz/Dev') diff --git a/Biz/Dev/Guix.nix b/Biz/Dev/Guix.nix new file mode 100644 index 0000000..8ee55d4 --- /dev/null +++ b/Biz/Dev/Guix.nix @@ -0,0 +1,47 @@ +{ config, lib, pkgs, ... }: + +with lib; + +let + + cfg = config.services.guix; + + +in { + + options.services.guix = { + enable = mkEnableOption "GNU Guix package manager"; + }; + + config = mkIf cfg.enable { + systemd.services.guix-daemon = { + description = "Build daemon for GNU Guix"; + + wantedBy = [ "multi-user.target" ]; + + serviceConfig = { + Restart = "always"; + ExecStart = "${pkgs.guix}/bin/guix-daemon --build-users-group=guixbuild"; + Environment = null; + RemainAfterExit = "yes"; + StandardOutput = "syslog"; + StandardError = "syslog"; + TaskMax = "8192"; + }; + }; + users = { + extraUsers = lib.attrs.genAttrs + (lib.lists.range 1 10) + (n: { + name = "guixbuilder${n}"; + isSystemUser = true; + extraGroups = ["guixbuild"]; + group = "guixbuild"; + description = "Guix build user ${n}"; + }); + extraGroups = { + "guixbuild" = {}; + }; + }; + }; +} -- cgit v1.2.3