grafana-alloy: don't build the frontend twice
[NixPkgs.git] / nixos / modules / services / misc / svnserve.nix
blob5fa262ca3b9454dc28b7d5117ad79ca7add93912
1 # SVN server
2 { config, lib, pkgs, ... }:
4 with lib;
6 let
8   cfg = config.services.svnserve;
14   ###### interface
16   options = {
18     services.svnserve = {
20       enable = mkOption {
21         type = types.bool;
22         default = false;
23         description = "Whether to enable svnserve to serve Subversion repositories through the SVN protocol.";
24       };
26       svnBaseDir = mkOption {
27         type = types.str;
28         default = "/repos";
29         description = "Base directory from which Subversion repositories are accessed.";
30       };
31     };
33   };
36   ###### implementation
38   config = mkIf cfg.enable {
39     systemd.services.svnserve = {
40       after = [ "network.target" ];
41       wantedBy = [ "multi-user.target" ];
42       preStart = "mkdir -p ${cfg.svnBaseDir}";
43       script = "${pkgs.subversion.out}/bin/svnserve -r ${cfg.svnBaseDir} -d --foreground --pid-file=/run/svnserve.pid";
44     };
45   };