nixos/freenet: refactor, migrate to runTest (#391886)

authored by Pol Dellaiera and committed by GitHub 03bf44b9 6846ab20

+29 -46
+10 -24
nixos/modules/services/networking/freenet.nix
··· 1 - # NixOS module for Freenet daemon 2 1 { 3 2 config, 4 3 lib, 5 4 pkgs, 6 5 ... 7 6 }: 8 - let 9 7 8 + let 10 9 cfg = config.services.freenet; 11 10 varDir = "/var/lib/freenet"; 12 - 13 11 in 14 - 15 12 { 16 - 17 - ### configuration 18 - 19 13 options = { 20 - 21 14 services.freenet = { 22 - 23 - enable = lib.mkOption { 24 - type = lib.types.bool; 25 - default = false; 26 - description = "Enable the Freenet daemon"; 27 - }; 15 + enable = lib.mkEnableOption "Freenet daemon"; 28 16 29 17 nice = lib.mkOption { 30 18 type = lib.types.int; 31 19 default = 10; 32 20 description = "Set the nice level for the Freenet daemon"; 33 21 }; 34 - 35 22 }; 36 - 37 23 }; 38 - 39 - ### implementation 40 24 41 25 config = lib.mkIf cfg.enable { 42 - 43 26 systemd.services.freenet = { 44 27 description = "Freenet daemon"; 45 28 after = [ "network.target" ]; 46 29 wantedBy = [ "multi-user.target" ]; 47 - serviceConfig.ExecStart = "${pkgs.freenet}/bin/freenet"; 48 - serviceConfig.User = "freenet"; 49 - serviceConfig.UMask = "0007"; 50 - serviceConfig.WorkingDirectory = varDir; 51 - serviceConfig.Nice = cfg.nice; 30 + serviceConfig = { 31 + ExecStart = lib.getExe pkgs.freenet; 32 + User = "freenet"; 33 + UMask = "0007"; 34 + WorkingDirectory = varDir; 35 + Nice = cfg.nice; 36 + }; 52 37 }; 53 38 54 39 users.users.freenet = { ··· 62 47 users.groups.freenet.gid = config.ids.gids.freenet; 63 48 }; 64 49 50 + meta.maintainers = with lib.maintainers; [ nagy ]; 65 51 }
+1 -1
nixos/tests/all-tests.nix
··· 492 492 inherit runTest; 493 493 forgejoPackage = pkgs.forgejo-lts; 494 494 }; 495 - freenet = handleTest ./freenet.nix { }; 495 + freenet = runTest ./freenet.nix; 496 496 freeswitch = handleTest ./freeswitch.nix { }; 497 497 freetube = discoverTests (import ./freetube.nix); 498 498 freshrss = handleTest ./freshrss { };
+18 -21
nixos/tests/freenet.nix
··· 1 - import ./make-test-python.nix ( 2 - { pkgs, ... }: 3 - { 4 - name = "freenet"; 5 - meta = with pkgs.lib.maintainers; { 6 - maintainers = [ nagy ]; 7 - }; 1 + { lib, ... }: 8 2 9 - nodes = { 10 - machine = 11 - { ... }: 12 - { 13 - services.freenet.enable = true; 14 - }; 3 + { 4 + name = "freenet"; 5 + meta = { 6 + maintainers = with lib.maintainers; [ nagy ]; 7 + }; 8 + 9 + nodes = { 10 + machine = { 11 + services.freenet.enable = true; 15 12 }; 13 + }; 16 14 17 - testScript = '' 18 - machine.wait_for_unit("freenet.service") 19 - machine.wait_for_open_port(8888) 20 - machine.wait_until_succeeds("curl -sfL http://localhost:8888/ | grep Freenet") 21 - machine.succeed("systemctl stop freenet") 22 - ''; 23 - } 24 - ) 15 + testScript = '' 16 + machine.wait_for_unit("freenet.service") 17 + machine.wait_for_open_port(8888) 18 + machine.wait_until_succeeds("curl -sfL http://localhost:8888/ | grep Freenet") 19 + machine.succeed("systemctl stop freenet") 20 + ''; 21 + }