refactor(nixos): derive AdGuard proxy rewrites
This commit is contained in:
@@ -1,6 +1,7 @@
|
|||||||
{
|
{
|
||||||
config,
|
config,
|
||||||
lib,
|
lib,
|
||||||
|
registry,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
@@ -34,6 +35,7 @@ in
|
|||||||
modules.services.adguardhome = {
|
modules.services.adguardhome = {
|
||||||
enable = true;
|
enable = true;
|
||||||
inherit (cfg) adminPasswordHash;
|
inherit (cfg) adminPasswordHash;
|
||||||
|
reverseProxyAddress = registry.address.${config.networking.hostName}."reverse-proxy";
|
||||||
};
|
};
|
||||||
|
|
||||||
services.resolved.settings.Resolve.DNSStubListener = false;
|
services.resolved.settings.Resolve.DNSStubListener = false;
|
||||||
|
|||||||
@@ -10,6 +10,11 @@ in
|
|||||||
type = lib.types.str;
|
type = lib.types.str;
|
||||||
description = "Bcrypt verifier for the AdGuard Home administrator password.";
|
description = "Bcrypt verifier for the AdGuard Home administrator password.";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
reverseProxyAddress = lib.mkOption {
|
||||||
|
type = lib.types.str;
|
||||||
|
description = "IP address of the guest that handles internal HTTP requests.";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
config = lib.mkIf cfg.enable {
|
config = lib.mkIf cfg.enable {
|
||||||
@@ -204,19 +209,14 @@ in
|
|||||||
parental_block_host = "family-block.dns.adguard.com";
|
parental_block_host = "family-block.dns.adguard.com";
|
||||||
safebrowsing_block_host = "standard-block.dns.adguard.com";
|
safebrowsing_block_host = "standard-block.dns.adguard.com";
|
||||||
rewrites = [
|
rewrites = [
|
||||||
{
|
|
||||||
domain = "*.home";
|
|
||||||
answer = "10.23.20.32";
|
|
||||||
enabled = true;
|
|
||||||
}
|
|
||||||
{
|
{
|
||||||
domain = "*.alexion.dev";
|
domain = "*.alexion.dev";
|
||||||
answer = "10.23.20.109";
|
answer = cfg.reverseProxyAddress;
|
||||||
enabled = true;
|
enabled = true;
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
domain = "home";
|
domain = "home";
|
||||||
answer = "10.23.20.109";
|
answer = cfg.reverseProxyAddress;
|
||||||
enabled = true;
|
enabled = true;
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|||||||
Reference in New Issue
Block a user