diff --git a/flake.nix b/flake.nix index f62bcc0..78edec1 100644 --- a/flake.nix +++ b/flake.nix @@ -98,6 +98,85 @@ catppuccin.flavor = "mocha"; catppuccin.accent = "blue"; } + { + programs.git.extraConfig.user.signingkey = "0EC431A8DA8F8087"; + } + ]; + }; + }; + } + ]; + }; + + nebula = nixpkgs.lib.nixosSystem { + system = system; + specialArgs = { + inherit inputs; + inherit pkgs; + system = system; + hostname = "nebula"; + }; + modules = [ + # imports + ./hosts/nebula.nix + ./nixos/catppuccin.nix + ./nixos/configuration.nix + ./nixos/development.nix + ./nixos/environment.nix + ./nixos/gaming.nix + ./nixos/git.nix + ./nixos/gui-pkgs.nix + ./nixos/nvim.nix + ./nixos/pkg.nix + ./nixos/shell.nix + ./nixos/sudo.nix + ./nixos/symlinks.nix + ./nixos/tailscale.nix + + { + # enable bluetooth + hardware.bluetooth.enable = true; + } + + inputs.nixvim.nixosModules.nixvim + inputs.nix-flatpak.nixosModules.nix-flatpak + + # Catppuccin theme + inputs.catppuccin.nixosModules.catppuccin + { + catppuccin.enable = true; + catppuccin.flavor = "mocha"; + catppuccin.accent = "blue"; + boot.loader.grub.catppuccin.enable = true; + services.displayManager.sddm.catppuccin.enable = false; + } + + # Home Manager + home-manager.nixosModules.home-manager + { + home-manager = { + useGlobalPkgs = true; + useUserPackages = true; + backupFileExtension = "bak"; + extraSpecialArgs = { + inherit inputs; + inherit pkgs; + system = system; + hostname = "nebula"; + }; + users.cswimr = { + imports = [ + ./home-manager/cswimr.nix + ./home-manager/vscode.nix + inputs.catppuccin.homeManagerModules.catppuccin + { + catppuccin.enable = true; + catppuccin.flavor = "mocha"; + catppuccin.accent = "blue"; + } + { + programs.git.extraConfig.user.signingkey = "082F226A1D8C0860"; + } ]; }; }; @@ -105,5 +184,6 @@ ]; }; }; - }; +}; + } diff --git a/home-manager/cswimr.nix b/home-manager/cswimr.nix index 0de1cf2..d337b5c 100755 --- a/home-manager/cswimr.nix +++ b/home-manager/cswimr.nix @@ -51,11 +51,9 @@ userName = "cswimr"; userEmail = "seaswimmerthefsh@gmail.com"; extraConfig = { - user = { signingkey = "0EC431A8DA8F8087"; }; commit = { gpgsign = true; }; signing = { signByDefault = true; - key = "0EC431A8DA8F8087"; }; init = { defaultBranch = "master"; }; safe = { directory = "/etc/nixos"; }; diff --git a/hosts/nebula.nix b/hosts/nebula.nix new file mode 100644 index 0000000..01fd98f --- /dev/null +++ b/hosts/nebula.nix @@ -0,0 +1,34 @@ +# Do not modify this file! It was generated by ‘nixos-generate-config’ +# and may be overwritten by future invocations. Please make changes +# to /etc/nixos/configuration.nix instead. +{ config, lib, pkgs, modulesPath, ... }: + +{ + imports = + [ (modulesPath + "/installer/scan/not-detected.nix") + ]; + + boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usbhid" "sd_mod" ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-amd" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = + { device = "/dev/disk/by-uuid/658d4465-7bac-4e12-ad92-00fef8abcfe3"; + fsType = "ext4"; + }; + + swapDevices = [ ]; + + # 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 + # still possible to use this option, but it's recommended to use it in conjunction + # with explicit per-interface declarations with `networking.interfaces..useDHCP`. + networking.useDHCP = lib.mkDefault true; + # networking.interfaces.docker0.useDHCP = lib.mkDefault true; + # networking.interfaces.tailscale0.useDHCP = lib.mkDefault true; + # networking.interfaces.wlp1s0.useDHCP = lib.mkDefault true; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; +}