diff --git a/nix/base/base_packages.nix b/nix/base/base_packages.nix index 7367597..4484588 100644 --- a/nix/base/base_packages.nix +++ b/nix/base/base_packages.nix @@ -29,8 +29,8 @@ seahorse upower (lib.mkIf config.conf.streamdeck.enable (callPackage - ../override/streamdeck.nix - { })) + ../override/streamdeck.nix + { })) ]; gtk.iconCache.enable = false; diff --git a/nix/base/common_hardware.nix b/nix/base/common_hardware.nix index 3ca1b2c..ac4e20e 100644 --- a/nix/base/common_hardware.nix +++ b/nix/base/common_hardware.nix @@ -29,7 +29,9 @@ in # Enable CUPS to print documents. services.printing.enable = true; services.printing.browsing = true; - services.printing.drivers = [ pkgs.hplip ]; + # fucking fun + # TODO: https://github.com/NixOS/nixpkgs/pull/325825 .... + # services.printing.drivers = [ pkgs.hplip ]; services.printing.startWhenNeeded = true; # optional services.avahi = { enable = true; diff --git a/nix/flake.lock b/nix/flake.lock deleted file mode 100644 index a9fa5d6..0000000 --- a/nix/flake.lock +++ /dev/null @@ -1,1444 +0,0 @@ -{ - "nodes": { - "anyrun": { - "inputs": { - "flake-parts": "flake-parts", - "nixpkgs": "nixpkgs", - "systems": "systems" - }, - "locked": { - "lastModified": 1717576207, - "narHash": "sha256-LU6d1xX7jN1zt10YU7Oym07MtzVfziSmUEznGFdbuaw=", - "owner": "Kirottu", - "repo": "anyrun", - "rev": "7aabad8d5bb7d1bffae903ce86427b888ab824b4", - "type": "github" - }, - "original": { - "owner": "Kirottu", - "repo": "anyrun", - "type": "github" - } - }, - "crane": { - "inputs": { - "nixpkgs": [ - "ironbar", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1717025063, - "narHash": "sha256-dIubLa56W9sNNz0e8jGxrX3CAkPXsq7snuFA/Ie6dn8=", - "owner": "ipetkov", - "repo": "crane", - "rev": "480dff0be03dac0e51a8dfc26e882b0d123a450e", - "type": "github" - }, - "original": { - "owner": "ipetkov", - "repo": "crane", - "type": "github" - } - }, - "flake-parts": { - "inputs": { - "nixpkgs-lib": [ - "anyrun", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1717285511, - "narHash": "sha256-iKzJcpdXih14qYVcZ9QC9XuZYnPc6T8YImb6dX166kw=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "2a55567fcf15b1b1c7ed712a2c6fadaec7412ea8", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "flake-parts_2": { - "inputs": { - "nixpkgs-lib": [ - "hyprdock", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1715865404, - "narHash": "sha256-/GJvTdTpuDjNn84j82cU6bXztE0MSkdnTWClUCRub78=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "8dc45382d5206bd292f9c2768b8058a8fd8311d9", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "flake-parts_3": { - "inputs": { - "nixpkgs-lib": [ - "oxicalc", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1715865404, - "narHash": "sha256-/GJvTdTpuDjNn84j82cU6bXztE0MSkdnTWClUCRub78=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "8dc45382d5206bd292f9c2768b8058a8fd8311d9", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "flake-parts_4": { - "inputs": { - "nixpkgs-lib": [ - "oxidash", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1715865404, - "narHash": "sha256-/GJvTdTpuDjNn84j82cU6bXztE0MSkdnTWClUCRub78=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "8dc45382d5206bd292f9c2768b8058a8fd8311d9", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "flake-parts_5": { - "inputs": { - "nixpkgs-lib": [ - "oxinoti", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1715865404, - "narHash": "sha256-/GJvTdTpuDjNn84j82cU6bXztE0MSkdnTWClUCRub78=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "8dc45382d5206bd292f9c2768b8058a8fd8311d9", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "flake-parts_6": { - "inputs": { - "nixpkgs-lib": [ - "oxipaste", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1715865404, - "narHash": "sha256-/GJvTdTpuDjNn84j82cU6bXztE0MSkdnTWClUCRub78=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "8dc45382d5206bd292f9c2768b8058a8fd8311d9", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "flake-parts_7": { - "inputs": { - "nixpkgs-lib": [ - "oxishut", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1715865404, - "narHash": "sha256-/GJvTdTpuDjNn84j82cU6bXztE0MSkdnTWClUCRub78=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "8dc45382d5206bd292f9c2768b8058a8fd8311d9", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "flake-parts_8": { - "inputs": { - "nixpkgs-lib": [ - "reset", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1715865404, - "narHash": "sha256-/GJvTdTpuDjNn84j82cU6bXztE0MSkdnTWClUCRub78=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "8dc45382d5206bd292f9c2768b8058a8fd8311d9", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "flake-parts_9": { - "inputs": { - "nixpkgs-lib": [ - "reset-plugins", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1715865404, - "narHash": "sha256-/GJvTdTpuDjNn84j82cU6bXztE0MSkdnTWClUCRub78=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "8dc45382d5206bd292f9c2768b8058a8fd8311d9", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "flake-utils": { - "inputs": { - "systems": "systems_3" - }, - "locked": { - "lastModified": 1705309234, - "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "flake-utils_2": { - "inputs": { - "systems": "systems_4" - }, - "locked": { - "lastModified": 1705309234, - "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "flake-utils_3": { - "inputs": { - "systems": "systems_5" - }, - "locked": { - "lastModified": 1705309234, - "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "flake-utils_4": { - "inputs": { - "systems": "systems_6" - }, - "locked": { - "lastModified": 1705309234, - "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "flake-utils_5": { - "inputs": { - "systems": "systems_7" - }, - "locked": { - "lastModified": 1705309234, - "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "flake-utils_6": { - "inputs": { - "systems": "systems_8" - }, - "locked": { - "lastModified": 1705309234, - "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "flake-utils_7": { - "inputs": { - "systems": "systems_9" - }, - "locked": { - "lastModified": 1705309234, - "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "home-manager": { - "inputs": { - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1720327769, - "narHash": "sha256-kAsg3Lg4YKKpGw+f1W2s5hzjP8B0y/juowvjK8utIag=", - "owner": "nix-community", - "repo": "home-manager", - "rev": "6b7ce96f34b324e4e104abc30d06955d216bac71", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "home-manager", - "type": "github" - } - }, - "hyprcursor": { - "inputs": { - "hyprlang": [ - "hyprland", - "hyprlang" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1718450675, - "narHash": "sha256-jpsns6buS4bK+1sF8sL8AaixAiCRjA+nldTKvcwmvUs=", - "owner": "hyprwm", - "repo": "hyprcursor", - "rev": "66d5b46ff94efbfa6fa3d1d1b66735f1779c34a6", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprcursor", - "type": "github" - } - }, - "hyprdock": { - "inputs": { - "flake-parts": "flake-parts_2", - "nixpkgs": "nixpkgs_2" - }, - "locked": { - "lastModified": 1716453478, - "narHash": "sha256-EoKGnKvYKoe9geFoK0wyEAMTPGOfRtjXibt4GUCfvBA=", - "owner": "DashieTM", - "repo": "hyprdock", - "rev": "8d07dbdf446e6b21528cc994547cc8f173a70330", - "type": "github" - }, - "original": { - "owner": "DashieTM", - "repo": "hyprdock", - "type": "github" - } - }, - "hyprland": { - "inputs": { - "hyprcursor": "hyprcursor", - "hyprlang": "hyprlang", - "hyprutils": "hyprutils", - "hyprwayland-scanner": "hyprwayland-scanner", - "nixpkgs": "nixpkgs_3", - "systems": "systems_2", - "xdph": "xdph" - }, - "locked": { - "lastModified": 1720213509, - "narHash": "sha256-aPYf8Jnu1fMgMYMgQnH433/Fcqfky1Z5ZuzCkNKcR1U=", - "ref": "refs/heads/main", - "rev": "cc98594c3aed0b542e03818371a4636f549f80e1", - "revCount": 4908, - "submodules": true, - "type": "git", - "url": "https://github.com/hyprwm/Hyprland" - }, - "original": { - "submodules": true, - "type": "git", - "url": "https://github.com/hyprwm/Hyprland" - } - }, - "hyprland-protocols": { - "inputs": { - "nixpkgs": [ - "hyprland", - "xdph", - "nixpkgs" - ], - "systems": [ - "hyprland", - "xdph", - "systems" - ] - }, - "locked": { - "lastModified": 1714869498, - "narHash": "sha256-vbLVOWvQqo4n1yvkg/Q70VTlPbMmTiCQfNTgcWDCfJM=", - "owner": "hyprwm", - "repo": "hyprland-protocols", - "rev": "e06482e0e611130cd1929f75e8c1cf679e57d161", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprland-protocols", - "type": "github" - } - }, - "hyprlang": { - "inputs": { - "hyprutils": [ - "hyprland", - "hyprutils" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1717881852, - "narHash": "sha256-XeeVoKHQgfKuXoP6q90sUqKyl7EYy3ol2dVZGM+Jj94=", - "owner": "hyprwm", - "repo": "hyprlang", - "rev": "ec6938c66253429192274d612912649a0cfe4d28", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprlang", - "type": "github" - } - }, - "hyprutils": { - "inputs": { - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1719316102, - "narHash": "sha256-dmRz128j/lJmMuTYeCYPfSBRHHQO3VeH4PbmoyAhHzw=", - "owner": "hyprwm", - "repo": "hyprutils", - "rev": "1f6bbec5954f623ff8d68e567bddcce97cd2f085", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprutils", - "type": "github" - } - }, - "hyprwayland-scanner": { - "inputs": { - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1719067853, - "narHash": "sha256-mAnZG/eQy72Fp1ImGtqCgUrDumnR1rMZv2E/zgP4U74=", - "owner": "hyprwm", - "repo": "hyprwayland-scanner", - "rev": "914f083741e694092ee60a39d31f693d0a6dc734", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprwayland-scanner", - "type": "github" - } - }, - "ironbar": { - "inputs": { - "crane": "crane", - "naersk": "naersk", - "nixpkgs": "nixpkgs_5", - "rust-overlay": "rust-overlay" - }, - "locked": { - "lastModified": 1719927553, - "narHash": "sha256-8DBU91zfxyEZF1mCy1qmvA7mb/ee7AwqEUAT6ScJu40=", - "owner": "JakeStanger", - "repo": "ironbar", - "rev": "bcaa13deae4e47caa5fffa7fdaa0981af1fec297", - "type": "github" - }, - "original": { - "owner": "JakeStanger", - "repo": "ironbar", - "type": "github" - } - }, - "naersk": { - "inputs": { - "nixpkgs": "nixpkgs_4" - }, - "locked": { - "lastModified": 1717067539, - "narHash": "sha256-oIs5EF+6VpHJRvvpVWuqCYJMMVW/6h59aYUv9lABLtY=", - "owner": "nix-community", - "repo": "naersk", - "rev": "fa19d8c135e776dc97f4dcca08656a0eeb28d5c0", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "naersk", - "type": "github" - } - }, - "nix-flatpak": { - "locked": { - "lastModified": 1711997375, - "narHash": "sha256-KvU4gOtuFMS9Il67glRGtdNfguAINT9pCaXtvCL8uI8=", - "owner": "gmodena", - "repo": "nix-flatpak", - "rev": "45bf66f7068db79b552da864c0e87452be624d6c", - "type": "github" - }, - "original": { - "owner": "gmodena", - "repo": "nix-flatpak", - "type": "github" - } - }, - "nixpkgs": { - "locked": { - "lastModified": 1717196966, - "narHash": "sha256-yZKhxVIKd2lsbOqYd5iDoUIwsRZFqE87smE2Vzf6Ck0=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "57610d2f8f0937f39dbd72251e9614b1561942d8", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-stable": { - "locked": { - "lastModified": 1720282526, - "narHash": "sha256-dudRkHPRivMNOhd04YI+v4sWvn2SnN5ODSPIu5IVbco=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "550ac3e955c30fe96dd8b2223e37e0f5d225c927", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "release-24.05", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_10": { - "locked": { - "lastModified": 1716137900, - "narHash": "sha256-sowPU+tLQv8GlqtVtsXioTKeaQvlMz/pefcdwg8MvfM=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "6c0b7a92c30122196a761b440ac0d46d3d9954f1", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_11": { - "locked": { - "lastModified": 1706487304, - "narHash": "sha256-LE8lVX28MV2jWJsidW13D2qrHU/RUUONendL2Q/WlJg=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "90f456026d284c22b3e3497be980b2e47d0b28ac", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_12": { - "locked": { - "lastModified": 1716137900, - "narHash": "sha256-sowPU+tLQv8GlqtVtsXioTKeaQvlMz/pefcdwg8MvfM=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "6c0b7a92c30122196a761b440ac0d46d3d9954f1", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_13": { - "locked": { - "lastModified": 1716190602, - "narHash": "sha256-xYRimrR0duWvokWQEvB87bSsICeCvvX9DxpUOzCfsDE=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "5a5ac83292c7842072318f57d68a48474f8bd34d", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_14": { - "locked": { - "lastModified": 1716137900, - "narHash": "sha256-sowPU+tLQv8GlqtVtsXioTKeaQvlMz/pefcdwg8MvfM=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "6c0b7a92c30122196a761b440ac0d46d3d9954f1", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_15": { - "locked": { - "lastModified": 1706487304, - "narHash": "sha256-LE8lVX28MV2jWJsidW13D2qrHU/RUUONendL2Q/WlJg=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "90f456026d284c22b3e3497be980b2e47d0b28ac", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_16": { - "locked": { - "lastModified": 1716137900, - "narHash": "sha256-sowPU+tLQv8GlqtVtsXioTKeaQvlMz/pefcdwg8MvfM=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "6c0b7a92c30122196a761b440ac0d46d3d9954f1", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_17": { - "locked": { - "lastModified": 1706487304, - "narHash": "sha256-LE8lVX28MV2jWJsidW13D2qrHU/RUUONendL2Q/WlJg=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "90f456026d284c22b3e3497be980b2e47d0b28ac", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_18": { - "locked": { - "lastModified": 1716948383, - "narHash": "sha256-SzDKxseEcHR5KzPXLwsemyTR/kaM9whxeiJohbL04rs=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "ad57eef4ef0659193044870c731987a6df5cf56b", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_19": { - "locked": { - "lastModified": 1706487304, - "narHash": "sha256-LE8lVX28MV2jWJsidW13D2qrHU/RUUONendL2Q/WlJg=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "90f456026d284c22b3e3497be980b2e47d0b28ac", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_2": { - "locked": { - "lastModified": 1716330097, - "narHash": "sha256-8BO3B7e3BiyIDsaKA0tY8O88rClYRTjvAp66y+VBUeU=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "5710852ba686cc1fd0d3b8e22b3117d43ba374c2", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_20": { - "locked": { - "lastModified": 1720181791, - "narHash": "sha256-i4vJL12/AdyuQuviMMd1Hk2tsGt02hDNhA0Zj1m16N8=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "4284c2b73c8bce4b46a6adf23e16d9e2ec8da4bb", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_3": { - "locked": { - "lastModified": 1719075281, - "narHash": "sha256-CyyxvOwFf12I91PBWz43iGT1kjsf5oi6ax7CrvaMyAo=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "a71e967ef3694799d0c418c98332f7ff4cc5f6af", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_4": { - "locked": { - "lastModified": 1717112898, - "narHash": "sha256-7R2ZvOnvd9h8fDd65p0JnB7wXfUvreox3xFdYWd1BnY=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "6132b0f6e344ce2fe34fc051b72fb46e34f668e0", - "type": "github" - }, - "original": { - "id": "nixpkgs", - "type": "indirect" - } - }, - "nixpkgs_5": { - "locked": { - "lastModified": 1716948383, - "narHash": "sha256-SzDKxseEcHR5KzPXLwsemyTR/kaM9whxeiJohbL04rs=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "ad57eef4ef0659193044870c731987a6df5cf56b", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_6": { - "locked": { - "lastModified": 1720031269, - "narHash": "sha256-rwz8NJZV+387rnWpTYcXaRNvzUSnnF9aHONoJIYmiUQ=", - "owner": "NixOs", - "repo": "nixpkgs", - "rev": "9f4128e00b0ae8ec65918efeba59db998750ead6", - "type": "github" - }, - "original": { - "owner": "NixOs", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_7": { - "locked": { - "lastModified": 1716137900, - "narHash": "sha256-sowPU+tLQv8GlqtVtsXioTKeaQvlMz/pefcdwg8MvfM=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "6c0b7a92c30122196a761b440ac0d46d3d9954f1", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_8": { - "locked": { - "lastModified": 1716137900, - "narHash": "sha256-sowPU+tLQv8GlqtVtsXioTKeaQvlMz/pefcdwg8MvfM=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "6c0b7a92c30122196a761b440ac0d46d3d9954f1", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_9": { - "locked": { - "lastModified": 1706487304, - "narHash": "sha256-LE8lVX28MV2jWJsidW13D2qrHU/RUUONendL2Q/WlJg=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "90f456026d284c22b3e3497be980b2e47d0b28ac", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nur": { - "locked": { - "lastModified": 1720340553, - "narHash": "sha256-yltkWY9tbcTO1E9lsegEUcqcHdF+F3Yb8O79CjSAHrg=", - "owner": "nix-community", - "repo": "nur", - "rev": "64eb60afcb54464e61d34fda417e7a5c7a935c21", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "nur", - "type": "github" - } - }, - "oxicalc": { - "inputs": { - "flake-parts": "flake-parts_3", - "nixpkgs": "nixpkgs_7" - }, - "locked": { - "lastModified": 1716225554, - "narHash": "sha256-IenHIQgKdKJTt02VJLQ+q8EunIkMwQ57XFWyKO+rb7s=", - "owner": "DashieTM", - "repo": "OxiCalc", - "rev": "a3fa5d76941278fd0f586817dcd04be134159bd8", - "type": "github" - }, - "original": { - "owner": "DashieTM", - "repo": "OxiCalc", - "type": "github" - } - }, - "oxidash": { - "inputs": { - "flake-parts": "flake-parts_4", - "nixpkgs": "nixpkgs_8", - "rust-overlay": "rust-overlay_2" - }, - "locked": { - "lastModified": 1716235599, - "narHash": "sha256-6LDrLEfPzwbd5nEcis8us4BA18YhoWkzMVwafCJ5N/A=", - "owner": "DashieTM", - "repo": "OxiDash", - "rev": "fe6984abc73f75a64b0a03231068c20f53ec4f76", - "type": "github" - }, - "original": { - "owner": "DashieTM", - "repo": "OxiDash", - "type": "github" - } - }, - "oxinoti": { - "inputs": { - "flake-parts": "flake-parts_5", - "nixpkgs": "nixpkgs_10", - "rust-overlay": "rust-overlay_3" - }, - "locked": { - "lastModified": 1716235566, - "narHash": "sha256-1U4/h0YyuoOERjQE68yQZVsDdIGl43OprDplSGBMhYY=", - "owner": "DashieTM", - "repo": "OxiNoti", - "rev": "c52c330d59a3b066e94618adbe9a7be5b9cfde24", - "type": "github" - }, - "original": { - "owner": "DashieTM", - "repo": "OxiNoti", - "type": "github" - } - }, - "oxipaste": { - "inputs": { - "flake-parts": "flake-parts_6", - "nixpkgs": "nixpkgs_12", - "rust-overlay": "rust-overlay_4" - }, - "locked": { - "lastModified": 1716235097, - "narHash": "sha256-kTsSNciMnp3y/QOPseB/QlhRqVxrm7teRCMl05OIiBs=", - "owner": "DashieTM", - "repo": "OxiPaste", - "rev": "3f494c1a3dd093e3c5761520554977a9dec33a3a", - "type": "github" - }, - "original": { - "owner": "DashieTM", - "repo": "OxiPaste", - "type": "github" - } - }, - "oxishut": { - "inputs": { - "flake-parts": "flake-parts_7", - "nixpkgs": "nixpkgs_14", - "rust-overlay": "rust-overlay_5" - }, - "locked": { - "lastModified": 1716235696, - "narHash": "sha256-qqN2ev97ff1Yftr+8YS7Pm2/kk8SpQU8uxplbQYJGho=", - "owner": "DashieTM", - "repo": "OxiShut", - "rev": "d38d5c892b7ae2420715cbb6b4944abb76b49f9d", - "type": "github" - }, - "original": { - "owner": "DashieTM", - "repo": "OxiShut", - "type": "github" - } - }, - "reset": { - "inputs": { - "flake-parts": "flake-parts_8", - "nixpkgs": "nixpkgs_16", - "rust-overlay": "rust-overlay_6" - }, - "locked": { - "lastModified": 1718284469, - "narHash": "sha256-6cZjFyjhGTOj9r8eprCWZy1v2o1Tqcl6H6g/LTgHhp4=", - "owner": "Xetibo", - "repo": "ReSet", - "rev": "6c1291bd19383ea45d0610dcdc17e8491b8e20ea", - "type": "github" - }, - "original": { - "owner": "Xetibo", - "repo": "ReSet", - "type": "github" - } - }, - "reset-plugins": { - "inputs": { - "flake-parts": "flake-parts_9", - "nixpkgs": "nixpkgs_18", - "rust-overlay": "rust-overlay_7" - }, - "locked": { - "lastModified": 1718300175, - "narHash": "sha256-kPeJJ/au+jV4jhyAhkLI3uwqK7pEDjdVJvwDmtQq8/k=", - "owner": "Xetibo", - "repo": "ReSet-Plugins", - "rev": "8d3af2fab9425f8b89fb7b82b4e23eba12a42f85", - "type": "github" - }, - "original": { - "owner": "Xetibo", - "repo": "ReSet-Plugins", - "type": "github" - } - }, - "root": { - "inputs": { - "anyrun": "anyrun", - "home-manager": "home-manager", - "hyprdock": "hyprdock", - "hyprland": "hyprland", - "ironbar": "ironbar", - "nix-flatpak": "nix-flatpak", - "nixpkgs": "nixpkgs_6", - "nur": "nur", - "oxicalc": "oxicalc", - "oxidash": "oxidash", - "oxinoti": "oxinoti", - "oxipaste": "oxipaste", - "oxishut": "oxishut", - "reset": "reset", - "reset-plugins": "reset-plugins", - "sops-nix": "sops-nix" - } - }, - "rust-overlay": { - "inputs": { - "flake-utils": "flake-utils", - "nixpkgs": [ - "ironbar", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1717121863, - "narHash": "sha256-/3sxIe7MZqF/jw1RTQCSmgTjwVod43mmrk84m50MJQ4=", - "owner": "oxalica", - "repo": "rust-overlay", - "rev": "2a7b53172ed08f856b8382d7dcfd36a4e0cbd866", - "type": "github" - }, - "original": { - "owner": "oxalica", - "repo": "rust-overlay", - "type": "github" - } - }, - "rust-overlay_2": { - "inputs": { - "flake-utils": "flake-utils_2", - "nixpkgs": "nixpkgs_9" - }, - "locked": { - "lastModified": 1716171463, - "narHash": "sha256-lc7wOh5BjYUoxdhcPkeUY8BmuL2qtRaHlW1403RW48E=", - "owner": "oxalica", - "repo": "rust-overlay", - "rev": "04d61d14803854fd8453ec43c5c53a471e5407a8", - "type": "github" - }, - "original": { - "owner": "oxalica", - "repo": "rust-overlay", - "type": "github" - } - }, - "rust-overlay_3": { - "inputs": { - "flake-utils": "flake-utils_3", - "nixpkgs": "nixpkgs_11" - }, - "locked": { - "lastModified": 1716171463, - "narHash": "sha256-lc7wOh5BjYUoxdhcPkeUY8BmuL2qtRaHlW1403RW48E=", - "owner": "oxalica", - "repo": "rust-overlay", - "rev": "04d61d14803854fd8453ec43c5c53a471e5407a8", - "type": "github" - }, - "original": { - "owner": "oxalica", - "repo": "rust-overlay", - "type": "github" - } - }, - "rust-overlay_4": { - "inputs": { - "flake-utils": "flake-utils_4", - "nixpkgs": "nixpkgs_13" - }, - "locked": { - "lastModified": 1716171463, - "narHash": "sha256-lc7wOh5BjYUoxdhcPkeUY8BmuL2qtRaHlW1403RW48E=", - "owner": "oxalica", - "repo": "rust-overlay", - "rev": "04d61d14803854fd8453ec43c5c53a471e5407a8", - "type": "github" - }, - "original": { - "owner": "oxalica", - "repo": "rust-overlay", - "type": "github" - } - }, - "rust-overlay_5": { - "inputs": { - "flake-utils": "flake-utils_5", - "nixpkgs": "nixpkgs_15" - }, - "locked": { - "lastModified": 1716171463, - "narHash": "sha256-lc7wOh5BjYUoxdhcPkeUY8BmuL2qtRaHlW1403RW48E=", - "owner": "oxalica", - "repo": "rust-overlay", - "rev": "04d61d14803854fd8453ec43c5c53a471e5407a8", - "type": "github" - }, - "original": { - "owner": "oxalica", - "repo": "rust-overlay", - "type": "github" - } - }, - "rust-overlay_6": { - "inputs": { - "flake-utils": "flake-utils_6", - "nixpkgs": "nixpkgs_17" - }, - "locked": { - "lastModified": 1716171463, - "narHash": "sha256-lc7wOh5BjYUoxdhcPkeUY8BmuL2qtRaHlW1403RW48E=", - "owner": "oxalica", - "repo": "rust-overlay", - "rev": "04d61d14803854fd8453ec43c5c53a471e5407a8", - "type": "github" - }, - "original": { - "owner": "oxalica", - "repo": "rust-overlay", - "type": "github" - } - }, - "rust-overlay_7": { - "inputs": { - "flake-utils": "flake-utils_7", - "nixpkgs": "nixpkgs_19" - }, - "locked": { - "lastModified": 1717035469, - "narHash": "sha256-MzH+yjKULH3HCRj9QCTwBvqq4LZkR0ZqRE/QfGOGC2E=", - "owner": "oxalica", - "repo": "rust-overlay", - "rev": "095702e63a40e86f339d11864da9dc965b70a01e", - "type": "github" - }, - "original": { - "owner": "oxalica", - "repo": "rust-overlay", - "type": "github" - } - }, - "sops-nix": { - "inputs": { - "nixpkgs": "nixpkgs_20", - "nixpkgs-stable": "nixpkgs-stable" - }, - "locked": { - "lastModified": 1720321395, - "narHash": "sha256-kcI8q9Nh8/CSj0ygfWq1DLckHl8IHhFarL8ie6g7OEk=", - "owner": "Mic92", - "repo": "sops-nix", - "rev": "c184aca4db5d71c3db0c8cbfcaaec337a5d065ea", - "type": "github" - }, - "original": { - "owner": "Mic92", - "repo": "sops-nix", - "type": "github" - } - }, - "systems": { - "locked": { - "lastModified": 1689347949, - "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", - "owner": "nix-systems", - "repo": "default-linux", - "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default-linux", - "type": "github" - } - }, - "systems_2": { - "locked": { - "lastModified": 1689347949, - "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", - "owner": "nix-systems", - "repo": "default-linux", - "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default-linux", - "type": "github" - } - }, - "systems_3": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, - "systems_4": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, - "systems_5": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, - "systems_6": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, - "systems_7": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, - "systems_8": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, - "systems_9": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, - "xdph": { - "inputs": { - "hyprland-protocols": "hyprland-protocols", - "hyprlang": [ - "hyprland", - "hyprlang" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1718619174, - "narHash": "sha256-FWW68AVYmB91ZDQnhLMBNCUUTCjb1ZpO2k2KIytHtkA=", - "owner": "hyprwm", - "repo": "xdg-desktop-portal-hyprland", - "rev": "c7894aa54f9a7dbd16df5cd24d420c8af22d5623", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "xdg-desktop-portal-hyprland", - "type": "github" - } - } - }, - "root": "root", - "version": 7 -} diff --git a/nix/flake.nix b/nix/flake.nix index 310295b..ff67740 100644 --- a/nix/flake.nix +++ b/nix/flake.nix @@ -45,45 +45,41 @@ system = "x86_64-linux"; overlays = [ inputs.nur.overlay + # DUDE FOR FUCK SAKE + # https://github.com/NixOS/nixpkgs/pull/325825 .... + # fucking fun + # TODO: https://github.com/NixOS/nixpkgs/pull/325825 .... + (_: prev: { + python312 = prev.python312.override { packageOverrides = _: pysuper: { nose = pysuper.pynose; }; }; + }) ]; config = { allowUnfree = true; }; }; - base_imports = [ - inputs.home-manager.nixosModules.home-manager - ./base/default.nix - ./programs - ]; in { - nixosConfigurations."marmo" = inputs.nixpkgs.lib.nixosSystem { - specialArgs = { - inherit inputs pkgs; - mod = ./hardware/marmo/base_config.nix; - }; - modules = [ - ./hardware/marmo/default.nix - ] ++ base_imports; - }; - nixosConfigurations."overheating" = inputs.nixpkgs.lib.nixosSystem { - specialArgs = { - inherit inputs pkgs; - mod = ./hardware/overheating/base_config.nix; - }; - modules = [ - ./hardware/overheating/default.nix - ] ++ base_imports; - }; - nixosConfigurations."spaceship" = inputs.nixpkgs.lib.nixosSystem { - specialArgs = { - inherit inputs pkgs; - mod = ./hardware/spaceship/base_config.nix; - }; - modules = [ - ./hardware/spaceship/default.nix - ] ++ base_imports; - }; + nixosConfigurations = (builtins.listToAttrs (map + (name: { + name = name; + value = + let + mod = ./hardware/${name}/configuration.nix; + in + inputs.nixpkgs.lib.nixosSystem { + specialArgs = { + inherit inputs pkgs mod; + }; + modules = [ + mod + + inputs.home-manager.nixosModules.home-manager + ./base/default.nix + ./programs + ] ++ inputs.nixpkgs.lib.optional (builtins.pathExists ./hardware/${name}/${name}.nix) ./hardware/${name}/${name}.nix + ++ inputs.nixpkgs.lib.optional (builtins.pathExists mod) mod; + }; + }) [ "marmo" "overheating" "spaceship" ])); }; nixConfig = { diff --git a/nix/hardware/marmo/base_config.nix b/nix/hardware/marmo/base_config.nix deleted file mode 100644 index a410c1e..0000000 --- a/nix/hardware/marmo/base_config.nix +++ /dev/null @@ -1,12 +0,0 @@ -{ - imports = [ - ../../modules - ]; - wayland.windowManager.hyprland.settings.monitor = [ - # default - "DP-1,1920x1080@144,0x0,1" - # all others - ",highrr,auto,1" - ]; - conf.monitor = "DP-1"; -} diff --git a/nix/hardware/marmo/configuration.nix b/nix/hardware/marmo/configuration.nix index d10bf51..3fbaf27 100644 --- a/nix/hardware/marmo/configuration.nix +++ b/nix/hardware/marmo/configuration.nix @@ -10,5 +10,11 @@ device = 1; }; hostname = "marmo"; + hyprland.monitor = [ + # default + "DP-1,1920x1080@144,0x0,1" + # all others + ",highrr,auto,1" + ]; }; } diff --git a/nix/hardware/marmo/default.nix b/nix/hardware/marmo/default.nix deleted file mode 100644 index 2e9bfbc..0000000 --- a/nix/hardware/marmo/default.nix +++ /dev/null @@ -1,6 +0,0 @@ -{ - imports = [ - ./marmo.nix - ./configuration.nix - ]; -} diff --git a/nix/hardware/overheating/base_config.nix b/nix/hardware/overheating/base_config.nix deleted file mode 100644 index f291f3b..0000000 --- a/nix/hardware/overheating/base_config.nix +++ /dev/null @@ -1,19 +0,0 @@ -{ - imports = [ - ../../modules - ]; - wayland.windowManager.hyprland.settings.monitor = [ - # default - "eDP-1,2944x1840@90,0x0,2" - - # all others - ",highres,auto,1" - ]; - conf = { - monitor = "eDP-1"; - battery = [ - { type = "upower"; class = "memory-usage"; } - ]; - }; - programs.hyprland.extra_autostart = [ "hyprdock --server" ]; -} diff --git a/nix/hardware/overheating/configuration.nix b/nix/hardware/overheating/configuration.nix index ca0b2b4..bbfa866 100644 --- a/nix/hardware/overheating/configuration.nix +++ b/nix/hardware/overheating/configuration.nix @@ -9,6 +9,19 @@ scale = "2.0"; hostname = "overheating"; boot_params = [ "rtc_cmos.use_acpi_alarm=1" ]; + ironbar.modules = [ + { type = "upower"; class = "memory-usage"; } + ]; + hyprland = { + monitor = [ + # default + "eDP-1,2944x1840@90,0x0,2" + + # all others + ",highres,auto,1" + ]; + extra_autostart = [ "hyprdock --server" ]; + }; }; hardware.bluetooth.enable = true; diff --git a/nix/hardware/overheating/default.nix b/nix/hardware/overheating/default.nix deleted file mode 100644 index 3091cdc..0000000 --- a/nix/hardware/overheating/default.nix +++ /dev/null @@ -1,6 +0,0 @@ -{ - imports = [ - ./overheating.nix - ./configuration.nix - ]; -} diff --git a/nix/hardware/spaceship/base_config.nix b/nix/hardware/spaceship/base_config.nix deleted file mode 100644 index 145448c..0000000 --- a/nix/hardware/spaceship/base_config.nix +++ /dev/null @@ -1,51 +0,0 @@ -{ config, ... }: -let - username = config.conf.username; -in -{ - imports = [ - ../../modules - ]; - wayland.windowManager.hyprland.settings.monitor = [ - # default - "DP-2,2560x1440@165,0x0,1" - "DP-1,3440x1440@180,2560x0,1,vrr,1" - "HDMI-A-1,1920x1200@60,6000x0,1" - "HDMI-A-1,transform,1" - - # all others - ",highrr,auto,1" - ]; - wayland.windowManager.hyprland.settings.workspace = [ - # workspaces - # monitor middle - "2,monitor:DP-1, default:true" - "4,monitor:DP-1" - "6,monitor:DP-1" - "8,monitor:DP-1" - "9,monitor:DP-1" - "10,monitor:DP-1" - - # monitor left - "1,monitor:DP-2, default:true" - "5,monitor:DP-2" - "7,monitor:DP-2" - - # monitor right - "3,monitor:HDMI-A-1, default:true" - ]; - conf.monitor = "DP-1"; - programs.hyprland.hyprpaper = '' - #load - preload = /home/${username}/Pictures/backgrounds/shinobu_2k.jpg - preload = /home/${username}/Pictures/backgrounds/shino_wide.png - preload = /home/${username}/Pictures/backgrounds/shinobu_1200.jpg - - #set - wallpaper = DP-2,/home/${username}/Pictures/backgrounds/shinobu_2k.jpg - wallpaper = DP-1,/home/${username}/Pictures/backgrounds/shino_wide.png - wallpaper = HDMI-A-1,/home/${username}/Pictures/backgrounds/shinobu_1200.jpg - splash = true - ''; - programs.hyprland.extra_autostart = [ "streamdeck -n" ]; -} diff --git a/nix/hardware/spaceship/configuration.nix b/nix/hardware/spaceship/configuration.nix index 32efe02..50d7c8b 100644 --- a/nix/hardware/spaceship/configuration.nix +++ b/nix/hardware/spaceship/configuration.nix @@ -1,4 +1,7 @@ -{ pkgs, lib, ... }: +{ config, ... }: +let + username = config.conf.username; +in { imports = [ ../../modules/conf.nix @@ -12,28 +15,48 @@ }; streamdeck.enable = true; hostname = "spaceship"; - }; + hyprland = { + monitor = [ + # default + "DP-2,2560x1440@165,0x0,1" + "DP-1,3440x1440@180,2560x0,1,vrr,1" + "HDMI-A-1,1920x1200@60,6000x0,1" + "HDMI-A-1,transform,1" - virtualisation.virtualbox.host.enable = true; + # all others + ",highrr,auto,1" + ]; + workspace = [ + # workspaces + # monitor middle + "2,monitor:DP-1, default:true" + "4,monitor:DP-1" + "6,monitor:DP-1" + "8,monitor:DP-1" + "9,monitor:DP-1" + "10,monitor:DP-1" - # enable hardware acceleration and rocm - hardware.xone.enable = true; - hardware.graphics.extraPackages = with pkgs; [ - libvdpau-va-gl - vaapiVdpau - rocmPackages.clr.icd - rocm-opencl-runtime - ]; - hardware.graphics = { - enable = true; - enable32Bit = lib.mkDefault true; - }; - networking.firewall = { - allowedTCPPortRanges = [ - { from = 1714; to = 1764; } # KDE Connect - ]; - allowedUDPPortRanges = [ - { from = 1714; to = 1764; } # KDE Connect - ]; + # monitor left + "1,monitor:DP-2, default:true" + "5,monitor:DP-2" + "7,monitor:DP-2" + + # monitor right + "3,monitor:HDMI-A-1, default:true" + ]; + hyprpaper = '' + #load + preload = /home/${username}/Pictures/backgrounds/shinobu_2k.jpg + preload = /home/${username}/Pictures/backgrounds/shino_wide.png + preload = /home/${username}/Pictures/backgrounds/shinobu_1200.jpg + + #set + wallpaper = DP-2,/home/${username}/Pictures/backgrounds/shinobu_2k.jpg + wallpaper = DP-1,/home/${username}/Pictures/backgrounds/shino_wide.png + wallpaper = HDMI-A-1,/home/${username}/Pictures/backgrounds/shinobu_1200.jpg + splash = true + ''; + extra_autostart = [ "streamdeck -n" ]; + }; }; } diff --git a/nix/hardware/spaceship/default.nix b/nix/hardware/spaceship/default.nix deleted file mode 100644 index 5ac7293..0000000 --- a/nix/hardware/spaceship/default.nix +++ /dev/null @@ -1,6 +0,0 @@ -{ - imports = [ - ./spaceship.nix - ./configuration.nix - ]; -} diff --git a/nix/hardware/spaceship/spaceship.nix b/nix/hardware/spaceship/spaceship.nix index 43ae303..62f5ee2 100644 --- a/nix/hardware/spaceship/spaceship.nix +++ b/nix/hardware/spaceship/spaceship.nix @@ -1,4 +1,4 @@ -{ config, lib, modulesPath, ... }: +{ pkgs, config, lib, modulesPath, ... }: { imports = [ @@ -32,4 +32,29 @@ hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; services.fstrim.enable = lib.mkDefault true; nix.settings.auto-optimise-store = true; + + virtualisation.virtualbox.host.enable = true; + + # enable hardware acceleration and rocm + hardware.xone.enable = true; + hardware.graphics.extraPackages = with pkgs; [ + libvdpau-va-gl + vaapiVdpau + # DUDE FOR FUCK SAKE + # TODO: + # rocmPackages.clr.icd + # rocm-opencl-runtime + ]; + hardware.graphics = { + enable = true; + enable32Bit = lib.mkDefault true; + }; + networking.firewall = { + allowedTCPPortRanges = [ + { from = 1714; to = 1764; } # KDE Connect + ]; + allowedUDPPortRanges = [ + { from = 1714; to = 1764; } # KDE Connect + ]; + }; } diff --git a/nix/modules/conf.nix b/nix/modules/conf.nix index 40463dd..227f805 100644 --- a/nix/modules/conf.nix +++ b/nix/modules/conf.nix @@ -8,6 +8,7 @@ main monitor ''; }; + scale = lib.mkOption { default = "1.0"; example = "1.0"; @@ -16,9 +17,18 @@ Scale for the monitor ''; }; - battery = lib.mkOption { - default = [ ]; - example = [ ]; + + ironbar = { + modules = lib.mkOption { + default = [ ]; + example = [ + { type = "upower"; class = "memory-usage"; } + ]; + type = with lib.types; listOf attrs; + description = '' + Adds modules to ironbar. + ''; + }; }; amdGpu = lib.mkOption { @@ -33,6 +43,7 @@ boot_params = lib.mkOption { default = [ ]; example = [ "resume=something" ]; + type = with lib.types; listOf str; description = '' Boot params ''; @@ -51,6 +62,7 @@ device = lib.mkOption { default = 0; example = 0; + type = lib.types.int; description = '' GPU device number ''; @@ -71,7 +83,7 @@ kernel = lib.mkOption { default = pkgs.linuxPackages_latest; example = pkgs.linuxPackages_xanmod_latest; - # type = lib.types.package; + type = with lib.types; nullOr attrs; description = '' kernel to be used ''; @@ -87,13 +99,54 @@ }; username = lib.mkOption { - default = "dashie"; - example = "pingpang"; - type = lib.types.str; + default = "dashie"; + example = "pingpang"; + type = lib.types.str; + description = '' + The username. + ''; + }; + + hyprland = { + monitor = lib.mkOption { + default = [ ]; + example = [ + "DP-1,3440x1440@180,2560x0,1,vrr,1" + ]; + type = with lib.types; listOf str; description = '' - The username. + The monitor configuration for hyprland. ''; }; + workspace = lib.mkOption { + default = [ ]; + example = [ + "2,monitor:DP-1, default:true" + ]; + type = with lib.types; listOf str; + description = '' + The workspace configuration for hyprland. + ''; + }; + hyprpaper = lib.mkOption { + default = ''''; + example = '' + hyprpaper stuff + ''; + type = lib.types.lines; + description = '' + hyprpaper + ''; + }; + extra_autostart = lib.mkOption { + default = [ ]; + example = [ "your application" ]; + type = lib.types.listOf lib.types.str; + description = '' + Extra exec_once. + ''; + }; + }; }; config = { diff --git a/nix/modules/default.nix b/nix/modules/default.nix deleted file mode 100644 index 5ca55d0..0000000 --- a/nix/modules/default.nix +++ /dev/null @@ -1,6 +0,0 @@ -{ - imports = [ - ./hyprpaper_config.nix - ./conf.nix - ]; -} diff --git a/nix/modules/hyprpaper_config.nix b/nix/modules/hyprpaper_config.nix deleted file mode 100644 index 3f9776c..0000000 --- a/nix/modules/hyprpaper_config.nix +++ /dev/null @@ -1,22 +0,0 @@ -{ lib, ... }: { - options.programs.hyprland = { - hyprpaper = lib.mkOption { - default = ''''; - example = '' - hyprpaper stuff - ''; - type = lib.types.lines; - description = '' - hyprpaper - ''; - }; - extra_autostart = lib.mkOption { - default = [ ]; - example = [ "your application" ]; - type = lib.types.listOf lib.types.str; - description = '' - Extra exec_once. - ''; - }; - }; -} diff --git a/nix/programs/common.nix b/nix/programs/common.nix index be77e8d..5061c43 100644 --- a/nix/programs/common.nix +++ b/nix/programs/common.nix @@ -48,7 +48,6 @@ in playerctl ncspot poppler_utils - neofetch brave greetd.regreet sops diff --git a/nix/programs/default.nix b/nix/programs/default.nix index 20faa02..69fb5c8 100644 --- a/nix/programs/default.nix +++ b/nix/programs/default.nix @@ -1,4 +1,4 @@ -{ inputs, pkgs, mod, config, ... }: +{ inputs, pkgs, config, lib, mod, ... }: let base_imports = [ inputs.anyrun.homeManagerModules.default @@ -14,7 +14,6 @@ let inputs.nix-flatpak.homeManagerModules.nix-flatpak inputs.sops-nix.homeManagerModules.sops ]; - username = config.conf.username; in { xdg.portal.config.common.default = "*"; @@ -26,12 +25,13 @@ in }; home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; + home-manager.extraSpecialArgs = { + inherit inputs; + }; - home-manager.users.${username} = { + home-manager.users.${config.conf.username} = { imports = [ - { - _module = { args = { inherit inputs username; }; }; - } + ./hyprland/default.nix ./flatpak.nix ./common.nix @@ -42,7 +42,7 @@ in ./oxi/default.nix ./themes/default.nix ./individual_configs/default.nix - mod - ] ++ base_imports; + ] ++ base_imports + ++ lib.optional (builtins.pathExists mod) mod; }; } diff --git a/nix/programs/hyprland/config.nix b/nix/programs/hyprland/config.nix index cb4990a..b9881fb 100644 --- a/nix/programs/hyprland/config.nix +++ b/nix/programs/hyprland/config.nix @@ -178,6 +178,9 @@ workspace_swipe = true; }; + monitor = config.conf.hyprland.monitor; + workspace = config.conf.hyprland.workspace; + env = [ "GTK_CSD,0" "TERM,\"kitty /bin/fish\"" @@ -243,7 +246,7 @@ "oxipaste_daemon" "nextcloud --background" "oxinoti" - ] ++ config.programs.hyprland.extra_autostart; + ] ++ config.conf.hyprland.extra_autostart; # plugin = { # hyprspace = { diff --git a/nix/programs/hyprland/hyprpaper.nix b/nix/programs/hyprland/hyprpaper.nix index 8b93285..802a963 100644 --- a/nix/programs/hyprland/hyprpaper.nix +++ b/nix/programs/hyprland/hyprpaper.nix @@ -1,5 +1,5 @@ { config, ... }: { xdg.configFile."hypr/hyprpaper.conf" = { - text = config.programs.hyprland.hyprpaper; + text = config.conf.hyprland.hyprpaper; }; } diff --git a/nix/programs/hyprland/ironbar.nix b/nix/programs/hyprland/ironbar.nix index 0c9673c..0b8a070 100644 --- a/nix/programs/hyprland/ironbar.nix +++ b/nix/programs/hyprland/ironbar.nix @@ -146,7 +146,7 @@ in ]; config = { monitors."${config.conf.monitor}" = { - end = config.conf.battery ++ [ + end = config.conf.ironbar.modules ++ [ { type = "sys_info"; format = [