{ description = "Nixos config flake"; inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-25.05"; #nixpkgs.url = "git+ssh://gitea@gitea.blunkall.us/Blunkall-Technologies/nixpkgs?ref=nixos-24.11"; nixpkgs-us.url = "github:nixos/nixpkgs/nixos-unstable"; #nixpkgs-us.url = "git+ssh://gitea@gitea.blunkall.us/Blunkall-Technologies/nixpkgs?ref=nixos-unstable"; home-manager = { url = "github:nix-community/home-manager/release-25.05"; #url = "git+ssh://gitea@gitea.blunkall.us/Blunkall-Technologies/home-manager?ref=release-24.11"; inputs.nixpkgs.follows = "nixpkgs"; }; home-manager-us = { url = "github:nix-community/home-manager/master"; #url = "git+ssh://gitea@gitea.blunkall.us/Blunkall-Technologies/home-manager?ref=release-24.11"; inputs.nixpkgs.follows = "nixpkgs-us"; }; nixpkgs-droid.url = "github:nixos/nixpkgs/nixos-24.05"; home-manager-droid = { url = "github:nix-community/home-manager/release-24.05"; #url = "git+ssh://gitea@gitea.blunkall.us/Blunkall-Technologies/home-manager?ref=release-24.05"; inputs.nixpkgs.follows = "nixpkgs-droid"; }; nix-on-droid = { url = "github:nix-community/nix-on-droid/release-24.05"; inputs.nixpkgs.follows = "nixpkgs-droid"; inputs.home-manager.follows = "home-manager-droid"; }; disko = { url = "github:nix-community/disko"; inputs.nixpkgs.follows = "nixpkgs"; }; sops-nix = { url = "github:Mic92/sops-nix"; inputs.nixpkgs.follows = "nixpkgs"; }; firefox-addons = { url = "gitlab:rycee/nur-expressions?dir=pkgs/firefox-addons"; inputs.nixpkgs.follows = "nixpkgs"; }; nix-minecraft.url = "github:Infinidoge/nix-minecraft"; #simple-nixos-mailserver.url = "gitlab:simple-nixos-mailserver/nixos-mailserver/nixos-24.05"; hyprland.url = "git+https://github.com/hyprwm/Hyprland?submodules=1"; #hyprland.url = "git+ssh://gitea@gitea.blunkall.us/Blunkall-Technologies/hyprland?submodules=1"; nixvim.url = "git+ssh://gitea@gitea.blunkall.us/Blunkall-Technologies/Moirai"; #nixvim.url = "git+https://gitea.blunkall.us/Blunkall-Technologies/Moirai"; ags.url = "github:Aylur/ags/v1"; themecord = { url = "github:danihek/themecord"; inputs.nixpkgs.follows = "nixpkgs"; }; }; outputs = { self, nixpkgs, home-manager, ... } @ inputs: { nixosConfigurations = { homebox = nixpkgs.lib.nixosSystem { specialArgs = { inputs = inputs // { nathan = import ./home-manager/users/nathan; home-manager-config = import ./home-manager; inherit self; }; }; modules = [ ./system-config/configuration/homebox ./system-config ]; }; laptop = nixpkgs.lib.nixosSystem { specialArgs = { inputs = inputs // { nathan = import ./home-manager/users/nathan; home-manager-config = import ./home-manager; inherit self; }; }; modules = [ ./system-config/configuration/laptop ./system-config ]; }; jesstop = nixpkgs.lib.nixosSystem { specialArgs = { inputs = inputs // { }; }; modules = [ ./system-config/configuration/jesstop ./system-config ]; }; pi4 = { system = "aarch64-linux"; specialArgs = { inputs = inputs // { nathan-home-manager = import ./home-manager/nathan; }; }; modules = [ ./system-config/configuration/pi4 ./system-config ]; }; live = nixpkgs.lib.nixosSystem { specialArgs = { inputs = inputs // { nathan-home-manager = import ./home-manager/nathan; }; }; modules = [ ./system-config/configuration/live ./system-config ]; }; container = nixpkgs.lib.nixosSystem { specialArgs = { inputs = inputs // { nathan-home-manager = import ./home-manager/nathan; }; }; modules = [ ./system-config/configuration/sandbox-nathan ./system-config ]; }; }; nixOnDroidConfigurations.default = inputs.nix-on-droid.lib.nixOnDroidConfiguration { pkgs = import nixpkgs { system = "aarch64-linux"; overlays = [ inputs.nix-on-droid.overlays.default ]; }; modules = [ ./system-config/configuration/android ./system-config ]; extraSpecialArgs = { inputs = inputs // { nathan = import ./home-manager/nathan; }; }; home-manager-path = home-manager.outPath; }; homeConfigurations = { nathan = home-manager.lib.homeManagerConfiguration { pkgs = import nixpkgs { system = builtins.currentSystem; }; modules = [ ./home-manager { homeconfig = { username = "nathan"; graphical = false; minimal = false; }; } ]; extraSpecialArgs = { inherit inputs; }; }; }; }; }