diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..4c7f2b9 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +hardware-configuration.nix \ No newline at end of file diff --git a/configuration.nix b/configuration.nix index 3fec801..f10cb8f 100644 --- a/configuration.nix +++ b/configuration.nix @@ -16,7 +16,6 @@ ]; imports = [ # Include the results of the hardware scan. - ./hardware-configuration.nix ./imports.nix ]; # This value determines the NixOS release from which the default diff --git a/flake.nix b/flake.nix index f9074d7..dd3a953 100644 --- a/flake.nix +++ b/flake.nix @@ -1,5 +1,5 @@ { - description = "MartyTF's NixOS flake"; + description = "MartyTF's NixOS Configuration"; inputs = { nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable"; @@ -8,7 +8,7 @@ }; outputs = - { + inputs@{ self, nixpkgs, home-manager, @@ -24,24 +24,24 @@ modules = [ ./marty-pc.nix ./configuration.nix - ./user/marty.nix + home-manager.nixosModules.default ]; }; marty-server = nixpkgs.lib.nixosSystem { - system = "x86_64"; + system = "x86_64-linux"; modules = [ ./marty-server.nix ./configuration.nix - ./user/marty.nix + home-manager.nixosModules.default ]; }; marty-latitude = nixpkgs.lib.nixosSystem { - system = "x86_64"; + system = "x86_64-linux"; modules = [ ./marty-latitude.nix ./configuration.nix - ./user/marty.nix + home-manager.nixosModules.default ]; }; diff --git a/imports.nix b/imports.nix index 8c2a0b9..7e6e1a1 100644 --- a/imports.nix +++ b/imports.nix @@ -2,6 +2,7 @@ config, lib, pkgs, + inputs, ... }: diff --git a/marty-latitude.nix b/marty-latitude.nix index d8ebe4c..0734164 100644 --- a/marty-latitude.nix +++ b/marty-latitude.nix @@ -3,6 +3,7 @@ lib, pkgs, modulesPath, + home-manager, ... }: @@ -11,30 +12,47 @@ hostName = "marty-latitude"; }; - # PREVIOUSLY HARDWARE-CONFIGURATION.NIX - imports = - [ (modulesPath + "/installer/scan/not-detected.nix") - ]; + home-manager = { + useGlobalPkgs = true; + useUserPackages = true; + # users = { + # marty = ./nixos/modules/home.nix; + # }; + }; - boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ]; + # PREVIOUSLY HARDWARE-CONFIGURATION.NIX + imports = [ + (modulesPath + "/installer/scan/not-detected.nix") + ]; + + boot.initrd.availableKernelModules = [ + "xhci_pci" + "ahci" + "usb_storage" + "sd_mod" + "rtsx_pci_sdmmc" + ]; boot.initrd.kernelModules = [ ]; boot.kernelModules = [ "kvm-intel" ]; boot.extraModulePackages = [ ]; - fileSystems."/" = - { device = "/dev/disk/by-uuid/757b8bfc-0b5d-4ec1-9ab7-7876848ae411"; - fsType = "ext4"; - }; + fileSystems."/" = { + device = "/dev/disk/by-uuid/757b8bfc-0b5d-4ec1-9ab7-7876848ae411"; + fsType = "ext4"; + }; - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/C8A8-A568"; - fsType = "vfat"; - options = [ "fmask=0077" "dmask=0077" ]; - }; - - swapDevices = - [ { device = "/dev/disk/by-uuid/a1838708-fb00-4ecb-8010-432d06182591"; } + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/C8A8-A568"; + fsType = "vfat"; + options = [ + "fmask=0077" + "dmask=0077" ]; + }; + + swapDevices = [ + { device = "/dev/disk/by-uuid/a1838708-fb00-4ecb-8010-432d06182591"; } + ]; # 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 diff --git a/marty-pc.nix b/marty-pc.nix index a044997..d2fbef5 100644 --- a/marty-pc.nix +++ b/marty-pc.nix @@ -2,6 +2,7 @@ config, lib, pkgs, + modulesPath, ... }: @@ -17,6 +18,45 @@ }; }; }; + + home-manager = { + useGlobalPkgs = true; + useUserPackages = true; + users = { + marty = ./nixos/modules/home.nix; + }; + }; + + # PREVIOUSLY HARDWARE-CONFIGURATION.NIX + imports = [ + (modulesPath + "/installer/scan/not-detected.nix") + ]; + + boot.initrd.availableKernelModules = [ + "nvme" + "xhci_pci" + "ahci" + "usbhid" + "usb_storage" + "sd_mod" + ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-amd" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = { + device = "/dev/disk/by-uuid/a26cdc8b-abc9-47cf-ad33-c81e56e56d22"; + fsType = "ext4"; + }; + + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/C9B2-7254"; + fsType = "vfat"; + options = [ + "fmask=0077" + "dmask=0077" + ]; + }; fileSystems = { "/mnt/SSD" = { device = "/dev/disk/by-uuid/af5282f0-0e02-4532-902f-97509af70d11"; diff --git a/marty-server.nix b/marty-server.nix index 05ba475..88492e6 100644 --- a/marty-server.nix +++ b/marty-server.nix @@ -2,6 +2,7 @@ config, lib, pkgs, + modulesPath, ... }: @@ -18,6 +19,45 @@ }; }; + home-manager = { + useGlobalPkgs = true; + useUserPackages = true; + users = { + marty = ./nixos/modules/home.nix; + }; + }; + + # PREVIOUSLY HARDWARE-CONFIGURATION.NIX + imports = [ + (modulesPath + "/installer/scan/not-detected.nix") + ]; + + boot.initrd.availableKernelModules = [ + "xhci_pci" + "ahci" + "nvme" + "usbhid" + "usb_storage" + "sd_mod" + ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = { + device = "/dev/disk/by-uuid/a804bdf0-194c-4fe4-a451-64620d3d293d"; + fsType = "ext4"; + }; + + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/44A5-B01F"; + fsType = "vfat"; + options = [ + "fmask=0077" + "dmask=0077" + ]; + }; + fileSystems = { "/mnt/Data" = { device = "/dev/disk/by-uuid/20eaea9c-6924-40c6-a784-cd5018d8fabb"; diff --git a/modules/home.nix b/modules/home.nix new file mode 100644 index 0000000..8147731 --- /dev/null +++ b/modules/home.nix @@ -0,0 +1,12 @@ +{ + config, + pkgs, + ... +}: + +{ + home.username = "marty"; + import = [ + ./development/import_development.nix + ]; +} diff --git a/modules/window_manager/waybar.nix b/modules/window_manager/bar.nix similarity index 100% rename from modules/window_manager/waybar.nix rename to modules/window_manager/bar.nix diff --git a/modules/window_manager/import_wm.nix b/modules/window_manager/import_wm.nix index 387d7b1..af42df2 100644 --- a/modules/window_manager/import_wm.nix +++ b/modules/window_manager/import_wm.nix @@ -7,7 +7,8 @@ { imports = [ - ./hyprland.nix - ./waybar.nix + ./window_manager.nix + ./launcher.nix + ./bar.nix ]; } diff --git a/modules/window_manager/launcher.nix b/modules/window_manager/launcher.nix new file mode 100644 index 0000000..c28616e --- /dev/null +++ b/modules/window_manager/launcher.nix @@ -0,0 +1,9 @@ +{ config, pkgs, ... }: + +{ + environment = { + systemPackages = with pkgs; [ + rofi + ]; + }; +} diff --git a/modules/window_manager/hyprland.nix b/modules/window_manager/window_manager.nix similarity index 100% rename from modules/window_manager/hyprland.nix rename to modules/window_manager/window_manager.nix diff --git a/system/terminal.nix b/system/terminal.nix index 938d0cc..4de526d 100644 --- a/system/terminal.nix +++ b/system/terminal.nix @@ -4,7 +4,6 @@ environment = { systemPackages = with pkgs; [ kitty - rofi ]; }; } diff --git a/user/marty.nix b/user/marty.nix index f7eb58f..0cdb836 100644 --- a/user/marty.nix +++ b/user/marty.nix @@ -1,4 +1,9 @@ -{ config, pkgs, ... }: +{ + config, + pkgs, + inputs, + ... +}: { users.users.marty = {