mirror of
https://github.com/gensokyo-zone/infrastructure.git
synced 2026-02-09 04:19:19 -08:00
chore: nf-fmt-nix
This commit is contained in:
parent
e4bbddb004
commit
32ff0a8e0c
7 changed files with 152 additions and 138 deletions
11
lib.nix
11
lib.nix
|
|
@ -19,16 +19,21 @@
|
|||
nibble0 = Str.index part 0;
|
||||
in
|
||||
nibble0 + UInt.toHexLower nibble1;
|
||||
in trimAddress6 "${part0 (part 0)}${part 1}:${part 2}ff:fe${part 3}:${part 4}${part 5}";
|
||||
in
|
||||
trimAddress6 "${part0 (part 0)}${part 1}:${part 2}ff:fe${part 3}:${part 4}${part 5}";
|
||||
|
||||
trimAddress6 = let
|
||||
matcher = match ''(^|.*:)(0+)([0-9a-fA-F].*)'';
|
||||
in addr: let
|
||||
in
|
||||
addr: let
|
||||
matched = matcher addr;
|
||||
prefix = elemAt matched 0;
|
||||
postfix = elemAt matched 2;
|
||||
addrReplaced = prefix + postfix;
|
||||
in if matched == null then addr else trimAddress6 addrReplaced;
|
||||
in
|
||||
if matched == null
|
||||
then addr
|
||||
else trimAddress6 addrReplaced;
|
||||
|
||||
parseUrl = url: let
|
||||
parts' = Regex.match ''^([^:]+)://(\[[0-9a-fA-F:]+]|[^/:\[]+)(|:[0-9]+)(|/.*)$'' url;
|
||||
|
|
|
|||
|
|
@ -1,9 +1,15 @@
|
|||
let
|
||||
deviceModule = {config, lib, ...}: let
|
||||
deviceModule = {
|
||||
config,
|
||||
lib,
|
||||
...
|
||||
}: let
|
||||
inherit (lib.options) mkOption mkEnableOption;
|
||||
in {
|
||||
options = with lib.types; {
|
||||
enable = mkEnableOption "adb device" // {
|
||||
enable =
|
||||
mkEnableOption "adb device"
|
||||
// {
|
||||
default = true;
|
||||
};
|
||||
uphold = mkOption {
|
||||
|
|
@ -15,7 +21,8 @@ let
|
|||
};
|
||||
};
|
||||
};
|
||||
in {
|
||||
in
|
||||
{
|
||||
config,
|
||||
gensokyo-zone,
|
||||
utils,
|
||||
|
|
@ -75,7 +82,8 @@ in {
|
|||
conf.systemd.services.adb = {
|
||||
upholds = let
|
||||
upheldDevices = filterAttrs (_: device: device.uphold) enabledDevices;
|
||||
in mapAttrsToList (_: device: "adb-device@${escapeSystemdPath device.serial}.service") upheldDevices;
|
||||
in
|
||||
mapAttrsToList (_: device: "adb-device@${escapeSystemdPath device.serial}.service") upheldDevices;
|
||||
after = ["network.target"];
|
||||
wantedBy = ["multi-user.target"];
|
||||
serviceConfig = {
|
||||
|
|
|
|||
|
|
@ -295,14 +295,12 @@ in {
|
|||
hasService = system: system.exports.services.${service}.enable;
|
||||
notFound = throw "no system found serving ${service}";
|
||||
multiple = throw "multiple systems found serving ${service}";
|
||||
in
|
||||
(findSingle hasService notFound multiple (attrValues systems));
|
||||
in (findSingle hasService notFound multiple (attrValues systems));
|
||||
systemForServiceId = serviceId: let
|
||||
hasService = system: findSingle (service: service.id == serviceId && service.enable) null multiple (attrValues system.exports.services) != null;
|
||||
notFound = throw "no system found serving ${serviceId}";
|
||||
multiple = throw "multiple systems found serving ${serviceId}";
|
||||
in
|
||||
(findSingle hasService notFound multiple (attrValues systems));
|
||||
in (findSingle hasService notFound multiple (attrValues systems));
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -18,10 +18,12 @@ in {
|
|||
settings.fail_timeout = mkDefault timeout;
|
||||
addr = mkDefault "10.1.1.67";
|
||||
port = mkDefault nfandroidtv.ports.default.port;
|
||||
/*accessService = {
|
||||
/*
|
||||
accessService = {
|
||||
system = "bedroomtv";
|
||||
name = "nfandroidtv";
|
||||
};*/
|
||||
};
|
||||
*/
|
||||
};
|
||||
fallback = let
|
||||
virtualHost = nginx.virtualHosts.nfandroidtv'fallback;
|
||||
|
|
@ -70,7 +72,8 @@ in {
|
|||
config.networking.firewall.interfaces.lan = let
|
||||
virtualHost = nginx.virtualHosts.nfandroidtv'local;
|
||||
listen = virtualHost.listen'.nfandroidtv;
|
||||
in mkIf (virtualHost.enable && listen.enable) {
|
||||
in
|
||||
mkIf (virtualHost.enable && listen.enable) {
|
||||
allowedTCPPorts = [listen.port];
|
||||
};
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue