Skip to content

Commit 550093e

Browse files
committed
feat(nix): add nixos module and overlay
1 parent 484504c commit 550093e

File tree

2 files changed

+47
-1
lines changed

2 files changed

+47
-1
lines changed

flake.nix

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,12 @@
55
};
66

77
outputs = { self, nixpkgs, flake-utils }:
8-
flake-utils.lib.eachDefaultSystem (system:
8+
{
9+
overlays.default = final: prev: {
10+
inherit (self.packages.${prev.system}) default;
11+
};
12+
nixosModules.default = import ./nixos.nix (self.overlays.default);
13+
} // flake-utils.lib.eachDefaultSystem (system:
914
let
1015
pkgs = import nixpkgs {
1116
inherit system;

nixos.nix

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
baps-overlay:
2+
3+
{
4+
config,
5+
lib,
6+
pkgs,
7+
...
8+
}:
9+
10+
let
11+
cfg = config.services.bapsicle;
12+
in
13+
14+
{
15+
options.services.bapsicle = {
16+
enable = lib.mkEnableOption "BAPSicle server";
17+
};
18+
19+
config = {
20+
nixpkgs.overlays = [baps-overlay];
21+
22+
systemd.user.services.bapsicle = lib.mkIf cfg.enable {
23+
description = "BAPS 3 Server";
24+
25+
serviceConfig = {
26+
ExecStart = "${pkgs.bapsicle}";
27+
LockPersonality = "yes";
28+
MemoryDenyWriteExecute = "yes";
29+
NoNewPrivileges = "yes";
30+
Restart = "on-failure";
31+
RestrictNamespaces = "yes";
32+
SystemCallArchitectures = "native";
33+
SystemCallFilter = "@system-service";
34+
TimeoutSec = "13500000000000";
35+
};
36+
37+
after = ["pipewire-pulse.socket"];
38+
wantedBy = "default.target";
39+
};
40+
};
41+
}

0 commit comments

Comments
 (0)