My Nix Configuration

[systems.marvin] Fix anubis service and add miniflux anubis

pyrox.dev a0f308f8 2d44aad4

verified
Changed files
+21 -6
packages
anubis-files
systems
x86_64-linux
+1 -1
packages/anubis-files/default.nix
···
buildPhase = ''
substituteInPlace policies/*.yaml \
-
--replace-fail "CUSTOM" $out
'';
installPhase = ''
···
buildPhase = ''
substituteInPlace policies/*.yaml \
+
--replace-fail "CUSTOM" $out/rules
'';
installPhase = ''
+1
systems/x86_64-linux/marvin/default.nix
···
./hardware.nix
# Running Services
./services/authentik.nix
./services/avahi.nix
./services/bots.nix
···
./hardware.nix
# Running Services
+
./services/anubis.nix
./services/authentik.nix
./services/avahi.nix
./services/bots.nix
+2 -2
systems/x86_64-linux/marvin/services/anubis.nix
···
config = {
services.anubis.defaultOptions = {
enable = true;
-
extraFlags = "-metrics-bind \"\"";
settings = {
BIND_NETWORK = "tcp";
SERVE_ROBOTS_TXT = true;
···
};
age.secrets.anubis-key = {
file = ./secrets/anubis-key.age;
-
user = "anubis";
group = "anubis";
};
};
···
config = {
services.anubis.defaultOptions = {
enable = true;
+
extraFlags = [ "-metrics-bind \"\"" ];
settings = {
BIND_NETWORK = "tcp";
SERVE_ROBOTS_TXT = true;
···
};
age.secrets.anubis-key = {
file = ./secrets/anubis-key.age;
+
owner = "anubis";
group = "anubis";
};
};
+17 -3
systems/x86_64-linux/marvin/services/miniflux.nix
···
-
{config, lib, ...}: let
d = lib.py.data.services.miniflux;
-
in {
services.miniflux = {
enable = true;
config = {
···
};
users.users.miniflux.isSystemUser = true;
users.users.miniflux.group = "miniflux";
-
users.groups.miniflux = {};
age.secrets = {
miniflux-admin = {
file = ./secrets/miniflux-admin.age;
owner = "miniflux";
group = "miniflux";
};
};
}
···
+
{
+
config,
+
lib,
+
pkgs,
+
...
+
}:
+
let
d = lib.py.data.services.miniflux;
+
in
+
{
services.miniflux = {
enable = true;
config = {
···
};
users.users.miniflux.isSystemUser = true;
users.users.miniflux.group = "miniflux";
+
users.groups.miniflux = { };
age.secrets = {
miniflux-admin = {
file = ./secrets/miniflux-admin.age;
owner = "miniflux";
group = "miniflux";
+
};
+
};
+
services.anubis.instances.miniflux = {
+
settings = {
+
BIND = ":${toString d.anubis}";
+
POLICY_FNAME = "${pkgs.py.anubis-files}/policies/miniflux.yaml";
+
TARGET = "http://localhost:${toString d.port}";
};
};
}