diff --git a/flake.lock b/flake.lock index ef21bd8..40c3bb1 100644 --- a/flake.lock +++ b/flake.lock @@ -287,7 +287,7 @@ "nixpkgs-pr280779": { "flake": false, "locked": { - "narHash": "sha256-MnUPeXecesXaBF4x9/+LCiANjzX9KVtl0JalyWAucYk=", + "narHash": "sha256-eP6JaUafbs7ulve2jOsidJKM28bKzcLgoQ4WKXN1k4I=", "type": "file", "url": "https://github.com/NixOS/nixpkgs/pull/280779.patch" }, diff --git a/flake.nix b/flake.nix index 31a166b..a7cdc98 100755 --- a/flake.nix +++ b/flake.nix @@ -158,25 +158,7 @@ ./machines/SteamDeck ]; }; - - WinMax2 = nixpkgs-unstable.lib.nixosSystem { - system = "x86_64-linux"; - specialArgs = { systemPkgs = inputs.nixpkgs-unstable-raw; flakeSelf = self; }; - modules = [ - agenix.nixosModules.default - jovian.nixosModules.default - home-manager-unstable.nixosModule - nix-index-db-unstable.nixosModules.nix-index - nixos-hardware.nixosModules.gpd-win-max-2-2023 - ./roles/common - ./roles/desktop - ./roles/kde - ./roles/gaming - ./roles/school - ./machines/WinMax2 - ]; - }; - + Everest = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; specialArgs = { systemPkgs = inputs.nixpkgs; flakeSelf = self; }; diff --git a/machines/WinMax2/configuration.nix b/machines/WinMax2/configuration.nix deleted file mode 100755 index fc39a34..0000000 --- a/machines/WinMax2/configuration.nix +++ /dev/null @@ -1,112 +0,0 @@ - # Edit this configuration file to define what should be installed on -# your system. Help is available in the configuration.nix(5) man page -# and in the NixOS manual (accessible by running `nixos-help`). - -{ config, pkgs, lib, ... }: - -{ - # Use grub boot loader - boot.loader = { - systemd-boot.enable = false; - grub = { - enable = true; - device = "nodev"; - efiSupport = true; - # No other OS on here :P - useOSProber = false; - }; - efi.efiSysMountPoint = config.fileSystems."efi_boot_partition".mountPoint; - }; - boot.loader.efi.canTouchEfiVariables = true; - - networking.hostName = "WinMax2"; # Define your hostname. - networking.networkmanager.enable = true; # Enable networking - - # Allow unfree packages - nixpkgs.config.allowUnfree = true; - - nix.settings.auto-optimise-store = true; - - services.xserver.layout = lib.mkForce "us"; - - # Configure network proxy if necessary - # networking.proxy.default = "http://user:password@proxy:port/"; - # networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain"; - - # Enable the X11 windowing system. - services.xserver.enable = true; - - jovian = { - # Steam Deck UI settings - steam = { - enable = true; - autoStart = false; - user = "toast"; - desktopSession = "plasmawayland"; - }; - decky-loader = { - enable = true; - }; - }; - - # Enable bluetooth - hardware.bluetooth = { - enable = true; - }; - - # Configure keymap in X11 - # services.xserver.layout = "us"; - # services.xserver.xkbOptions = "eurosign:e,caps:escape"; - - # Enable CUPS to print documents. - # services.printing.enable = true; - - # Enable sound. - # sound.enable = true; - # hardware.pulseaudio.enable = true; - - # Enable touchpad support (enabled default in most desktopManager). - # services.xserver.libinput.enable = true; - - # Define a user account. Don't forget to set a password with ‘passwd’. - users.users.toast = { - isNormalUser = true; - extraGroups = [ "wheel" ]; # Enable ‘sudo’ for the user. - }; - - # Large builds (the linux kernel) fail to build because /tmp is too small when using tmpfs - boot.tmp.useTmpfs = false; - - # List packages installed in system profile. To search, run: - # $ nix search wget - # environment.systemPackages = with pkgs; [ - # vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default. - # wget - # ]; - - # Some programs need SUID wrappers, can be configured further or are - # started in user sessions. - # programs.mtr.enable = true; - # programs.gnupg.agent = { - # enable = true; - # enableSSHSupport = true; - # }; - - # List services that you want to enable: - - # Enable the OpenSSH daemon. - # services.openssh.enable = true; - - # Open ports in the firewall. - # networking.firewall.allowedTCPPorts = [ ... ]; - # networking.firewall.allowedUDPPorts = [ ... ]; - # Or disable the firewall altogether. - # networking.firewall.enable = false; - - # Copy the NixOS configuration file and link it from the resulting system - # (/run/current-system/configuration.nix). This is useful in case you - # accidentally delete configuration.nix. - # system.copySystemConfiguration = true; - -} - diff --git a/machines/WinMax2/default.nix b/machines/WinMax2/default.nix deleted file mode 100755 index 5bf2485..0000000 --- a/machines/WinMax2/default.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ ... }: - -{ - imports = [ - ./configuration.nix - ./hardware-configuration.nix - ]; -} diff --git a/machines/WinMax2/hardware-configuration.nix b/machines/WinMax2/hardware-configuration.nix deleted file mode 100755 index 43949ee..0000000 --- a/machines/WinMax2/hardware-configuration.nix +++ /dev/null @@ -1,70 +0,0 @@ -# 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, ... }: - -let - # \x20 is the escape code for a space - ssdLabel = ''Win\\x20Max\\x202\\x20SSD''; -in - -{ - imports = - [ (modulesPath + "/installer/scan/not-detected.nix") - ]; - - boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "thunderbolt" "usbhid" "sdhci_pci" ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ "kvm-amd" ]; - boot.extraModulePackages = [ ]; - - boot.initrd.luks.devices."SSD".device = "/dev/disk/by-label/wm2-enc"; - - fileSystems = { - "efi_boot_partition" = { - mountPoint = "/boot/efi"; - label = "winmax2boot"; - fsType = "vfat"; - }; - /* - Mount the root subvolume of the SSD - This is helpful for getting things from - my old Arch install, as well as for running btdu - */ - "btrfs_root_subvolume" = { - mountPoint = "/mnt/ssd"; - label = ssdLabel; - fsType = "btrfs"; - options = [ "subvolid=5" "ro" ]; - }; - "btrfs_root" = { - mountPoint = "/"; - label = ssdLabel; - fsType = "btrfs"; - options = [ "subvol=@" ]; - }; - "btrfs_boot" = { - mountPoint = "/boot"; - label = ssdLabel; - fsType = "btrfs"; - options = [ "subvol=@boot" ]; - }; - "btrfs_home" = { - mountPoint = "/home"; - label = ssdLabel; - fsType = "btrfs"; - options = [ "subvol=@home" ]; - }; - "btrfs_nix" = { - mountPoint = "/nix"; - label = ssdLabel; - fsType = "btrfs"; - options = [ "subvol=@nix" ]; - }; - }; - - swapDevices = [ ]; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; - hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; -} diff --git a/roles/common/configuration.nix b/roles/common/configuration.nix index 8871d76..29bf21d 100755 --- a/roles/common/configuration.nix +++ b/roles/common/configuration.nix @@ -36,8 +36,7 @@ console = { packages = [ pkgs.terminus_font ]; earlySetup = true; - # mkDefault has 1000 priority, so that way I don't conflict with nixos-hardware - font = lib.mkOverride 999 "ter-i16n"; + font = lib.mkDefault "ter-i16n"; # Make the console use X's keyboard configuration useXkbConfig = true; }; diff --git a/roles/school/programs/default.nix b/roles/school/programs/default.nix index 24dba3a..f1fad93 100644 --- a/roles/school/programs/default.nix +++ b/roles/school/programs/default.nix @@ -4,6 +4,7 @@ imports = [ ./virtualbox.nix ./idea.nix + ./webstorm.nix ./vscode.nix ]; diff --git a/roles/school/programs/webstorm.nix b/roles/school/programs/webstorm.nix new file mode 100644 index 0000000..66a2265 --- /dev/null +++ b/roles/school/programs/webstorm.nix @@ -0,0 +1,22 @@ +{ pkgs, ... }: + +with pkgs; +{ + + home-manager.users.toast = { + home = { + packages = [ jetbrains.webstorm ]; + # Install plugins + file = { + ".local/share/JetBrains/WebStorm2023.2/catppuccin.jar".source = fetchurl { + url = "https://github.com/catppuccin/jetbrains/releases/download/v3.2.1/Catppuccin.Theme-3.2.1.jar"; + hash = "sha256-vE3Tv/dNfWyRuBJXLDPmtY1GnLShqM+dJR5rltXYdOY="; + }; + ".local/share/JetBrains/WebStorm2023.2/rainbow-brackets".source = fetchzip { + url = "https://github.com/izhangzhihao/intellij-rainbow-brackets/releases/download/2023.3.7/intellij-rainbow-brackets-2023.3.7.zip"; + hash = "sha256-szgyQs3iCge9rI274PA29i+tprPE11xpyJqiccedp6A="; + }; + }; + }; + }; +}