diff --git a/.forgejo/workflows/main.yml b/.forgejo/workflows/main.yml index 1ab5969..3dcfe63 100644 --- a/.forgejo/workflows/main.yml +++ b/.forgejo/workflows/main.yml @@ -23,7 +23,7 @@ jobs: runs-on: kaylee continue-on-error: false steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - name: Install Nix uses: https://github.com/DeterminateSystems/nix-installer-action@main diff --git a/.forgejo/workflows/renovate.yml b/.forgejo/workflows/renovate.yml index 53023bc..c98ec65 100644 --- a/.forgejo/workflows/renovate.yml +++ b/.forgejo/workflows/renovate.yml @@ -15,7 +15,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Install Nix uses: https://github.com/DeterminateSystems/nix-installer-action@main diff --git a/dot_config/flake/flake.lock b/dot_config/flake/flake.lock index c67bf02..d26475e 100644 --- a/dot_config/flake/flake.lock +++ b/dot_config/flake/flake.lock @@ -3,23 +3,21 @@ "dankMaterialShell": { "inputs": { "dgop": "dgop", - "dms-cli": "dms-cli", "nixpkgs": [ "nixpkgs-unstable" - ], - "quickshell": "quickshell" + ] }, "locked": { - "lastModified": 1760122870, - "narHash": "sha256-lGy9uHYY6iuUWRUg1g+qnjkqgxgtX5N6G4SFl1ESAZg=", + "lastModified": 1763560490, + "narHash": "sha256-dLbiTWsKoF0if/Wqet/+L90ILdAaBqp+REGOou8uH3k=", "owner": "AvengeMedia", "repo": "DankMaterialShell", - "rev": "cd488a8623e6a55185685e82d8362c003a7671a8", + "rev": "e39465aece2fd3414cbb82c7fc5fda1809de168e", "type": "github" }, "original": { "owner": "AvengeMedia", - "ref": "v0.1.10", + "ref": "v0.6.2", "repo": "DankMaterialShell", "type": "github" } @@ -110,11 +108,11 @@ ] }, "locked": { - "lastModified": 1759769087, - "narHash": "sha256-b4dEAjvIfIkw2/C47aZGDnwhTBEjqptDo8J5PizeTCo=", + "lastModified": 1762435535, + "narHash": "sha256-QhzRn7pYN35IFpKjjxJAj3GPJECuC+VLhoGem3ezycc=", "owner": "AvengeMedia", "repo": "dgop", - "rev": "ad6ad285e8b882c41eb8994ef7c91e151afb9a97", + "rev": "6cf638dde818f9f8a2e26d0243179c43cb3458d7", "type": "github" }, "original": { @@ -123,27 +121,6 @@ "type": "github" } }, - "dms-cli": { - "inputs": { - "nixpkgs": [ - "dankMaterialShell", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1759982027, - "narHash": "sha256-4deRT98VwfZWZ685wIGevyYl3CzpuZJPjdjfulABH00=", - "owner": "AvengeMedia", - "repo": "danklinux", - "rev": "5cdfeeae2e14089079dcb0d6b61f014ce754021f", - "type": "github" - }, - "original": { - "owner": "AvengeMedia", - "repo": "danklinux", - "type": "github" - } - }, "firefox-gnome-theme": { "flake": false, "locked": { @@ -529,27 +506,6 @@ } }, "quickshell": { - "inputs": { - "nixpkgs": [ - "dankMaterialShell", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1759610621, - "narHash": "sha256-P3UPFd95mS/3aNgy40nCXAmyfR2bEEBd+tX6xfkYFb0=", - "ref": "refs/heads/master", - "rev": "c5c438f1cd1a76660a8658ef929a3d19e968e2ce", - "revCount": 689, - "type": "git", - "url": "https://git.outfoxxed.me/quickshell/quickshell" - }, - "original": { - "type": "git", - "url": "https://git.outfoxxed.me/quickshell/quickshell" - } - }, - "quickshell_2": { "inputs": { "nixpkgs": [ "nixpkgs-unstable" @@ -583,7 +539,7 @@ "nixpkgs": "nixpkgs_4", "nixpkgs-unstable": "nixpkgs-unstable", "noctalia": "noctalia", - "quickshell": "quickshell_2" + "quickshell": "quickshell" } }, "systems": { diff --git a/dot_config/flake/flake.nix b/dot_config/flake/flake.nix index 9c43828..657fb04 100644 --- a/dot_config/flake/flake.nix +++ b/dot_config/flake/flake.nix @@ -89,7 +89,7 @@ in { overlays = import ./overlays {inherit inputs;}; - defaultPackage = forAllSystems (system: home-manager.defaultPackage.${system}); + # defaultPackage = forAllSystems (system: home-manager.defaultPackage.${system}); nixosConfigurations = { kaylee = nixpkgs.lib.nixosSystem { @@ -145,6 +145,24 @@ } ]; }; + + saffron = nixpkgs.lib.nixosSystem { + specialArgs = {inherit inputs outputs;}; + modules = [ + determinate.nixosModules.default + ./machines/saffron/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/saffron/home.nix; + } + ]; + }; }; darwinConfigurations."MacBook-Pro" = darwin.lib.darwinSystem { @@ -170,13 +188,5 @@ } ]; }; - - homeConfigurations = { - "tyler@guidebolt" = home-manager.lib.homeManagerConfiguration { - pkgs = allPkgs."x86_64-linux"; - extraSpecialArgs = {inherit inputs outputs;}; - modules = [./home/guidebolt/guidebolt.nix]; - }; - }; }; } diff --git a/dot_config/flake/home/niri.nix b/dot_config/flake/home/niri.nix index 70d593a..712114e 100644 --- a/dot_config/flake/home/niri.nix +++ b/dot_config/flake/home/niri.nix @@ -18,6 +18,8 @@ xdg-desktop-portal-gtk gnome-keyring + eog + upower mods.xwayland-satellite diff --git a/dot_config/flake/machines/kaylee/hardware-configuration.nix b/dot_config/flake/machines/kaylee/hardware-configuration.nix index 7f73064..42555c3 100644 --- a/dot_config/flake/machines/kaylee/hardware-configuration.nix +++ b/dot_config/flake/machines/kaylee/hardware-configuration.nix @@ -1,32 +1,36 @@ # 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") - ]; + config, + lib, + pkgs, + modulesPath, + ... +}: { + imports = [ + (modulesPath + "/installer/scan/not-detected.nix") + ]; - boot.initrd.availableKernelModules = [ "ehci_pci" "nvme" "xhci_pci" "usbhid" "usb_storage" "sd_mod" "sr_mod" ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ "kvm-amd" ]; - boot.extraModulePackages = [ ]; + boot.initrd.availableKernelModules = ["ehci_pci" "nvme" "xhci_pci" "usbhid" "usb_storage" "sd_mod" "sr_mod"]; + boot.initrd.kernelModules = []; + boot.kernelModules = ["kvm-amd"]; + boot.extraModulePackages = []; - fileSystems."/" = - { device = "/dev/disk/by-uuid/093a88f0-7ec2-4672-b7bb-bb7f62df99ca"; - fsType = "ext4"; - }; + fileSystems."/" = { + device = "/dev/disk/by-uuid/093a88f0-7ec2-4672-b7bb-bb7f62df99ca"; + fsType = "ext4"; + }; - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/161E-9FB2"; - fsType = "vfat"; - options = [ "fmask=0077" "dmask=0077" ]; - }; + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/161E-9FB2"; + fsType = "vfat"; + options = ["fmask=0077" "dmask=0077"]; + }; - swapDevices = - [ { device = "/dev/disk/by-uuid/b150b63b-c446-4134-a444-e789318b9546"; } - ]; + swapDevices = [ + {device = "/dev/disk/by-uuid/b150b63b-c446-4134-a444-e789318b9546";} + ]; # 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/dot_config/flake/machines/saffron/configuration.nix b/dot_config/flake/machines/saffron/configuration.nix new file mode 100644 index 0000000..a7b4f2e --- /dev/null +++ b/dot_config/flake/machines/saffron/configuration.nix @@ -0,0 +1,125 @@ +{pkgs, outputs, ...}: { + imports = [ + # Include the results of the hardware scan. + ./hardware-configuration.nix + ]; + + nixpkgs = { + overlays = builtins.attrValues outputs.overlays; + + config = { + allowUnfree = true; + permittedInsecurePackages = [ + ]; + }; + }; + + # Use the GRUB 2 boot loader. + boot.loader.systemd-boot.enable = true; + # boot.loader.grub.efiSupport = true; + # boot.loader.grub.efiInstallAsRemovable = true; + # boot.loader.efi.efiSysMountPoint = "/boot/efi"; + # Define on which hard drive you want to install Grub. + # boot.loader.grub.device = "/dev/sda"; # or "nodev" for efi only + + # networking.hostName = "nixos"; # Define your hostname. + # Pick only one of the below networking options. + # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant. + # networking.networkmanager.enable = true; # Easiest to use and most distros use this by default. + + # Set your time zone. + # time.timeZone = "Europe/Amsterdam"; + + # Configure network proxy if necessary + # networking.proxy.default = "http://user:password@proxy:port/"; + # networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain"; + + # Select internationalisation properties. + # i18n.defaultLocale = "en_US.UTF-8"; + # console = { + # font = "Lat2-Terminus16"; + # keyMap = "us"; + # useXkbConfig = true; # use xkb.options in tty. + # }; + + # Enable the X11 windowing system. + # services.xserver.enable = true; + + # Configure keymap in X11 + # services.xserver.xkb.layout = "us"; + # services.xserver.xkb.options = "eurosign:e,caps:escape"; + + # Enable CUPS to print documents. + # services.printing.enable = true; + + # Enable sound. + # services.pulseaudio.enable = true; + # OR + # services.pipewire = { + # enable = true; + # pulse.enable = true; + # }; + + # Enable touchpad support (enabled default in most desktopManager). + # services.libinput.enable = true; + + users.users.tyler = { + isNormalUser = true; + description = "tyler"; + extraGroups = ["wheel"]; + shell = pkgs.fish; + }; + programs.fish.enable = true; + + # programs.firefox.enable = true; + + # List packages installed in system profile. + # You can use https://search.nixos.org/ to find more packages (and options). + # 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; + + # This option defines the first version of NixOS you have installed on this particular machine, + # and is used to maintain compatibility with application data (e.g. databases) created on older NixOS versions. + # + # Most users should NEVER change this value after the initial install, for any reason, + # even if you've upgraded your system to a new NixOS release. + # + # This value does NOT affect the Nixpkgs version your packages and OS are pulled from, + # so changing it will NOT upgrade your system - see https://nixos.org/manual/nixos/stable/#sec-upgrading for how + # to actually do that. + # + # This value being lower than the current NixOS release does NOT mean your system is + # out of date, out of support, or vulnerable. + # + # Do NOT change this value unless you have manually inspected all the changes it would make to your configuration, + # and migrated your data accordingly. + # + # For more information, see `man configuration.nix` or https://nixos.org/manual/nixos/stable/options#opt-system.stateVersion . + system.stateVersion = "25.05"; # Did you read the comment? +} diff --git a/dot_config/flake/machines/saffron/hardware-configuration.nix b/dot_config/flake/machines/saffron/hardware-configuration.nix new file mode 100644 index 0000000..a55cc69 --- /dev/null +++ b/dot_config/flake/machines/saffron/hardware-configuration.nix @@ -0,0 +1,39 @@ +# 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. +{ + lib, + modulesPath, + ... +}: { + imports = [ + (modulesPath + "/profiles/qemu-guest.nix") + ]; + + boot.initrd.availableKernelModules = ["ata_piix" "uhci_hcd" "virtio_pci" "sr_mod" "virtio_blk"]; + boot.initrd.kernelModules = []; + boot.kernelModules = ["kvm-intel"]; + boot.extraModulePackages = []; + + fileSystems."/" = { + device = "/dev/disk/by-uuid/50f54744-19c2-4119-8ff5-c64917c5e5d2"; + fsType = "ext4"; + }; + + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/301D-B62F"; + fsType = "vfat"; + options = ["fmask=0077" "dmask=0077"]; + }; + + 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.ens3.useDHCP = lib.mkDefault true; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; +} diff --git a/dot_config/flake/machines/saffron/home.nix b/dot_config/flake/machines/saffron/home.nix new file mode 100644 index 0000000..4618a17 --- /dev/null +++ b/dot_config/flake/machines/saffron/home.nix @@ -0,0 +1,16 @@ +{lib, ...}: { + imports = [ + ../../home/common.nix + ../../home/helide + ]; + + home = { + username = "tyler"; + homeDirectory = lib.mkForce "/home/tyler"; + + packages = [ + ]; + + stateVersion = "23.11"; + }; +} diff --git a/dot_config/flake/machines/wash/configuration.nix b/dot_config/flake/machines/wash/configuration.nix index 4890172..1f10968 100644 --- a/dot_config/flake/machines/wash/configuration.nix +++ b/dot_config/flake/machines/wash/configuration.nix @@ -175,6 +175,8 @@ programs.steam.enable = true; + programs.thunderbird.enable = true; + programs.appimage = { enable = true; binfmt = true;