diff --git a/dot_config/flake/flake.lock b/dot_config/flake/flake.lock index 8a89ddd..f6fb93b 100644 --- a/dot_config/flake/flake.lock +++ b/dot_config/flake/flake.lock @@ -167,17 +167,17 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1757513370, - "narHash": "sha256-uaTDniIFWEv6PXs6s9wRFAcoumBaUZCiZ4hzlNWeJAE=", + "lastModified": 1759201995, + "narHash": "sha256-3STv6fITv8Ar/kl0H7vIA7VV0d2gyLh8UL0BOiVacXg=", "owner": "helix-editor", "repo": "helix", - "rev": "209558645a0a00660e74b0e14e6ec0a0b1fac590", + "rev": "bfcbef10c513108c7b43317569416c2eefc4ed44", "type": "github" }, "original": { "owner": "helix-editor", "repo": "helix", - "rev": "209558645a0a00660e74b0e14e6ec0a0b1fac590", + "rev": "bfcbef10c513108c7b43317569416c2eefc4ed44", "type": "github" } }, diff --git a/dot_config/flake/flake.nix b/dot_config/flake/flake.nix index 1ce3c8c..113a8b0 100644 --- a/dot_config/flake/flake.nix +++ b/dot_config/flake/flake.nix @@ -75,6 +75,24 @@ defaultPackage = forAllSystems (system: home-manager.defaultPackage.${system}); nixosConfigurations = { + kaylee = nixpkgs.lib.nixosSystem { + specialArgs = {inherit inputs outputs;}; + modules = [ + determinate.nixosModules.default + ./machines/kaylee/configuration.nix + + home-manager.nixosModules.home-manager + { + home-manager.useGlobalPkgs = true; + home-manager.useUserPackages = true; + + # home-manager.backupFileExtension = "bak"; + home-manager.extraSpecialArgs = {inherit inputs outputs nixosModules homeModules darwinModules;}; + home-manager.users.tyler = import ./machines/kaylee/home.nix; + } + ]; + }; + mal = nixpkgs.lib.nixosSystem { specialArgs = {inherit inputs outputs;}; modules = [ diff --git a/dot_config/flake/machines/kaylee/configuration.nix b/dot_config/flake/machines/kaylee/configuration.nix new file mode 100644 index 0000000..6865eef --- /dev/null +++ b/dot_config/flake/machines/kaylee/configuration.nix @@ -0,0 +1,71 @@ +{ + inputs, + outputs, + lib, + pkgs, + ... +}: { + imports = [ + # Include the results of the hardware scan. + ./hardware-configuration.nix + ]; + + nixpkgs = { + overlays = builtins.attrValues outputs.overlays; + + config = { + allowUnfree = true; + }; + }; + + nix = let + flakeInputs = lib.filterAttrs (_: lib.isType "flake") inputs; + in { + settings = { + experimental-features = ["nix-command" "flakes"]; + }; + + channel.enable = false; + + registry = lib.mapAttrs (_: flake: {inherit flake;}) flakeInputs; + nixPath = lib.mapAttrsToList (n: _: "${n}=flake:${n}") flakeInputs; + }; + + # Use the systemd-boot EFI boot loader. + boot.loader.systemd-boot.enable = true; + boot.loader.efi.canTouchEfiVariables = true; + + services.pcscd.enable = true; + programs.gnupg.agent = { + enable = true; + pinentryPackage = pkgs.pinentry-curses; + enableSSHSupport = true; + }; + + networking.hostName = "kaylee"; + services.dnsmasq.enable = true; + + services.xserver.xkb.layout = "us"; + + users.users.tyler = { + isNormalUser = true; + extraGroups = ["wheel"]; # Enable ‘sudo’ for the user. + shell = pkgs.fish; + }; + + environment.systemPackages = with pkgs; [ + helix # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default. + wget + yadm + restic + git + chezmoi + ]; + + programs.fish.enable = true; + + # Enable the OpenSSH daemon. + services.openssh.enable = true; + + system.stateVersion = "24.05"; # Did you read the comment? +} diff --git a/dot_config/flake/machines/kaylee/home.nix b/dot_config/flake/machines/kaylee/home.nix new file mode 100644 index 0000000..107ccb8 --- /dev/null +++ b/dot_config/flake/machines/kaylee/home.nix @@ -0,0 +1,13 @@ +{pkgs, ...}: { + imports = [ + ../../home/common.nix + ../../home/helide + ]; + + home = { + username = "tyler"; + homeDirectory = "/home/tyler"; + + stateVersion = "23.11"; + }; +} diff --git a/dot_config/flake/machines/wash/configuration.nix b/dot_config/flake/machines/wash/configuration.nix index faeb3c8..dd0f09a 100644 --- a/dot_config/flake/machines/wash/configuration.nix +++ b/dot_config/flake/machines/wash/configuration.nix @@ -94,7 +94,7 @@ geoProviderUrl = "https://api.beacondb.net/v1/geolocate"; }; - # services.flatpak.enable = true; + services.flatpak.enable = true; services.power-profiles-daemon.enable = true; services.logind.lidSwitch = "suspend-then-hibernate"; diff --git a/dot_config/flake/modules/nixos/niri.nix b/dot_config/flake/modules/nixos/niri.nix index 6550ce0..7b93121 100644 --- a/dot_config/flake/modules/nixos/niri.nix +++ b/dot_config/flake/modules/nixos/niri.nix @@ -15,4 +15,6 @@ environment.systemPackages = with pkgs; [ nautilus ]; + + security.polkit.enable = true; }