Skip to content

Commit 2039615

Browse files
e-imzo: initialize module
e-imzo: (fix, to be squashed) formatted accordingly using `nixfmt` e-imzo: (fix, to be squashed) removed lib from options by @ FliegendeWurst e-imzo: (fix, to be squashed) use lib.getExe as mainProgram is defined by @FliegendeWurst e-imzo: (fix, to be squashed) formatted with `nixfmt-rfc-style` suggestion by @FliegendeWurst Co-Authored-By: Arne Keller <[email protected]>
1 parent 9f208a0 commit 2039615

File tree

2 files changed

+51
-0
lines changed

2 files changed

+51
-0
lines changed

nixos/modules/module-list.nix

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1394,6 +1394,7 @@
13941394
./services/security/certmgr.nix
13951395
./services/security/cfssl.nix
13961396
./services/security/clamav.nix
1397+
./services/security/e-imzo.nix
13971398
./services/security/endlessh-go.nix
13981399
./services/security/endlessh.nix
13991400
./services/security/esdm.nix
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
{
2+
config,
3+
lib,
4+
pkgs,
5+
...
6+
}:
7+
let
8+
cfg = config.services.e-imzo;
9+
in
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+
}

0 commit comments

Comments
 (0)