fixes and formatting

This commit is contained in:
Henry Hiles 2025-09-23 09:17:26 -04:00
commit 80cf48f1e8
No known key found for this signature in database
71 changed files with 746 additions and 1110 deletions

View file

@ -4,16 +4,17 @@
crossPkgs, crossPkgs,
lib, lib,
... ...
}: { }:
{
imports = [ imports = [
(_: (
import _:
"${inputs.sdm845}/nixos/profiles/boot/kernel/sdm845-mainline" import "${inputs.sdm845}/nixos/profiles/boot/kernel/sdm845-mainline" {
{
inherit lib config; inherit lib config;
pkgs = crossPkgs; pkgs = crossPkgs;
inputs = inputs.sdm845.inputs; inputs = inputs.sdm845.inputs;
}) }
)
]; ];
boot.initrd.allowMissingModules = true; boot.initrd.allowMissingModules = true;

View file

@ -1,10 +1,10 @@
{ {
boot.binfmt.emulatedSystems = ["aarch64-linux"]; boot.binfmt.emulatedSystems = [ "aarch64-linux" ];
nixpkgs.overlays = [ nixpkgs.overlays = [
(_: super: { (_: super: {
# Because of https://github.com/NixOS/nixpkgs/pull/378579 # Because of https://github.com/NixOS/nixpkgs/pull/378579
qemu = super.qemu.overrideAttrs (old: { qemu = super.qemu.overrideAttrs (old: {
patches = (old.patches or []) ++ [./qemu.patch]; patches = (old.patches or [ ]) ++ [ ./qemu.patch ];
}); });
}) })
]; ];

View file

@ -7,15 +7,23 @@
pkgs, pkgs,
modulesPath, modulesPath,
... ...
}: { }:
{
imports = [ imports = [
(modulesPath + "/installer/scan/not-detected.nix") (modulesPath + "/installer/scan/not-detected.nix")
]; ];
boot.initrd.availableKernelModules = ["nvme" "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod"]; boot.initrd.availableKernelModules = [
boot.initrd.kernelModules = []; "nvme"
boot.kernelModules = ["kvm-amd"]; "xhci_pci"
boot.extraModulePackages = []; "ahci"
"usb_storage"
"usbhid"
"sd_mod"
];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" = { fileSystems."/" = {
device = "/dev/disk/by-uuid/7d01741d-d58f-49d4-b3a2-4d37d953873d"; device = "/dev/disk/by-uuid/7d01741d-d58f-49d4-b3a2-4d37d953873d";
@ -27,7 +35,7 @@
fsType = "vfat"; fsType = "vfat";
}; };
swapDevices = []; swapDevices = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking # Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's # (the default) this is the recommended approach. When using systemd-networkd it's

View file

@ -2,14 +2,19 @@
pkgs, pkgs,
lib, lib,
... ...
}: let }:
let
setvcp = "${lib.meta.getExe pkgs.ddcutil} setvcp D6"; setvcp = "${lib.meta.getExe pkgs.ddcutil} setvcp D6";
in { in
{
hardware.i2c.enable = true; hardware.i2c.enable = true;
systemd.services = { systemd.services = {
monitor-off = rec { monitor-off = rec {
script = "${setvcp} 05"; script = "${setvcp} 05";
wantedBy = ["sleep.target" "final.target"]; wantedBy = [
"sleep.target"
"final.target"
];
before = wantedBy; before = wantedBy;
serviceConfig.Type = "oneshot"; serviceConfig.Type = "oneshot";
@ -18,7 +23,10 @@ in {
monitor-on = rec { monitor-on = rec {
script = "${setvcp} 01"; script = "${setvcp} 01";
wantedBy = ["sleep.target" "multi-user.target"]; wantedBy = [
"sleep.target"
"multi-user.target"
];
after = wantedBy; after = wantedBy;
}; };
}; };

View file

@ -2,10 +2,14 @@
pkgs, pkgs,
config, config,
... ...
}: { }:
boot.blacklistedKernelModules = ["xpad"]; {
boot.extraModulePackages = [config.boot.kernelPackages.hid-tmff2]; boot.blacklistedKernelModules = [ "xpad" ];
boot.extraModulePackages = [ config.boot.kernelPackages.hid-tmff2 ];
environment.systemPackages = with pkgs; [oversteer linuxConsoleTools]; environment.systemPackages = with pkgs; [
services.udev.packages = [pkgs.oversteer]; oversteer
linuxConsoleTools
];
services.udev.packages = [ pkgs.oversteer ];
} }

View file

@ -1,7 +1,10 @@
{config, ...}: { { config, ... }:
services = let {
services =
let
domain = "dav.henryhiles.com"; domain = "dav.henryhiles.com";
in { in
{
davis = { davis = {
enable = true; enable = true;
hostname = domain; hostname = domain;

View file

@ -47,14 +47,11 @@ in
enableNginx = false; enableNginx = false;
redis.createLocally = true; redis.createLocally = true;
postgresql.createLocally = true; postgresql.createLocally = true;
backendPackage = inputs.nixpkgs-lasuite.legacyPackages.${pkgs.system}.lasuite-docs.overrideAttrs { backendPackage = pkgs.lasuite-docs.overrideAttrs {
patches = [ ./enable-languages.patch ]; patches = [ ./enable-languages.patch ];
}; };
collaborationServer.package = collaborationServer.package = pkgs.lasuite-docs-collaboration-server;
inputs.nixpkgs-lasuite.legacyPackages.${pkgs.system}.lasuite-docs-collaboration-server; frontendPackage = pkgs.lasuite-docs-frontend.overrideAttrs {
frontendPackage =
inputs.nixpkgs-lasuite.legacyPackages.${pkgs.system}.lasuite-docs-frontend.overrideAttrs
{
NEXT_PUBLIC_PUBLISH_AS_MIT = "false"; NEXT_PUBLIC_PUBLISH_AS_MIT = "false";
}; };
bind = "unix:${socket}"; bind = "unix:${socket}";

View file

@ -2,12 +2,15 @@
pkgs, pkgs,
config, config,
... ...
}: { }:
networking.firewall.allowedTCPPorts = [22]; {
services = let networking.firewall.allowedTCPPorts = [ 22 ];
services =
let
domain = "git.federated.nexus"; domain = "git.federated.nexus";
socket = "/run/forgejo/socket"; socket = "/run/forgejo/socket";
in { in
{
forgejo = { forgejo = {
enable = true; enable = true;
package = pkgs.forgejo; # Not LTS package = pkgs.forgejo; # Not LTS
@ -47,8 +50,8 @@
}; };
systemd.sockets.forgejo = { systemd.sockets.forgejo = {
requiredBy = ["forgejo.service"]; requiredBy = [ "forgejo.service" ];
wantedBy = ["sockets.target"]; wantedBy = [ "sockets.target" ];
listenStreams = [ listenStreams = [
(toString config.services.forgejo.settings.server.SSH_PORT) (toString config.services.forgejo.settings.server.SSH_PORT)

View file

@ -1,9 +1,11 @@
{pkgs, ...}: { { pkgs, ... }:
{
services.caddy.virtualHosts."app.federated.nexus".extraConfig = '' services.caddy.virtualHosts."app.federated.nexus".extraConfig = ''
root ${pkgs.cinny.override { root ${
pkgs.cinny.override {
conf = { conf = {
defaultHomeserver = 0; defaultHomeserver = 0;
homeserverList = ["federated.nexus"]; homeserverList = [ "federated.nexus" ];
allowCustomHomeservers = false; allowCustomHomeservers = false;
}; };
# cinny-unwrapped = pkgs.cinny-unwrapped.overrideAttrs (old: rec { # cinny-unwrapped = pkgs.cinny-unwrapped.overrideAttrs (old: rec {
@ -19,7 +21,8 @@
# hash = "sha256-k8eCQO1uIpoKpLHO3E3EYWbQSjcAya2AxngA9mvSfns="; # hash = "sha256-k8eCQO1uIpoKpLHO3E3EYWbQSjcAya2AxngA9mvSfns=";
# }; # };
# }); # });
}} }
}
try_files {path} {path}/ /index.html try_files {path} {path}/ /index.html
file_server file_server
''; '';

View file

@ -3,14 +3,17 @@
pkgs, pkgs,
lib, lib,
... ...
}: { }:
{
systemd.services.continuwuity.serviceConfig.Restart = lib.mkForce "always"; systemd.services.continuwuity.serviceConfig.Restart = lib.mkForce "always";
services = let services =
let
domain = "federated.nexus"; domain = "federated.nexus";
subdomain = "matrix.${domain}"; subdomain = "matrix.${domain}";
socket = "/var/run/continuwuity/continuwuity.sock"; socket = "/var/run/continuwuity/continuwuity.sock";
in { in
{
matrix-continuwuity = { matrix-continuwuity = {
enable = true; enable = true;
package = inputs.nixpkgs-continuwuity.legacyPackages.${pkgs.system}.matrix-continuwuity; package = inputs.nixpkgs-continuwuity.legacyPackages.${pkgs.system}.matrix-continuwuity;
@ -25,8 +28,8 @@
"tchncs.de" "tchncs.de"
"maunium.net" "maunium.net"
]; ];
ignore_messages_from_server_names = []; ignore_messages_from_server_names = [ ];
url_preview_domain_explicit_allowlist = ["*"]; url_preview_domain_explicit_allowlist = [ "*" ];
well_known = { well_known = {
client = "https://${subdomain}"; client = "https://${subdomain}";

View file

@ -2,17 +2,18 @@
config, config,
pkgs, pkgs,
... ...
}: { }:
{
services = { services = {
redlib = { redlib = {
enable = true; enable = true;
package = pkgs.redlib.overrideAttrs (oldAttrs: { package = pkgs.redlib.overrideAttrs (oldAttrs: {
doCheck = false; doCheck = false;
src = pkgs.fetchFromGitHub { src = pkgs.fetchFromGitHub {
owner = "chowder"; owner = "redlib-org";
repo = "redlib"; repo = "redlib";
rev = "47ef6a06d47416559609c385d5234d155938f3e3"; rev = "a989d19ca92713878e9a20dead4252f266dc4936";
hash = "sha256-gsgWqVOUizSYFjSg9x+dG1VRWabvjpuCGjaG94q1cQY="; hash = "sha256-YJZVkCi8JQ1U47s52iOSyyf32S3b35pEqw4YTW8FHVY=";
}; };
}); });
@ -21,7 +22,9 @@
settings.REDLIB_DEFAULT_THEME = "nord"; settings.REDLIB_DEFAULT_THEME = "nord";
}; };
caddy.authedHosts."redlib.federated.nexus" = with config.services.redlib; "reverse_proxy ${address}:${toString port}"; caddy.authedHosts."redlib.federated.nexus" =
with config.services.redlib;
"reverse_proxy ${address}:${toString port}";
}; };
systemd.services.redlib.serviceConfig.Restart = "always"; systemd.services.redlib.serviceConfig.Restart = "always";

View file

@ -1 +1 @@
{time.timeZone = "America/Toronto";} { time.timeZone = "America/Toronto"; }

View file

@ -1,7 +1,10 @@
{config, ...}: { { config, ... }:
services = let {
services =
let
domain = "vault.henryhiles.com"; domain = "vault.henryhiles.com";
in { in
{
vaultwarden = { vaultwarden = {
enable = true; enable = true;
config = { config = {
@ -12,6 +15,7 @@
}; };
}; };
caddy.virtualHosts."${domain}".extraConfig = "reverse_proxy ${config.services.vaultwarden.config.rocketAddress}:8000"; caddy.virtualHosts."${domain}".extraConfig =
"reverse_proxy ${config.services.vaultwarden.config.rocketAddress}:8000";
}; };
} }

View file

@ -7,18 +7,26 @@
pkgs, pkgs,
modulesPath, modulesPath,
... ...
}: { }:
{
imports = [ imports = [
(modulesPath + "/installer/scan/not-detected.nix") (modulesPath + "/installer/scan/not-detected.nix")
]; ];
boot = { boot = {
initrd = { initrd = {
availableKernelModules = ["xhci_pci" "ahci" "nvme" "usb_storage" "usbhid" "sd_mod"]; availableKernelModules = [
kernelModules = []; "xhci_pci"
"ahci"
"nvme"
"usb_storage"
"usbhid"
"sd_mod"
];
kernelModules = [ ];
}; };
kernelModules = ["kvm-intel"]; kernelModules = [ "kvm-intel" ];
extraModulePackages = []; extraModulePackages = [ ];
}; };
fileSystems."/" = { fileSystems."/" = {
@ -31,7 +39,7 @@
fsType = "vfat"; fsType = "vfat";
}; };
swapDevices = []; swapDevices = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking # Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's # (the default) this is the recommended approach. When using systemd-networkd it's

View file

@ -1,5 +1,5 @@
{ {
services.xserver.videoDrivers = ["nvidia"]; services.xserver.videoDrivers = [ "nvidia" ];
hardware.nvidia = { hardware.nvidia = {
prime = { prime = {
offload = { offload = {

655
flake.lock generated
View file

@ -127,30 +127,6 @@
"type": "github" "type": "github"
} }
}, },
"attic": {
"inputs": {
"crane": "crane",
"flake-compat": "flake-compat_2",
"flake-parts": "flake-parts",
"nix-github-actions": "nix-github-actions",
"nixpkgs": "nixpkgs",
"nixpkgs-stable": "nixpkgs-stable"
},
"locked": {
"lastModified": 1756403898,
"narHash": "sha256-S4SJDmVTtbcXaJkYrMFkcA5SDrpfRHlBbzwp6IRRPAw=",
"owner": "zhaofengli",
"repo": "attic",
"rev": "2524dd1c007bc7a0a9e9c863a1b02de8d54b319b",
"type": "github"
},
"original": {
"owner": "zhaofengli",
"ref": "main",
"repo": "attic",
"type": "github"
}
},
"base16": { "base16": {
"inputs": { "inputs": {
"fromYaml": "fromYaml" "fromYaml": "fromYaml"
@ -234,68 +210,6 @@
} }
}, },
"cachix": { "cachix": {
"inputs": {
"devenv": "devenv",
"flake-compat": "flake-compat_3",
"git-hooks": "git-hooks",
"nixpkgs": "nixpkgs_2"
},
"locked": {
"lastModified": 1756385612,
"narHash": "sha256-+NU5MMhuPHHRyvZZWNFG7zt+leRSPsJu1MwhOUzkPUk=",
"owner": "cachix",
"repo": "cachix",
"rev": "dc24688cd67518c3711d511fa369c0f5a131063a",
"type": "github"
},
"original": {
"owner": "cachix",
"ref": "master",
"repo": "cachix",
"type": "github"
}
},
"cachix_2": {
"inputs": {
"devenv": [
"continuwuity",
"cachix",
"devenv"
],
"flake-compat": [
"continuwuity",
"cachix",
"devenv"
],
"git-hooks": [
"continuwuity",
"cachix",
"devenv",
"git-hooks"
],
"nixpkgs": [
"continuwuity",
"cachix",
"devenv",
"nixpkgs"
]
},
"locked": {
"lastModified": 1748883665,
"narHash": "sha256-R0W7uAg+BLoHjMRMQ8+oiSbTq8nkGz5RDpQ+ZfxxP3A=",
"owner": "cachix",
"repo": "cachix",
"rev": "f707778d902af4d62d8dd92c269f8e70de09acbe",
"type": "github"
},
"original": {
"owner": "cachix",
"ref": "latest",
"repo": "cachix",
"type": "github"
}
},
"cachix_3": {
"inputs": { "inputs": {
"devenv": [ "devenv": [
"sdm845", "sdm845",
@ -411,30 +325,6 @@
"type": "github" "type": "github"
} }
}, },
"continuwuity": {
"inputs": {
"attic": "attic",
"cachix": "cachix",
"crane": "crane_2",
"fenix": "fenix",
"flake-compat": "flake-compat_4",
"flake-utils": "flake-utils_2",
"nix-filter": "nix-filter",
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1758231451,
"narHash": "sha256-/MFeLIHRdFsMmv3qT6G5K9o5gWg4e4vD1CAnfqenX9o=",
"path": "/home/quadradical/Documents/Code/continuwuity",
"type": "path"
},
"original": {
"path": "/home/quadradical/Documents/Code/continuwuity",
"type": "path"
}
},
"crane": { "crane": {
"locked": { "locked": {
"lastModified": 1751562746, "lastModified": 1751562746,
@ -450,37 +340,6 @@
"type": "github" "type": "github"
} }
}, },
"crane_2": {
"locked": {
"lastModified": 1757183466,
"narHash": "sha256-kTdCCMuRE+/HNHES5JYsbRHmgtr+l9mOtf5dpcMppVc=",
"owner": "ipetkov",
"repo": "crane",
"rev": "d599ae4847e7f87603e7082d73ca673aa93c916d",
"type": "github"
},
"original": {
"owner": "ipetkov",
"ref": "master",
"repo": "crane",
"type": "github"
}
},
"crane_3": {
"locked": {
"lastModified": 1751562746,
"narHash": "sha256-smpugNIkmDeicNz301Ll1bD7nFOty97T79m4GUMUczA=",
"owner": "ipetkov",
"repo": "crane",
"rev": "aed2020fd3dc26e1e857d4107a5a67a33ab6c1fd",
"type": "github"
},
"original": {
"owner": "ipetkov",
"repo": "crane",
"type": "github"
}
},
"crate2nix": { "crate2nix": {
"inputs": { "inputs": {
"cachix": [ "cachix": [
@ -581,40 +440,6 @@
"type": "github" "type": "github"
} }
}, },
"devenv": {
"inputs": {
"cachix": "cachix_2",
"flake-compat": [
"continuwuity",
"cachix",
"flake-compat"
],
"git-hooks": [
"continuwuity",
"cachix",
"git-hooks"
],
"nix": "nix",
"nixpkgs": [
"continuwuity",
"cachix",
"nixpkgs"
]
},
"locked": {
"lastModified": 1754404745,
"narHash": "sha256-BdbW/iTImczgcuATgQIa9sPGuYIBxVq2xqcvICsa2AQ=",
"owner": "cachix",
"repo": "devenv",
"rev": "6563b21105168f90394dfaf58284b078af2d7275",
"type": "github"
},
"original": {
"owner": "cachix",
"repo": "devenv",
"type": "github"
}
},
"devshell": { "devshell": {
"locked": { "locked": {
"lastModified": 1642188268, "lastModified": 1642188268,
@ -658,11 +483,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1757508292, "lastModified": 1758287904,
"narHash": "sha256-7lVWL5bC6xBIMWWDal41LlGAG+9u2zUorqo3QCUL4p4=", "narHash": "sha256-IGmaEf3Do8o5Cwp1kXBN1wQmZwQN3NLfq5t4nHtVtcU=",
"owner": "nix-community", "owner": "nix-community",
"repo": "disko", "repo": "disko",
"rev": "146f45bee02b8bd88812cfce6ffc0f933788875a", "rev": "67ff9807dd148e704baadbd4fd783b54282ca627",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -718,35 +543,12 @@
} }
}, },
"fenix": { "fenix": {
"inputs": {
"nixpkgs": [
"continuwuity",
"nixpkgs"
],
"rust-analyzer-src": "rust-analyzer-src"
},
"locked": {
"lastModified": 1757400094,
"narHash": "sha256-5Rcs6juMoMTaMJSR1glravl4QB9yLAFBD8s7KLi4kdQ=",
"owner": "nix-community",
"repo": "fenix",
"rev": "0682b9b518792c9428865c511a4c40c9ad85c243",
"type": "github"
},
"original": {
"owner": "nix-community",
"ref": "main",
"repo": "fenix",
"type": "github"
}
},
"fenix_2": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
"sdm845", "sdm845",
"nixpkgs" "nixpkgs"
], ],
"rust-analyzer-src": "rust-analyzer-src_2" "rust-analyzer-src": "rust-analyzer-src"
}, },
"locked": { "locked": {
"lastModified": 1752302273, "lastModified": 1752302273,
@ -765,11 +567,11 @@
"firefox-gnome-theme": { "firefox-gnome-theme": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1756083905, "lastModified": 1758112371,
"narHash": "sha256-UqYGTBgI5ypGh0Kf6zZjom/vABg7HQocB4gmxzl12uo=", "narHash": "sha256-lizRM2pj6PHrR25yimjyFn04OS4wcdbc38DCdBVa2rk=",
"owner": "rafaelmardojai", "owner": "rafaelmardojai",
"repo": "firefox-gnome-theme", "repo": "firefox-gnome-theme",
"rev": "b655eaf16d4cbec9c3472f62eee285d4b419a808", "rev": "0909cfe4a2af8d358ad13b20246a350e14c2473d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -812,11 +614,11 @@
"flake-compat_2": { "flake-compat_2": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1747046372, "lastModified": 1641205782,
"narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=", "narHash": "sha256-4jY7RCWUoZ9cKD8co0/4tFARpWB+57+r1bLLvXNJliY=",
"owner": "edolstra", "owner": "edolstra",
"repo": "flake-compat", "repo": "flake-compat",
"rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885", "rev": "b7547d3eed6f32d06102ead8991ec52ab0a4f1a7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -841,102 +643,7 @@
"type": "github" "type": "github"
} }
}, },
"flake-compat_4": {
"flake": false,
"locked": {
"lastModified": 1747046372,
"narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885",
"type": "github"
},
"original": {
"owner": "edolstra",
"ref": "master",
"repo": "flake-compat",
"type": "github"
}
},
"flake-compat_5": {
"flake": false,
"locked": {
"lastModified": 1641205782,
"narHash": "sha256-4jY7RCWUoZ9cKD8co0/4tFARpWB+57+r1bLLvXNJliY=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "b7547d3eed6f32d06102ead8991ec52ab0a4f1a7",
"type": "github"
},
"original": {
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
"flake-compat_6": {
"flake": false,
"locked": {
"lastModified": 1747046372,
"narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885",
"type": "github"
},
"original": {
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
"flake-parts": { "flake-parts": {
"inputs": {
"nixpkgs-lib": [
"continuwuity",
"attic",
"nixpkgs"
]
},
"locked": {
"lastModified": 1751413152,
"narHash": "sha256-Tyw1RjYEsp5scoigs1384gIg6e0GoBVjms4aXFfRssQ=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "77826244401ea9de6e3bac47c2db46005e1f30b5",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-parts_2": {
"inputs": {
"nixpkgs-lib": [
"continuwuity",
"cachix",
"devenv",
"nix",
"nixpkgs"
]
},
"locked": {
"lastModified": 1733312601,
"narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-parts_3": {
"inputs": { "inputs": {
"nixpkgs-lib": "nixpkgs-lib" "nixpkgs-lib": "nixpkgs-lib"
}, },
@ -954,7 +661,7 @@
"type": "github" "type": "github"
} }
}, },
"flake-parts_4": { "flake-parts_2": {
"inputs": { "inputs": {
"nixpkgs-lib": "nixpkgs-lib_2" "nixpkgs-lib": "nixpkgs-lib_2"
}, },
@ -972,7 +679,7 @@
"type": "github" "type": "github"
} }
}, },
"flake-parts_5": { "flake-parts_3": {
"inputs": { "inputs": {
"nixpkgs-lib": "nixpkgs-lib_3" "nixpkgs-lib": "nixpkgs-lib_3"
}, },
@ -990,7 +697,7 @@
"type": "github" "type": "github"
} }
}, },
"flake-parts_6": { "flake-parts_4": {
"inputs": { "inputs": {
"nixpkgs-lib": "nixpkgs-lib_4" "nixpkgs-lib": "nixpkgs-lib_4"
}, },
@ -1008,7 +715,7 @@
"type": "github" "type": "github"
} }
}, },
"flake-parts_7": { "flake-parts_5": {
"inputs": { "inputs": {
"nixpkgs-lib": [ "nixpkgs-lib": [
"sdm845", "sdm845",
@ -1029,7 +736,7 @@
"type": "github" "type": "github"
} }
}, },
"flake-parts_8": { "flake-parts_6": {
"inputs": { "inputs": {
"nixpkgs-lib": [ "nixpkgs-lib": [
"stylix", "stylix",
@ -1118,30 +825,11 @@
}, },
"original": { "original": {
"owner": "numtide", "owner": "numtide",
"ref": "main",
"repo": "flake-utils", "repo": "flake-utils",
"type": "github" "type": "github"
} }
}, },
"flake-utils_3": { "flake-utils_3": {
"inputs": {
"systems": "systems_4"
},
"locked": {
"lastModified": 1731533236,
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_4": {
"inputs": { "inputs": {
"systems": [ "systems": [
"sdm845", "sdm845",
@ -1223,34 +911,6 @@
"type": "github" "type": "github"
} }
}, },
"git-hooks": {
"inputs": {
"flake-compat": [
"continuwuity",
"cachix",
"flake-compat"
],
"gitignore": "gitignore",
"nixpkgs": [
"continuwuity",
"cachix",
"nixpkgs"
]
},
"locked": {
"lastModified": 1750779888,
"narHash": "sha256-wibppH3g/E2lxU43ZQHC5yA/7kIKLGxVEnsnVK1BtRg=",
"owner": "cachix",
"repo": "git-hooks.nix",
"rev": "16ec914f6fb6f599ce988427d9d94efddf25fe6d",
"type": "github"
},
"original": {
"owner": "cachix",
"repo": "git-hooks.nix",
"type": "github"
}
},
"git-hooks-nix": { "git-hooks-nix": {
"inputs": { "inputs": {
"flake-compat": [ "flake-compat": [
@ -1280,29 +940,6 @@
"type": "github" "type": "github"
} }
}, },
"gitignore": {
"inputs": {
"nixpkgs": [
"continuwuity",
"cachix",
"git-hooks",
"nixpkgs"
]
},
"locked": {
"lastModified": 1709087332,
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
"owner": "hercules-ci",
"repo": "gitignore.nix",
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "gitignore.nix",
"type": "github"
}
},
"gitignore-nix": { "gitignore-nix": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@ -1405,11 +1042,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1757809953, "lastModified": 1758545873,
"narHash": "sha256-29mlXbfAJhz9cWVrPP4STvVPDVZFCfCOmaIN5lFJa+Y=", "narHash": "sha256-0VP5cVd6DyibHNPC/IJ5Ut+KuNYUeKmr5ltzf+IcpjA=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "17a10049486f6698fca32097d8f52c0c895542b0", "rev": "de5369834ff1f75246c46be89ef993392e961c26",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1582,7 +1219,7 @@
}, },
"lasuite-docs-proxy": { "lasuite-docs-proxy": {
"inputs": { "inputs": {
"flake-parts": "flake-parts_4", "flake-parts": "flake-parts_2",
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
] ]
@ -1652,7 +1289,7 @@
}, },
"matrixoidc": { "matrixoidc": {
"inputs": { "inputs": {
"flake-parts": "flake-parts_5", "flake-parts": "flake-parts_3",
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
] ]
@ -1847,7 +1484,7 @@
}, },
"nexusbot": { "nexusbot": {
"inputs": { "inputs": {
"flake-parts": "flake-parts_6", "flake-parts": "flake-parts_4",
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
] ]
@ -1914,53 +1551,6 @@
"type": "github" "type": "github"
} }
}, },
"nix": {
"inputs": {
"flake-compat": [
"continuwuity",
"cachix",
"devenv",
"flake-compat"
],
"flake-parts": "flake-parts_2",
"git-hooks-nix": [
"continuwuity",
"cachix",
"devenv",
"git-hooks"
],
"nixpkgs": [
"continuwuity",
"cachix",
"devenv",
"nixpkgs"
],
"nixpkgs-23-11": [
"continuwuity",
"cachix",
"devenv"
],
"nixpkgs-regression": [
"continuwuity",
"cachix",
"devenv"
]
},
"locked": {
"lastModified": 1752773918,
"narHash": "sha256-dOi/M6yNeuJlj88exI+7k154z+hAhFcuB8tZktiW7rg=",
"owner": "cachix",
"repo": "nix",
"rev": "031c3cf42d2e9391eee373507d8c12e0f9606779",
"type": "github"
},
"original": {
"owner": "cachix",
"ref": "devenv-2.30",
"repo": "nix",
"type": "github"
}
},
"nix-alien": { "nix-alien": {
"inputs": { "inputs": {
"flake-compat": [ "flake-compat": [
@ -1991,22 +1581,6 @@
} }
}, },
"nix-filter": { "nix-filter": {
"locked": {
"lastModified": 1731533336,
"narHash": "sha256-oRam5PS1vcrr5UPgALW0eo1m/5/pls27Z/pabHNy2Ms=",
"owner": "numtide",
"repo": "nix-filter",
"rev": "f7653272fd234696ae94229839a99b73c9ab7de0",
"type": "github"
},
"original": {
"owner": "numtide",
"ref": "main",
"repo": "nix-filter",
"type": "github"
}
},
"nix-filter_2": {
"locked": { "locked": {
"lastModified": 1731533336, "lastModified": 1731533336,
"narHash": "sha256-oRam5PS1vcrr5UPgALW0eo1m/5/pls27Z/pabHNy2Ms=", "narHash": "sha256-oRam5PS1vcrr5UPgALW0eo1m/5/pls27Z/pabHNy2Ms=",
@ -2071,28 +1645,6 @@
} }
}, },
"nix-github-actions": { "nix-github-actions": {
"inputs": {
"nixpkgs": [
"continuwuity",
"attic",
"nixpkgs"
]
},
"locked": {
"lastModified": 1737420293,
"narHash": "sha256-F1G5ifvqTpJq7fdkT34e/Jy9VCyzd5XfJ9TO8fHhJWE=",
"owner": "nix-community",
"repo": "nix-github-actions",
"rev": "f4158fa080ef4503c8f4c820967d946c2af31ec9",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "nix-github-actions",
"type": "github"
}
},
"nix-github-actions_2": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
"run0-sudo-shim", "run0-sudo-shim",
@ -2113,7 +1665,7 @@
"type": "github" "type": "github"
} }
}, },
"nix-github-actions_3": { "nix-github-actions_2": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
"sdm845", "sdm845",
@ -2157,11 +1709,11 @@
}, },
"nix-maid": { "nix-maid": {
"locked": { "locked": {
"lastModified": 1757070786, "lastModified": 1758537560,
"narHash": "sha256-CD5lOndYyqeGWaH4MD/z5ZFMdcCzOudfuOdMw4MyVRk=", "narHash": "sha256-eBG2JQoBaEKoEW/Gqe2BytcQsf72K1v7JdwsTMhs1Rc=",
"owner": "viperML", "owner": "viperML",
"repo": "nix-maid", "repo": "nix-maid",
"rev": "e4682858e1643653e888d2555ef67a603374f0b9", "rev": "d0f3b414df7515a20a0c711b00c0091af76b83ca",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -2173,7 +1725,7 @@
"nix-matrix-appservices": { "nix-matrix-appservices": {
"inputs": { "inputs": {
"devshell": "devshell", "devshell": "devshell",
"flake-compat": "flake-compat_5", "flake-compat": "flake-compat_2",
"nixlib": "nixlib", "nixlib": "nixlib",
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
@ -2416,16 +1968,16 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1751949589, "lastModified": 1758277210,
"narHash": "sha256-mgFxAPLWw0Kq+C8P3dRrZrOYEQXOtKuYVlo9xvPntt8=", "narHash": "sha256-iCGWf/LTy+aY0zFu8q12lK8KuZp7yvdhStehhyX1v8w=",
"owner": "NixOS", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "9b008d60392981ad674e04016d25619281550a9d", "rev": "8eaee110344796db060382e15d3af0a9fc396e0e",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NixOS", "owner": "nixos",
"ref": "nixpkgs-unstable", "ref": "nixos-unstable",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
@ -2446,18 +1998,18 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs-lasuite": { "nixpkgs-continuwuity": {
"locked": { "locked": {
"lastModified": 1757797355, "lastModified": 1758508970,
"narHash": "sha256-LXaQB8zGpk8navUjQkyJq6wg7PWy2Tbh2wIyq25f3aU=", "narHash": "sha256-uB/l48bwKtK+jnOD73xlYjYJqaFgqVPgIK/WHiHooZs=",
"owner": "Henry-Hiles", "owner": "savyajha",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "c112711203311c8ca77ed6c31ea7f3fd57fcdd80", "rev": "4b5ac6c684fefe8a332537b388d26eb6b8da3020",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "Henry-Hiles", "owner": "savyajha",
"ref": "bump-lasuite", "ref": "continuwuity",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
@ -2555,22 +2107,6 @@
} }
}, },
"nixpkgs-stable": { "nixpkgs-stable": {
"locked": {
"lastModified": 1751741127,
"narHash": "sha256-t75Shs76NgxjZSgvvZZ9qOmz5zuBE8buUaYD28BMTxg=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "29e290002bfff26af1db6f64d070698019460302",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-25.05",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-stable_2": {
"locked": { "locked": {
"lastModified": 1752162966, "lastModified": 1752162966,
"narHash": "sha256-3MxxkU8ZXMHXcbFz7UE4M6qnIPTYGcE/7EMqlZNnVDE=", "narHash": "sha256-3MxxkU8ZXMHXcbFz7UE4M6qnIPTYGcE/7EMqlZNnVDE=",
@ -2602,38 +2138,6 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_2": {
"locked": {
"lastModified": 1754214453,
"narHash": "sha256-Q/I2xJn/j1wpkGhWkQnm20nShYnG7TI99foDBpXm1SY=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "5b09dc45f24cf32316283e62aec81ffee3c3e376",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_3": {
"locked": {
"lastModified": 1757745802,
"narHash": "sha256-hLEO2TPj55KcUFUU1vgtHE9UEIOjRcH/4QbmfHNF820=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "c23193b943c6c689d70ee98ce3128239ed9e32d1",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nur": { "nur": {
"inputs": { "inputs": {
"flake-parts": [ "flake-parts": [
@ -2695,11 +2199,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1750514805, "lastModified": 1758564854,
"narHash": "sha256-BcHbwm7cVfxb0ocicnn21PNE7ijyLlUZk1utzrR06Ys=", "narHash": "sha256-L4PAVBG994fWuN0ORTSffMGWTF0qYpZQ+Gy66TmkRmM=",
"ref": "refs/heads/master", "ref": "refs/heads/master",
"rev": "1bf1950bdea07f72b699ac105800f5bb437a70fd", "rev": "86b52a9ff6ac404d841f900d1ab4d4471ff6ca7d",
"revCount": 15, "revCount": 19,
"type": "git", "type": "git",
"url": "https://cgit.rory.gay/nix/OOYE-module.git" "url": "https://cgit.rory.gay/nix/OOYE-module.git"
}, },
@ -2877,10 +2381,9 @@
"inputs": { "inputs": {
"agenix": "agenix", "agenix": "agenix",
"agenix-cli": "agenix-cli", "agenix-cli": "agenix-cli",
"continuwuity": "continuwuity",
"disko": "disko", "disko": "disko",
"firefox-gnome-theme": "firefox-gnome-theme", "firefox-gnome-theme": "firefox-gnome-theme",
"flake-parts": "flake-parts_3", "flake-parts": "flake-parts",
"gnome-mobile": "gnome-mobile", "gnome-mobile": "gnome-mobile",
"home-manager": "home-manager_2", "home-manager": "home-manager_2",
"lasuite-docs-proxy": "lasuite-docs-proxy", "lasuite-docs-proxy": "lasuite-docs-proxy",
@ -2888,8 +2391,8 @@
"nexusbot": "nexusbot", "nexusbot": "nexusbot",
"nix-maid": "nix-maid", "nix-maid": "nix-maid",
"nix-matrix-appservices": "nix-matrix-appservices", "nix-matrix-appservices": "nix-matrix-appservices",
"nixpkgs": "nixpkgs_3", "nixpkgs": "nixpkgs",
"nixpkgs-lasuite": "nixpkgs-lasuite", "nixpkgs-continuwuity": "nixpkgs-continuwuity",
"ooye": "ooye", "ooye": "ooye",
"run0-sudo-shim": "run0-sudo-shim", "run0-sudo-shim": "run0-sudo-shim",
"sdm845": "sdm845", "sdm845": "sdm845",
@ -2899,8 +2402,8 @@
}, },
"run0-sudo-shim": { "run0-sudo-shim": {
"inputs": { "inputs": {
"flake-utils": "flake-utils_3", "flake-utils": "flake-utils_2",
"nix-github-actions": "nix-github-actions_2", "nix-github-actions": "nix-github-actions",
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
], ],
@ -2922,23 +2425,6 @@
} }
}, },
"rust-analyzer-src": { "rust-analyzer-src": {
"flake": false,
"locked": {
"lastModified": 1757362324,
"narHash": "sha256-/PAhxheUq4WBrW5i/JHzcCqK5fGWwLKdH6/Lu1tyS18=",
"owner": "rust-lang",
"repo": "rust-analyzer",
"rev": "9edc9cbe5d8e832b5864e09854fa94861697d2fd",
"type": "github"
},
"original": {
"owner": "rust-lang",
"ref": "nightly",
"repo": "rust-analyzer",
"type": "github"
}
},
"rust-analyzer-src_2": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1752262373, "lastModified": 1752262373,
@ -3002,20 +2488,20 @@
"ace-bot": "ace-bot", "ace-bot": "ace-bot",
"angrr": "angrr", "angrr": "angrr",
"blank": "blank", "blank": "blank",
"cachix": "cachix_3", "cachix": "cachix",
"commit-notifier": "commit-notifier", "commit-notifier": "commit-notifier",
"conf2nix": "conf2nix", "conf2nix": "conf2nix",
"crane": "crane_3", "crane": "crane",
"crate2nix": "crate2nix", "crate2nix": "crate2nix",
"deploy-rs": "deploy-rs", "deploy-rs": "deploy-rs",
"devshell": "devshell_2", "devshell": "devshell_2",
"disko": "disko_2", "disko": "disko_2",
"emacs-overlay": "emacs-overlay", "emacs-overlay": "emacs-overlay",
"fenix": "fenix_2", "fenix": "fenix",
"flake-compat": "flake-compat_6", "flake-compat": "flake-compat_3",
"flake-parts": "flake-parts_7", "flake-parts": "flake-parts_5",
"flake-schemas": "flake-schemas", "flake-schemas": "flake-schemas",
"flake-utils": "flake-utils_4", "flake-utils": "flake-utils_3",
"flake-utils-plus": "flake-utils-plus", "flake-utils-plus": "flake-utils-plus",
"flat-flake": "flat-flake", "flat-flake": "flat-flake",
"git-hooks-nix": "git-hooks-nix", "git-hooks-nix": "git-hooks-nix",
@ -3034,9 +2520,9 @@
"naersk": "naersk", "naersk": "naersk",
"niri-flake": "niri-flake", "niri-flake": "niri-flake",
"nix-alien": "nix-alien", "nix-alien": "nix-alien",
"nix-filter": "nix-filter_2", "nix-filter": "nix-filter",
"nix-gc-s3": "nix-gc-s3", "nix-gc-s3": "nix-gc-s3",
"nix-github-actions": "nix-github-actions_3", "nix-github-actions": "nix-github-actions_2",
"nix-index-database": "nix-index-database", "nix-index-database": "nix-index-database",
"nix-topology": "nix-topology", "nix-topology": "nix-topology",
"nixago": "nixago", "nixago": "nixago",
@ -3051,7 +2537,7 @@
], ],
"nixpkgs-latest": "nixpkgs-latest", "nixpkgs-latest": "nixpkgs-latest",
"nixpkgs-riscv": "nixpkgs-riscv", "nixpkgs-riscv": "nixpkgs-riscv",
"nixpkgs-stable": "nixpkgs-stable_2", "nixpkgs-stable": "nixpkgs-stable",
"nixpkgs-unstable-small": "nixpkgs-unstable-small", "nixpkgs-unstable-small": "nixpkgs-unstable-small",
"nvfetcher": "nvfetcher", "nvfetcher": "nvfetcher",
"oranc": "oranc", "oranc": "oranc",
@ -3062,7 +2548,7 @@
"preservation": "preservation", "preservation": "preservation",
"rust-overlay": "rust-overlay_2", "rust-overlay": "rust-overlay_2",
"sops-nix": "sops-nix", "sops-nix": "sops-nix",
"systems": "systems_5", "systems": "systems_4",
"treefmt-nix": "treefmt-nix_2", "treefmt-nix": "treefmt-nix_2",
"weird-deployer": "weird-deployer" "weird-deployer": "weird-deployer"
}, },
@ -3108,13 +2594,13 @@
"base16-helix": "base16-helix", "base16-helix": "base16-helix",
"base16-vim": "base16-vim", "base16-vim": "base16-vim",
"firefox-gnome-theme": "firefox-gnome-theme_2", "firefox-gnome-theme": "firefox-gnome-theme_2",
"flake-parts": "flake-parts_8", "flake-parts": "flake-parts_6",
"gnome-shell": "gnome-shell", "gnome-shell": "gnome-shell",
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
], ],
"nur": "nur", "nur": "nur",
"systems": "systems_6", "systems": "systems_5",
"tinted-foot": "tinted-foot", "tinted-foot": "tinted-foot",
"tinted-kitty": "tinted-kitty", "tinted-kitty": "tinted-kitty",
"tinted-schemes": "tinted-schemes", "tinted-schemes": "tinted-schemes",
@ -3122,11 +2608,11 @@
"tinted-zed": "tinted-zed" "tinted-zed": "tinted-zed"
}, },
"locked": { "locked": {
"lastModified": 1757360005, "lastModified": 1757956156,
"narHash": "sha256-VwzdFEQCpYMU9mc7BSQGQe5wA1MuTYPJnRc9TQCTMcM=", "narHash": "sha256-f0W7qbsCqpi6swQ5w8H+0YrAbNwsHgCFDkNRMTJjqrE=",
"owner": "danth", "owner": "danth",
"repo": "stylix", "repo": "stylix",
"rev": "834a743c11d66ea18e8c54872fbcc72ce48bc57f", "rev": "0ce0103b498bb22f899ed8862d8d7f9503ed9cdb",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -3210,21 +2696,6 @@
"type": "github" "type": "github"
} }
}, },
"systems_6": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"tinted-foot": { "tinted-foot": {
"flake": false, "flake": false,
"locked": { "locked": {

View file

@ -60,13 +60,16 @@
}; };
}; };
outputs = inputs: let outputs =
inputs:
let
lib = inputs.nixpkgs.lib; lib = inputs.nixpkgs.lib;
dirUtils = { dirUtils = {
opt = lib.optionals; opt = lib.optionals;
dirFiles = type: dir: lib.filter (lib.hasSuffix type) (lib.filesystem.listFilesRecursive dir); dirFiles = type: dir: lib.filter (lib.hasSuffix type) (lib.filesystem.listFilesRecursive dir);
}; };
system = info: system =
info:
lib.nixosSystem { lib.nixosSystem {
inherit (info) system; inherit (info) system;
specialArgs = { specialArgs = {
@ -78,7 +81,8 @@
localSystem = info.system; localSystem = info.system;
buildPlatform = "x86_64-linux"; buildPlatform = "x86_64-linux";
overlays = let overlays =
let
path = ./cross-overlays/${info.hostname}; path = ./cross-overlays/${info.hostname};
in in
dirUtils.opt (builtins.pathExists path) ( dirUtils.opt (builtins.pathExists path) (
@ -91,13 +95,14 @@
}; };
}; };
modules = let modules =
let
clientPath = ./clients/${info.hostname}; clientPath = ./clients/${info.hostname};
in in
with dirUtils; with dirUtils;
[ [
./wrappers/default.nix ./wrappers/default.nix
{networking.hostName = info.hostname;} { networking.hostName = info.hostname; }
inputs.agenix.nixosModules.default inputs.agenix.nixosModules.default
inputs.run0-sudo-shim.nixosModules.default inputs.run0-sudo-shim.nixosModules.default
] ]
@ -115,18 +120,20 @@
); );
}; };
in in
inputs.flake-parts.lib.mkFlake {inherit inputs;} { inputs.flake-parts.lib.mkFlake { inherit inputs; } {
systems = [ systems = [
"aarch64-linux" "aarch64-linux"
"x86_64-linux" "x86_64-linux"
]; ];
perSystem = {pkgs, ...}: { perSystem =
{ pkgs, ... }:
{
apps.image = { apps.image = {
type = "app"; type = "app";
program = pkgs.writeShellApplication { program = pkgs.writeShellApplication {
name = "image"; name = "image";
runtimeInputs = with pkgs; [nix-output-monitor]; runtimeInputs = with pkgs; [ nix-output-monitor ];
text = "nom build .#nixosConfigurations.\"$1\".config.system.build.image"; text = "nom build .#nixosConfigurations.\"$1\".config.system.build.image";
}; };
}; };

View file

@ -2,17 +2,16 @@
inputs, inputs,
dirUtils, dirUtils,
... ...
}: { }:
{
home-manager = { home-manager = {
useGlobalPkgs = true; useGlobalPkgs = true;
useUserPackages = true; useUserPackages = true;
extraSpecialArgs = {inherit inputs;}; extraSpecialArgs = { inherit inputs; };
users.quadradical.home = { users.quadradical.home = {
username = "quadradical"; username = "quadradical";
homeDirectory = "/home/quadradical"; homeDirectory = "/home/quadradical";
}; };
sharedModules = sharedModules = [ { home.stateVersion = "23.11"; } ] ++ dirUtils.dirFiles ".nix" ./home-manager;
[{home.stateVersion = "23.11";}]
++ dirUtils.dirFiles ".nix" ./home-manager;
}; };
} }

View file

@ -2,14 +2,17 @@
dirUtils, dirUtils,
lib, lib,
... ...
}: { }:
{
age = { age = {
identityPaths = [ identityPaths = [
"/home/quadradical/.ssh/id_ed25519" "/home/quadradical/.ssh/id_ed25519"
]; ];
secrets = lib.listToAttrs (map (path: { secrets = lib.listToAttrs (
map (path: {
name = lib.last (builtins.split "/" (toString path)); name = lib.last (builtins.split "/" (toString path));
value.file = path; value.file = path;
}) (dirUtils.dirFiles ".age" ../../secrets)); }) (dirUtils.dirFiles ".age" ../../secrets)
);
}; };
} }

View file

@ -1 +1,4 @@
{inputs, ...}: {environment.etc."backup".source = inputs.self;} { inputs, ... }:
{
environment.etc."backup".source = inputs.self;
}

View file

@ -2,4 +2,7 @@
lib, lib,
pkgs, pkgs,
... ...
}: {environment.shellAliases.cat = "${lib.getExe pkgs.bat} --theme Nord";} }:
{
environment.shellAliases.cat = "${lib.getExe pkgs.bat} --theme Nord";
}

View file

@ -2,9 +2,9 @@
services.dnsproxy = { services.dnsproxy = {
enable = true; enable = true;
settings = rec { settings = rec {
upstream = ["https://base.dns.mullvad.net/dns-query"]; upstream = [ "https://base.dns.mullvad.net/dns-query" ];
listen-addrs = ["127.0.0.1"]; listen-addrs = [ "127.0.0.1" ];
fallback = ["1.1.1.1"]; fallback = [ "1.1.1.1" ];
bootstrap = fallback; bootstrap = fallback;
}; };
}; };

View file

@ -1 +1,6 @@
{nix.settings.experimental-features = ["nix-command" "flakes"];} {
nix.settings.experimental-features = [
"nix-command"
"flakes"
];
}

View file

@ -2,4 +2,7 @@
lib, lib,
pkgs, pkgs,
... ...
}: {environment.shellAliases.ls = "${lib.getExe pkgs.eza} --all --icons --hyperlink --group-directories-first --color=always";} }:
{
environment.shellAliases.ls = "${lib.getExe pkgs.eza} --all --icons --hyperlink --group-directories-first --color=always";
}

View file

@ -2,10 +2,14 @@
pkgs, pkgs,
lib, lib,
... ...
}: { }:
environment.shellAliases.neofetch = let {
environment.shellAliases.neofetch =
let
color = "#4E94E4"; color = "#4E94E4";
in "${lib.getExe pkgs.fastfetch} --config ${pkgs.writers.writeJSON "fastfetch.json" { in
"${lib.getExe pkgs.fastfetch} --config ${
pkgs.writers.writeJSON "fastfetch.json" {
logo = { logo = {
height = 18; height = 18;
type = "chafa"; type = "chafa";
@ -94,5 +98,6 @@
"break" "break"
]; ];
}}"; }
}";
} }

View file

@ -1,4 +1,5 @@
{pkgs, ...}: { { pkgs, ... }:
{
programs.fish = { programs.fish = {
enable = true; enable = true;
interactiveShellInit = '' interactiveShellInit = ''
@ -7,6 +8,6 @@
''; '';
}; };
environment.shells = [pkgs.fish]; environment.shells = [ pkgs.fish ];
users.defaultUserShell = pkgs.fish; users.defaultUserShell = pkgs.fish;
} }

View file

@ -1 +1,4 @@
{pkgs, ...}: {environment.shellAliases.free = "${pkgs.procps}/bin/free -h";} { pkgs, ... }:
{
environment.shellAliases.free = "${pkgs.procps}/bin/free -h";
}

View file

@ -2,7 +2,8 @@
pkgs, pkgs,
lib, lib,
... ...
}: { }:
{
programs.git = { programs.git = {
enable = true; enable = true;
config = { config = {
@ -12,9 +13,9 @@
signingKey = builtins.elemAt (import ../../secrets/keys.nix) 0; signingKey = builtins.elemAt (import ../../secrets/keys.nix) 0;
}; };
url = { url = {
"git@github.com:".insteadOf = ["https://github.com"]; "git@github.com:".insteadOf = [ "https://github.com" ];
"git@codeberg.org:".insteadOf = ["https://codeberg.org"]; "git@codeberg.org:".insteadOf = [ "https://codeberg.org" ];
"git@git.federated.nexus:".insteadOf = ["https://git.federated.nexus"]; "git@git.federated.nexus:".insteadOf = [ "https://git.federated.nexus" ];
}; };
init.defaultBranch = "main"; init.defaultBranch = "main";
commit.gpgsign = true; commit.gpgsign = true;
@ -23,11 +24,13 @@
}; };
}; };
environment = { environment = {
systemPackages = [pkgs.gh]; systemPackages = [ pkgs.gh ];
shellAliases = let shellAliases =
let
gitExe = lib.meta.getExe pkgs.git; gitExe = lib.meta.getExe pkgs.git;
ghExe = lib.meta.getExe pkgs.gh; ghExe = lib.meta.getExe pkgs.gh;
in { in
{
clone = "${ghExe} repo clone"; clone = "${ghExe} repo clone";
create = "${ghExe} repo create"; create = "${ghExe} repo create";

View file

@ -1,6 +1,7 @@
{pkgs, ...}: { { pkgs, ... }:
{
environment = { environment = {
systemPackages = [pkgs.micro]; systemPackages = [ pkgs.micro ];
sessionVariables.EDITOR = "micro"; sessionVariables.EDITOR = "micro";
}; };
} }

View file

@ -1,4 +1,5 @@
{pkgs, ...}: { { pkgs, ... }:
{
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
fd fd
glib glib

View file

@ -1 +1 @@
{system.stateVersion = "23.11";} { system.stateVersion = "23.11"; }

View file

@ -1 +1,4 @@
{pkgs, ...}: {environment.shellAliases.rm = "${pkgs.glib}/bin/gio trash";} { pkgs, ... }:
{
environment.shellAliases.rm = "${pkgs.glib}/bin/gio trash";
}

View file

@ -1,4 +1,5 @@
{config, ...}: { { config, ... }:
{
users = { users = {
mutableUsers = false; mutableUsers = false;
users = { users = {
@ -7,7 +8,7 @@
isNormalUser = true; isNormalUser = true;
hashedPasswordFile = config.age.secrets."password.age".path; hashedPasswordFile = config.age.secrets."password.age".path;
description = "QuadRadical"; description = "QuadRadical";
extraGroups = ["wheel"]; extraGroups = [ "wheel" ];
}; };
}; };
}; };

View file

@ -1,3 +1,4 @@
{pkgs, ...}: { { pkgs, ... }:
services.udev.packages = [pkgs.android-udev-rules]; {
services.udev.packages = [ pkgs.android-udev-rules ];
} }

View file

@ -4,6 +4,6 @@
systemd-boot.enable = true; systemd-boot.enable = true;
efi.canTouchEfiVariables = true; efi.canTouchEfiVariables = true;
}; };
kernelParams = ["sysrq_always_enabled=1"]; kernelParams = [ "sysrq_always_enabled=1" ];
}; };
} }

View file

@ -1,6 +1,7 @@
{pkgs, ...}: { { pkgs, ... }:
{
fonts = { fonts = {
packages = with pkgs; [twitter-color-emoji]; packages = with pkgs; [ twitter-color-emoji ];
fontconfig.defaultFonts.emoji = ["Twitter Color Emoji"]; fontconfig.defaultFonts.emoji = [ "Twitter Color Emoji" ];
}; };
} }

View file

@ -1 +1 @@
{environment.etc."launch-rl.bat".source = ./launch-rl.bat;} { environment.etc."launch-rl.bat".source = ./launch-rl.bat; }

View file

@ -1,6 +1,7 @@
{pkgs, ...}: { { pkgs, ... }:
{
environment = { environment = {
systemPackages = [pkgs.mangohud]; systemPackages = [ pkgs.mangohud ];
sessionVariables.MANGOHUD_CONFIGFILE = ./mangohud.conf; sessionVariables.MANGOHUD_CONFIGFILE = ./mangohud.conf;
}; };
} }

View file

@ -1 +1 @@
{programs.noisetorch.enable = true;} { programs.noisetorch.enable = true; }

View file

@ -1,7 +1,8 @@
{pkgs, ...}: { { pkgs, ... }:
{
programs.obs-studio = { programs.obs-studio = {
enable = true; enable = true;
plugins = with pkgs.obs-studio-plugins; [obs-pipewire-audio-capture]; plugins = with pkgs.obs-studio-plugins; [ obs-pipewire-audio-capture ];
enableVirtualCamera = true; enableVirtualCamera = true;
}; };
} }

View file

@ -1,4 +1,5 @@
{pkgs, ...}: { { pkgs, ... }:
{
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
gimp gimp
gale gale

View file

@ -1,4 +1,5 @@
{pkgs, ...}: { { pkgs, ... }:
{
services.ratbagd.enable = true; services.ratbagd.enable = true;
environment.systemPackages = [pkgs.piper]; environment.systemPackages = [ pkgs.piper ];
} }

View file

@ -1,17 +1,20 @@
{pkgs, ...}: { { pkgs, ... }:
{
hardware.keyboard.qmk.enable = true; hardware.keyboard.qmk.enable = true;
environment.systemPackages = [ environment.systemPackages = [
(pkgs.qmk.overrideAttrs (oldAttrs: { (pkgs.qmk.overrideAttrs (oldAttrs: {
propagatedBuildInputs = (oldAttrs.propagatedBuildInputs or []) ++ [pkgs.python3.pkgs.appdirs]; propagatedBuildInputs = (oldAttrs.propagatedBuildInputs or [ ]) ++ [ pkgs.python3.pkgs.appdirs ];
})) }))
]; ];
users.users.quadradical.maid.file.xdg_config."qmk/qmk.ini".source = toString ((pkgs.formats.ini {}).generate "qmk.ini" { users.users.quadradical.maid.file.xdg_config."qmk/qmk.ini".source = toString (
(pkgs.formats.ini { }).generate "qmk.ini" {
user = { user = {
qmk_home = "/home/quadradical/Documents/Code/qmk_firmware"; qmk_home = "/home/quadradical/Documents/Code/qmk_firmware";
overlay_dir = "/home/quadradical/Documents/Code/qmk_userspace"; overlay_dir = "/home/quadradical/Documents/Code/qmk_userspace";
keyboard = "keychron/v1_max/ansi_encoder"; keyboard = "keychron/v1_max/ansi_encoder";
keymap = "default"; keymap = "default";
}; };
}); }
);
} }

View file

@ -1,6 +1,7 @@
{pkgs, ...}: { { pkgs, ... }:
{
programs.steam = { programs.steam = {
enable = true; enable = true;
extraCompatPackages = [pkgs.proton-ge-bin]; extraCompatPackages = [ pkgs.proton-ge-bin ];
}; };
} }

View file

@ -1,8 +1,9 @@
{pkgs, ...}: { { pkgs, ... }:
{
virtualisation = { virtualisation = {
libvirtd.enable = true; libvirtd.enable = true;
spiceUSBRedirection.enable = true; spiceUSBRedirection.enable = true;
}; };
programs.virt-manager.enable = true; programs.virt-manager.enable = true;
environment.systemPackages = [pkgs.quickemu]; environment.systemPackages = [ pkgs.quickemu ];
} }

View file

@ -2,11 +2,13 @@
lib, lib,
pkgs, pkgs,
... ...
}: { }:
{
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
(vscode-with-extensions.override { (vscode-with-extensions.override {
vscode = vscodium; vscode = vscodium;
vscodeExtensions = with vscode-extensions; vscodeExtensions =
with vscode-extensions;
[ [
mkhl.direnv mkhl.direnv
eamodio.gitlens eamodio.gitlens
@ -39,7 +41,7 @@
users.users.quadradical.maid.file.xdg_config = { users.users.quadradical.maid.file.xdg_config = {
"VSCodium/User/settings.json".text = builtins.toJSON { "VSCodium/User/settings.json".text = builtins.toJSON {
"arb-editor.suppressedWarnings" = ["missing_metadata_for_key"]; "arb-editor.suppressedWarnings" = [ "missing_metadata_for_key" ];
"dart.debugExternalPackageLibraries" = true; "dart.debugExternalPackageLibraries" = true;
"dart.debugSdkLibraries" = true; "dart.debugSdkLibraries" = true;
"redhat.telemetry.enabled" = false; "redhat.telemetry.enabled" = false;
@ -67,7 +69,7 @@
"window.menuBarVisibility" = "compact"; "window.menuBarVisibility" = "compact";
"git.confirmSync" = false; "git.confirmSync" = false;
"editor.detectIndentation" = false; "editor.detectIndentation" = false;
"errorLens.enabledDiagnosticLevels" = ["error"]; "errorLens.enabledDiagnosticLevels" = [ "error" ];
"git.mergeEditor" = true; "git.mergeEditor" = true;
"terminal.integrated.shellIntegration.enabled" = false; "terminal.integrated.shellIntegration.enabled" = false;
"gitlens.currentLine.enabled" = false; "gitlens.currentLine.enabled" = false;
@ -101,10 +103,12 @@
"nix.serverPath" = lib.meta.getExe pkgs.nil; "nix.serverPath" = lib.meta.getExe pkgs.nil;
"nix.serverSettings" = { "nix.serverSettings" = {
"nil" = { "nil" = {
"formatting" = {"command" = [(lib.getExe pkgs.nixfmt)];}; "formatting" = {
"command" = [ (lib.getExe pkgs.nixfmt) ];
}; };
}; };
"indentRainbow.ignoreErrorLanguages" = ["*"]; };
"indentRainbow.ignoreErrorLanguages" = [ "*" ];
"dart.runPubGetOnPubspecChanges" = "never"; "dart.runPubGetOnPubspecChanges" = "never";
}; };

View file

@ -1,4 +1,5 @@
{pkgs, ...}: { { pkgs, ... }:
environment.systemPackages = [pkgs.adw-gtk3]; {
environment.systemPackages = [ pkgs.adw-gtk3 ];
users.users.quadradical.maid.gsettings.settings.org.gnome.desktop.interface.gtk-theme = "adw-gtk3"; users.users.quadradical.maid.gsettings.settings.org.gnome.desktop.interface.gtk-theme = "adw-gtk3";
} }

View file

@ -1,10 +1,14 @@
{pkgs, ...}: { { pkgs, ... }:
{
fonts = { fonts = {
packages = with pkgs; [inter nerd-fonts.fira-code]; packages = with pkgs; [
inter
nerd-fonts.fira-code
];
fontconfig.defaultFonts = rec { fontconfig.defaultFonts = rec {
serif = ["Inter"]; serif = [ "Inter" ];
sansSerif = serif; sansSerif = serif;
monospace = ["FiraCode Nerd Font"]; monospace = [ "FiraCode Nerd Font" ];
}; };
}; };
} }

View file

@ -7,7 +7,11 @@
users.users.quadradical.maid.gsettings.settings.org.gnome = { users.users.quadradical.maid.gsettings.settings.org.gnome = {
desktop = { desktop = {
wm.preferences.focus-mode = "mouse"; wm.preferences.focus-mode = "mouse";
search-providers.sort-order = ["org.gnome.Contacts.desktop" "org.gnome.Documents.desktop" "org.gnome.Nautilus.desktop"]; search-providers.sort-order = [
"org.gnome.Contacts.desktop"
"org.gnome.Documents.desktop"
"org.gnome.Nautilus.desktop"
];
background = rec { background = rec {
picture-uri = "file://${./background.jpg}"; picture-uri = "file://${./background.jpg}";
@ -41,11 +45,15 @@
shell = { shell = {
remember-mount-password = true; remember-mount-password = true;
favorite-apps = ["librewolf.desktop" "org.gnome.Geary.desktop" "org.gnome.Nautilus.desktop"]; favorite-apps = [
"librewolf.desktop"
"org.gnome.Geary.desktop"
"org.gnome.Nautilus.desktop"
];
}; };
mutter.edge-tiling = false; mutter.edge-tiling = false;
system.location.enabled = true; system.location.enabled = true;
settings-daemon.plugins.media-keys.calculator-static = []; settings-daemon.plugins.media-keys.calculator-static = [ ];
}; };
} }

View file

@ -2,7 +2,8 @@
pkgs, pkgs,
lib, lib,
... ...
}: { }:
{
environment = { environment = {
systemPackages = with pkgs.gnomeExtensions; [ systemPackages = with pkgs.gnomeExtensions; [
valent valent
@ -102,8 +103,8 @@
allow-zero-brightness = true; allow-zero-brightness = true;
button-location = 1; button-location = 1;
ddcutil-binary-path = lib.meta.getExe pkgs.ddcutil; ddcutil-binary-path = lib.meta.getExe pkgs.ddcutil;
decrease-brightness-shortcut = ["XF86MonBrightnessDown"]; decrease-brightness-shortcut = [ "XF86MonBrightnessDown" ];
increase-brightness-shortcut = ["XF86MonBrightnessUp"]; increase-brightness-shortcut = [ "XF86MonBrightnessUp" ];
hide-system-indicator = true; hide-system-indicator = true;
only-all-slider = true; only-all-slider = true;
position-system-menu = 3.0; position-system-menu = 3.0;

View file

@ -1 +1 @@
{hardware.graphics.enable = true;} { hardware.graphics.enable = true; }

View file

@ -4,11 +4,13 @@
config, config,
inputs, inputs,
... ...
}: { }:
environment.etc."librewolf/policies/policies.json".source = config.environment.etc."firefox/policies/policies.json".source; {
environment.etc."librewolf/policies/policies.json".source =
config.environment.etc."firefox/policies/policies.json".source;
users.users.quadradical.maid.file.home = { users.users.quadradical.maid.file.home = {
".librewolf/profiles.ini".source = (pkgs.formats.ini {}).generate "profiles.ini" { ".librewolf/profiles.ini".source = (pkgs.formats.ini { }).generate "profiles.ini" {
General = { General = {
StartWithLastProfile = 1; StartWithLastProfile = 1;
}; };
@ -20,19 +22,23 @@
}; };
}; };
".librewolf/quadradical/chrome".source = ".librewolf/quadradical/chrome".source = toString (
toString pkgs.symlinkJoin {
(pkgs.symlinkJoin {
name = "firefox-gnome-theme"; name = "firefox-gnome-theme";
paths = [./. inputs.firefox-gnome-theme]; paths = [
}); ./.
inputs.firefox-gnome-theme
];
}
);
}; };
programs.firefox = { programs.firefox = {
enable = true; enable = true;
package = pkgs.librewolf; package = pkgs.librewolf;
autoConfig = lib.concatStringsSep "\n" (lib.mapAttrsToList (pref: value: "lockPref(\"${pref}\", ${builtins.toJSON value});") { autoConfig = lib.concatStringsSep "\n" (
lib.mapAttrsToList (pref: value: "lockPref(\"${pref}\", ${builtins.toJSON value});") {
"webgl.disabled" = false; "webgl.disabled" = false;
"browser.tabs.groups.enabled" = false; "browser.tabs.groups.enabled" = false;
"media.peerconnection.enabled" = true; "media.peerconnection.enabled" = true;
@ -43,8 +49,10 @@
"svg.context-properties.content.enabled" = true; "svg.context-properties.content.enabled" = true;
"toolkit.legacyUserProfileCustomizations.stylesheets" = true; "toolkit.legacyUserProfileCustomizations.stylesheets" = true;
"privacy.fingerprintingProtection.overrides" = "+AllTargets,-CSSPrefersColorScheme,-JSDateTimeUTC"; "privacy.fingerprintingProtection.overrides" = "+AllTargets,-CSSPrefersColorScheme,-JSDateTimeUTC";
"browser.uiCustomization.state" = "{\"placements\":{\"widget-overflow-fixed-list\":[],\"unified-extensions-area\":[],\"nav-bar\":[\"back-button\",\"forward-button\",\"stop-reload-button\",\"urlbar-container\",\"downloads-button\"],\"toolbar-menubar\":[\"menubar-items\"],\"TabsToolbar\":[\"tabbrowser-tabs\",\"new-tab-button\",\"alltabs-button\"],\"PersonalToolbar\":[\"personal-bookmarks\"]},\"seen\":[\"save-to-pocket-button\",\"developer-button\"],\"dirtyAreaCache\":[\"nav-bar\",\"PersonalToolbar\",\"toolbar-menubar\",\"TabsToolbar\"],\"currentVersion\":19}"; "browser.uiCustomization.state" =
}); "{\"placements\":{\"widget-overflow-fixed-list\":[],\"unified-extensions-area\":[],\"nav-bar\":[\"back-button\",\"forward-button\",\"stop-reload-button\",\"urlbar-container\",\"downloads-button\"],\"toolbar-menubar\":[\"menubar-items\"],\"TabsToolbar\":[\"tabbrowser-tabs\",\"new-tab-button\",\"alltabs-button\"],\"PersonalToolbar\":[\"personal-bookmarks\"]},\"seen\":[\"save-to-pocket-button\",\"developer-button\"],\"dirtyAreaCache\":[\"nav-bar\",\"PersonalToolbar\",\"toolbar-menubar\",\"TabsToolbar\"],\"currentVersion\":19}";
}
);
policies = { policies = {
ShowHomeButton = false; ShowHomeButton = false;
@ -115,13 +123,17 @@
Locked = true; Locked = true;
}; };
ExtensionSettings = lib.mkForce (lib.listToAttrs (map (id: { ExtensionSettings = lib.mkForce (
lib.listToAttrs (
map
(id: {
name = id; name = id;
value = { value = {
install_url = "https://addons.mozilla.org/en-US/firefox/downloads/latest/${id}/latest.xpi"; install_url = "https://addons.mozilla.org/en-US/firefox/downloads/latest/${id}/latest.xpi";
installation_mode = "force_installed"; installation_mode = "force_installed";
}; };
}) [ })
[
"historyblock@kain" "historyblock@kain"
"uBlock0@raymondhill.net" "uBlock0@raymondhill.net"
"sponsorBlocker@ajay.app" "sponsorBlocker@ajay.app"
@ -137,7 +149,9 @@
"{2327d818-55d3-441d-aea2-8b44aa2cb9aa}" # Toggle Website Colors "{2327d818-55d3-441d-aea2-8b44aa2cb9aa}" # Toggle Website Colors
"{a6c4a591-f1b2-4f03-b3ff-767e5bedf4e7}" # User-Agent Switcher and Manager "{a6c4a591-f1b2-4f03-b3ff-767e5bedf4e7}" # User-Agent Switcher and Manager
"enhancerforyoutube@maximerf.addons.mozilla.org" "enhancerforyoutube@maximerf.addons.mozilla.org"
])); ]
)
);
SearchEngines = { SearchEngines = {
Default = "Federated Nexus Search"; Default = "Federated Nexus Search";
@ -191,7 +205,11 @@
Alias = "hm"; Alias = "hm";
} }
]; ];
Remove = ["Bing" "LibRedirect" "Wikipedia (en)"]; Remove = [
"Bing"
"LibRedirect"
"Wikipedia (en)"
];
}; };
}; };
}; };

View file

@ -1 +1 @@
{networking.networkmanager.wifi.macAddress = "random";} { networking.networkmanager.wifi.macAddress = "random"; }

View file

@ -1 +1 @@
{environment.sessionVariables.NIXOS_OZONE_WL = "1";} { environment.sessionVariables.NIXOS_OZONE_WL = "1"; }

View file

@ -1,5 +1,6 @@
{pkgs, ...}: { { pkgs, ... }:
services.xserver.excludePackages = [pkgs.xterm]; {
services.xserver.excludePackages = [ pkgs.xterm ];
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
tuba tuba
gradia gradia

View file

@ -1,4 +1,5 @@
{pkgs, ...}: { { pkgs, ... }:
{
environment.systemPackages = [ environment.systemPackages = [
pkgs.ptyxis pkgs.ptyxis
]; ];
@ -10,7 +11,7 @@
users.users.quadradical.maid.gsettings.settings.org.gnome.Ptyxis = rec { users.users.quadradical.maid.gsettings.settings.org.gnome.Ptyxis = rec {
default-profile-uuid = "quadradical"; default-profile-uuid = "quadradical";
profile-uuids = [default-profile-uuid]; profile-uuids = [ default-profile-uuid ];
Profiles.${default-profile-uuid}.palette = "nord"; Profiles.${default-profile-uuid}.palette = "nord";
}; };
} }

View file

@ -1 +1 @@
{nixpkgs.config.allowBroken = true;} { nixpkgs.config.allowBroken = true; }

View file

@ -1 +1 @@
{documentation.man.generateCaches = false;} { documentation.man.generateCaches = false; }

View file

@ -1,4 +1,5 @@
{crossPkgs, ...}: { { crossPkgs, ... }:
{
nixpkgs.overlays = [ nixpkgs.overlays = [
(self: super: { (self: super: {
gnome-shell = crossPkgs.gnome-shell; gnome-shell = crossPkgs.gnome-shell;

View file

@ -5,10 +5,12 @@
config, config,
lib, lib,
... ...
}: let }:
let
efiArch = pkgs.stdenv.hostPlatform.efiArch; efiArch = pkgs.stdenv.hostPlatform.efiArch;
in { in
imports = ["${modulesPath}/image/repart.nix"]; {
imports = [ "${modulesPath}/image/repart.nix" ];
boot.loader.grub.enable = false; boot.loader.grub.enable = false;
systemd.repart = { systemd.repart = {
@ -41,9 +43,15 @@ in {
partitions = { partitions = {
"20-esp" = { "20-esp" = {
contents = { contents = {
"/EFI/EDK2-UEFI-SHELL/SHELL.EFI".source = "${crossPkgs.edk2-uefi-shell.overrideAttrs {env.NIX_CFLAGS_COMPILE = "-Wno-error=maybe-uninitialized";}}/shell.efi"; "/EFI/EDK2-UEFI-SHELL/SHELL.EFI".source = "${
"/EFI/BOOT/BOOT${lib.toUpper efiArch}.EFI".source = "${pkgs.systemd}/lib/systemd/boot/efi/systemd-boot${efiArch}.efi"; crossPkgs.edk2-uefi-shell.overrideAttrs {
"/EFI/Linux/${config.system.boot.loader.ukiFile}".source = "${config.system.build.uki}/${config.system.boot.loader.ukiFile}"; env.NIX_CFLAGS_COMPILE = "-Wno-error=maybe-uninitialized";
}
}/shell.efi";
"/EFI/BOOT/BOOT${lib.toUpper efiArch}.EFI".source =
"${pkgs.systemd}/lib/systemd/boot/efi/systemd-boot${efiArch}.efi";
"/EFI/Linux/${config.system.boot.loader.ukiFile}".source =
"${config.system.build.uki}/${config.system.boot.loader.ukiFile}";
"/loader/loader.conf".source = crossPkgs.writeText "loader.conf" '' "/loader/loader.conf".source = crossPkgs.writeText "loader.conf" ''
timeout 5 timeout 5
console-mode keep console-mode keep
@ -63,8 +71,8 @@ in {
}; };
}; };
"30-root" = { "30-root" = {
storePaths = [config.system.build.toplevel]; storePaths = [ config.system.build.toplevel ];
contents."/boot".source = crossPkgs.runCommand "boot" {} "mkdir $out"; contents."/boot".source = crossPkgs.runCommand "boot" { } "mkdir $out";
repartConfig = { repartConfig = {
Type = "root"; Type = "root";
Format = "ext4"; Format = "ext4";

View file

@ -1 +1 @@
{imports = [../server/ssh.nix];} { imports = [ ../server/ssh.nix ]; }

View file

@ -1,5 +1,9 @@
{modulesPath, ...}: { { modulesPath, ... }:
imports = [(modulesPath + "/installer/scan/not-detected.nix") (modulesPath + "/profiles/qemu-guest.nix")]; {
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
(modulesPath + "/profiles/qemu-guest.nix")
];
boot.loader.grub = { boot.loader.grub = {
enable = true; enable = true;
efiSupport = true; efiSupport = true;

View file

@ -1,5 +1,6 @@
{inputs, ...}: { { inputs, ... }:
imports = [inputs.disko.nixosModules.disko]; {
imports = [ inputs.disko.nixosModules.disko ];
disko.devices.disk.main = { disko.devices.disk.main = {
type = "disk"; type = "disk";
device = "/dev/sda"; device = "/dev/sda";
@ -17,7 +18,7 @@
type = "filesystem"; type = "filesystem";
format = "vfat"; format = "vfat";
mountpoint = "/boot"; mountpoint = "/boot";
mountOptions = ["umask=0077"]; mountOptions = [ "umask=0077" ];
}; };
}; };
root = { root = {

View file

@ -1,4 +1,5 @@
{pkgs, ...}: { { pkgs, ... }:
{
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
btop btop
]; ];

View file

@ -1,14 +1,15 @@
let let
port = 2222; port = 2222;
in { in
networking.firewall.allowedTCPPorts = [port]; {
networking.firewall.allowedTCPPorts = [ port ];
users.users.quadradical.openssh.authorizedKeys.keys = import ../../secrets/keys.nix; users.users.quadradical.openssh.authorizedKeys.keys = import ../../secrets/keys.nix;
services.openssh = { services.openssh = {
enable = true; enable = true;
ports = [port]; ports = [ port ];
settings = { settings = {
PasswordAuthentication = false; PasswordAuthentication = false;
AllowUsers = ["quadradical"]; AllowUsers = [ "quadradical" ];
PermitRootLogin = "no"; PermitRootLogin = "no";
}; };
}; };

View file

@ -1 +1 @@
{nix.settings.trusted-users = ["quadradical"];} { nix.settings.trusted-users = [ "quadradical" ]; }

View file

@ -1,5 +1,9 @@
with builtins; with builtins;
filter (line: isString line && stringLength line != 0) (split "\n" (readFile (fetchurl { filter (line: isString line && stringLength line != 0) (
split "\n" (
readFile (fetchurl {
url = "https://git.federated.nexus/Henry-Hiles.keys"; url = "https://git.federated.nexus/Henry-Hiles.keys";
sha256 = "1k73c228rgzq7ymf5vaj6wfqzkqm6yzq5lq0syb7mzbrvngvr2jc"; sha256 = "1k73c228rgzq7ymf5vaj6wfqzkqm6yzq5lq0syb7mzbrvngvr2jc";
}))) })
)
)

View file

@ -1,4 +1,5 @@
{pkgs, ...}: { { pkgs, ... }:
{
stylix = { stylix = {
enable = true; enable = true;
polarity = "dark"; polarity = "dark";

View file

@ -1,4 +1,5 @@
{pkgs, ...}: { { pkgs, ... }:
{
wrappers.fish = { wrappers.fish = {
basePackage = pkgs.fish; basePackage = pkgs.fish;
env.fish_greeting.value = ""; env.fish_greeting.value = "";

View file

@ -4,13 +4,15 @@
dirUtils, dirUtils,
type, type,
... ...
}: { }:
{
environment.systemPackages = [ environment.systemPackages = [
(inputs.wrapper-manager.lib { (inputs.wrapper-manager.lib {
inherit pkgs; inherit pkgs;
specialArgs = {inherit inputs;}; specialArgs = { inherit inputs; };
modules = with dirUtils; dirFiles ".nix" ./common ++ opt (type == "desktop") (dirFiles ".nix" ./desktop); modules =
}) with dirUtils;
.config.build.toplevel dirFiles ".nix" ./common ++ opt (type == "desktop") (dirFiles ".nix" ./desktop);
}).config.build.toplevel
]; ];
} }

View file

@ -2,20 +2,26 @@
inputs, inputs,
pkgs, pkgs,
... ...
}: { }:
{
wrappers.agenix = { wrappers.agenix = {
basePackage = inputs.agenix-cli.packages.${pkgs.system}.default; basePackage = inputs.agenix-cli.packages.${pkgs.system}.default;
env.AGENIX_ROOT.value = let env.AGENIX_ROOT.value =
let
path = ".agenix.toml"; path = ".agenix.toml";
in in
pkgs.writeTextDir path (builtins.readFile (pkgs.writers.writeTOML path { pkgs.writeTextDir path (
builtins.readFile (
pkgs.writers.writeTOML path {
paths = [ paths = [
{ {
glob = "**"; glob = "**";
identities = import ../../secrets/keys.nix; identities = import ../../secrets/keys.nix;
} }
]; ];
})); }
)
);
}; };
} }