diff --git a/flake.lock b/flake.lock index 6c9b6fc..4575f05 100644 --- a/flake.lock +++ b/flake.lock @@ -291,7 +291,9 @@ "impermanence": { "inputs": { "home-manager": "home-manager_2", - "nixpkgs": "nixpkgs" + "nixpkgs": [ + "nixpkgs" + ] }, "locked": { "lastModified": 1769548169, @@ -348,7 +350,9 @@ "inputs": { "flake-compat": "flake-compat", "nix-index-database": "nix-index-database", - "nixpkgs": "nixpkgs_2" + "nixpkgs": [ + "nixpkgs" + ] }, "locked": { "lastModified": 1771150922, @@ -405,7 +409,9 @@ "inputs": { "flake-compat": "flake-compat_2", "flake-utils": "flake-utils", - "nixpkgs": "nixpkgs_3" + "nixpkgs": [ + "nixpkgs" + ] }, "locked": { "lastModified": 1750164803, @@ -422,54 +428,6 @@ } }, "nixpkgs": { - "locked": { - "lastModified": 1768564909, - "narHash": "sha256-Kell/SpJYVkHWMvnhqJz/8DqQg2b6PguxVWOuadbHCc=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "e4bae1bd10c9c57b2cf517953ab70060a828ee6f", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_2": { - "locked": { - "lastModified": 1771008912, - "narHash": "sha256-gf2AmWVTs8lEq7z/3ZAsgnZDhWIckkb+ZnAo5RzSxJg=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "a82ccc39b39b621151d6732718e3e250109076fa", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_3": { - "locked": { - "lastModified": 1748929857, - "narHash": "sha256-lcZQ8RhsmhsK8u7LIFsJhsLh/pzR9yZ8yqpTzyGdj+Q=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "c2a03962b8e24e669fb37b7df10e7c79531ff1a4", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_4": { "locked": { "lastModified": 1774106199, "narHash": "sha256-US5Tda2sKmjrg2lNHQL3jRQ6p96cgfWh3J1QBliQ8Ws=", @@ -485,22 +443,6 @@ "type": "github" } }, - "nixpkgs_5": { - "locked": { - "lastModified": 1767767207, - "narHash": "sha256-Mj3d3PfwltLmukFal5i3fFt27L6NiKXdBezC1EBuZs4=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "5912c1772a44e31bf1c63c0390b90501e5026886", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, "nur": { "inputs": { "flake-parts": [ @@ -558,7 +500,7 @@ "nix-alien": "nix-alien", "nix-flatpak": "nix-flatpak", "nix-minecraft": "nix-minecraft", - "nixpkgs": "nixpkgs_4", + "nixpkgs": "nixpkgs", "nvf": "nvf", "sops-nix": "sops-nix", "stylix": "stylix", @@ -616,7 +558,9 @@ "firefox-gnome-theme": "firefox-gnome-theme", "flake-parts": "flake-parts_2", "gnome-shell": "gnome-shell", - "nixpkgs": "nixpkgs_5", + "nixpkgs": [ + "nixpkgs" + ], "nur": "nur", "systems": "systems_3", "tinted-foot": "tinted-foot", diff --git a/flake.nix b/flake.nix index a84ead5..bd3ff18 100644 --- a/flake.nix +++ b/flake.nix @@ -9,9 +9,13 @@ sops-nix.inputs.nixpkgs.follows = "nixpkgs"; impermanence.url = "github:nix-community/impermanence"; + impermanence.inputs.nixpkgs.follows = "nixpkgs"; stylix.url = "github:danth/stylix"; + stylix.inputs.nixpkgs.follows = "nixpkgs"; + nix-alien.url = "github:thiagokokada/nix-alien"; + nix-alien.inputs.nixpkgs.follows = "nixpkgs"; nvf = { url = "github:NotAShelf/nvf"; @@ -24,11 +28,14 @@ }; nix-minecraft.url = "git+https://codeberg.org/nix-astral/nix-minecraft.git"; + nix-minecraft.inputs.nixpkgs.follows = "nixpkgs"; + # nix-minecraft.url = "github:Infinidoge/nix-minecraft"; valheim-server.url = "github:kmjayadeep/valheim-server-flake"; valheim-server.inputs.nixpkgs.follows = "nixpkgs"; nix-flatpak.url = "github:gmodena/nix-flatpak?ref=latest"; + nix-flatpak.inputs.nixpkgs.follows = "nixpkgs"; }; outputs = inputs @ { @@ -53,9 +60,10 @@ (builtins.readDir ./hosts)); nixosConfigs = builtins.listToAttrs (map (host: { - name = host; - value = utils.mkHost ./hosts/${host}/configuration.nix; - }) hosts); + name = host; + value = utils.mkHost ./hosts/${host}/configuration.nix; + }) + hosts); in { nixosConfigurations = nixosConfigs; @@ -65,12 +73,13 @@ # osConfig is injected so all modules using it continue to work. # Use: home-manager switch --flake '.#muon@' homeConfigurations = builtins.listToAttrs (map (host: { - name = "muon@${host}"; - value = utils.mkHome { - hostConfig = nixosConfigs.${host}; - homeFile = ./hosts/${host}/home.nix; - }; - }) hosts); + name = "muon@${host}"; + value = utils.mkHome { + hostConfig = nixosConfigs.${host}; + homeFile = ./hosts/${host}/home.nix; + }; + }) + hosts); colmena = { meta = { @@ -94,6 +103,11 @@ ./modules/nixos inputs.home-manager.nixosModules.default inputs.stylix.nixosModules.stylix + inputs.impermanence.nixosModules.impermanence + ]; + + home-manager.sharedModules = [ + inputs.stylix.homeManagerModules.stylix ]; }; diff --git a/hosts/muon/configuration.nix b/hosts/muon/configuration.nix index 8948fa6..5b19ff4 100644 --- a/hosts/muon/configuration.nix +++ b/hosts/muon/configuration.nix @@ -82,6 +82,14 @@ in { }; networking.firewall.allowedTCPPorts = [80]; + # Wildcard DNS: *.word.local -> 127.0.0.1 via NetworkManager's built-in dnsmasq + networking.networkmanager.dns = "dnsmasq"; + # Force resolv.conf to use local dnsmasq so wildcard DNS is actually queried + networking.resolvconf.useLocalResolver = true; + environment.etc."NetworkManager/dnsmasq.d/word-local.conf".text = '' + address=/.word.local/127.0.0.1 + ''; + virtualisation.virtualbox.host.enable = true; users.extraGroups.vboxusers.members = ["user-with-access-to-virtualbox"]; diff --git a/hosts/mups/configuration.nix b/hosts/mups/configuration.nix index 99008dd..ad7dfcb 100644 --- a/hosts/mups/configuration.nix +++ b/hosts/mups/configuration.nix @@ -24,7 +24,7 @@ in { # Modules mods.desktop.enable = false; - mods.theme.enable = true; + mods.theme.enable = false; mods.theme.scheme = "woodland"; mods.theme.wallpaper = ./wallpaper.png; @@ -42,6 +42,16 @@ in { mods.server.wireguard.enable = true; mods.server.nginx.enable = true; + documentation = { + enable = false; + nixos.enable = false; + man.enable = false; + info.enable = false; + doc.enable = false; + }; + + i18n.supportedLocales = ["en_US.UTF-8/UTF-8"]; + # Use the GRUB 2 boot loader. boot.loader.grub.enable = true; boot.loader.grub.device = "/dev/vda"; diff --git a/hosts/mups/home.nix b/hosts/mups/home.nix index af78173..2f77ed0 100644 --- a/hosts/mups/home.nix +++ b/hosts/mups/home.nix @@ -1,8 +1,11 @@ -{ pkgs, lib, osConfig,... }: { +{ + pkgs, + lib, + osConfig, + ... +}: { # Modules mods.terminal.zsh.enable = true; - mods.terminal.development.enable = true; - mods.terminal.tools.enable = true; # Version of first install home.stateVersion = "24.05"; diff --git a/hosts/ports.nix b/hosts/ports.nix index b9da945..78dec27 100644 --- a/hosts/ports.nix +++ b/hosts/ports.nix @@ -30,6 +30,10 @@ search = 8081; videos = 8082; reddit = 8083; + + # docker compose + discord = 2052; + livekit = 7880; }; mods.server.local.ports = { # grav = 5001 diff --git a/modules/nixos/core/network.nix b/modules/nixos/core/network.nix index abce4bf..5219b13 100644 --- a/modules/nixos/core/network.nix +++ b/modules/nixos/core/network.nix @@ -103,14 +103,6 @@ in 127.0.0.1 word.local ''; - # Wildcard DNS: *.word.local -> 127.0.0.1 via NetworkManager's built-in dnsmasq - networking.networkmanager.dns = "dnsmasq"; - # Force resolv.conf to use local dnsmasq so wildcard DNS is actually queried - networking.resolvconf.useLocalResolver = true; - environment.etc."NetworkManager/dnsmasq.d/word-local.conf".text = '' - address=/.word.local/127.0.0.1 - ''; - # gateway = # "${pkgs.networkmanager}/bin/nmcli dev show ${interface} | ${pkgs.gnugrep}/bin/fgrep IP4.GATEWAY | ${pkgs.awk}/bin/awk {print $2}"; };