at 25.11-pre 1.2 kB view raw
1{ 2 config, 3 lib, 4 pkgs, 5 ... 6}: 7let 8 cfg = config.services.e-imzo; 9in 10{ 11 options = { 12 services.e-imzo = { 13 enable = lib.mkEnableOption "E-IMZO"; 14 15 package = lib.mkPackageOption pkgs "e-imzo" { 16 extraDescription = "Official mirror deletes old versions as soon as they release new one. Feel free to use either unstable or your own custom e-imzo package and ping maintainer."; 17 }; 18 }; 19 }; 20 21 config = lib.mkIf cfg.enable { 22 systemd.user.services.e-imzo = { 23 enable = true; 24 description = "E-IMZO, uzbek state web signing service"; 25 documentation = [ "https://github.com/xinux-org/e-imzo" ]; 26 27 after = [ 28 "network-online.target" 29 "graphical.target" 30 ]; 31 wants = [ 32 "network-online.target" 33 "graphical.target" 34 ]; 35 wantedBy = [ "default.target" ]; 36 37 serviceConfig = { 38 Type = "simple"; 39 Restart = "always"; 40 RestartSec = 1; 41 ExecStart = lib.getExe cfg.package; 42 43 NoNewPrivileges = true; 44 SystemCallArchitectures = "native"; 45 }; 46 }; 47 }; 48 49 meta.maintainers = with lib.maintainers; [ orzklv ]; 50}