From 3c29ea82b1c937330c8a6e4c472ed84fa15aaa78 Mon Sep 17 00:00:00 2001 From: richen604 <56615615+richen604@users.noreply.github.com> Date: Tue, 12 Aug 2025 21:36:33 -0700 Subject: [PATCH 01/14] chore: bumped theme hash --- TODO.md | 31 ++++++++++++++++++------------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/TODO.md b/TODO.md index 2b797fc3..b607144c 100644 --- a/TODO.md +++ b/TODO.md @@ -3,9 +3,15 @@ ## now +- feat(editors): dynamically set xdg.mimeApps default applications using cfg.default and add common code mimetypes +- feat: hyde binaries are now added via flake inputs, should fix various bugs +- chore: bumped theme hash + ## next - feat: new themes to build + +- fix: hydenix.hm.hyprland options with presets should by type str to allow for overrides, example should show default lists - feat: move hyprlock to hyprland module, swaylock should just be swaylock module - assertion to not have both enabled - feat: hyde config.toml options @@ -15,27 +21,34 @@ - rofi - waybar - docs: remove doc for overlays on theme for now i think unless i can fix it - - adding the overlay causes `pkgs.hydenix.hyde` to disappear lol + - adding the overlay causes `pkgs.hydenix.hyde` to disappear lol - feat: update.sh for themes, map name to hash (check daily), passThru update.sh caller github action - - feat: vscode-nix-ide part of editors, enabled by default - +- fix: i don't think .config/waybar/modules is supposed to be set anymore ## 5.0.0 -- fix: template references hydenix inputs without hacks like xdg.nix and system.nix +- fix: removed hydenix-inputs from template/configuration.nix - refactor: removed hydenix.lib to standardize outputs, hydenix nixOsModules to nixosModules - fix: nix-index should be a module in hydenix only, its declared twice - fix: rename nix-index home-manager module whatever new name - feat: user now owns their nixosSystem, depreciated hydenix-nixpkgs.lib.nixosSystem - feat: hydenix follows its own nixpkgs, no userPkgs overlays, template hydenix follows nixpkgs by default - - update docs to reflect this + - update docs to reflect this, as users can remove ## backlog -- finish demo-vm for video +- complete demo video after 5.0 +- fix: wallbash for code - feat: assertions for common requirements - chore: review bug template to make it more clear (easier with scripts?) +- feat: enhance `mutable` Home Manager option for `home.file`, `xdg.configFile`, `xdg.dataFile`: + - Introduce `mutable.enable` (boolean) and `mutable.mode` (enum: `initOnly`, `replace`) for fine-grained control over file copying behavior. + - Implement custom cleanup logic for `mutable.enable = true` files, ensuring they are removed when no longer declared in the configuration. + - Largest hurdle is if users remove the module the stale files will exist as mutable.nix is no longer imported + - Ensure this cleanup mechanism supports Home Manager generation rollbacks. + - create a simple flake to test and export as a full module ## future @@ -47,15 +60,7 @@ - must be part of the template flake or a new template flake, as it will be used for the user configuration - document disko configuration clearly, the issue is ive never used disko - most likely will need its own video installation guide -- cleanupOnDisable activation script and option - nh by default? - docs: documentation generation using nixosOptionsDoc - refactor: revise module hierarchy to be more clear and concise? - feat: spicetify theme support? flatpak? - -// docs & onboarding - -- docs: first-boot checklist (set password, run `hyde-shell reload`) + keybindings/workflows cheat sheet -- docs: uninstall/rollback guide + break-glass steps if Hyprland fails (switch TTY, disable module, rebuild) -- docs: "add a theme" contributor guide + PR template -- docs: generate option docs via `nixosOptionsDoc` and publish to GitHub Pages From 2c122220f387a3b71cf7956bf29ce5ca53448b5e Mon Sep 17 00:00:00 2001 From: richen604 <56615615+richen604@users.noreply.github.com> Date: Tue, 12 Aug 2025 21:38:04 -0700 Subject: [PATCH 02/14] fix(editor): set default applications and add common code mimetypes --- hydenix/modules/hm/editors.nix | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/hydenix/modules/hm/editors.nix b/hydenix/modules/hm/editors.nix index 11393088..c2928a7b 100644 --- a/hydenix/modules/hm/editors.nix +++ b/hydenix/modules/hm/editors.nix @@ -61,6 +61,24 @@ in mutableExtensionsDir = true; }; + xdg.mimeApps = { + defaultApplications = { + "text/plain" = [ "${cfg.default}.desktop" ]; + "application/x-shellscript" = [ "${cfg.default}.desktop" ]; + "text/css" = [ "${cfg.default}.desktop" ]; + "application/javascript" = [ "${cfg.default}.desktop" ]; + "application/json" = [ "${cfg.default}.desktop" ]; + "application/xml" = [ "${cfg.default}.desktop" ]; + "text/x-python" = [ "${cfg.default}.desktop" ]; + "text/x-java-source" = [ "${cfg.default}.desktop" ]; + "text/x-c++src" = [ "${cfg.default}.desktop" ]; + "text/x-csrc" = [ "${cfg.default}.desktop" ]; + "text/x-go" = [ "${cfg.default}.desktop" ]; + "text/x-typescript" = [ "${cfg.default}.desktop" ]; + "text/markdown" = [ "${cfg.default}.desktop" ]; + }; + }; + home.file = lib.mkMerge [ (lib.mkIf cfg.vscode.enable { # Editor flags From 2d017adb9d08784834f0de8342ee561c43eb105c Mon Sep 17 00:00:00 2001 From: richen604 <56615615+richen604@users.noreply.github.com> Date: Tue, 12 Aug 2025 21:38:37 -0700 Subject: [PATCH 03/14] feat: hyde binaries are now added via inputs --- TODO.md | 4 - flake.lock | 215 +++++++++++++++++++++++++++++++++++- flake.nix | 11 ++ hydenix/modules/hm/hyde.nix | 19 +++- hydenix/sources/overlay.nix | 4 + 5 files changed, 242 insertions(+), 11 deletions(-) diff --git a/TODO.md b/TODO.md index b607144c..9fd227bf 100644 --- a/TODO.md +++ b/TODO.md @@ -3,10 +3,6 @@ ## now -- feat(editors): dynamically set xdg.mimeApps default applications using cfg.default and add common code mimetypes -- feat: hyde binaries are now added via flake inputs, should fix various bugs -- chore: bumped theme hash - ## next - feat: new themes to build diff --git a/flake.lock b/flake.lock index 0cc829b9..4f039922 100644 --- a/flake.lock +++ b/flake.lock @@ -49,6 +49,24 @@ "type": "github" } }, + "flake-utils": { + "inputs": { + "systems": "systems_3" + }, + "locked": { + "lastModified": 1731533236, + "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, "gitignore": { "inputs": { "nixpkgs": [ @@ -108,6 +126,61 @@ "type": "github" } }, + "hyde-config": { + "inputs": { + "nixpkgs": "nixpkgs" + }, + "locked": { + "lastModified": 1754889600, + "narHash": "sha256-kn35QcO7OxZxcYyaZNxQ4tBsLdeSi1u2kbWdPg/pky0=", + "owner": "richen604", + "repo": "hyde-config", + "rev": "59dc0659e0cfb72552616553f5b2635cf40c2184", + "type": "github" + }, + "original": { + "owner": "richen604", + "repo": "hyde-config", + "type": "github" + } + }, + "hyde-ipc": { + "inputs": { + "nixpkgs": "nixpkgs_2", + "rust-overlay": "rust-overlay" + }, + "locked": { + "lastModified": 1754887268, + "narHash": "sha256-TsiA83Gd16VfIMatHa6o56Rvf7Vi2Lr/9ch9T6+n/qg=", + "owner": "richen604", + "repo": "hyde-ipc", + "rev": "016b6e7bd5959a18c2cefeb4a952098468f6bb8f", + "type": "github" + }, + "original": { + "owner": "richen604", + "repo": "hyde-ipc", + "type": "github" + } + }, + "hydectl": { + "inputs": { + "nixpkgs": "nixpkgs_4" + }, + "locked": { + "lastModified": 1755057332, + "narHash": "sha256-TVLjDL4+SdoXJrNu5TLiUSDD73CdVWfAn3aE2c4aShg=", + "owner": "richen604", + "repo": "hydectl", + "rev": "a19610347de2230175e5d8807584db65d0588134", + "type": "github" + }, + "original": { + "owner": "richen604", + "repo": "hydectl", + "type": "github" + } + }, "hydenix-nixpkgs": { "locked": { "lastModified": 1750122687, @@ -188,7 +261,7 @@ "hyprlang": "hyprlang", "hyprutils": "hyprutils", "hyprwayland-scanner": "hyprwayland-scanner", - "nixpkgs": "nixpkgs", + "nixpkgs": "nixpkgs_5", "systems": "systems" }, "locked": { @@ -215,7 +288,7 @@ "hyprlang": "hyprlang_2", "hyprutils": "hyprutils_2", "hyprwayland-scanner": "hyprwayland-scanner_2", - "nixpkgs": "nixpkgs_2", + "nixpkgs": "nixpkgs_6", "pre-commit-hooks": "pre-commit-hooks", "systems": "systems_2", "xdph": "xdph" @@ -510,6 +583,25 @@ "type": "github" } }, + "hyq": { + "inputs": { + "flake-utils": "flake-utils", + "nixpkgs": "nixpkgs_7" + }, + "locked": { + "lastModified": 1754885202, + "narHash": "sha256-3/Z2AwSUFgRQaGACIJ1hKLNt3dJBAQ1UninODL3wOQE=", + "owner": "richen604", + "repo": "hyprquery", + "rev": "370ed645dc0c0e1fb5daae6405b3ecd667be320c", + "type": "github" + }, + "original": { + "owner": "richen604", + "repo": "hyprquery", + "type": "github" + } + }, "nix-index-database": { "inputs": { "nixpkgs": [ @@ -547,6 +639,70 @@ } }, "nixpkgs": { + "locked": { + "lastModified": 1754725699, + "narHash": "sha256-iAcj9T/Y+3DBy2J0N+yF9XQQQ8IEb5swLFzs23CdP88=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "85dbfc7aaf52ecb755f87e577ddbe6dbbdbc1054", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_2": { + "locked": { + "lastModified": 1754725699, + "narHash": "sha256-iAcj9T/Y+3DBy2J0N+yF9XQQQ8IEb5swLFzs23CdP88=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "85dbfc7aaf52ecb755f87e577ddbe6dbbdbc1054", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_3": { + "locked": { + "lastModified": 1744536153, + "narHash": "sha256-awS2zRgF4uTwrOKwwiJcByDzDOdo3Q1rPZbiHQg/N38=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "18dd725c29603f582cf1900e0d25f9f1063dbf11", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_4": { + "locked": { + "lastModified": 1754725699, + "narHash": "sha256-iAcj9T/Y+3DBy2J0N+yF9XQQQ8IEb5swLFzs23CdP88=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "85dbfc7aaf52ecb755f87e577ddbe6dbbdbc1054", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_5": { "locked": { "lastModified": 1748929857, "narHash": "sha256-lcZQ8RhsmhsK8u7LIFsJhsLh/pzR9yZ8yqpTzyGdj+Q=", @@ -562,7 +718,7 @@ "type": "github" } }, - "nixpkgs_2": { + "nixpkgs_6": { "locked": { "lastModified": 1753939845, "narHash": "sha256-K2ViRJfdVGE8tpJejs8Qpvvejks1+A4GQej/lBk5y7I=", @@ -578,6 +734,22 @@ "type": "github" } }, + "nixpkgs_7": { + "locked": { + "lastModified": 1750134718, + "narHash": "sha256-v263g4GbxXv87hMXMCpjkIxd/viIF7p3JpJrwgKdNiI=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "9e83b64f727c88a7711a2c463a7b16eedb69a84c", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "pre-commit-hooks": { "inputs": { "flake-compat": "flake-compat", @@ -605,13 +777,35 @@ "inputs": { "home-manager": "home-manager", "hyde": "hyde", + "hyde-config": "hyde-config", + "hyde-ipc": "hyde-ipc", + "hydectl": "hydectl", "hydenix-nixpkgs": "hydenix-nixpkgs", "hypridle": "hypridle", "hyprland": "hyprland", + "hyq": "hyq", "nix-index-database": "nix-index-database", "nixos-hardware": "nixos-hardware" } }, + "rust-overlay": { + "inputs": { + "nixpkgs": "nixpkgs_3" + }, + "locked": { + "lastModified": 1754880555, + "narHash": "sha256-tG6l0wiX8V8IvG4HFYY8IYN5vpNAxQ+UWunjjpE6SqU=", + "owner": "oxalica", + "repo": "rust-overlay", + "rev": "17c591a44e4eb77f05f27cd37e1cfc3f219c7fc4", + "type": "github" + }, + "original": { + "owner": "oxalica", + "repo": "rust-overlay", + "type": "github" + } + }, "systems": { "locked": { "lastModified": 1689347949, @@ -642,6 +836,21 @@ "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" + } + }, "xdph": { "inputs": { "hyprland-protocols": [ diff --git a/flake.nix b/flake.nix index 82c6b009..e3c7ff1c 100644 --- a/flake.nix +++ b/flake.nix @@ -21,6 +21,11 @@ url = "github:HyDE-Project/HyDE/168287f2f10e95a4a9a623c955c7e08147c48472"; flake = false; }; + # HyDE related binaries + hyq.url = "github:richen604/hyprquery"; + hydectl.url = "github:richen604/hydectl"; + hyde-ipc.url = "github:richen604/hyde-ipc"; + hyde-config.url = "github:richen604/hyde-config"; hyprland.url = "github:hyprwm/Hyprland"; hypridle.url = "github:hyprwm/hypridle"; @@ -86,6 +91,12 @@ # Helper to manage hyde updates hyde-update = import ./lib/hyde-update { inherit inputs; }; + + # Add hyq, hydectl, hyde-ipc, and hyde-config for building + hyq = inputs.hyq.packages.${system}.default; + hydectl = inputs.hydectl.packages.${system}.default; + hyde-ipc = inputs.hyde-ipc.packages.${system}.default; + hyde-config = inputs.hyde-config.packages.${system}.default; }; devShells.${system}.default = import ./lib/dev-shell.nix { inherit inputs; }; diff --git a/hydenix/modules/hm/hyde.nix b/hydenix/modules/hm/hyde.nix index 3b670729..9993a1a2 100644 --- a/hydenix/modules/hm/hyde.nix +++ b/hydenix/modules/hm/hyde.nix @@ -80,23 +80,34 @@ in # TODO: requires nix-ld ".local/bin/hydectl" = { - source = "${pkgs.hydenix.hyde}/Configs/.local/bin/hydectl"; + source = "${pkgs.hydenix.hydectl}/bin/hydectl"; executable = true; }; ".local/bin/hyde-ipc" = { - source = "${pkgs.hydenix.hyde}/Configs/.local/bin/hyde-ipc"; + source = "${pkgs.hydenix.hyde-ipc}/bin/hyde-ipc"; + executable = true; + }; + + ".local/bin/hyq" = { + source = "${pkgs.hydenix.hyq}/bin/hyq"; executable = true; }; ".local/lib/hyde" = { source = "${pkgs.hydenix.hyde}/Configs/.local/lib/hyde"; recursive = true; - force = true; - mutable = true; executable = true; }; + ".local/lib/hyde-config" = { + source = "${pkgs.hydenix.hyde-config}/bin/hyde-config"; + executable = true; + # FIXME: this is a hack to make sure the hyde-config binary is copied after the .local/lib/hyde above + mutable = true; + force = true; + }; + ".local/lib/hyde/globalcontrol.sh" = { source = "${pkgs.hydenix.hyde}/Configs/.local/lib/hyde/globalcontrol.sh"; executable = true; diff --git a/hydenix/sources/overlay.nix b/hydenix/sources/overlay.nix index 3299c870..92e889e6 100644 --- a/hydenix/sources/overlay.nix +++ b/hydenix/sources/overlay.nix @@ -19,6 +19,10 @@ let hyprland = inputs.hyprland.packages.${prev.system}.hyprland; hypridle = inputs.hypridle.packages.${prev.system}.hypridle; xdg-desktop-portal-hyprland = inputs.hyprland.packages.${prev.system}.xdg-desktop-portal-hyprland; + hyq = inputs.hyq.packages.${prev.system}.default; + hydectl = inputs.hydectl.packages.${prev.system}.default; + hyde-ipc = inputs.hyde-ipc.packages.${prev.system}.default; + hyde-config = inputs.hyde-config.packages.${prev.system}.default; }; }; in From 6e522efb535c9bace86521413d0b9b3500788521 Mon Sep 17 00:00:00 2001 From: richen604 <56615615+richen604@users.noreply.github.com> Date: Tue, 12 Aug 2025 21:48:55 -0700 Subject: [PATCH 04/14] chore: update nixpkgs --- TODO.md | 1 + flake.lock | 54 +++++++++++++++++++++++++++--------------------------- 2 files changed, 28 insertions(+), 27 deletions(-) diff --git a/TODO.md b/TODO.md index 9fd227bf..0d497a5e 100644 --- a/TODO.md +++ b/TODO.md @@ -27,6 +27,7 @@ - fix: removed hydenix-inputs from template/configuration.nix - refactor: removed hydenix.lib to standardize outputs, hydenix nixOsModules to nixosModules +- refactor: rename all overlays so there is no namespace nesting - fix: nix-index should be a module in hydenix only, its declared twice - fix: rename nix-index home-manager module whatever new name - feat: user now owns their nixosSystem, depreciated hydenix-nixpkgs.lib.nixosSystem diff --git a/flake.lock b/flake.lock index 4f039922..6c071c6b 100644 --- a/flake.lock +++ b/flake.lock @@ -36,11 +36,11 @@ "flake-compat": { "flake": false, "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "lastModified": 1747046372, + "narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=", "owner": "edolstra", "repo": "flake-compat", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885", "type": "github" }, "original": { @@ -96,11 +96,11 @@ ] }, "locked": { - "lastModified": 1754365350, - "narHash": "sha256-NLWIkn1qM0wxtZu/2NXRaujWJ4Y1PSZlc7h0y6pOzOQ=", + "lastModified": 1754974548, + "narHash": "sha256-XMjUjKD/QRPcqUnmSDczSYdw46SilnG0+wkho654DFM=", "owner": "nix-community", "repo": "home-manager", - "rev": "c5d7e957397ecb7d48b99c928611c6e780db1b56", + "rev": "27a26be51ff0162a8f67660239f9407dba68d7c5", "type": "github" }, "original": { @@ -242,11 +242,11 @@ ] }, "locked": { - "lastModified": 1752149140, - "narHash": "sha256-gbh1HL98Fdqu0jJIWN4OJQN7Kkth7+rbkFpSZLm/62A=", + "lastModified": 1754305013, + "narHash": "sha256-u+M2f0Xf1lVHzIPQ7DsNCDkM1NYxykOSsRr4t3TbSM4=", "owner": "hyprwm", "repo": "hyprgraphics", - "rev": "340494a38b5ec453dfc542c6226481f736cc8a9a", + "rev": "4c1d63a0f22135db123fc789f174b89544c6ec2d", "type": "github" }, "original": { @@ -294,11 +294,11 @@ "xdph": "xdph" }, "locked": { - "lastModified": 1754516867, - "narHash": "sha256-Vlh2o3NqI6a9H/b1aY8uCUsJyJdhwvJZExxnteadLCU=", + "lastModified": 1755025881, + "narHash": "sha256-nSrui2v+EMqm1O6VcDujHS0gUX6YHFt2VlWz94LBJRs=", "owner": "hyprwm", "repo": "Hyprland", - "rev": "a4529beb7c0be3980ce857c60b284a90f2ea6eb6", + "rev": "2b6e2ceb2e66407e80b98015eb9f559f06405b2f", "type": "github" }, "original": { @@ -520,11 +520,11 @@ ] }, "locked": { - "lastModified": 1753800567, - "narHash": "sha256-W0xgXsaqGa/5/7IBzKNhf0+23MqGPymYYfqT7ECqeTE=", + "lastModified": 1754481650, + "narHash": "sha256-6u6HdEFJh5gY6VfyMQbhP7zDdVcqOrCDTkbiHJmAtMI=", "owner": "hyprwm", "repo": "hyprutils", - "rev": "c65d41d4f4e6ded6fdb9d508a73e2fe90e55cdf7", + "rev": "df6b8820c4a0835d83d0c7c7be86fbc555f1f7fd", "type": "github" }, "original": { @@ -609,11 +609,11 @@ ] }, "locked": { - "lastModified": 1754195341, - "narHash": "sha256-YL71IEf2OugH3gmAsxQox6BJI0KOcHKtW2QqT/+s2SA=", + "lastModified": 1754800038, + "narHash": "sha256-UbLO8/0pVBXLJuyRizYOJigtzQAj8Z2bTnbKSec/wN0=", "owner": "nix-community", "repo": "nix-index-database", - "rev": "b7fcd4e26d67fca48e77de9b0d0f954b18ae9562", + "rev": "b65f8d80656f9fcbd1fecc4b7f0730f468333142", "type": "github" }, "original": { @@ -624,11 +624,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1754316476, - "narHash": "sha256-Ry1gd1BQrNVJJfT11cpVP0FY8XFMx4DJV2IDp01CH9w=", + "lastModified": 1754564048, + "narHash": "sha256-dz303vGuzWjzOPOaYkS9xSW+B93PSAJxvBd6CambXVA=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "9368056b73efb46eb14fd4667b99e0f81b805f28", + "rev": "26ed7a0d4b8741fe1ef1ee6fa64453ca056ce113", "type": "github" }, "original": { @@ -720,11 +720,11 @@ }, "nixpkgs_6": { "locked": { - "lastModified": 1753939845, - "narHash": "sha256-K2ViRJfdVGE8tpJejs8Qpvvejks1+A4GQej/lBk5y7I=", + "lastModified": 1754725699, + "narHash": "sha256-iAcj9T/Y+3DBy2J0N+yF9XQQQ8IEb5swLFzs23CdP88=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "94def634a20494ee057c76998843c015909d6311", + "rev": "85dbfc7aaf52ecb755f87e577ddbe6dbbdbc1054", "type": "github" }, "original": { @@ -760,11 +760,11 @@ ] }, "locked": { - "lastModified": 1750779888, - "narHash": "sha256-wibppH3g/E2lxU43ZQHC5yA/7kIKLGxVEnsnVK1BtRg=", + "lastModified": 1754416808, + "narHash": "sha256-c6yg0EQ9xVESx6HGDOCMcyRSjaTpNJP10ef+6fRcofA=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "16ec914f6fb6f599ce988427d9d94efddf25fe6d", + "rev": "9c52372878df6911f9afc1e2a1391f55e4dfc864", "type": "github" }, "original": { From 6fa05bd3283755455726b83fed6e73949424c9f7 Mon Sep 17 00:00:00 2001 From: richen604 <56615615+richen604@users.noreply.github.com> Date: Tue, 12 Aug 2025 21:59:16 -0700 Subject: [PATCH 05/14] fix: hydenix-nixpkgs as main version for inputs --- flake.lock | 126 +++++++++-------------------------------------------- flake.nix | 33 +++++++++++--- 2 files changed, 47 insertions(+), 112 deletions(-) diff --git a/flake.lock b/flake.lock index 6c071c6b..da9d181e 100644 --- a/flake.lock +++ b/flake.lock @@ -128,7 +128,9 @@ }, "hyde-config": { "inputs": { - "nixpkgs": "nixpkgs" + "nixpkgs": [ + "hydenix-nixpkgs" + ] }, "locked": { "lastModified": 1754889600, @@ -146,7 +148,9 @@ }, "hyde-ipc": { "inputs": { - "nixpkgs": "nixpkgs_2", + "nixpkgs": [ + "hydenix-nixpkgs" + ], "rust-overlay": "rust-overlay" }, "locked": { @@ -165,7 +169,9 @@ }, "hydectl": { "inputs": { - "nixpkgs": "nixpkgs_4" + "nixpkgs": [ + "hydenix-nixpkgs" + ] }, "locked": { "lastModified": 1755057332, @@ -261,7 +267,9 @@ "hyprlang": "hyprlang", "hyprutils": "hyprutils", "hyprwayland-scanner": "hyprwayland-scanner", - "nixpkgs": "nixpkgs_5", + "nixpkgs": [ + "hydenix-nixpkgs" + ], "systems": "systems" }, "locked": { @@ -288,7 +296,9 @@ "hyprlang": "hyprlang_2", "hyprutils": "hyprutils_2", "hyprwayland-scanner": "hyprwayland-scanner_2", - "nixpkgs": "nixpkgs_6", + "nixpkgs": [ + "hydenix-nixpkgs" + ], "pre-commit-hooks": "pre-commit-hooks", "systems": "systems_2", "xdph": "xdph" @@ -297,13 +307,13 @@ "lastModified": 1755025881, "narHash": "sha256-nSrui2v+EMqm1O6VcDujHS0gUX6YHFt2VlWz94LBJRs=", "owner": "hyprwm", - "repo": "Hyprland", + "repo": "hyprland", "rev": "2b6e2ceb2e66407e80b98015eb9f559f06405b2f", "type": "github" }, "original": { "owner": "hyprwm", - "repo": "Hyprland", + "repo": "hyprland", "type": "github" } }, @@ -586,7 +596,9 @@ "hyq": { "inputs": { "flake-utils": "flake-utils", - "nixpkgs": "nixpkgs_7" + "nixpkgs": [ + "hydenix-nixpkgs" + ] }, "locked": { "lastModified": 1754885202, @@ -639,38 +651,6 @@ } }, "nixpkgs": { - "locked": { - "lastModified": 1754725699, - "narHash": "sha256-iAcj9T/Y+3DBy2J0N+yF9XQQQ8IEb5swLFzs23CdP88=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "85dbfc7aaf52ecb755f87e577ddbe6dbbdbc1054", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_2": { - "locked": { - "lastModified": 1754725699, - "narHash": "sha256-iAcj9T/Y+3DBy2J0N+yF9XQQQ8IEb5swLFzs23CdP88=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "85dbfc7aaf52ecb755f87e577ddbe6dbbdbc1054", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_3": { "locked": { "lastModified": 1744536153, "narHash": "sha256-awS2zRgF4uTwrOKwwiJcByDzDOdo3Q1rPZbiHQg/N38=", @@ -686,70 +666,6 @@ "type": "github" } }, - "nixpkgs_4": { - "locked": { - "lastModified": 1754725699, - "narHash": "sha256-iAcj9T/Y+3DBy2J0N+yF9XQQQ8IEb5swLFzs23CdP88=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "85dbfc7aaf52ecb755f87e577ddbe6dbbdbc1054", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_5": { - "locked": { - "lastModified": 1748929857, - "narHash": "sha256-lcZQ8RhsmhsK8u7LIFsJhsLh/pzR9yZ8yqpTzyGdj+Q=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "c2a03962b8e24e669fb37b7df10e7c79531ff1a4", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_6": { - "locked": { - "lastModified": 1754725699, - "narHash": "sha256-iAcj9T/Y+3DBy2J0N+yF9XQQQ8IEb5swLFzs23CdP88=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "85dbfc7aaf52ecb755f87e577ddbe6dbbdbc1054", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_7": { - "locked": { - "lastModified": 1750134718, - "narHash": "sha256-v263g4GbxXv87hMXMCpjkIxd/viIF7p3JpJrwgKdNiI=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "9e83b64f727c88a7711a2c463a7b16eedb69a84c", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, "pre-commit-hooks": { "inputs": { "flake-compat": "flake-compat", @@ -790,7 +706,7 @@ }, "rust-overlay": { "inputs": { - "nixpkgs": "nixpkgs_3" + "nixpkgs": "nixpkgs" }, "locked": { "lastModified": 1754880555, diff --git a/flake.nix b/flake.nix index e3c7ff1c..fdff61f2 100644 --- a/flake.nix +++ b/flake.nix @@ -21,16 +21,35 @@ url = "github:HyDE-Project/HyDE/168287f2f10e95a4a9a623c955c7e08147c48472"; flake = false; }; + # HyDE related binaries - hyq.url = "github:richen604/hyprquery"; - hydectl.url = "github:richen604/hydectl"; - hyde-ipc.url = "github:richen604/hyde-ipc"; - hyde-config.url = "github:richen604/hyde-config"; + hyq = { + url = "github:richen604/hyprquery"; + inputs.nixpkgs.follows = "hydenix-nixpkgs"; + }; + hydectl = { + url = "github:richen604/hydectl"; + inputs.nixpkgs.follows = "hydenix-nixpkgs"; + }; + hyde-ipc = { + url = "github:richen604/hyde-ipc"; + inputs.nixpkgs.follows = "hydenix-nixpkgs"; + }; + hyde-config = { + url = "github:richen604/hyde-config"; + inputs.nixpkgs.follows = "hydenix-nixpkgs"; + }; - hyprland.url = "github:hyprwm/Hyprland"; - hypridle.url = "github:hyprwm/hypridle"; - }; + hyprland = { + url = "github:hyprwm/hyprland"; + inputs.nixpkgs.follows = "hydenix-nixpkgs"; + }; + hypridle = { + url = "github:hyprwm/hypridle"; + inputs.nixpkgs.follows = "hydenix-nixpkgs"; + }; + }; outputs = hydenix-inputs@{ hydenix-nixpkgs, ... }: let From 01070f841ee465d286b770fddc2e1322a01218a2 Mon Sep 17 00:00:00 2001 From: richen604 <56615615+richen604@users.noreply.github.com> Date: Tue, 12 Aug 2025 22:06:26 -0700 Subject: [PATCH 06/14] chore: bumped theme hash --- hydenix/sources/themes/Cosmic-Blue.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hydenix/sources/themes/Cosmic-Blue.nix b/hydenix/sources/themes/Cosmic-Blue.nix index 8c1fc5ff..351aa786 100644 --- a/hydenix/sources/themes/Cosmic-Blue.nix +++ b/hydenix/sources/themes/Cosmic-Blue.nix @@ -6,7 +6,7 @@ mkTheme rec { repo = "Cosmic-Blue"; rev = "main"; name = name; - sha256 = "sha256-K0RSnIjG0U8P3omoEVzkMfZMjearYde2nzy2sRWSHUY="; + sha256 = "sha256-TKJGuyWyd6R2GdKTRBnrfTGfH9iSVlwr83xZsfvmgPE="; }; meta = { description = "HyDE Theme: Cosmic Blue"; From 8f8dd6f1547c584253a879eaf343b7276fb7ff84 Mon Sep 17 00:00:00 2001 From: richen604 <56615615+richen604@users.noreply.github.com> Date: Wed, 13 Aug 2025 20:02:38 -0700 Subject: [PATCH 07/14] feat: hyprland shaders active option and documentation --- TODO.md | 2 ++ hydenix/modules/hm/hyprland/options.nix | 43 +++++++++---------------- hydenix/modules/hm/hyprland/shaders.nix | 9 +++++- template/docs/options.md | 5 +-- 4 files changed, 29 insertions(+), 30 deletions(-) diff --git a/TODO.md b/TODO.md index 0d497a5e..d2eec7f7 100644 --- a/TODO.md +++ b/TODO.md @@ -3,6 +3,8 @@ ## now +- feat: hyprland shaders active option and documentation + ## next - feat: new themes to build diff --git a/hydenix/modules/hm/hyprland/options.nix b/hydenix/modules/hm/hyprland/options.nix index e960841e..e1dd5b91 100644 --- a/hydenix/modules/hm/hyprland/options.nix +++ b/hydenix/modules/hm/hyprland/options.nix @@ -36,28 +36,12 @@ in default = cfg.enable; }; preset = lib.mkOption { - type = lib.types.enum [ - "LimeFrenzy" - "classic" - "diablo-1" - "diablo-2" - "disable" - "dynamic" - "end4" - "fast" - "high" - "ja" - "me-1" - "me-2" - "minimal-1" - "minimal-2" - "moving" - "optimized" - "standard" - "vertical" - ]; + type = lib.types.str; default = "standard"; description = "Animation preset to use"; + example = lib.literalExpression '' + "standard" # any string in overrides or default: "LimeFrenzy", "classic", "diablo-1", "diablo-2", "disable", "dynamic", "end4", "fast", "high", "ja", "me-1", "me-2", "minimal-1", "minimal-2", "moving", "optimized", "standard", "vertical" + ''; }; extraConfig = lib.mkOption { type = lib.types.lines; @@ -83,6 +67,14 @@ in enable = lib.mkEnableOption "shader configurations" // { default = cfg.enable; }; + active = lib.mkOption { + type = lib.types.str; + default = "disable"; + description = "Active shader preset"; + example = lib.literalExpression '' + "disable" # any string in overrides or default: "blue-light-filter", "color-vision", "custom", "grayscale", "invert-colors", "oled", "oled-saver", "paper", "vibrance", "wallbash" + ''; + }; overrides = lib.mkOption { type = lib.types.attrsOf lib.types.lines; default = { }; @@ -104,15 +96,12 @@ in default = cfg.enable; }; active = lib.mkOption { - type = lib.types.enum [ - "default" - "editing" - "gaming" - "powersaver" - "snappy" - ]; + type = lib.types.str; default = "default"; description = "Active workflow preset"; + example = lib.literalExpression '' + "default" # any string in overrides or default: "editing", "gaming", "powersaver", "snappy" + ''; }; overrides = lib.mkOption { type = lib.types.attrsOf lib.types.lines; diff --git a/hydenix/modules/hm/hyprland/shaders.nix b/hydenix/modules/hm/hyprland/shaders.nix index 223eefc1..2dd877c5 100644 --- a/hydenix/modules/hm/hyprland/shaders.nix +++ b/hydenix/modules/hm/hyprland/shaders.nix @@ -45,7 +45,14 @@ in mutable = true; }; ".config/hypr/shaders.conf" = { - source = "${pkgs.hydenix.hyde}/Configs/.config/hypr/shaders.conf"; + text = '' + # name of the shader + $SCREEN_SHADER = "${cfg.shaders.active}" + # path to the shader + $SCREEN_SHADER_PATH = "$XDG_CONFIG_HOME/hypr/shaders/${cfg.shaders.active}.frag" + # path to the compiled shader // override this in '../hyde/config.toml' + $SCREEN_SHADER_COMPILED = $XDG_CONFIG_HOME/hypr/shaders/.compiled.cache.glsl + ''; force = true; mutable = true; }; diff --git a/template/docs/options.md b/template/docs/options.md index 35c9d7ab..76960fb4 100644 --- a/template/docs/options.md +++ b/template/docs/options.md @@ -140,19 +140,20 @@ below are the default options for hydenix. they are in *object format* and any o # Animation configurations animations = { enable = true; # enable animation configurations - preset = "standard"; # animation preset: "LimeFrenzy", "classic", "diablo-1", "diablo-2", "disable", "dynamic", "end4", "fast", "high", "ja", "me-1", "me-2", "minimal-1", "minimal-2", "moving", "optimized", "standard", "vertical" + preset = "standard"; # string from override or default: "standard" # or "LimeFrenzy", "classic", "diablo-1", "diablo-2", "disable", "dynamic", "end4", "fast", "high", "ja", "me-1", "me-2", "minimal-1", "minimal-2", "moving", "optimized", "standard", "vertical" extraConfig = ""; # additional animation configuration overrides = { }; # override specific animation files by name }; # Shader configurations shaders = { enable = true; # enable shader configurations + active = "disable"; # string from override or default: "disable" # or "blue-light-filter", "color-vision", "custom", "grayscale", "invert-colors", "oled", "oled-saver", "paper", "vibrance", "wallbash" overrides = { }; # override or add custom shaders }; # Workflow configurations workflows = { enable = true; # enable workflow configurations - active = "default"; # active workflow preset: "default", "editing", "gaming", "powersaver", "snappy" + active = "default"; # string from override or default: "default" # or "editing", "gaming", "powersaver", "snappy" overrides = { }; # override or add custom workflows }; # Hypridle configurations From e22d3c4be0787215f3ccf647b7578612f5597428 Mon Sep 17 00:00:00 2001 From: richen604 <56615615+richen604@users.noreply.github.com> Date: Wed, 13 Aug 2025 20:03:12 -0700 Subject: [PATCH 08/14] fix: removed unnecessary with lib --- hydenix/modules/system/boot.nix | 20 +++++++++----------- hydenix/sources/Bibata-Modern-Ice.nix | 6 +++--- hydenix/sources/Tela-circle-dracula.nix | 6 +++--- hydenix/sources/hyde-gallery.nix | 6 +++--- hydenix/sources/pokego.nix | 11 +++-------- hydenix/sources/python-pyamdgpuinfo.nix | 7 +++---- 6 files changed, 24 insertions(+), 32 deletions(-) diff --git a/hydenix/modules/system/boot.nix b/hydenix/modules/system/boot.nix index 4312989e..10d5653c 100644 --- a/hydenix/modules/system/boot.nix +++ b/hydenix/modules/system/boot.nix @@ -5,8 +5,6 @@ ... }: -with lib; - let cfg = config.hydenix.boot; in @@ -18,14 +16,14 @@ in description = "Enable boot module"; }; - useSystemdBoot = mkOption { - type = types.bool; + useSystemdBoot = lib.mkOption { + type = lib.types.bool; default = true; description = "Whether to use systemd-boot (true) or GRUB (false)"; }; - grubTheme = mkOption { - type = types.enum [ + grubTheme = lib.mkOption { + type = lib.types.enum [ "Retroboot" "Pochita" ]; @@ -33,20 +31,20 @@ in description = "GRUB theme to use, use either `Retroboot` or `Pochita`"; }; - grubExtraConfig = mkOption { - type = types.lines; + grubExtraConfig = lib.mkOption { + type = lib.types.lines; default = ""; description = "Additional configuration for GRUB"; }; - kernelPackages = mkOption { - type = with types; attrs; + kernelPackages = lib.mkOption { + type = lib.types.attrs; default = pkgs.linuxPackages_zen; description = "Kernel packages to use"; }; }; - config = mkIf cfg.enable { + config = lib.mkIf cfg.enable { boot = { kernelPackages = cfg.kernelPackages; loader = diff --git a/hydenix/sources/Bibata-Modern-Ice.nix b/hydenix/sources/Bibata-Modern-Ice.nix index a638e0e8..83653b8f 100644 --- a/hydenix/sources/Bibata-Modern-Ice.nix +++ b/hydenix/sources/Bibata-Modern-Ice.nix @@ -23,11 +23,11 @@ stdenv.mkDerivation { jdupes --recurse $out/share/icons/ ''; - meta = with lib; { + meta = { description = "Bibata Modern Ice cursor theme"; homepage = "https://github.com/HyDE-Project/HyDE"; - license = licenses.gpl3; - platforms = platforms.all; + license = lib.licenses.gpl3; + platforms = lib.platforms.all; maintainers = [ ]; }; } diff --git a/hydenix/sources/Tela-circle-dracula.nix b/hydenix/sources/Tela-circle-dracula.nix index da126875..2671927e 100644 --- a/hydenix/sources/Tela-circle-dracula.nix +++ b/hydenix/sources/Tela-circle-dracula.nix @@ -23,11 +23,11 @@ stdenv.mkDerivation { jdupes --recurse $out/share/icons ''; - meta = with lib; { + meta = { description = "Tela Dracula icon theme from HyDE Project"; homepage = "https://github.com/HyDE-Project/hyde-themes"; - license = licenses.gpl3; # You may need to verify the actual license - platforms = platforms.all; + license = lib.licenses.gpl3; # You may need to verify the actual license + platforms = lib.platforms.all; maintainers = [ ]; }; } diff --git a/hydenix/sources/hyde-gallery.nix b/hydenix/sources/hyde-gallery.nix index 6d91d95a..41e09b91 100644 --- a/hydenix/sources/hyde-gallery.nix +++ b/hydenix/sources/hyde-gallery.nix @@ -17,10 +17,10 @@ pkgs.stdenv.mkDerivation { ''; # Add meta information - meta = with lib; { + meta = { description = "Gallery of themes for HyDE"; homepage = "https://github.com/HyDE-Project/hyde-gallery"; - license = licenses.mit; - platforms = platforms.all; + license = lib.licenses.mit; + platforms = lib.platforms.all; }; } diff --git a/hydenix/sources/pokego.nix b/hydenix/sources/pokego.nix index a822abf9..735a2318 100644 --- a/hydenix/sources/pokego.nix +++ b/hydenix/sources/pokego.nix @@ -24,16 +24,11 @@ buildGoModule rec { install -Dm644 completions/pokego.zsh "$out/share/zsh/site-functions/_pokego" ''; - meta = with lib; { + meta = { description = "Command-line tool that lets you display Pokémon sprites in color directly in your terminal"; homepage = "https://github.com/rubiin/pokego"; - license = licenses.gpl3Only; - maintainers = with maintainers; [ - rubiin - jameskim0987 - vinibispo - ]; + license = lib.licenses.gpl3Only; mainProgram = "pokego"; - platforms = platforms.all; + platforms = lib.platforms.all; }; } diff --git a/hydenix/sources/python-pyamdgpuinfo.nix b/hydenix/sources/python-pyamdgpuinfo.nix index ff41ba02..2d7feaa7 100644 --- a/hydenix/sources/python-pyamdgpuinfo.nix +++ b/hydenix/sources/python-pyamdgpuinfo.nix @@ -32,11 +32,10 @@ python3.pkgs.buildPythonPackage rec { pythonImportsCheck = [ "pyamdgpuinfo" ]; - meta = with lib; { + meta = { description = "AMD GPU stats"; homepage = "https://github.com/mark9064/pyamdgpuinfo"; - license = licenses.gpl3Only; - maintainers = with maintainers; [ ]; - platforms = platforms.linux; + license = lib.licenses.gpl3Only; + platforms = lib.platforms.linux; }; } From abd55eb460edd3da28a35587057608cd5bd52445 Mon Sep 17 00:00:00 2001 From: richen604 <56615615+richen604@users.noreply.github.com> Date: Wed, 13 Aug 2025 20:58:29 -0700 Subject: [PATCH 09/14] ci: removed iso github action --- .github/workflows/iso.yml | 94 --------------------------------------- TODO.md | 6 +-- 2 files changed, 2 insertions(+), 98 deletions(-) delete mode 100644 .github/workflows/iso.yml diff --git a/.github/workflows/iso.yml b/.github/workflows/iso.yml deleted file mode 100644 index f7fcc009..00000000 --- a/.github/workflows/iso.yml +++ /dev/null @@ -1,94 +0,0 @@ -name: Build ISO - -on: - release: - types: [created] - workflow_dispatch: - -permissions: - contents: write - -jobs: - build-iso: - runs-on: ubuntu-latest - steps: - - name: Checkout repository - uses: actions/checkout@v3 - - - name: Install Nix - uses: cachix/install-nix-action@v22 - with: - nix_path: nixpkgs=channel:nixos-unstable - extra_nix_config: | - experimental-features = nix-command flakes - accept-flake-config = true - - - name: Build ISO - run: | - nix run .#iso - ISO_PATH=$(find ./result -name "*.iso" -type f) - echo "ISO_PATH=$ISO_PATH" >> $GITHUB_ENV - echo "ISO_NAME=$(basename $ISO_PATH)" >> $GITHUB_ENV - - - name: Rename ISO with version (Release) - if: github.event_name == 'release' - run: | - VERSION="${{ github.event.release.tag_name }}" - cp "$ISO_PATH" "hydenix-iso-${VERSION}.iso" - echo "VERSIONED_ISO_PATH=hydenix-iso-${VERSION}.iso" >> $GITHUB_ENV - - - name: Rename ISO with commit (Manual) - if: github.event_name == 'workflow_dispatch' - run: | - SHORT_SHA=$(echo ${{ github.sha }} | cut -c1-7) - cp "$ISO_PATH" "hydenix-iso-v${SHORT_SHA}.iso" - echo "VERSIONED_ISO_PATH=hydenix-iso-v${SHORT_SHA}.iso" >> $GITHUB_ENV - - - name: Upload ISO to Release - if: github.event_name == 'release' - uses: softprops/action-gh-release@v1 - with: - files: ${{ env.VERSIONED_ISO_PATH }} - tag_name: ${{ github.event.release.tag_name }} - append_body: true - body: | - - ## ISO Installation - - 1. Download the ISO file - 2. Burn it to a USB drive using: - ``` - nix run github:richen604/hydenix#burn-iso -- ${{ env.VERSIONED_ISO_PATH }} /dev/sdX - ``` - (Replace /dev/sdX with your USB device) - 3. Boot from the USB drive - 4. Follow the on-screen instructions - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Create ISO Release (Manual Trigger) - if: github.event_name == 'workflow_dispatch' - uses: softprops/action-gh-release@v1 - with: - tag_name: iso-${{ github.sha }} - name: HydeNix ISO ${{ github.sha }} - draft: false - prerelease: true - files: ${{ env.VERSIONED_ISO_PATH }} - body: | - HydeNix ISO built from commit ${{ github.sha }} - - This is a manually triggered ISO build. - - ## Installation - - 1. Download the ISO file - 2. Burn it to a USB drive using: - ``` - nix run github:richen604/hydenix#burn-iso -- ${{ env.VERSIONED_ISO_PATH }} /dev/sdX - ``` - (Replace /dev/sdX with your USB device) - 3. Boot from the USB drive - 4. Follow the on-screen instructions - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/TODO.md b/TODO.md index d2eec7f7..78a022d3 100644 --- a/TODO.md +++ b/TODO.md @@ -3,12 +3,10 @@ ## now -- feat: hyprland shaders active option and documentation +- feat: new themes to build ## next -- feat: new themes to build - - fix: hydenix.hm.hyprland options with presets should by type str to allow for overrides, example should show default lists - feat: move hyprlock to hyprland module, swaylock should just be swaylock module - assertion to not have both enabled @@ -20,7 +18,7 @@ - waybar - docs: remove doc for overlays on theme for now i think unless i can fix it - adding the overlay causes `pkgs.hydenix.hyde` to disappear lol -- feat: update.sh for themes, map name to hash (check daily), passThru update.sh caller github action +- feat: update.sh for themes, map name to hash (check daily), passThru update.sh caller github action and auto merge - - feat: vscode-nix-ide part of editors, enabled by default - fix: i don't think .config/waybar/modules is supposed to be set anymore From 447b8d67d1f3ff5102e40813783c6ffbbd8a1397 Mon Sep 17 00:00:00 2001 From: richen604 <56615615+richen604@users.noreply.github.com> Date: Wed, 13 Aug 2025 22:01:09 -0700 Subject: [PATCH 10/14] feat: theme update script --- .github/workflows/update-themes.yml | 54 +++++++++++++++++++ hydenix/sources/themes/AbyssGreen.nix | 2 +- hydenix/sources/themes/Abyssal-Wave.nix | 4 +- hydenix/sources/themes/Bad-Blood.nix | 4 +- hydenix/sources/themes/Cat-Latte.nix | 4 +- hydenix/sources/themes/Crimson-Blade.nix | 4 +- hydenix/sources/themes/Dracula.nix | 4 +- hydenix/sources/themes/Green-Lush.nix | 4 +- hydenix/sources/themes/Greenify.nix | 4 +- hydenix/sources/themes/Hack-the-Box.nix | 4 +- hydenix/sources/themes/Ice-Age.nix | 4 +- hydenix/sources/themes/Mac-OS.nix | 6 +-- hydenix/sources/themes/Monokai.nix | 4 +- hydenix/sources/themes/Monterey-Frost.nix | 4 +- hydenix/sources/themes/One-Dark.nix | 2 +- hydenix/sources/themes/Oxo-Carbon.nix | 4 +- hydenix/sources/themes/Paranoid-Sweet.nix | 4 +- hydenix/sources/themes/Pixel-Dream.nix | 4 +- hydenix/sources/themes/Rain-Dark.nix | 4 +- hydenix/sources/themes/Red-Stone.nix | 4 +- hydenix/sources/themes/Scarlet-Night.nix | 4 +- hydenix/sources/themes/Sci-fi.nix | 2 +- hydenix/sources/themes/Solarized-Dark.nix | 4 +- hydenix/sources/themes/Synth-Wave.nix | 4 +- hydenix/sources/themes/Tokyo-Night.nix | 4 +- hydenix/sources/themes/Vanta-Black.nix | 4 +- hydenix/sources/themes/Windows-11.nix | 4 +- hydenix/sources/themes/utils/update-themes.sh | 48 +++++++++++++++++ 28 files changed, 152 insertions(+), 50 deletions(-) create mode 100644 .github/workflows/update-themes.yml create mode 100755 hydenix/sources/themes/utils/update-themes.sh diff --git a/.github/workflows/update-themes.yml b/.github/workflows/update-themes.yml new file mode 100644 index 00000000..7eca752d --- /dev/null +++ b/.github/workflows/update-themes.yml @@ -0,0 +1,54 @@ +name: Update HyDE Themes + +on: + workflow_dispatch: # Allows manual triggering + schedule: + - cron: "0 0 * * *" # Run daily at midnight UTC + +jobs: + update-themes: + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@v3 + with: + fetch-depth: 0 # Fetch all history for auto-merge + + - name: Setup Nix + uses: cachix/install-nix-action@v20 + with: + nix_path: nixpkgs=channel:nixos-unstable + + - name: Run update script + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Automatically provided by GitHub Actions + run: | + chmod +x hydenix/sources/themes/utils/update-themes.sh + ./hydenix/sources/themes/utils/update-themes.sh + + - name: Create Pull Request + id: create_pr + uses: peter-evans/create-pull-request@v5 + with: + token: ${{ secrets.GITHUB_TOKEN }} + commit-message: "feat(themes): automated theme updates" + title: "feat(themes): Automated HyDE Theme Updates" + body: | + This PR updates the `sha256` for HyDE themes based on their specified `rev`. + Automated by GitHub Actions. + branch: automated-theme-updates + delete-branch: true + labels: | + automated + themes + assignees: ${{ github.actor }} # Assign to the user who triggered the workflow or the bot + reviewers: ${{ github.actor }} + add-paths: "hydenix/sources/themes/*.nix" + + # - name: Enable Auto-merge + # if: steps.create_pr.outputs.pull-request-number + # run: | + # gh pr merge --auto --rebase "$PR_URL" + # env: + # PR_URL: ${{ steps.create_pr.outputs.pull-request-url }} + # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/hydenix/sources/themes/AbyssGreen.nix b/hydenix/sources/themes/AbyssGreen.nix index 02fa46b4..dc3545c0 100644 --- a/hydenix/sources/themes/AbyssGreen.nix +++ b/hydenix/sources/themes/AbyssGreen.nix @@ -5,7 +5,7 @@ mkTheme rec { owner = "Itz-Abhishek-Tiwari"; repo = "AbyssGreen"; name = name; - rev = "93903b7d38bb2ab9e705016cc52cf62105d47dd7"; + rev = "main"; sha256 = "sha256-cosU+0wJSaQspcjYEZA5dMoZARz+8vQM+49Vyf2JvA8="; }; meta = { diff --git a/hydenix/sources/themes/Abyssal-Wave.nix b/hydenix/sources/themes/Abyssal-Wave.nix index 3c3415ee..351545a1 100644 --- a/hydenix/sources/themes/Abyssal-Wave.nix +++ b/hydenix/sources/themes/Abyssal-Wave.nix @@ -5,9 +5,9 @@ mkTheme rec { owner = "Itz-Abhishek-Tiwari"; repo = "Abyssal-Wave"; # locking commit - rev = "1f6eff0eb85ed05ac2c402d9e608cc70a3bb16a0"; + rev = "main"; name = name; - sha256 = "sha256-VpKPKgRQMQhDWmlrFignZ1tN69MB/cd8KBsAARMIKIo="; + sha256 = "sha256-JMYjNV2r6/lRwKNQFdz2HmZH7ZxLO0MdiO2iUi5R7As="; }; meta = { name = name; diff --git a/hydenix/sources/themes/Bad-Blood.nix b/hydenix/sources/themes/Bad-Blood.nix index ee8cdb8f..846bf4ff 100644 --- a/hydenix/sources/themes/Bad-Blood.nix +++ b/hydenix/sources/themes/Bad-Blood.nix @@ -5,8 +5,8 @@ mkTheme rec { owner = "HyDE-Project"; repo = "hyde-gallery"; name = name; - rev = "1ce31f0d5cffcfd649eea25177b4ff23422955fe"; - sha256 = "sha256-vWhQ6Mhf3NnXqgGKv38bEM478cJHSfRJtsMPAYqXSv8="; + rev = "Bad-Blood"; + sha256 = "sha256-MbHgUbKNN1o72QLPehdcyI22lwBDoWy2G58lgHBFeZ4="; }; meta = { description = "HyDE Theme: Bad Blood"; diff --git a/hydenix/sources/themes/Cat-Latte.nix b/hydenix/sources/themes/Cat-Latte.nix index 30543cd0..4af39b81 100644 --- a/hydenix/sources/themes/Cat-Latte.nix +++ b/hydenix/sources/themes/Cat-Latte.nix @@ -5,8 +5,8 @@ mkTheme rec { owner = "rishav12s"; repo = "Cat-Latte"; name = name; - rev = "1ee66b25ce7e8251e1af0556a9a486832bbef14c"; - sha256 = "sha256-RQ2M4CUQr9xziYRWHLM1zvA9OGZRc0kvfQwv+n4LX5Q="; + rev = "Cat-Latte"; + sha256 = "sha256-giarUq0eQS8qLfnpGIKQ6pw6sqAcaYohnxC305OkPLc="; }; meta = { description = "Better Catppuccin-Latte that fixes the inconsistencies of the official theme"; diff --git a/hydenix/sources/themes/Crimson-Blade.nix b/hydenix/sources/themes/Crimson-Blade.nix index 9e63a5f7..f4cd3cd2 100644 --- a/hydenix/sources/themes/Crimson-Blade.nix +++ b/hydenix/sources/themes/Crimson-Blade.nix @@ -4,9 +4,9 @@ mkTheme rec { src = pkgs.fetchFromGitHub { owner = "cyb3rgh0u1"; repo = "Crimson-Blade"; - rev = "4b1afd9f62c4b64a7c35628c2e80fa632cb81735"; + rev = "main"; name = name; - sha256 = "sha256-PGE4H7hhaFnxv5TUyEO86bg3BM2A1nDsnBifpMxTBNY="; + sha256 = "sha256-ooQJN3XcE7ZyC2JIlLCC6jraQC9pnwjRSila0Z19G3I="; }; meta = { description = "HyDE Theme: A striking fusion of sharp elegance, cutting through the darkness with bold hues."; diff --git a/hydenix/sources/themes/Dracula.nix b/hydenix/sources/themes/Dracula.nix index ee7268b2..7aa8cb91 100644 --- a/hydenix/sources/themes/Dracula.nix +++ b/hydenix/sources/themes/Dracula.nix @@ -4,9 +4,9 @@ mkTheme rec { src = pkgs.fetchFromGitHub { owner = "RAprogramm"; repo = "HyDe-Themes"; - rev = "fc51f05927f2fe9d90393fdf2debc1afaf429df6"; + rev = "Dracula"; name = name; - sha256 = "sha256-AaFFKyFasjGQuLtqJeZYWxrtAgqsW0FDVxB8KqZkkzM="; + sha256 = "sha256-0mfuP8jhPtQM4VCGXKhNStse0HePvT0eew4BNh7sOsE="; }; meta = { description = "HyDE Theme: Dracula"; diff --git a/hydenix/sources/themes/Green-Lush.nix b/hydenix/sources/themes/Green-Lush.nix index f14d19c0..2e7f3361 100644 --- a/hydenix/sources/themes/Green-Lush.nix +++ b/hydenix/sources/themes/Green-Lush.nix @@ -4,9 +4,9 @@ mkTheme rec { src = pkgs.fetchFromGitHub { owner = "abenezerw"; repo = "Green-Lush"; - rev = "61a21b77a8b285b88f3cc5e1677dae64456dd370"; + rev = "main"; name = name; - sha256 = "sha256-Z0TdPlk5sPIAVZvoZeEbzs61XhTx5p6q9vm3hhhhY0o="; + sha256 = "sha256-4k3EXKyHkVPrqnZuviHpmSc+kNIVysZTGu0hd/XT+UA="; }; meta = { description = "HyDE Theme: Green Lush"; diff --git a/hydenix/sources/themes/Greenify.nix b/hydenix/sources/themes/Greenify.nix index 4ae68613..a1159286 100644 --- a/hydenix/sources/themes/Greenify.nix +++ b/hydenix/sources/themes/Greenify.nix @@ -5,8 +5,8 @@ mkTheme rec { owner = "mahaveergurjar"; repo = "Theme-Gallery"; name = name; - rev = "c7d369fb3cdac01572a8b21b077cd59b3379e878"; - sha256 = "sha256-5UhGEVAKCnjQ8pWZ2+zjaheWOM4lZ++5DqoUGXikNls="; + rev = "Greenify"; + sha256 = "sha256-jf8CilUopQBqAa3JBPl68S9P7Hg/87KpyEATbiOhg4A="; }; meta = { description = "HyDE Theme: Greenify"; diff --git a/hydenix/sources/themes/Hack-the-Box.nix b/hydenix/sources/themes/Hack-the-Box.nix index 98dfc9da..efc08b84 100644 --- a/hydenix/sources/themes/Hack-the-Box.nix +++ b/hydenix/sources/themes/Hack-the-Box.nix @@ -4,9 +4,9 @@ mkTheme rec { src = pkgs.fetchFromGitHub { owner = "HyDE-Project"; repo = "hyde-gallery"; - rev = "36fa09171cd1d14156086542df020369b9f8b8fa"; + rev = "Hack-the-Box"; name = name; - sha256 = "sha256-ww7LoUVHlJhYUE2VSguhE7OZblx0hbQp6IaWAJSLcy4="; + sha256 = "sha256-VMDs9fnXX0v7iGSftA19UXxANY1sRjrK5ipMsfjU7Tg="; }; meta = { description = "HyDE Theme: Hack the Box"; diff --git a/hydenix/sources/themes/Ice-Age.nix b/hydenix/sources/themes/Ice-Age.nix index fd4b5e9d..a06dd2e1 100644 --- a/hydenix/sources/themes/Ice-Age.nix +++ b/hydenix/sources/themes/Ice-Age.nix @@ -4,9 +4,9 @@ mkTheme rec { src = pkgs.fetchFromGitHub { owner = "saber-88"; repo = "Ice-Age"; - rev = "56564067e8bf74416eaaf68e8c6730e4c381c67a"; + rev = "main"; name = name; - sha256 = "sha256-44l7UTHrCvvJL3TO6hk/SV2fxB9MXJtmSM5S56w8xVQ="; + sha256 = "sha256-+U5J+NvCYm9t77vfhdAcWR2ZWh499weSaDQ1ZDPFa3c="; }; meta = { description = "HyDE Theme: Ice Age"; diff --git a/hydenix/sources/themes/Mac-OS.nix b/hydenix/sources/themes/Mac-OS.nix index 82f0b60f..cdfcf705 100644 --- a/hydenix/sources/themes/Mac-OS.nix +++ b/hydenix/sources/themes/Mac-OS.nix @@ -4,13 +4,13 @@ mkTheme rec { src = pkgs.fetchFromGitHub { owner = "HyDE-Project"; repo = "hyde-gallery"; - rev = "1701be171600db27b04f8bf704dc37efe36cd282"; + rev = "Mac-Os"; name = name; - sha256 = "sha256-J8H+obYoePdAwkOA9NLwbrz1ufKrU8qQFVKU9Ah8qMM="; + sha256 = "sha256-QmM3JaSLCQn9eqKqSNL13b2DrsxIGiCztbxobsHbbq0="; }; meta = { description = "HyDE Theme: Mac OS"; - homepage = "https://github.com/HyDE-Project/hyde-gallery/tree/1701be171600db27b04f8bf704dc37efe36cd282"; + homepage = "https://github.com/HyDE-Project/hyde-gallery/tree/Mac-Os"; priority = 10; }; } diff --git a/hydenix/sources/themes/Monokai.nix b/hydenix/sources/themes/Monokai.nix index 52b084f5..cd35dbb2 100644 --- a/hydenix/sources/themes/Monokai.nix +++ b/hydenix/sources/themes/Monokai.nix @@ -4,9 +4,9 @@ mkTheme rec { src = pkgs.fetchFromGitHub { owner = "mahaveergurjar"; repo = "Theme-Gallery"; - rev = "2c4ecf9e32753da36832d2aa9f32908a92caab15"; + rev = "Monokai"; name = name; - sha256 = "sha256-vxIm5Gasnv8xooGnFNFVmZJd7o2YkOORJD2pIQFZrhA="; + sha256 = "sha256-bwjFzGVemYCU9zOT7v5gVvnrzsxZ09YlYt87P73nA3I="; }; meta = { description = "HyDE Theme: Monokai"; diff --git a/hydenix/sources/themes/Monterey-Frost.nix b/hydenix/sources/themes/Monterey-Frost.nix index ad3085b1..9b84f85a 100644 --- a/hydenix/sources/themes/Monterey-Frost.nix +++ b/hydenix/sources/themes/Monterey-Frost.nix @@ -4,9 +4,9 @@ mkTheme rec { src = pkgs.fetchFromGitHub { owner = "rishav12s"; repo = "Monterey-Frost"; - rev = "256fe4ab744a3e4682b014250c472dcc38fca6d4"; + rev = "Monterey-Frost"; name = name; - sha256 = "sha256-II0UBeqTK2TPeXvY4HuTsmqRkGMrjq5jSSVWvR/hm8M="; + sha256 = "sha256-ECG7wyIa0RdZteTEdQjpVjhbf62XXz0rW3Ea494461E="; }; meta = { description = "Mac-OS inspired dark theme"; diff --git a/hydenix/sources/themes/One-Dark.nix b/hydenix/sources/themes/One-Dark.nix index efef6270..87e6e4f3 100644 --- a/hydenix/sources/themes/One-Dark.nix +++ b/hydenix/sources/themes/One-Dark.nix @@ -4,7 +4,7 @@ mkTheme rec { src = pkgs.fetchFromGitHub { owner = "RAprogramm"; repo = "HyDe-Themes"; - rev = "4109ebca756257b63f22b2b74a5597e1650f3434"; + rev = "One-Dark"; name = name; sha256 = "sha256-j4KXbLb7gvVNCrdqMscsIinhBZoBp4oIzEbwws4fstU="; }; diff --git a/hydenix/sources/themes/Oxo-Carbon.nix b/hydenix/sources/themes/Oxo-Carbon.nix index 81caa59f..d3ea2534 100644 --- a/hydenix/sources/themes/Oxo-Carbon.nix +++ b/hydenix/sources/themes/Oxo-Carbon.nix @@ -4,9 +4,9 @@ mkTheme rec { src = pkgs.fetchFromGitHub { owner = "rishav12s"; repo = "Oxo-Carbon"; - rev = "91eff63b9ba2b0a2ad002661c3e7f327237e4d02"; + rev = "Oxo-Carbon"; name = name; - sha256 = "sha256-qxqdP5rInvHy2Irm6pxlujhSPaVm+i4YoQ2/4dS4vhw="; + sha256 = "sha256-w+7Gky7L2crF4F7myhA64fXgjoWulLb/hWBaI6OMwBo="; }; meta = { description = "HyDE Theme: Oxo Carbon"; diff --git a/hydenix/sources/themes/Paranoid-Sweet.nix b/hydenix/sources/themes/Paranoid-Sweet.nix index 0161deb4..93be2960 100644 --- a/hydenix/sources/themes/Paranoid-Sweet.nix +++ b/hydenix/sources/themes/Paranoid-Sweet.nix @@ -4,9 +4,9 @@ mkTheme rec { src = pkgs.fetchFromGitHub { owner = "rishav12s"; repo = "Paranoid-Sweet"; - rev = "668f6a5a403416e5f50c1924ee5667bcccd2c1af"; + rev = "Paranoid-Sweet"; name = name; - sha256 = "sha256-0FhznHsg2ov4XYVvhY0y5Uy45s2nWMi8JZMQPBUvpPg="; + sha256 = "sha256-j4fjX2fWSBajNKFSovVsy+FydUcq5FEtk6B9iiDURAs="; }; meta = { description = "HyDE Theme: Paranoid Sweet"; diff --git a/hydenix/sources/themes/Pixel-Dream.nix b/hydenix/sources/themes/Pixel-Dream.nix index 325c6ddc..bbcfb1a2 100644 --- a/hydenix/sources/themes/Pixel-Dream.nix +++ b/hydenix/sources/themes/Pixel-Dream.nix @@ -4,9 +4,9 @@ mkTheme rec { src = pkgs.fetchFromGitHub { owner = "rishav12s"; repo = "Pixel-Dream"; - rev = "c7765210fe3610742ccb955278f2f3a2ebe3f0d9"; + rev = "Pixel-Dream"; name = name; - sha256 = "sha256-vPtWjTWHttUPJBtxcJY9jiBrP6jH/r0IIwGmmoINQyw="; + sha256 = "sha256-uuqktN19CBY8EDleC+8U/vXrPgwH/lStS8G6hyN+fWE="; }; meta = { description = "Pixel Art inspired theme"; diff --git a/hydenix/sources/themes/Rain-Dark.nix b/hydenix/sources/themes/Rain-Dark.nix index 28e1a954..042fa5a0 100644 --- a/hydenix/sources/themes/Rain-Dark.nix +++ b/hydenix/sources/themes/Rain-Dark.nix @@ -4,9 +4,9 @@ mkTheme rec { src = pkgs.fetchFromGitHub { owner = "rishav12s"; repo = "Rain-Dark"; - rev = "385d92ed53bc0190f7f8712eb541e6a703f6961f"; + rev = "Rain-Dark"; name = name; - sha256 = "sha256-1EXbRmCWrcY0NKD9iL+xGmm7ddqLFf4K7ibVSBm2Tuc="; + sha256 = "sha256-zv66a/fh3xqOIYVD6OUi4ZEpn3L29J2vvBnPBjeQW7w="; }; meta = { description = "HyDE Theme: Rain Dark"; diff --git a/hydenix/sources/themes/Red-Stone.nix b/hydenix/sources/themes/Red-Stone.nix index 1343fbde..f94e3f47 100644 --- a/hydenix/sources/themes/Red-Stone.nix +++ b/hydenix/sources/themes/Red-Stone.nix @@ -4,9 +4,9 @@ mkTheme rec { src = pkgs.fetchFromGitHub { owner = "mahaveergurjar"; repo = "Theme-Gallery"; - rev = "371030f2236f1713d084a4fc90b479fa821b0067"; + rev = "Red_Stone"; name = name; - sha256 = "sha256-BNvAQ8TulTCex0cF8cvaM2NJc5zeKARTYJLO3nQD1n4="; + sha256 = "sha256-cbg7hBjXg0xTRCZqbo1UUQM7zNoQHEQO6it2VkahYqI="; }; meta = { description = "HyDE Theme: Red Stone"; diff --git a/hydenix/sources/themes/Scarlet-Night.nix b/hydenix/sources/themes/Scarlet-Night.nix index 50cd8c3d..88a1a47b 100644 --- a/hydenix/sources/themes/Scarlet-Night.nix +++ b/hydenix/sources/themes/Scarlet-Night.nix @@ -4,9 +4,9 @@ mkTheme rec { src = pkgs.fetchFromGitHub { owner = "abenezerw"; repo = "Scarlet-Night"; - rev = "1c80ed42231de2afcda28e48793e395e3f0955d2"; + rev = "main"; name = name; - sha256 = "sha256-RtZQpL0ZzjsLOT812JCnhbW6aIya+6I9FO+fCxWIPRY="; + sha256 = "sha256-+RNKfwc8mfgSnNifMcxlHyBTzDvY5DXAJeNKbJsD8AU="; }; meta = { description = "HyDE Theme: Scarlet Night"; diff --git a/hydenix/sources/themes/Sci-fi.nix b/hydenix/sources/themes/Sci-fi.nix index d7a6af55..1d86842c 100644 --- a/hydenix/sources/themes/Sci-fi.nix +++ b/hydenix/sources/themes/Sci-fi.nix @@ -4,7 +4,7 @@ mkTheme rec { src = pkgs.fetchFromGitHub { owner = "KaranRaval123"; repo = "Sci-fi"; - rev = "52091e9658319a4d0da0bc19c57f55f3c1b539f0"; + rev = "main"; name = name; sha256 = "sha256-gnAvPuHBfH+PspSxkzOA2jIIHox2Fi+nMSsoZAJHGlw="; }; diff --git a/hydenix/sources/themes/Solarized-Dark.nix b/hydenix/sources/themes/Solarized-Dark.nix index 19c43a23..84f36a26 100644 --- a/hydenix/sources/themes/Solarized-Dark.nix +++ b/hydenix/sources/themes/Solarized-Dark.nix @@ -4,9 +4,9 @@ mkTheme rec { src = pkgs.fetchFromGitHub { owner = "rishav12s"; repo = "Solarized-Dark"; - rev = "0222e6a9efc5f1cbdffe263d7cc523efae659e6a"; + rev = "Solarized-Dark"; name = name; - sha256 = "sha256-hZb94uJt5XuTJToL+ljQTXOBBKBCkrytD7jwV8Ck7ug="; + sha256 = "sha256-naLPzGyGK3jQSILdP5vkG2coEOqkQ4Q/dHUBJlUa2pI="; }; meta = { description = "HyDE Theme: Solarized Dark"; diff --git a/hydenix/sources/themes/Synth-Wave.nix b/hydenix/sources/themes/Synth-Wave.nix index 51a41d6f..9202cb73 100644 --- a/hydenix/sources/themes/Synth-Wave.nix +++ b/hydenix/sources/themes/Synth-Wave.nix @@ -4,9 +4,9 @@ mkTheme rec { src = pkgs.fetchFromGitHub { owner = "HyDE-Project"; repo = "hyde-themes"; - rev = "61c389a0ba3c0858e000436a359385389cda7f44"; + rev = "Synth-Wave"; name = name; - sha256 = "sha256-2qkR61CaUyHry/clQb7WVMSt4rV+4c4yElRxqSwF73Y="; + sha256 = "sha256-BV5+A/CnaCX8t9oHt3Q0nxWGJvRUYWQ3IpBK3NlJbj0="; }; meta = { description = "HyDE Theme: Synth Wave"; diff --git a/hydenix/sources/themes/Tokyo-Night.nix b/hydenix/sources/themes/Tokyo-Night.nix index 8930ca50..b0333332 100644 --- a/hydenix/sources/themes/Tokyo-Night.nix +++ b/hydenix/sources/themes/Tokyo-Night.nix @@ -4,9 +4,9 @@ mkTheme rec { src = pkgs.fetchFromGitHub { owner = "HyDE-Project"; repo = "hyde-themes"; - rev = "da8c38b7a6927eb585203e28fb8e403203578fe5"; + rev = "Tokyo-Night"; name = name; - sha256 = "sha256-YL91+Q7CIGT+Ams9FOdw343OgQ19NWz6GJZEG37Gg9A="; + sha256 = "sha256-pPeNr8hbJ7wgGkYxFdvHdrBfkZpNRlKgQfhIF7rQKWU="; }; meta = { description = "HyDE Theme: Tokyo Night"; diff --git a/hydenix/sources/themes/Vanta-Black.nix b/hydenix/sources/themes/Vanta-Black.nix index 2f62fd9a..6236edb9 100644 --- a/hydenix/sources/themes/Vanta-Black.nix +++ b/hydenix/sources/themes/Vanta-Black.nix @@ -4,9 +4,9 @@ mkTheme rec { src = pkgs.fetchFromGitHub { owner = "rishav12s"; repo = "Vanta-Black"; - rev = "e8ef0d6b8b1a13e7b471f3c803bb96bd46cb4837"; + rev = "Vanta-Black"; name = name; - sha256 = "sha256-d62aHzryeBnrSvam0K3GGRdIu2ViJXoVws+YEY6ZHA0="; + sha256 = "sha256-4UZSpJPIzs2ZLQMt1QQz7VoyDW4jiOWZ9Xp1yU4k4Zs="; }; meta = { description = "HyDE Theme: Vanta Black inspired theme having the deepest blacks"; diff --git a/hydenix/sources/themes/Windows-11.nix b/hydenix/sources/themes/Windows-11.nix index e215995f..9a77d675 100644 --- a/hydenix/sources/themes/Windows-11.nix +++ b/hydenix/sources/themes/Windows-11.nix @@ -4,9 +4,9 @@ mkTheme rec { src = pkgs.fetchFromGitHub { owner = "HyDE-Project"; repo = "hyde-gallery"; - rev = "ea30c190b526555c06b6c716d0c062f48a996897"; + rev = "Windows-11"; name = name; - sha256 = "sha256-QG2pGDT6G9fuqiCErSf1cTOdRNI5WDy+1yyHGXDsYoQ="; + sha256 = "sha256-rAg4iPOD8sRvKX32N9+8DekwvvmizFC9Q2QwWA7mKz0="; }; meta = { description = "HyDE Theme: Windows 11"; diff --git a/hydenix/sources/themes/utils/update-themes.sh b/hydenix/sources/themes/utils/update-themes.sh new file mode 100755 index 00000000..143859b3 --- /dev/null +++ b/hydenix/sources/themes/utils/update-themes.sh @@ -0,0 +1,48 @@ +#!/usr/bin/env nix-shell +#! nix-shell -i bash -p nix-prefetch-git gnused + +set -eo pipefail + +THEMES_DIR="hydenix/sources/themes" + +# Find all .nix files in the themes directory, excluding default.nix and files in utils/ +find "$THEMES_DIR" -name "*.nix" ! -name "default.nix" ! -path "*/utils/*" | while read -r NIX_FILE; do + echo "Processing $NIX_FILE..." + + # Extract owner, repo, rev, and current sha256 from the .nix file + OWNER=$(grep -oP 'owner = "\K[^"]+' "$NIX_FILE" || true) + REPO=$(grep -oP 'repo = "\K[^"]+' "$NIX_FILE" || true) + REV=$(grep -oP 'rev = "\K[^"]+' "$NIX_FILE" || true) + CURRENT_SHA256=$(grep -oP 'sha256 = "\K[^"]+' "$NIX_FILE" || true) + NAME=$(basename "$NIX_FILE" .nix) # Get theme name from filename + + if [ -z "$OWNER" ] || [ -z "$REPO" ] || [ -z "$REV" ]; then + echo "Warning: Could not extract owner, repo, or rev from $NIX_FILE. Skipping." + continue + fi + + echo " Owner: $OWNER, Repo: $REPO, Rev: $REV" + + # Construct the URL for nix-prefetch-url + FETCH_URL="https://github.com/$OWNER/$REPO/archive/$REV.tar.gz" + + NEW_SHA256=$(nix-prefetch-url --unpack "$FETCH_URL") + # Convert to SRI format (sha256-) + NEW_SHA256=$(nix hash to-sri --type sha256 "$NEW_SHA256") + + if [ -z "$NEW_SHA256" ]; then + echo "Error: Could not prefetch URL for $NAME ($FETCH_URL). Skipping." + continue + fi + + if [ "$CURRENT_SHA256" == "$NEW_SHA256" ]; then + echo " Theme $NAME is already up to date. Skipping." + else + echo " Updating $NAME: sha256 $CURRENT_SHA256 -> $NEW_SHA256" + # Update only the sha256 line + sed -i -E "s|^([[:space:]]*)sha256 = .*$|\1sha256 = \"$NEW_SHA256\";|" "$NIX_FILE" + echo " Updated $NIX_FILE" + fi +done + +echo "Theme update process completed." From ac5174ffef4177c61f040c60a6a06fe40e94e8e9 Mon Sep 17 00:00:00 2001 From: richen604 <56615615+richen604@users.noreply.github.com> Date: Mon, 18 Aug 2025 18:21:04 -0700 Subject: [PATCH 11/14] fix: revert hyprland pkgs, bumped theme. fixes #143 --- flake.lock | 559 +------------------------ flake.nix | 9 - hydenix/modules/hm/xdg.nix | 5 +- hydenix/modules/system/system.nix | 6 +- hydenix/sources/overlay.nix | 3 - hydenix/sources/themes/Cosmic-Blue.nix | 2 +- 6 files changed, 7 insertions(+), 577 deletions(-) diff --git a/flake.lock b/flake.lock index da9d181e..e2464396 100644 --- a/flake.lock +++ b/flake.lock @@ -1,57 +1,8 @@ { "nodes": { - "aquamarine": { - "inputs": { - "hyprutils": [ - "hyprland", - "hyprutils" - ], - "hyprwayland-scanner": [ - "hyprland", - "hyprwayland-scanner" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1753216019, - "narHash": "sha256-zik7WISrR1ks2l6T1MZqZHb/OqroHdJnSnAehkE0kCk=", - "owner": "hyprwm", - "repo": "aquamarine", - "rev": "be166e11d86ba4186db93e10c54a141058bdce49", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "aquamarine", - "type": "github" - } - }, - "flake-compat": { - "flake": false, - "locked": { - "lastModified": 1747046372, - "narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, "flake-utils": { "inputs": { - "systems": "systems_3" + "systems": "systems" }, "locked": { "lastModified": 1731533236, @@ -67,28 +18,6 @@ "type": "github" } }, - "gitignore": { - "inputs": { - "nixpkgs": [ - "hyprland", - "pre-commit-hooks", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1709087332, - "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", - "owner": "hercules-ci", - "repo": "gitignore.nix", - "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "gitignore.nix", - "type": "github" - } - }, "home-manager": { "inputs": { "nixpkgs": [ @@ -203,396 +132,6 @@ "type": "github" } }, - "hyprcursor": { - "inputs": { - "hyprlang": [ - "hyprland", - "hyprlang" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1753964049, - "narHash": "sha256-lIqabfBY7z/OANxHoPeIrDJrFyYy9jAM4GQLzZ2feCM=", - "owner": "hyprwm", - "repo": "hyprcursor", - "rev": "44e91d467bdad8dcf8bbd2ac7cf49972540980a5", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprcursor", - "type": "github" - } - }, - "hyprgraphics": { - "inputs": { - "hyprutils": [ - "hyprland", - "hyprutils" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1754305013, - "narHash": "sha256-u+M2f0Xf1lVHzIPQ7DsNCDkM1NYxykOSsRr4t3TbSM4=", - "owner": "hyprwm", - "repo": "hyprgraphics", - "rev": "4c1d63a0f22135db123fc789f174b89544c6ec2d", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprgraphics", - "type": "github" - } - }, - "hypridle": { - "inputs": { - "hyprland-protocols": "hyprland-protocols", - "hyprlang": "hyprlang", - "hyprutils": "hyprutils", - "hyprwayland-scanner": "hyprwayland-scanner", - "nixpkgs": [ - "hydenix-nixpkgs" - ], - "systems": "systems" - }, - "locked": { - "lastModified": 1752164251, - "narHash": "sha256-v/FnmgSkOypGkpDHQW8KK0uVIyh2njVgEa7hOpWW9ZM=", - "owner": "hyprwm", - "repo": "hypridle", - "rev": "dda793b66a79e5602675fa370dd9a93f1d70a60e", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hypridle", - "type": "github" - } - }, - "hyprland": { - "inputs": { - "aquamarine": "aquamarine", - "hyprcursor": "hyprcursor", - "hyprgraphics": "hyprgraphics", - "hyprland-protocols": "hyprland-protocols_2", - "hyprland-qtutils": "hyprland-qtutils", - "hyprlang": "hyprlang_2", - "hyprutils": "hyprutils_2", - "hyprwayland-scanner": "hyprwayland-scanner_2", - "nixpkgs": [ - "hydenix-nixpkgs" - ], - "pre-commit-hooks": "pre-commit-hooks", - "systems": "systems_2", - "xdph": "xdph" - }, - "locked": { - "lastModified": 1755025881, - "narHash": "sha256-nSrui2v+EMqm1O6VcDujHS0gUX6YHFt2VlWz94LBJRs=", - "owner": "hyprwm", - "repo": "hyprland", - "rev": "2b6e2ceb2e66407e80b98015eb9f559f06405b2f", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprland", - "type": "github" - } - }, - "hyprland-protocols": { - "inputs": { - "nixpkgs": [ - "hypridle", - "nixpkgs" - ], - "systems": [ - "hypridle", - "systems" - ] - }, - "locked": { - "lastModified": 1749046714, - "narHash": "sha256-kymV5FMnddYGI+UjwIw8ceDjdeg7ToDVjbHCvUlhn14=", - "owner": "hyprwm", - "repo": "hyprland-protocols", - "rev": "613878cb6f459c5e323aaafe1e6f388ac8a36330", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprland-protocols", - "type": "github" - } - }, - "hyprland-protocols_2": { - "inputs": { - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1749046714, - "narHash": "sha256-kymV5FMnddYGI+UjwIw8ceDjdeg7ToDVjbHCvUlhn14=", - "owner": "hyprwm", - "repo": "hyprland-protocols", - "rev": "613878cb6f459c5e323aaafe1e6f388ac8a36330", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprland-protocols", - "type": "github" - } - }, - "hyprland-qt-support": { - "inputs": { - "hyprlang": [ - "hyprland", - "hyprland-qtutils", - "hyprlang" - ], - "nixpkgs": [ - "hyprland", - "hyprland-qtutils", - "nixpkgs" - ], - "systems": [ - "hyprland", - "hyprland-qtutils", - "systems" - ] - }, - "locked": { - "lastModified": 1749154592, - "narHash": "sha256-DO7z5CeT/ddSGDEnK9mAXm1qlGL47L3VAHLlLXoCjhE=", - "owner": "hyprwm", - "repo": "hyprland-qt-support", - "rev": "4c8053c3c888138a30c3a6c45c2e45f5484f2074", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprland-qt-support", - "type": "github" - } - }, - "hyprland-qtutils": { - "inputs": { - "hyprland-qt-support": "hyprland-qt-support", - "hyprlang": [ - "hyprland", - "hyprlang" - ], - "hyprutils": [ - "hyprland", - "hyprland-qtutils", - "hyprlang", - "hyprutils" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1753819801, - "narHash": "sha256-tHe6XeNeVeKapkNM3tcjW4RuD+tB2iwwoogWJOtsqTI=", - "owner": "hyprwm", - "repo": "hyprland-qtutils", - "rev": "b308a818b9dcaa7ab8ccab891c1b84ebde2152bc", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprland-qtutils", - "type": "github" - } - }, - "hyprlang": { - "inputs": { - "hyprutils": [ - "hypridle", - "hyprutils" - ], - "nixpkgs": [ - "hypridle", - "nixpkgs" - ], - "systems": [ - "hypridle", - "systems" - ] - }, - "locked": { - "lastModified": 1749145882, - "narHash": "sha256-qr0KXeczF8Sma3Ae7+dR2NHhvG7YeLBJv19W4oMu6ZE=", - "owner": "hyprwm", - "repo": "hyprlang", - "rev": "1bfb84f54d50c7ae6558c794d3cfd5f6a7e6e676", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprlang", - "type": "github" - } - }, - "hyprlang_2": { - "inputs": { - "hyprutils": [ - "hyprland", - "hyprutils" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1753622892, - "narHash": "sha256-0K+A+gmOI8IklSg5It1nyRNv0kCNL51duwnhUO/B8JA=", - "owner": "hyprwm", - "repo": "hyprlang", - "rev": "23f0debd2003f17bd65f851cd3f930cff8a8c809", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprlang", - "type": "github" - } - }, - "hyprutils": { - "inputs": { - "nixpkgs": [ - "hypridle", - "nixpkgs" - ], - "systems": [ - "hypridle", - "systems" - ] - }, - "locked": { - "lastModified": 1749135356, - "narHash": "sha256-Q8mAKMDsFbCEuq7zoSlcTuxgbIBVhfIYpX0RjE32PS0=", - "owner": "hyprwm", - "repo": "hyprutils", - "rev": "e36db00dfb3a3d3fdcc4069cb292ff60d2699ccb", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprutils", - "type": "github" - } - }, - "hyprutils_2": { - "inputs": { - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1754481650, - "narHash": "sha256-6u6HdEFJh5gY6VfyMQbhP7zDdVcqOrCDTkbiHJmAtMI=", - "owner": "hyprwm", - "repo": "hyprutils", - "rev": "df6b8820c4a0835d83d0c7c7be86fbc555f1f7fd", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprutils", - "type": "github" - } - }, - "hyprwayland-scanner": { - "inputs": { - "nixpkgs": [ - "hypridle", - "nixpkgs" - ], - "systems": [ - "hypridle", - "systems" - ] - }, - "locked": { - "lastModified": 1749145760, - "narHash": "sha256-IHaGWpGrv7seFWdw/1A+wHtTsPlOGIKMrk1TUIYJEFI=", - "owner": "hyprwm", - "repo": "hyprwayland-scanner", - "rev": "817918315ea016cc2d94004bfb3223b5fd9dfcc6", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprwayland-scanner", - "type": "github" - } - }, - "hyprwayland-scanner_2": { - "inputs": { - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1751897909, - "narHash": "sha256-FnhBENxihITZldThvbO7883PdXC/2dzW4eiNvtoV5Ao=", - "owner": "hyprwm", - "repo": "hyprwayland-scanner", - "rev": "fcca0c61f988a9d092cbb33e906775014c61579d", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprwayland-scanner", - "type": "github" - } - }, "hyq": { "inputs": { "flake-utils": "flake-utils", @@ -666,29 +205,6 @@ "type": "github" } }, - "pre-commit-hooks": { - "inputs": { - "flake-compat": "flake-compat", - "gitignore": "gitignore", - "nixpkgs": [ - "hyprland", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1754416808, - "narHash": "sha256-c6yg0EQ9xVESx6HGDOCMcyRSjaTpNJP10ef+6fRcofA=", - "owner": "cachix", - "repo": "git-hooks.nix", - "rev": "9c52372878df6911f9afc1e2a1391f55e4dfc864", - "type": "github" - }, - "original": { - "owner": "cachix", - "repo": "git-hooks.nix", - "type": "github" - } - }, "root": { "inputs": { "home-manager": "home-manager", @@ -697,8 +213,6 @@ "hyde-ipc": "hyde-ipc", "hydectl": "hydectl", "hydenix-nixpkgs": "hydenix-nixpkgs", - "hypridle": "hypridle", - "hyprland": "hyprland", "hyq": "hyq", "nix-index-database": "nix-index-database", "nixos-hardware": "nixos-hardware" @@ -723,36 +237,6 @@ } }, "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=", @@ -766,47 +250,6 @@ "repo": "default", "type": "github" } - }, - "xdph": { - "inputs": { - "hyprland-protocols": [ - "hyprland", - "hyprland-protocols" - ], - "hyprlang": [ - "hyprland", - "hyprlang" - ], - "hyprutils": [ - "hyprland", - "hyprutils" - ], - "hyprwayland-scanner": [ - "hyprland", - "hyprwayland-scanner" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1753633878, - "narHash": "sha256-js2sLRtsOUA/aT10OCDaTjO80yplqwOIaLUqEe0nMx0=", - "owner": "hyprwm", - "repo": "xdg-desktop-portal-hyprland", - "rev": "371b96bd11ad2006ed4f21229dbd1be69bed3e8a", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "xdg-desktop-portal-hyprland", - "type": "github" - } } }, "root": "root", diff --git a/flake.nix b/flake.nix index fdff61f2..a9681b95 100644 --- a/flake.nix +++ b/flake.nix @@ -40,15 +40,6 @@ inputs.nixpkgs.follows = "hydenix-nixpkgs"; }; - hyprland = { - url = "github:hyprwm/hyprland"; - inputs.nixpkgs.follows = "hydenix-nixpkgs"; - }; - hypridle = { - url = "github:hyprwm/hypridle"; - inputs.nixpkgs.follows = "hydenix-nixpkgs"; - }; - }; outputs = hydenix-inputs@{ hydenix-nixpkgs, ... }: diff --git a/hydenix/modules/hm/xdg.nix b/hydenix/modules/hm/xdg.nix index 7b59ef5d..b8683a29 100644 --- a/hydenix/modules/hm/xdg.nix +++ b/hydenix/modules/hm/xdg.nix @@ -2,7 +2,6 @@ config, lib, pkgs, - inputs, ... }: @@ -26,13 +25,13 @@ in portal = { enable = true; extraPortals = with pkgs; [ - pkgs.hydenix.xdg-desktop-portal-hyprland + pkgs.xdg-desktop-portal-hyprland xdg-desktop-portal-gtk xdg-desktop-portal ]; xdgOpenUsePortal = true; configPackages = with pkgs; [ - pkgs.hydenix.xdg-desktop-portal-hyprland + pkgs.xdg-desktop-portal-hyprland xdg-desktop-portal-gtk xdg-desktop-portal ]; diff --git a/hydenix/modules/system/system.nix b/hydenix/modules/system/system.nix index d138c3e1..14e69bca 100644 --- a/hydenix/modules/system/system.nix +++ b/hydenix/modules/system/system.nix @@ -55,7 +55,7 @@ in coreutils # coreutils implementation bash-completion # Add bash-completion package - pkgs.hydenix.hypridle + hypridle ]; environment.variables = { @@ -63,8 +63,8 @@ in }; programs.hyprland = { - package = pkgs.hydenix.hyprland; - portalPackage = pkgs.hydenix.xdg-desktop-portal-hyprland; + package = pkgs.hyprland; + portalPackage = pkgs.xdg-desktop-portal-hyprland; enable = true; withUWSM = false; }; diff --git a/hydenix/sources/overlay.nix b/hydenix/sources/overlay.nix index 92e889e6..bcf0dfc8 100644 --- a/hydenix/sources/overlay.nix +++ b/hydenix/sources/overlay.nix @@ -16,9 +16,6 @@ let hyde = callPackage ./hyde.nix { inherit inputs; }; # Theme packages from the themes directory themes = callPackage ./themes/default.nix { }; - hyprland = inputs.hyprland.packages.${prev.system}.hyprland; - hypridle = inputs.hypridle.packages.${prev.system}.hypridle; - xdg-desktop-portal-hyprland = inputs.hyprland.packages.${prev.system}.xdg-desktop-portal-hyprland; hyq = inputs.hyq.packages.${prev.system}.default; hydectl = inputs.hydectl.packages.${prev.system}.default; hyde-ipc = inputs.hyde-ipc.packages.${prev.system}.default; diff --git a/hydenix/sources/themes/Cosmic-Blue.nix b/hydenix/sources/themes/Cosmic-Blue.nix index 351aa786..cd5f732a 100644 --- a/hydenix/sources/themes/Cosmic-Blue.nix +++ b/hydenix/sources/themes/Cosmic-Blue.nix @@ -6,7 +6,7 @@ mkTheme rec { repo = "Cosmic-Blue"; rev = "main"; name = name; - sha256 = "sha256-TKJGuyWyd6R2GdKTRBnrfTGfH9iSVlwr83xZsfvmgPE="; + sha256 = "sha256-ed9QxS4onniN+kABewK9kBRu9xFMvHU6em+QcP2GrFM="; }; meta = { description = "HyDE Theme: Cosmic Blue"; From c11ec25c094fbbee6953c717e4252e7d324d1697 Mon Sep 17 00:00:00 2001 From: richen604 <56615615+richen604@users.noreply.github.com> Date: Mon, 25 Aug 2025 20:30:58 -0700 Subject: [PATCH 12/14] fix: sddm pkg --- hydenix/modules/system/sddm.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/hydenix/modules/system/sddm.nix b/hydenix/modules/system/sddm.nix index 9b4dae6e..f4fd1efa 100644 --- a/hydenix/modules/system/sddm.nix +++ b/hydenix/modules/system/sddm.nix @@ -47,7 +47,6 @@ in }; extraPackages = with pkgs; [ libsForQt5.sddm - libsForQt5.sddm-kcm libsForQt5.qtsvg libsForQt5.qtmultimedia libsForQt5.qtvirtualkeyboard From 26a0c379baf26043f84c799f7b0875c762c21f4c Mon Sep 17 00:00:00 2001 From: richen604 <56615615+richen604@users.noreply.github.com> Date: Wed, 27 Aug 2025 16:12:59 -0700 Subject: [PATCH 13/14] chore: todo --- TODO.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TODO.md b/TODO.md index 78a022d3..03814cda 100644 --- a/TODO.md +++ b/TODO.md @@ -58,6 +58,6 @@ - document disko configuration clearly, the issue is ive never used disko - most likely will need its own video installation guide - nh by default? -- docs: documentation generation using nixosOptionsDoc +- docs: documentation generation using nixosOptionsDoc - refactor: revise module hierarchy to be more clear and concise? - feat: spicetify theme support? flatpak? From 994e8491daa10e32d06b1625384f17c9104b3ca3 Mon Sep 17 00:00:00 2001 From: richen604 <56615615+richen604@users.noreply.github.com> Date: Wed, 27 Aug 2025 20:04:09 -0700 Subject: [PATCH 14/14] feat: update flake, fixed sddm, bumped theme hashes --- flake.lock | 26 +++++++++---------- flake.nix | 2 +- hydenix/modules/system/sddm.nix | 1 - hydenix/sources/themes/Gruvbox-Retro.nix | 2 +- hydenix/sources/themes/Ice-Age.nix | 4 +-- hydenix/sources/themes/Material-Sakura.nix | 2 +- .../{Piece-Of-Mind.nix => Peace-Of-Mind.nix} | 0 hydenix/sources/themes/Synth-Wave.nix | 2 +- hydenix/sources/themes/Tokyo-Night.nix | 2 +- hydenix/sources/themes/Vanta-Black.nix | 2 +- hydenix/sources/themes/default.nix | 2 +- hydenix/sources/themes/utils/mkTheme.nix | 1 - lib/config/home.nix | 5 ++-- 13 files changed, 25 insertions(+), 26 deletions(-) rename hydenix/sources/themes/{Piece-Of-Mind.nix => Peace-Of-Mind.nix} (100%) diff --git a/flake.lock b/flake.lock index e2464396..675a1c31 100644 --- a/flake.lock +++ b/flake.lock @@ -25,11 +25,11 @@ ] }, "locked": { - "lastModified": 1754974548, - "narHash": "sha256-XMjUjKD/QRPcqUnmSDczSYdw46SilnG0+wkho654DFM=", + "lastModified": 1756261190, + "narHash": "sha256-eiy0klFK5EVJLNilutR7grsZN/7Itj9DyD75eyOf83k=", "owner": "nix-community", "repo": "home-manager", - "rev": "27a26be51ff0162a8f67660239f9407dba68d7c5", + "rev": "77f348da3176dc68b20a73dab94852a417daf361", "type": "github" }, "original": { @@ -118,17 +118,17 @@ }, "hydenix-nixpkgs": { "locked": { - "lastModified": 1750122687, - "narHash": "sha256-zcGClfkXh4pckf4aGOZ18GFv73n1xHbdMWl17cPLouE=", + "lastModified": 1756288264, + "narHash": "sha256-Om8adB1lfkU7D33VpR+/haZ2gI5r3Q+ZbIPzE5sYnwE=", "owner": "nixos", "repo": "nixpkgs", - "rev": "c539ae8d21e49776966d714f82fba33b1fca78bc", + "rev": "ddd1826f294a0ee5fdc198ab72c8306a0ea73aa9", "type": "github" }, "original": { "owner": "nixos", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", - "rev": "c539ae8d21e49776966d714f82fba33b1fca78bc", "type": "github" } }, @@ -160,11 +160,11 @@ ] }, "locked": { - "lastModified": 1754800038, - "narHash": "sha256-UbLO8/0pVBXLJuyRizYOJigtzQAj8Z2bTnbKSec/wN0=", + "lastModified": 1756008611, + "narHash": "sha256-rfTBWuTXi9/X7GhtF562FKNXKh2kvKb6dwI5lV1SjPE=", "owner": "nix-community", "repo": "nix-index-database", - "rev": "b65f8d80656f9fcbd1fecc4b7f0730f468333142", + "rev": "52dec1cb33a614accb9e01307e17816be974d24d", "type": "github" }, "original": { @@ -175,11 +175,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1754564048, - "narHash": "sha256-dz303vGuzWjzOPOaYkS9xSW+B93PSAJxvBd6CambXVA=", + "lastModified": 1756245047, + "narHash": "sha256-9bHzrVbjAudbO8q4vYFBWlEkDam31fsz0J7GB8k4AsI=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "26ed7a0d4b8741fe1ef1ee6fa64453ca056ce113", + "rev": "a65b650d6981e23edd1afa1f01eb942f19cdcbb7", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index a9681b95..90673369 100644 --- a/flake.nix +++ b/flake.nix @@ -3,7 +3,7 @@ inputs = { # Hydenix's nixpkgs - hydenix-nixpkgs.url = "github:nixos/nixpkgs/c539ae8d21e49776966d714f82fba33b1fca78bc"; + hydenix-nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable"; home-manager = { url = "github:nix-community/home-manager"; diff --git a/hydenix/modules/system/sddm.nix b/hydenix/modules/system/sddm.nix index f4fd1efa..b9c7982e 100644 --- a/hydenix/modules/system/sddm.nix +++ b/hydenix/modules/system/sddm.nix @@ -52,7 +52,6 @@ in libsForQt5.qtvirtualkeyboard libsForQt5.qtquickcontrols2 libsForQt5.qtgraphicaleffects - libsForQt5.layer-shell-qt libsForQt5.qt5.qtwayland hydenix.hyde Bibata-Modern-Ice diff --git a/hydenix/sources/themes/Gruvbox-Retro.nix b/hydenix/sources/themes/Gruvbox-Retro.nix index 2a5a949b..c3184a1a 100644 --- a/hydenix/sources/themes/Gruvbox-Retro.nix +++ b/hydenix/sources/themes/Gruvbox-Retro.nix @@ -6,7 +6,7 @@ mkTheme rec { repo = "hyde-themes"; rev = "Gruvbox-Retro"; name = name; - sha256 = "sha256-zbY//EeJb9QelM+NNtzH58QcD8LGmgxmwQUvQ4eb554="; + sha256 = "sha256-GJ3Y9b36mPZMzzIlBx6S862KS3mOB9ItCKIZf5qKIeo="; }; meta = { description = "HyDE Theme: Gruvbox Retro"; diff --git a/hydenix/sources/themes/Ice-Age.nix b/hydenix/sources/themes/Ice-Age.nix index a06dd2e1..6cebeb00 100644 --- a/hydenix/sources/themes/Ice-Age.nix +++ b/hydenix/sources/themes/Ice-Age.nix @@ -6,11 +6,11 @@ mkTheme rec { repo = "Ice-Age"; rev = "main"; name = name; - sha256 = "sha256-+U5J+NvCYm9t77vfhdAcWR2ZWh499weSaDQ1ZDPFa3c="; + sha256 = "sha256-hS3PwjzRe7JUaB5eQ6AAS0OUg6fajictQrNdXkpVynw="; }; meta = { description = "HyDE Theme: Ice Age"; homepage = "https://github.com/saber-88/Ice-Age"; - priority = 10; + priority = 15; }; } diff --git a/hydenix/sources/themes/Material-Sakura.nix b/hydenix/sources/themes/Material-Sakura.nix index 7a0fb83f..81790bae 100644 --- a/hydenix/sources/themes/Material-Sakura.nix +++ b/hydenix/sources/themes/Material-Sakura.nix @@ -11,6 +11,6 @@ mkTheme rec { meta = { description = "HyDE Theme: Material Sakura"; homepage = "https://github.com/HyDE-Project/hyde-themes/tree/Material-Sakura"; - priority = 100; + priority = 95; }; } diff --git a/hydenix/sources/themes/Piece-Of-Mind.nix b/hydenix/sources/themes/Peace-Of-Mind.nix similarity index 100% rename from hydenix/sources/themes/Piece-Of-Mind.nix rename to hydenix/sources/themes/Peace-Of-Mind.nix diff --git a/hydenix/sources/themes/Synth-Wave.nix b/hydenix/sources/themes/Synth-Wave.nix index 9202cb73..6c6e3281 100644 --- a/hydenix/sources/themes/Synth-Wave.nix +++ b/hydenix/sources/themes/Synth-Wave.nix @@ -6,7 +6,7 @@ mkTheme rec { repo = "hyde-themes"; rev = "Synth-Wave"; name = name; - sha256 = "sha256-BV5+A/CnaCX8t9oHt3Q0nxWGJvRUYWQ3IpBK3NlJbj0="; + sha256 = "sha256-/r9vPTzGrZOx1EhtfxPZFIax08O9EY1PyB3l5XKKtXo="; }; meta = { description = "HyDE Theme: Synth Wave"; diff --git a/hydenix/sources/themes/Tokyo-Night.nix b/hydenix/sources/themes/Tokyo-Night.nix index b0333332..30c5adeb 100644 --- a/hydenix/sources/themes/Tokyo-Night.nix +++ b/hydenix/sources/themes/Tokyo-Night.nix @@ -6,7 +6,7 @@ mkTheme rec { repo = "hyde-themes"; rev = "Tokyo-Night"; name = name; - sha256 = "sha256-pPeNr8hbJ7wgGkYxFdvHdrBfkZpNRlKgQfhIF7rQKWU="; + sha256 = "sha256-ntM6cfHI4BBiFkp1ylqDjZxAqefV4x/rG0A6gqD1jR4="; }; meta = { description = "HyDE Theme: Tokyo Night"; diff --git a/hydenix/sources/themes/Vanta-Black.nix b/hydenix/sources/themes/Vanta-Black.nix index 6236edb9..d088956a 100644 --- a/hydenix/sources/themes/Vanta-Black.nix +++ b/hydenix/sources/themes/Vanta-Black.nix @@ -11,6 +11,6 @@ mkTheme rec { meta = { description = "HyDE Theme: Vanta Black inspired theme having the deepest blacks"; homepage = "https://github.com/rishav12s/Vanta-Black"; - priority = 10; + priority = 100; }; } diff --git a/hydenix/sources/themes/default.nix b/hydenix/sources/themes/default.nix index 53d3de18..28bebd61 100644 --- a/hydenix/sources/themes/default.nix +++ b/hydenix/sources/themes/default.nix @@ -40,7 +40,7 @@ in "Oxo Carbon" = callTheme ./Oxo-Carbon.nix; "Paranoid Sweet" = callTheme ./Paranoid-Sweet.nix; "Pixel Dream" = callTheme ./Pixel-Dream.nix; - "Piece Of Mind" = callTheme ./Piece-Of-Mind.nix; + "Peace Of Mind" = callTheme ./Peace-Of-Mind.nix; "Rain Dark" = callTheme ./Rain-Dark.nix; "Red Stone" = callTheme ./Red-Stone.nix; "Rosé Pine" = callTheme ./Rose-Pine.nix; diff --git a/hydenix/sources/themes/utils/mkTheme.nix b/hydenix/sources/themes/utils/mkTheme.nix index 3f201e6f..b233fcaf 100644 --- a/hydenix/sources/themes/utils/mkTheme.nix +++ b/hydenix/sources/themes/utils/mkTheme.nix @@ -111,7 +111,6 @@ let runHook postInstall ''; - # Add allowBrokenSymlinks to prevent build failures due to broken symlinks meta = with pkgs.lib; { inherit (meta) description homepage priority; license = licenses.mit; diff --git a/lib/config/home.nix b/lib/config/home.nix index 8ae4dcb6..ff931371 100644 --- a/lib/config/home.nix +++ b/lib/config/home.nix @@ -43,7 +43,7 @@ "Oxo Carbon" "Paranoid Sweet" "Pixel Dream" - "Piece Of Mind" + "Peace Of Mind" "Rain Dark" "Red Stone" "Rosé Pine" @@ -53,7 +53,8 @@ "Synth Wave" "Tundra" "Tokyo Night" - "Vanta Black" + #FIXME: theme conflicts with material sakura that wont fix + # "Vanta Black" "Windows 11" "Another World"