format + tree-sitter

This commit is contained in:
2026-04-15 11:28:48 +02:00
parent 6ee0af88cd
commit d191299966
10 changed files with 107 additions and 72 deletions
+2 -1
View File
@@ -37,7 +37,8 @@
}; };
outputs = inputs: outputs =
inputs:
inputs.flake-parts.lib.mkFlake { inherit inputs; } { inputs.flake-parts.lib.mkFlake { inherit inputs; } {
imports = [ imports = [
./modules/flake/parts.nix ./modules/flake/parts.nix
+24 -17
View File
@@ -8,33 +8,39 @@ let
hasDotfilesHome = builtins.pathExists dotfilesHome; hasDotfilesHome = builtins.pathExists dotfilesHome;
in in
{ {
mkHost = { mkHost =
nixpkgs, {
disko, nixpkgs,
lolcat, disko,
nixosModules, lolcat,
hostModules ? [ ], nixosModules,
}: hostModules ? [ ],
}:
nixpkgs.lib.nixosSystem { nixpkgs.lib.nixosSystem {
system = "x86_64-linux"; system = "x86_64-linux";
specialArgs = { specialArgs = {
inputs = inputs // { "lolcat++" = lolcat; }; inputs = inputs // {
"lolcat++" = lolcat;
};
inherit nixosModules; inherit nixosModules;
}; };
modules = [ disko.nixosModules.disko ] ++ hostModules; modules = [ disko.nixosModules.disko ] ++ hostModules;
}; };
mkDesktopHost = { mkDesktopHost =
nixpkgs, {
disko, nixpkgs,
lolcat, disko,
nixosModules, lolcat,
hostModules ? [ ], nixosModules,
}: hostModules ? [ ],
}:
nixpkgs.lib.nixosSystem { nixpkgs.lib.nixosSystem {
system = "x86_64-linux"; system = "x86_64-linux";
specialArgs = { specialArgs = {
inputs = inputs // { "lolcat++" = lolcat; }; inputs = inputs // {
"lolcat++" = lolcat;
};
inherit nixosModules; inherit nixosModules;
}; };
modules = [ modules = [
@@ -55,6 +61,7 @@ in
programs.home-manager.enable = true; programs.home-manager.enable = true;
}; };
} }
] ++ hostModules; ]
++ hostModules;
}; };
} }
+1 -2
View File
@@ -1,2 +1 @@
args: args: (import ./hermes args) // (import ./kronos args)
(import ./hermes args) // (import ./kronos args)
+18 -5
View File
@@ -1,14 +1,27 @@
# Do not modify this file! It was generated by nixos-generate-config # Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes # and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead. # to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }: {
config,
lib,
pkgs,
modulesPath,
...
}:
{ {
imports = imports = [
[ (modulesPath + "/profiles/qemu-guest.nix") (modulesPath + "/profiles/qemu-guest.nix")
]; ];
boot.initrd.availableKernelModules = [ "ahci" "xhci_pci" "virtio_pci" "virtio_scsi" "sd_mod" "sr_mod" ]; boot.initrd.availableKernelModules = [
"ahci"
"xhci_pci"
"virtio_pci"
"virtio_scsi"
"sd_mod"
"sr_mod"
];
boot.initrd.kernelModules = [ ]; boot.initrd.kernelModules = [ ];
boot.kernelModules = [ ]; boot.kernelModules = [ ];
boot.extraModulePackages = [ ]; boot.extraModulePackages = [ ];
+4 -1
View File
@@ -44,7 +44,10 @@ in
}; };
system.activationScripts.initrdSshHostKey = { system.activationScripts.initrdSshHostKey = {
deps = [ "users" "groups" ]; deps = [
"users"
"groups"
];
text = '' text = ''
install -d -m 700 "$(dirname "${cfg.hostKeyPath}")" install -d -m 700 "$(dirname "${cfg.hostKeyPath}")"
if [ ! -f "${cfg.hostKeyPath}" ]; then if [ ! -f "${cfg.hostKeyPath}" ]; then
+37 -36
View File
@@ -7,7 +7,8 @@
let let
radicaleHostFor = domain: "cal.${domain}"; radicaleHostFor = domain: "cal.${domain}";
mkThunderbirdAutoconfig = domain: mkThunderbirdAutoconfig =
domain:
pkgs.writeText "autoconfig-${domain}.xml" '' pkgs.writeText "autoconfig-${domain}.xml" ''
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<clientConfig version="1.1"> <clientConfig version="1.1">
@@ -47,7 +48,8 @@ let
</clientConfig> </clientConfig>
''; '';
mkOutlookAutodiscover = domain: mkOutlookAutodiscover =
domain:
pkgs.writeText "autodiscover-${domain}.xml" '' pkgs.writeText "autodiscover-${domain}.xml" ''
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Autodiscover xmlns="http://schemas.microsoft.com/exchange/autodiscover/responseschema/2006"> <Autodiscover xmlns="http://schemas.microsoft.com/exchange/autodiscover/responseschema/2006">
@@ -80,40 +82,39 @@ let
</Autodiscover> </Autodiscover>
''; '';
mailDiscoveryVirtualHosts = mailDiscoveryVirtualHosts = lib.listToAttrs (
lib.listToAttrs ( lib.concatMap (
lib.concatMap ( domain:
domain: let
let autoconfigXml = mkThunderbirdAutoconfig domain;
autoconfigXml = mkThunderbirdAutoconfig domain; autodiscoverXml = mkOutlookAutodiscover domain;
autodiscoverXml = mkOutlookAutodiscover domain; in
in [
[ {
{ name = "autoconfig.${domain}";
name = "autoconfig.${domain}"; value = {
value = { enableACME = true;
enableACME = true; forceSSL = true;
forceSSL = true; locations."= /mail/config-v1.1.xml".extraConfig = ''
locations."= /mail/config-v1.1.xml".extraConfig = '' default_type application/xml;
default_type application/xml; alias ${autoconfigXml};
alias ${autoconfigXml}; '';
''; };
}; }
} {
{ name = "autodiscover.${domain}";
name = "autodiscover.${domain}"; value = {
value = { enableACME = true;
enableACME = true; forceSSL = true;
forceSSL = true; locations."= /autodiscover/autodiscover.xml".extraConfig = ''
locations."= /autodiscover/autodiscover.xml".extraConfig = '' default_type application/xml;
default_type application/xml; alias ${autodiscoverXml};
alias ${autodiscoverXml}; '';
''; };
}; }
} ]
] ) config.mailserver.domains
) config.mailserver.domains );
);
in in
{ {
services.nginx.virtualHosts = mailDiscoveryVirtualHosts // { services.nginx.virtualHosts = mailDiscoveryVirtualHosts // {
+4 -1
View File
@@ -1,5 +1,8 @@
{ {
networking.firewall.allowedTCPPorts = [ 80 443 ]; networking.firewall.allowedTCPPorts = [
80
443
];
security.acme = { security.acme = {
acceptTerms = true; acceptTerms = true;
+15 -8
View File
@@ -60,14 +60,21 @@ lib.mkIf hasMailDiscoveryConfig (
wantedBy = [ "multi-user.target" ]; wantedBy = [ "multi-user.target" ];
serviceConfig = { serviceConfig = {
DynamicUser = true; DynamicUser = true;
ExecStart = lib.concatStringsSep " " [ ExecStart =
"${pkgs.python3}/bin/python3" lib.concatStringsSep " " [
"${generatorScript}" "${pkgs.python3}/bin/python3"
"--domain" domain "${generatorScript}"
"--mail-host" cfg.fqdn "--domain"
"--radicale-host" radicaleHost domain
"--port" (toString mobileconfigPort) "--mail-host"
] + defaultUsernameArg + accountArgs; cfg.fqdn
"--radicale-host"
radicaleHost
"--port"
(toString mobileconfigPort)
]
+ defaultUsernameArg
+ accountArgs;
NoNewPrivileges = true; NoNewPrivileges = true;
PrivateTmp = true; PrivateTmp = true;
ProtectHome = true; ProtectHome = true;
+1
View File
@@ -3,5 +3,6 @@
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
lua-language-server lua-language-server
stylua stylua
tree-sitter
]; ];
} }