Conversation
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
📝 WalkthroughWalkthroughThis PR migrates HyDE's Hyprland configuration from Hyprlang/shell scripts to a Lua-based system, rewrites hyde-shell and its completions to delegate to Python, updates numerous Python backend scripts (package managers, session save/restore, waybar, system updates), introduces a TOML-based dotfiles manager replacing legacy restore scripts, and removes many superseded shell scripts and config files. ChangesHyprland Lua Migration
hyde-shell CLI, Completions & Python Backend
Shell Wrapper Migration & Legacy Removal
TOML Dotfiles Manager
Misc UI/Docs & HydeVM
Estimated code review effort: 5 (Critical) | ~180 minutes Sequence Diagram(s)sequenceDiagram
participant Hyprland
participant hyde_lua as hyde.lua
participant configLua as hyde/config.lua
participant variablesLua as variables.lua
participant dynamicLua as dynamic.lua
Hyprland->>hyde_lua: load hyprland.lua -> require hyde.lua
hyde_lua->>configLua: require hyde.config
hyde_lua->>variablesLua: require variables
variablesLua->>configLua: hyde.config(defaults)
hyde_lua->>dynamicLua: require dynamic
dynamicLua->>configLua: apply theme/state overrides
dynamicLua->>Hyprland: hl.config / hyprctl reload
sequenceDiagram
participant User
participant hydeShell as hyde-shell
participant CompletionScript as completions/hyde-shell.*
participant CompletionsPy as completions.py
User->>CompletionScript: TAB press
CompletionScript->>hydeShell: hyde-shell completion ...
hydeShell->>CompletionsPy: python3 completions.py
CompletionsPy-->>hydeShell: candidate list
hydeShell-->>CompletionScript: candidates
CompletionScript-->>User: render suggestions
Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 3 | ❌ 2❌ Failed checks (1 warning, 1 inconclusive)
✅ Passed checks (3 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
I also updated the keybindings as described here. (Handling Binds) so now I think it is safe to nuke all deprecated shell scripts? |
There was a problem hiding this comment.
Pull request overview
This PR introduces a new Hyprland “Lua mode” configuration stack for HyDE (Lua config under Configs/.local/share/hypr/ plus supporting Lua utilities under Configs/.local/lib/hyde/), alongside new “Deez Dots” TOML manifests (dots*.toml + dots/*.toml) intended to drive dotfile deployment and manage a legacy vs Lua Hyprland split.
Changes:
- Add a Lua-based Hyprland configuration entrypoint (
hyde.lua) with layouts/workflows/animations modules and runtime event handlers. - Add Lua utility libraries and selector CLIs (rofi selectors, state management, hyprctl socket client, shader compiler).
- Add new dotfile manifests (
dots.toml,dots-legacy.toml, and manydots/*.toml) to define what gets installed/synced/preserved for the new Lua migration.
Reviewed changes
Copilot reviewed 116 out of 119 changed files in this pull request and generated 15 comments.
Show a summary per file
| File | Description |
|---|---|
| dots/zsh.toml | Adds dot-manifest entries to sync/preserve zsh config files. |
| dots/waybar.toml | Adds dot-manifest entries for waybar config + data assets. |
| dots/wallbash-vim.toml | Adds dot-manifest entries for vim wallbash theme files. |
| dots/spotify.toml | Adds dot-manifest entry to preserve spotify flatpak flags. |
| dots/rofi.toml | Adds dot-manifest entry to preserve rofi config directory. |
| dots/lsd.toml | Adds dot-manifest entry to preserve lsd config directory. |
| dots/libinput-gestures.toml | Adds dot-manifest entry to preserve libinput-gestures config. |
| dots/kitty.toml | Adds dot-manifest entries for kitty config/theme and deps. |
| dots/hyprsunset.toml | Adds dot-manifest entry to preserve hyprsunset config. |
| dots/hyprlock.toml | Adds dot-manifest entry to preserve hyprlock config. |
| dots/hyprland.toml | Adds dot-manifest for Lua-mode Hyprland assets + Lua state. |
| dots/hyprland-legacy.toml | Adds legacy Hyprland manifest (hyprlang) with conflicts. |
| dots/hypridle.toml | Adds dot-manifest entry to preserve hypridle config. |
| dots/hyde.toml | Adds “hyde core” manifest including various config/data sync rules. |
| dots/fish.toml | Adds fish manifest: sync shared dirs + preserve config.fish/starship. |
| dots/fastfetch.toml | Adds fastfetch manifest: preserve config + sync presets. |
| dots/electron.toml | Adds dot-manifest entry to preserve electron flags. |
| dots/dunst.toml | Adds dunst manifest entry to sync a wallbash script. |
| dots/dolphin.toml | Adds dolphin manifest including applications menu sync. |
| dots/code.toml | Adds manifests for code/vscode/vscodium settings + flags. |
| dots/baloofilerc.toml | Adds manifest entry to preserve KDE baloo config. |
| dots.toml | Adds new primary dots manifest for Lua branch selection. |
| dots-legacy.toml | Adds legacy dots manifest (dev branch) using legacy Hyprland manifest. |
| Configs/.local/share/hypr/lua/workflows/snappy.lua | Adds “Snappy” workflow module. |
| Configs/.local/share/hypr/lua/workflows/powersaver.lua | Adds “Powersaver” workflow module. |
| Configs/.local/share/hypr/lua/workflows/gaming.lua | Adds “Gaming” workflow module. |
| Configs/.local/share/hypr/lua/workflows/editing.lua | Adds “Editing” workflow module. |
| Configs/.local/share/hypr/lua/workflows/01-default.lua | Adds default workflow descriptor. |
| Configs/.local/share/hypr/lua/window_rules.lua | Adds consolidated window rule regex compilation + rules. |
| Configs/.local/share/hypr/lua/variables.lua | Adds environment/default variables and startup command registry. |
| Configs/.local/share/hypr/lua/start_up.lua | Adds Hyprland startup event handler that runs registered commands. |
| Configs/.local/share/hypr/lua/layouts/scrolling.lua | Adds “Scrolling” layout module + binds/gestures. |
| Configs/.local/share/hypr/lua/layouts/monocle.lua | Adds “Monocle” layout module + binds/gestures. |
| Configs/.local/share/hypr/lua/layouts/master.lua | Adds “Master” layout module + binds/gestures. |
| Configs/.local/share/hypr/lua/layouts/dwindle.lua | Adds “Dwindle” layout module + binds/gestures. |
| Configs/.local/share/hypr/lua/layouts/00.lua | Adds “Unset” layout descriptor. |
| Configs/.local/share/hypr/lua/layer_rules.lua | Adds layer rules for rofi/notifications/waybar/etc. |
| Configs/.local/share/hypr/lua/hyde/utils.lua | Adds check_require utility and global wiring. |
| Configs/.local/share/hypr/lua/hyde/ui.lua | Adds UI state loader/cleaner for HyDE UI settings. |
| Configs/.local/share/hypr/lua/hyde/start.lua | Adds startup command getters/setters (hyde.start.*). |
| Configs/.local/share/hypr/lua/hyde/path.lua | Adds HyDE path discovery (lib/share/state/config). |
| Configs/.local/share/hypr/lua/hyde/meta.lua | Adds metadata store (hyde.meta). |
| Configs/.local/share/hypr/lua/hyde/handlers.lua | Adds window/monitor handling helpers (float bounds, cursor follow, etc.). |
| Configs/.local/share/hypr/lua/hyde/env.lua | Adds env var staging + finalize into hl.env. |
| Configs/.local/share/hypr/lua/hyde/dispatcher.lua | Adds hyde.sh + hyde.dsp command builder/executor. |
| Configs/.local/share/hypr/lua/hyde/define.lua | Adds default command definitions + apply helper. |
| Configs/.local/share/hypr/lua/hyde/config.lua | Adds default HyDE Lua config (float bounds, margins, anim settings). |
| Configs/.local/share/hypr/lua/hyde/binds.lua | Wraps hl.bind to normalize/dedup key combos. |
| Configs/.local/share/hypr/lua/hyde/animations.lua | Adds animation speed multiplier wrapper + helpers. |
| Configs/.local/share/hypr/lua/events.lua | Adds Hyprland event hooks (float size bounds, shutdown handler). |
| Configs/.local/share/hypr/lua/env.lua | Finalizes env vars and updates PATH. |
| Configs/.local/share/hypr/lua/dynamic.lua | Adds theme-driven dynamic config loading (colors/ui/theme/layouts/etc.). |
| Configs/.local/share/hypr/lua/defaults.lua | Adds baseline Hyprland defaults in Lua. |
| Configs/.local/share/hypr/lua/animations/vertical.lua | Adds “Vertical” animation profile module. |
| Configs/.local/share/hypr/lua/animations/standard.lua | Adds “Standard” animation profile module. |
| Configs/.local/share/hypr/lua/animations/optimized.lua | Adds “Optimized” animation profile module. |
| Configs/.local/share/hypr/lua/animations/moving.lua | Adds “Moving” animation profile module. |
| Configs/.local/share/hypr/lua/animations/minimal-2.lua | Adds “Minimal-2” animation profile module. |
| Configs/.local/share/hypr/lua/animations/me-2.lua | Adds “Me-2” animation profile module. |
| Configs/.local/share/hypr/lua/animations/me-1.lua | Adds “Me-1” animation profile module. |
| Configs/.local/share/hypr/lua/animations/macos.lua | Adds “MacOS” animation profile module. |
| Configs/.local/share/hypr/lua/animations/limefrenzy.lua | Adds “LimeFrenzy” animation profile module. |
| Configs/.local/share/hypr/lua/animations/ja.lua | Adds “Ja” animation profile module. |
| Configs/.local/share/hypr/lua/animations/gnome.lua | Adds “GNOME” animation profile module. |
| Configs/.local/share/hypr/lua/animations/fast.lua | Adds “Fast” animation profile module. |
| Configs/.local/share/hypr/lua/animations/end4.lua | Adds “End4” animation profile module. |
| Configs/.local/share/hypr/lua/animations/diablo-2.lua | Adds “Diablo-2” animation profile module. |
| Configs/.local/share/hypr/lua/animations/diablo-1.lua | Adds “Diablo-1” animation profile module. |
| Configs/.local/share/hypr/lua/animations/classic.lua | Adds “Classic” animation profile using speed multiplier wrapper. |
| Configs/.local/share/hypr/lua/animations/01-default.lua | Adds default animation descriptor. |
| Configs/.local/share/hypr/lua/animations/00-disable.lua | Adds animation disable module (explicit disables). |
| Configs/.local/share/hypr/hyde.lua | Adds main Hyprland Lua entrypoint wiring HyDE modules together. |
| Configs/.local/lib/hyde/workflows.lua | Adds workflow selector CLI module. |
| Configs/.local/lib/hyde/window.pin.lua | Adds window pin CLI script. |
| Configs/.local/lib/hyde/waybar.py | Adjusts systemd unit run/stop/restart behavior for waybar. |
| Configs/.local/lib/hyde/theme.switch.sh | Adds Lua-mode theme export support via hyq dump to lua_state. |
| Configs/.local/lib/hyde/shell/activate.fish | Adds fish activation script selecting Lua vs legacy mode. |
| Configs/.local/lib/hyde/shell/activate | Adds POSIX activation script selecting Lua vs legacy mode. |
| Configs/.local/lib/hyde/shaders.lua | Adds shader selector + compiler and lua_state writer. |
| Configs/.local/lib/hyde/rofi.workflows.lua | Adds rofi UI wrapper for workflow selection. |
| Configs/.local/lib/hyde/rofi.shaders.lua | Adds rofi UI wrapper for shader selection. |
| Configs/.local/lib/hyde/rofi.layouts.lua | Adds rofi UI wrapper for layout selection. |
| Configs/.local/lib/hyde/rofi.animations.lua | Adds rofi UI wrapper for animation selection. |
| Configs/.local/lib/hyde/pyutils/lua_env.py | Reworks Lua env management to use system Lua + luarocks --tree. |
| Configs/.local/lib/hyde/pyutils/lua_env.json | Updates bootstrap rock list (versions + extra rocks). |
| Configs/.local/lib/hyde/pyproject.toml | Adds Python deps and uv git source for xdg-prefs. |
| Configs/.local/lib/hyde/pygui/color.shuffle.py | Adjusts Qt window flags. |
| Configs/.local/lib/hyde/mediaplayer.py | Changes signal handler exit behavior. |
| Configs/.local/lib/hyde/luautils/xdg.lua | Adds Lua XDG base dir helper module. |
| Configs/.local/lib/hyde/luautils/theme/parser.lua | Adds Lua theme parsing utilities (hyq/theme file/gsettings/defaults). |
| Configs/.local/lib/hyde/luautils/selector/rofi.lua | Adds generic rofi selector implementation. |
| Configs/.local/lib/hyde/luautils/selector/common.lua | Adds selector factory + CLI runner + state integration. |
| Configs/.local/lib/hyde/luautils/rofi/pos.lua | Adds cursor-following rofi positioning helper. |
| Configs/.local/lib/hyde/luautils/init.lua | Initializes Lua search paths for HyDE scripts. |
| Configs/.local/lib/hyde/luautils/hypr/hyprctl.lua | Adds Hyprland socket client with JSON helpers. |
| Configs/.local/lib/hyde/luautils/global/state.lua | Adds shared staterc + lua_state I/O utilities. |
| Configs/.local/lib/hyde/luautils/global/notify.lua | Adds notify-send wrapper helper. |
| Configs/.local/lib/hyde/luautils/global/log.lua | Adds basic logger (lgi-backed when available). |
| Configs/.local/lib/hyde/layouts.lua | Adds layout selector CLI module. |
| Configs/.local/lib/hyde/keybinds_hint.sh | Adds --reload support and small shell cleanups. |
| Configs/.local/lib/hyde/globalcontrol.sh | Improves toml_write updating behavior and silences stderr. |
| Configs/.local/lib/hyde/color/hypr.sh | Adds Lua-mode UI state generation alongside legacy wallbash.conf. |
| Configs/.local/lib/hyde/batterynotify.sh | Trims trailing whitespace in help output. |
| Configs/.local/lib/hyde/animations.lua | Adds animations selector CLI module. |
| Configs/.local/lib/hyde/.editorconfig | Expands formatting rules to all files in this subtree. |
| Configs/.config/zsh/conf.d/hyde/terminal.zsh | Enables interactive comments; minor whitespace cleanup. |
| Configs/.config/zsh/conf.d/hyde/env.zsh | Refactors env initialization and activation sourcing. |
| Configs/.config/zsh/conf.d/binds.zsh | Adds delete-char bind and removes a comment line. |
| .gitignore | Adds broad dotfile ignore pattern. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
Note Autofix is a beta feature. Expect some limitations and changes as we gather feedback and continue to improve it. Autofix skipped. No unresolved CodeRabbit review comments with fix instructions found. |
|
merging this now |
* feat: add wayle bar support as alternative to waybar - Add wayle to session.py known bars for clean session management - Add wallbash hook (wayle.dcol) to sync wallpaper colors with wayle - Make waybar.dcol conditional: skip waybar update when not running * dev * docs: add @0xGeN02 to contributors * feat: add wayle-bin and matugen-bin as optional packages in pkg_extra.lst * feat: add wallbash-to-wayle palette bridge for dynamic theming Uses dcol_* environment variables passed by wallbash's fn_wallbash to set wayle palette colors on every wallpaper/theme change. Files placed in .config/hyde/wallbash/ (non-core component). * fix: hyde-shell pypr subcommand passes args as single string to pypr CLI (#1741) When running `hyde-shell pypr toggle console`, the `run_pypr()` function used `${*:-help}` to capture arguments into a scalar variable. When passed to `pypr "${message[@]}"`, the scalar expands as a single string "toggle console" instead of two separate args. The pypr client then normalizes spaces to underscores, looking up "toggle_console" instead of the "toggle" command with "console" as its argument. Additionally, socket direct writes via nc/socat/ncat lacked a trailing newline, which the pyprland daemon's readline() expects. Fix by using a bash array (`local -a msg=("$@")`) to preserve proper word-splitting, and adding `\n` to socket writes. # Pull Request ## Description Please read these instructions and remove unnecessary text. - Try to include a summary of the changes and which issue is fixed. - Also include relevant motivation and context (if applicable). - Make sure to make PR against dev and not the master - List any dependencies that are required for this change. (e.g., packages or other PRs) - Provide a link if there is an issue related to this pull request. e.g., Fixes # (issue) - Please add Reviewers, Assignees, Labels, Projects, and Milestones to the PR. (if applicable) ## Type of change Please put an `x` in the boxes that apply: - [ ] **Bug fix** (non-breaking change which fixes an issue) - [ ] **New feature** (non-breaking change which adds functionality) - [ ] **Breaking change** (fix or feature that would cause existing functionality to not work as expected) - [ ] **Documentation update** (non-breaking change; modified files are limited to the documentations) - [ ] **Technical debt** (a code change that does not fix a bug or add a feature but makes something clearer for devs) - [ ] **Other** (provide details below) ## Checklist Please put an `x` in the boxes that apply: - [ ] I have read the [CONTRIBUTING](https://github.com/HyDE-Project/HyDE/blob/master/CONTRIBUTING.md) document. - [ ] My code follows the code style of this project. - [ ] My commit message follows the [commit guidelines](https://github.com/HyDE-Project/HyDE/blob/master/COMMIT_MESSAGE_GUIDELINES.md). - [ ] My change requires a change to the documentation. - [ ] I have updated the documentation accordingly. - [ ] I have added a changelog entry. - [ ] I have added necessary comments/documentation to my code. - [ ] I have added tests to cover my changes. - [ ] I have tested my code locally and it works as expected. - [ ] All new and existing tests passed. ## Screenshots (if appropriate) ## Additional context Add any other context about the problem here. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Refactor** * Enhanced socket message handling for more reliable and consistent command argument processing across all operations. * Improved default command behavior to automatically display helpful information when commands are executed without any arguments provided. * Optimized internal message formatting and delivery while maintaining complete compatibility with existing fallback communication mechanisms for continued system reliability and operational stability. [](https://app.coderabbit.ai/change-stack/HyDE-Project/HyDE/pull/1741) <!-- end of auto-generated comment: release notes by coderabbit.ai --> * Remove * fix: Fix Hyprland 0.55 breaking changes in configuration files (#1742) * fix(hypr): unset HL_INITIAL_WORKSPACE_TOKEN in startup to prevent apps locking to workspace 1 (#1781) * docs: sync Chinese README with English version (#1779) * fix(volume): use [[ ]] for VOLUME_PIPEWIRE_ENABLE comparison (#1786) The PipeWire detection fallback was written as `|| $VOLUME_PIPEWIRE_ENABLE == true`, which executes the variable's value as a command with `==` and `true` as arguments instead of comparing it. On PulseAudio-only systems (where the pactl grep does not short-circuit) every invocation printed "==: command not found" when the variable was unset, and setting it to "true" only worked by accident of running /usr/bin/true. Wrap the check in [[ ]] so it is an actual string comparison. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(pm): restore module header position in zypper.py (#1784) count_updates and list_updates were inserted above the module docstring and the `from __future__ import annotations` line. Python requires __future__ imports at the top of the file, so the module raised SyntaxError on import, breaking `hyde-shell pm` on openSUSE. Move both functions to the end of the file, matching the layout of the other manager modules. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * Fix/globalcontrol wallpaper validation (#1785) * fix(lib): add missing $ to XDG_DATA_HOME fallback path in get_hyprConf The first fallback config path in get_hyprConf was the literal string "XDG_DATA_HOME/hyde/hyde.conf", which never exists, so user-level default theme values in $XDG_DATA_HOME/hyde/hyde.conf were silently skipped (the grep error is suppressed by 2>/dev/null). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * fix(wallpaper): validate nonexistent path passed to --set The check used `[ -z "$wallpaper_path" ] && [ ! -f "$wallpaper_path" ]`, so a non-empty path to a missing file skipped validation entirely and failed later in get_hashmap with a confusing "No image found in any source" error. Use || so both empty and nonexistent paths report "Wallpaper not found" as intended. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(zsh,hyde-shell): prevent PATH duplication on repeated source (#1823) Co-authored-by: NoistNT <noistnt@users.noreply.github.com> * Lua (#1755) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* feat: add wayle bar support as alternative to waybar - Add wayle to session.py known bars for clean session management - Add wallbash hook (wayle.dcol) to sync wallpaper colors with wayle - Make waybar.dcol conditional: skip waybar update when not running * dev * docs: add @0xGeN02 to contributors * feat: add wayle-bin and matugen-bin as optional packages in pkg_extra.lst * feat: add wallbash-to-wayle palette bridge for dynamic theming Uses dcol_* environment variables passed by wallbash's fn_wallbash to set wayle palette colors on every wallpaper/theme change. Files placed in .config/hyde/wallbash/ (non-core component). * fix: hyde-shell pypr subcommand passes args as single string to pypr CLI (#1741) When running `hyde-shell pypr toggle console`, the `run_pypr()` function used `${*:-help}` to capture arguments into a scalar variable. When passed to `pypr "${message[@]}"`, the scalar expands as a single string "toggle console" instead of two separate args. The pypr client then normalizes spaces to underscores, looking up "toggle_console" instead of the "toggle" command with "console" as its argument. Additionally, socket direct writes via nc/socat/ncat lacked a trailing newline, which the pyprland daemon's readline() expects. Fix by using a bash array (`local -a msg=("$@")`) to preserve proper word-splitting, and adding `\n` to socket writes. # Pull Request ## Description Please read these instructions and remove unnecessary text. - Try to include a summary of the changes and which issue is fixed. - Also include relevant motivation and context (if applicable). - Make sure to make PR against dev and not the master - List any dependencies that are required for this change. (e.g., packages or other PRs) - Provide a link if there is an issue related to this pull request. e.g., Fixes # (issue) - Please add Reviewers, Assignees, Labels, Projects, and Milestones to the PR. (if applicable) ## Type of change Please put an `x` in the boxes that apply: - [ ] **Bug fix** (non-breaking change which fixes an issue) - [ ] **New feature** (non-breaking change which adds functionality) - [ ] **Breaking change** (fix or feature that would cause existing functionality to not work as expected) - [ ] **Documentation update** (non-breaking change; modified files are limited to the documentations) - [ ] **Technical debt** (a code change that does not fix a bug or add a feature but makes something clearer for devs) - [ ] **Other** (provide details below) ## Checklist Please put an `x` in the boxes that apply: - [ ] I have read the [CONTRIBUTING](https://github.com/HyDE-Project/HyDE/blob/master/CONTRIBUTING.md) document. - [ ] My code follows the code style of this project. - [ ] My commit message follows the [commit guidelines](https://github.com/HyDE-Project/HyDE/blob/master/COMMIT_MESSAGE_GUIDELINES.md). - [ ] My change requires a change to the documentation. - [ ] I have updated the documentation accordingly. - [ ] I have added a changelog entry. - [ ] I have added necessary comments/documentation to my code. - [ ] I have added tests to cover my changes. - [ ] I have tested my code locally and it works as expected. - [ ] All new and existing tests passed. ## Screenshots (if appropriate) ## Additional context Add any other context about the problem here. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Refactor** * Enhanced socket message handling for more reliable and consistent command argument processing across all operations. * Improved default command behavior to automatically display helpful information when commands are executed without any arguments provided. * Optimized internal message formatting and delivery while maintaining complete compatibility with existing fallback communication mechanisms for continued system reliability and operational stability. [](https://app.coderabbit.ai/change-stack/HyDE-Project/HyDE/pull/1741) <!-- end of auto-generated comment: release notes by coderabbit.ai --> * Remove * fix: Fix Hyprland 0.55 breaking changes in configuration files (#1742) * fix(hypr): unset HL_INITIAL_WORKSPACE_TOKEN in startup to prevent apps locking to workspace 1 (#1781) * docs: sync Chinese README with English version (#1779) * fix(volume): use [[ ]] for VOLUME_PIPEWIRE_ENABLE comparison (#1786) The PipeWire detection fallback was written as `|| $VOLUME_PIPEWIRE_ENABLE == true`, which executes the variable's value as a command with `==` and `true` as arguments instead of comparing it. On PulseAudio-only systems (where the pactl grep does not short-circuit) every invocation printed "==: command not found" when the variable was unset, and setting it to "true" only worked by accident of running /usr/bin/true. Wrap the check in [[ ]] so it is an actual string comparison. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(pm): restore module header position in zypper.py (#1784) count_updates and list_updates were inserted above the module docstring and the `from __future__ import annotations` line. Python requires __future__ imports at the top of the file, so the module raised SyntaxError on import, breaking `hyde-shell pm` on openSUSE. Move both functions to the end of the file, matching the layout of the other manager modules. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * Fix/globalcontrol wallpaper validation (#1785) * fix(lib): add missing $ to XDG_DATA_HOME fallback path in get_hyprConf The first fallback config path in get_hyprConf was the literal string "XDG_DATA_HOME/hyde/hyde.conf", which never exists, so user-level default theme values in $XDG_DATA_HOME/hyde/hyde.conf were silently skipped (the grep error is suppressed by 2>/dev/null). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * fix(wallpaper): validate nonexistent path passed to --set The check used `[ -z "$wallpaper_path" ] && [ ! -f "$wallpaper_path" ]`, so a non-empty path to a missing file skipped validation entirely and failed later in get_hashmap with a confusing "No image found in any source" error. Use || so both empty and nonexistent paths report "Wallpaper not found" as intended. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(zsh,hyde-shell): prevent PATH duplication on repeated source (#1823) Co-authored-by: NoistNT <noistnt@users.noreply.github.com> * Lua (#1755) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Lua (#1835) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions * safe theme lua state generation --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* open PR * chore: Release - dev → rc (#1732) * feat: add wayle bar support as alternative to waybar - Add wayle to session.py known bars for clean session management - Add wallbash hook (wayle.dcol) to sync wallpaper colors with wayle - Make waybar.dcol conditional: skip waybar update when not running * dev * docs: add @0xGeN02 to contributors * feat: add wayle-bin and matugen-bin as optional packages in pkg_extra.lst * feat: add wallbash-to-wayle palette bridge for dynamic theming Uses dcol_* environment variables passed by wallbash's fn_wallbash to set wayle palette colors on every wallpaper/theme change. Files placed in .config/hyde/wallbash/ (non-core component). * fix: hyde-shell pypr subcommand passes args as single string to pypr CLI (#1741) When running `hyde-shell pypr toggle console`, the `run_pypr()` function used `${*:-help}` to capture arguments into a scalar variable. When passed to `pypr "${message[@]}"`, the scalar expands as a single string "toggle console" instead of two separate args. The pypr client then normalizes spaces to underscores, looking up "toggle_console" instead of the "toggle" command with "console" as its argument. Additionally, socket direct writes via nc/socat/ncat lacked a trailing newline, which the pyprland daemon's readline() expects. Fix by using a bash array (`local -a msg=("$@")`) to preserve proper word-splitting, and adding `\n` to socket writes. # Pull Request ## Description Please read these instructions and remove unnecessary text. - Try to include a summary of the changes and which issue is fixed. - Also include relevant motivation and context (if applicable). - Make sure to make PR against dev and not the master - List any dependencies that are required for this change. (e.g., packages or other PRs) - Provide a link if there is an issue related to this pull request. e.g., Fixes # (issue) - Please add Reviewers, Assignees, Labels, Projects, and Milestones to the PR. (if applicable) ## Type of change Please put an `x` in the boxes that apply: - [ ] **Bug fix** (non-breaking change which fixes an issue) - [ ] **New feature** (non-breaking change which adds functionality) - [ ] **Breaking change** (fix or feature that would cause existing functionality to not work as expected) - [ ] **Documentation update** (non-breaking change; modified files are limited to the documentations) - [ ] **Technical debt** (a code change that does not fix a bug or add a feature but makes something clearer for devs) - [ ] **Other** (provide details below) ## Checklist Please put an `x` in the boxes that apply: - [ ] I have read the [CONTRIBUTING](https://github.com/HyDE-Project/HyDE/blob/master/CONTRIBUTING.md) document. - [ ] My code follows the code style of this project. - [ ] My commit message follows the [commit guidelines](https://github.com/HyDE-Project/HyDE/blob/master/COMMIT_MESSAGE_GUIDELINES.md). - [ ] My change requires a change to the documentation. - [ ] I have updated the documentation accordingly. - [ ] I have added a changelog entry. - [ ] I have added necessary comments/documentation to my code. - [ ] I have added tests to cover my changes. - [ ] I have tested my code locally and it works as expected. - [ ] All new and existing tests passed. ## Screenshots (if appropriate) ## Additional context Add any other context about the problem here. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Refactor** * Enhanced socket message handling for more reliable and consistent command argument processing across all operations. * Improved default command behavior to automatically display helpful information when commands are executed without any arguments provided. * Optimized internal message formatting and delivery while maintaining complete compatibility with existing fallback communication mechanisms for continued system reliability and operational stability. [](https://app.coderabbit.ai/change-stack/HyDE-Project/HyDE/pull/1741) <!-- end of auto-generated comment: release notes by coderabbit.ai --> * Remove * fix: Fix Hyprland 0.55 breaking changes in configuration files (#1742) * fix(hypr): unset HL_INITIAL_WORKSPACE_TOKEN in startup to prevent apps locking to workspace 1 (#1781) * docs: sync Chinese README with English version (#1779) * fix(volume): use [[ ]] for VOLUME_PIPEWIRE_ENABLE comparison (#1786) The PipeWire detection fallback was written as `|| $VOLUME_PIPEWIRE_ENABLE == true`, which executes the variable's value as a command with `==` and `true` as arguments instead of comparing it. On PulseAudio-only systems (where the pactl grep does not short-circuit) every invocation printed "==: command not found" when the variable was unset, and setting it to "true" only worked by accident of running /usr/bin/true. Wrap the check in [[ ]] so it is an actual string comparison. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(pm): restore module header position in zypper.py (#1784) count_updates and list_updates were inserted above the module docstring and the `from __future__ import annotations` line. Python requires __future__ imports at the top of the file, so the module raised SyntaxError on import, breaking `hyde-shell pm` on openSUSE. Move both functions to the end of the file, matching the layout of the other manager modules. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * Fix/globalcontrol wallpaper validation (#1785) * fix(lib): add missing $ to XDG_DATA_HOME fallback path in get_hyprConf The first fallback config path in get_hyprConf was the literal string "XDG_DATA_HOME/hyde/hyde.conf", which never exists, so user-level default theme values in $XDG_DATA_HOME/hyde/hyde.conf were silently skipped (the grep error is suppressed by 2>/dev/null). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * fix(wallpaper): validate nonexistent path passed to --set The check used `[ -z "$wallpaper_path" ] && [ ! -f "$wallpaper_path" ]`, so a non-empty path to a missing file skipped validation entirely and failed later in get_hashmap with a confusing "No image found in any source" error. Use || so both empty and nonexistent paths report "Wallpaper not found" as intended. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(zsh,hyde-shell): prevent PATH duplication on repeated source (#1823) Co-authored-by: NoistNT <noistnt@users.noreply.github.com> * Lua (#1755) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * chore: Release - dev → rc (#1836) * feat: add wayle bar support as alternative to waybar - Add wayle to session.py known bars for clean session management - Add wallbash hook (wayle.dcol) to sync wallpaper colors with wayle - Make waybar.dcol conditional: skip waybar update when not running * dev * docs: add @0xGeN02 to contributors * feat: add wayle-bin and matugen-bin as optional packages in pkg_extra.lst * feat: add wallbash-to-wayle palette bridge for dynamic theming Uses dcol_* environment variables passed by wallbash's fn_wallbash to set wayle palette colors on every wallpaper/theme change. Files placed in .config/hyde/wallbash/ (non-core component). * fix: hyde-shell pypr subcommand passes args as single string to pypr CLI (#1741) When running `hyde-shell pypr toggle console`, the `run_pypr()` function used `${*:-help}` to capture arguments into a scalar variable. When passed to `pypr "${message[@]}"`, the scalar expands as a single string "toggle console" instead of two separate args. The pypr client then normalizes spaces to underscores, looking up "toggle_console" instead of the "toggle" command with "console" as its argument. Additionally, socket direct writes via nc/socat/ncat lacked a trailing newline, which the pyprland daemon's readline() expects. Fix by using a bash array (`local -a msg=("$@")`) to preserve proper word-splitting, and adding `\n` to socket writes. # Pull Request ## Description Please read these instructions and remove unnecessary text. - Try to include a summary of the changes and which issue is fixed. - Also include relevant motivation and context (if applicable). - Make sure to make PR against dev and not the master - List any dependencies that are required for this change. (e.g., packages or other PRs) - Provide a link if there is an issue related to this pull request. e.g., Fixes # (issue) - Please add Reviewers, Assignees, Labels, Projects, and Milestones to the PR. (if applicable) ## Type of change Please put an `x` in the boxes that apply: - [ ] **Bug fix** (non-breaking change which fixes an issue) - [ ] **New feature** (non-breaking change which adds functionality) - [ ] **Breaking change** (fix or feature that would cause existing functionality to not work as expected) - [ ] **Documentation update** (non-breaking change; modified files are limited to the documentations) - [ ] **Technical debt** (a code change that does not fix a bug or add a feature but makes something clearer for devs) - [ ] **Other** (provide details below) ## Checklist Please put an `x` in the boxes that apply: - [ ] I have read the [CONTRIBUTING](https://github.com/HyDE-Project/HyDE/blob/master/CONTRIBUTING.md) document. - [ ] My code follows the code style of this project. - [ ] My commit message follows the [commit guidelines](https://github.com/HyDE-Project/HyDE/blob/master/COMMIT_MESSAGE_GUIDELINES.md). - [ ] My change requires a change to the documentation. - [ ] I have updated the documentation accordingly. - [ ] I have added a changelog entry. - [ ] I have added necessary comments/documentation to my code. - [ ] I have added tests to cover my changes. - [ ] I have tested my code locally and it works as expected. - [ ] All new and existing tests passed. ## Screenshots (if appropriate) ## Additional context Add any other context about the problem here. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Refactor** * Enhanced socket message handling for more reliable and consistent command argument processing across all operations. * Improved default command behavior to automatically display helpful information when commands are executed without any arguments provided. * Optimized internal message formatting and delivery while maintaining complete compatibility with existing fallback communication mechanisms for continued system reliability and operational stability. [](https://app.coderabbit.ai/change-stack/HyDE-Project/HyDE/pull/1741) <!-- end of auto-generated comment: release notes by coderabbit.ai --> * Remove * fix: Fix Hyprland 0.55 breaking changes in configuration files (#1742) * fix(hypr): unset HL_INITIAL_WORKSPACE_TOKEN in startup to prevent apps locking to workspace 1 (#1781) * docs: sync Chinese README with English version (#1779) * fix(volume): use [[ ]] for VOLUME_PIPEWIRE_ENABLE comparison (#1786) The PipeWire detection fallback was written as `|| $VOLUME_PIPEWIRE_ENABLE == true`, which executes the variable's value as a command with `==` and `true` as arguments instead of comparing it. On PulseAudio-only systems (where the pactl grep does not short-circuit) every invocation printed "==: command not found" when the variable was unset, and setting it to "true" only worked by accident of running /usr/bin/true. Wrap the check in [[ ]] so it is an actual string comparison. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(pm): restore module header position in zypper.py (#1784) count_updates and list_updates were inserted above the module docstring and the `from __future__ import annotations` line. Python requires __future__ imports at the top of the file, so the module raised SyntaxError on import, breaking `hyde-shell pm` on openSUSE. Move both functions to the end of the file, matching the layout of the other manager modules. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * Fix/globalcontrol wallpaper validation (#1785) * fix(lib): add missing $ to XDG_DATA_HOME fallback path in get_hyprConf The first fallback config path in get_hyprConf was the literal string "XDG_DATA_HOME/hyde/hyde.conf", which never exists, so user-level default theme values in $XDG_DATA_HOME/hyde/hyde.conf were silently skipped (the grep error is suppressed by 2>/dev/null). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * fix(wallpaper): validate nonexistent path passed to --set The check used `[ -z "$wallpaper_path" ] && [ ! -f "$wallpaper_path" ]`, so a non-empty path to a missing file skipped validation entirely and failed later in get_hashmap with a confusing "No image found in any source" error. Use || so both empty and nonexistent paths report "Wallpaper not found" as intended. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(zsh,hyde-shell): prevent PATH duplication on repeated source (#1823) Co-authored-by: NoistNT <noistnt@users.noreply.github.com> * Lua (#1755) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Lua (#1835) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions * safe theme lua state generation --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Changelog --------- Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* open PR * chore: Release - dev → rc (#1732) * feat: add wayle bar support as alternative to waybar - Add wayle to session.py known bars for clean session management - Add wallbash hook (wayle.dcol) to sync wallpaper colors with wayle - Make waybar.dcol conditional: skip waybar update when not running * dev * docs: add @0xGeN02 to contributors * feat: add wayle-bin and matugen-bin as optional packages in pkg_extra.lst * feat: add wallbash-to-wayle palette bridge for dynamic theming Uses dcol_* environment variables passed by wallbash's fn_wallbash to set wayle palette colors on every wallpaper/theme change. Files placed in .config/hyde/wallbash/ (non-core component). * fix: hyde-shell pypr subcommand passes args as single string to pypr CLI (#1741) When running `hyde-shell pypr toggle console`, the `run_pypr()` function used `${*:-help}` to capture arguments into a scalar variable. When passed to `pypr "${message[@]}"`, the scalar expands as a single string "toggle console" instead of two separate args. The pypr client then normalizes spaces to underscores, looking up "toggle_console" instead of the "toggle" command with "console" as its argument. Additionally, socket direct writes via nc/socat/ncat lacked a trailing newline, which the pyprland daemon's readline() expects. Fix by using a bash array (`local -a msg=("$@")`) to preserve proper word-splitting, and adding `\n` to socket writes. # Pull Request ## Description Please read these instructions and remove unnecessary text. - Try to include a summary of the changes and which issue is fixed. - Also include relevant motivation and context (if applicable). - Make sure to make PR against dev and not the master - List any dependencies that are required for this change. (e.g., packages or other PRs) - Provide a link if there is an issue related to this pull request. e.g., Fixes # (issue) - Please add Reviewers, Assignees, Labels, Projects, and Milestones to the PR. (if applicable) ## Type of change Please put an `x` in the boxes that apply: - [ ] **Bug fix** (non-breaking change which fixes an issue) - [ ] **New feature** (non-breaking change which adds functionality) - [ ] **Breaking change** (fix or feature that would cause existing functionality to not work as expected) - [ ] **Documentation update** (non-breaking change; modified files are limited to the documentations) - [ ] **Technical debt** (a code change that does not fix a bug or add a feature but makes something clearer for devs) - [ ] **Other** (provide details below) ## Checklist Please put an `x` in the boxes that apply: - [ ] I have read the [CONTRIBUTING](https://github.com/HyDE-Project/HyDE/blob/master/CONTRIBUTING.md) document. - [ ] My code follows the code style of this project. - [ ] My commit message follows the [commit guidelines](https://github.com/HyDE-Project/HyDE/blob/master/COMMIT_MESSAGE_GUIDELINES.md). - [ ] My change requires a change to the documentation. - [ ] I have updated the documentation accordingly. - [ ] I have added a changelog entry. - [ ] I have added necessary comments/documentation to my code. - [ ] I have added tests to cover my changes. - [ ] I have tested my code locally and it works as expected. - [ ] All new and existing tests passed. ## Screenshots (if appropriate) ## Additional context Add any other context about the problem here. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Refactor** * Enhanced socket message handling for more reliable and consistent command argument processing across all operations. * Improved default command behavior to automatically display helpful information when commands are executed without any arguments provided. * Optimized internal message formatting and delivery while maintaining complete compatibility with existing fallback communication mechanisms for continued system reliability and operational stability. [](https://app.coderabbit.ai/change-stack/HyDE-Project/HyDE/pull/1741) <!-- end of auto-generated comment: release notes by coderabbit.ai --> * Remove * fix: Fix Hyprland 0.55 breaking changes in configuration files (#1742) * fix(hypr): unset HL_INITIAL_WORKSPACE_TOKEN in startup to prevent apps locking to workspace 1 (#1781) * docs: sync Chinese README with English version (#1779) * fix(volume): use [[ ]] for VOLUME_PIPEWIRE_ENABLE comparison (#1786) The PipeWire detection fallback was written as `|| $VOLUME_PIPEWIRE_ENABLE == true`, which executes the variable's value as a command with `==` and `true` as arguments instead of comparing it. On PulseAudio-only systems (where the pactl grep does not short-circuit) every invocation printed "==: command not found" when the variable was unset, and setting it to "true" only worked by accident of running /usr/bin/true. Wrap the check in [[ ]] so it is an actual string comparison. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(pm): restore module header position in zypper.py (#1784) count_updates and list_updates were inserted above the module docstring and the `from __future__ import annotations` line. Python requires __future__ imports at the top of the file, so the module raised SyntaxError on import, breaking `hyde-shell pm` on openSUSE. Move both functions to the end of the file, matching the layout of the other manager modules. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * Fix/globalcontrol wallpaper validation (#1785) * fix(lib): add missing $ to XDG_DATA_HOME fallback path in get_hyprConf The first fallback config path in get_hyprConf was the literal string "XDG_DATA_HOME/hyde/hyde.conf", which never exists, so user-level default theme values in $XDG_DATA_HOME/hyde/hyde.conf were silently skipped (the grep error is suppressed by 2>/dev/null). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * fix(wallpaper): validate nonexistent path passed to --set The check used `[ -z "$wallpaper_path" ] && [ ! -f "$wallpaper_path" ]`, so a non-empty path to a missing file skipped validation entirely and failed later in get_hashmap with a confusing "No image found in any source" error. Use || so both empty and nonexistent paths report "Wallpaper not found" as intended. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(zsh,hyde-shell): prevent PATH duplication on repeated source (#1823) Co-authored-by: NoistNT <noistnt@users.noreply.github.com> * Lua (#1755) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * chore: Release - dev → rc (#1836) * feat: add wayle bar support as alternative to waybar - Add wayle to session.py known bars for clean session management - Add wallbash hook (wayle.dcol) to sync wallpaper colors with wayle - Make waybar.dcol conditional: skip waybar update when not running * dev * docs: add @0xGeN02 to contributors * feat: add wayle-bin and matugen-bin as optional packages in pkg_extra.lst * feat: add wallbash-to-wayle palette bridge for dynamic theming Uses dcol_* environment variables passed by wallbash's fn_wallbash to set wayle palette colors on every wallpaper/theme change. Files placed in .config/hyde/wallbash/ (non-core component). * fix: hyde-shell pypr subcommand passes args as single string to pypr CLI (#1741) When running `hyde-shell pypr toggle console`, the `run_pypr()` function used `${*:-help}` to capture arguments into a scalar variable. When passed to `pypr "${message[@]}"`, the scalar expands as a single string "toggle console" instead of two separate args. The pypr client then normalizes spaces to underscores, looking up "toggle_console" instead of the "toggle" command with "console" as its argument. Additionally, socket direct writes via nc/socat/ncat lacked a trailing newline, which the pyprland daemon's readline() expects. Fix by using a bash array (`local -a msg=("$@")`) to preserve proper word-splitting, and adding `\n` to socket writes. # Pull Request ## Description Please read these instructions and remove unnecessary text. - Try to include a summary of the changes and which issue is fixed. - Also include relevant motivation and context (if applicable). - Make sure to make PR against dev and not the master - List any dependencies that are required for this change. (e.g., packages or other PRs) - Provide a link if there is an issue related to this pull request. e.g., Fixes # (issue) - Please add Reviewers, Assignees, Labels, Projects, and Milestones to the PR. (if applicable) ## Type of change Please put an `x` in the boxes that apply: - [ ] **Bug fix** (non-breaking change which fixes an issue) - [ ] **New feature** (non-breaking change which adds functionality) - [ ] **Breaking change** (fix or feature that would cause existing functionality to not work as expected) - [ ] **Documentation update** (non-breaking change; modified files are limited to the documentations) - [ ] **Technical debt** (a code change that does not fix a bug or add a feature but makes something clearer for devs) - [ ] **Other** (provide details below) ## Checklist Please put an `x` in the boxes that apply: - [ ] I have read the [CONTRIBUTING](https://github.com/HyDE-Project/HyDE/blob/master/CONTRIBUTING.md) document. - [ ] My code follows the code style of this project. - [ ] My commit message follows the [commit guidelines](https://github.com/HyDE-Project/HyDE/blob/master/COMMIT_MESSAGE_GUIDELINES.md). - [ ] My change requires a change to the documentation. - [ ] I have updated the documentation accordingly. - [ ] I have added a changelog entry. - [ ] I have added necessary comments/documentation to my code. - [ ] I have added tests to cover my changes. - [ ] I have tested my code locally and it works as expected. - [ ] All new and existing tests passed. ## Screenshots (if appropriate) ## Additional context Add any other context about the problem here. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Refactor** * Enhanced socket message handling for more reliable and consistent command argument processing across all operations. * Improved default command behavior to automatically display helpful information when commands are executed without any arguments provided. * Optimized internal message formatting and delivery while maintaining complete compatibility with existing fallback communication mechanisms for continued system reliability and operational stability. [](https://app.coderabbit.ai/change-stack/HyDE-Project/HyDE/pull/1741) <!-- end of auto-generated comment: release notes by coderabbit.ai --> * Remove * fix: Fix Hyprland 0.55 breaking changes in configuration files (#1742) * fix(hypr): unset HL_INITIAL_WORKSPACE_TOKEN in startup to prevent apps locking to workspace 1 (#1781) * docs: sync Chinese README with English version (#1779) * fix(volume): use [[ ]] for VOLUME_PIPEWIRE_ENABLE comparison (#1786) The PipeWire detection fallback was written as `|| $VOLUME_PIPEWIRE_ENABLE == true`, which executes the variable's value as a command with `==` and `true` as arguments instead of comparing it. On PulseAudio-only systems (where the pactl grep does not short-circuit) every invocation printed "==: command not found" when the variable was unset, and setting it to "true" only worked by accident of running /usr/bin/true. Wrap the check in [[ ]] so it is an actual string comparison. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(pm): restore module header position in zypper.py (#1784) count_updates and list_updates were inserted above the module docstring and the `from __future__ import annotations` line. Python requires __future__ imports at the top of the file, so the module raised SyntaxError on import, breaking `hyde-shell pm` on openSUSE. Move both functions to the end of the file, matching the layout of the other manager modules. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * Fix/globalcontrol wallpaper validation (#1785) * fix(lib): add missing $ to XDG_DATA_HOME fallback path in get_hyprConf The first fallback config path in get_hyprConf was the literal string "XDG_DATA_HOME/hyde/hyde.conf", which never exists, so user-level default theme values in $XDG_DATA_HOME/hyde/hyde.conf were silently skipped (the grep error is suppressed by 2>/dev/null). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * fix(wallpaper): validate nonexistent path passed to --set The check used `[ -z "$wallpaper_path" ] && [ ! -f "$wallpaper_path" ]`, so a non-empty path to a missing file skipped validation entirely and failed later in get_hashmap with a confusing "No image found in any source" error. Use || so both empty and nonexistent paths report "Wallpaper not found" as intended. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(zsh,hyde-shell): prevent PATH duplication on repeated source (#1823) Co-authored-by: NoistNT <noistnt@users.noreply.github.com> * Lua (#1755) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Lua (#1835) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions * safe theme lua state generation --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Changelog * typo * fix (fonts) cantarell font * Fix: Ship hyde's wallbash template fix [Lua | Bug]: `lua_state.colors` is absent Fixes #1840 * fix changelog --------- Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* open PR * chore: Release - dev → rc (HyDE-Project#1732) * feat: add wayle bar support as alternative to waybar - Add wayle to session.py known bars for clean session management - Add wallbash hook (wayle.dcol) to sync wallpaper colors with wayle - Make waybar.dcol conditional: skip waybar update when not running * dev * docs: add @0xGeN02 to contributors * feat: add wayle-bin and matugen-bin as optional packages in pkg_extra.lst * feat: add wallbash-to-wayle palette bridge for dynamic theming Uses dcol_* environment variables passed by wallbash's fn_wallbash to set wayle palette colors on every wallpaper/theme change. Files placed in .config/hyde/wallbash/ (non-core component). * fix: hyde-shell pypr subcommand passes args as single string to pypr CLI (HyDE-Project#1741) When running `hyde-shell pypr toggle console`, the `run_pypr()` function used `${*:-help}` to capture arguments into a scalar variable. When passed to `pypr "${message[@]}"`, the scalar expands as a single string "toggle console" instead of two separate args. The pypr client then normalizes spaces to underscores, looking up "toggle_console" instead of the "toggle" command with "console" as its argument. Additionally, socket direct writes via nc/socat/ncat lacked a trailing newline, which the pyprland daemon's readline() expects. Fix by using a bash array (`local -a msg=("$@")`) to preserve proper word-splitting, and adding `\n` to socket writes. Please read these instructions and remove unnecessary text. - Try to include a summary of the changes and which issue is fixed. - Also include relevant motivation and context (if applicable). - Make sure to make PR against dev and not the master - List any dependencies that are required for this change. (e.g., packages or other PRs) - Provide a link if there is an issue related to this pull request. e.g., Fixes # (issue) - Please add Reviewers, Assignees, Labels, Projects, and Milestones to the PR. (if applicable) Please put an `x` in the boxes that apply: - [ ] **Bug fix** (non-breaking change which fixes an issue) - [ ] **New feature** (non-breaking change which adds functionality) - [ ] **Breaking change** (fix or feature that would cause existing functionality to not work as expected) - [ ] **Documentation update** (non-breaking change; modified files are limited to the documentations) - [ ] **Technical debt** (a code change that does not fix a bug or add a feature but makes something clearer for devs) - [ ] **Other** (provide details below) Please put an `x` in the boxes that apply: - [ ] I have read the [CONTRIBUTING](https://github.com/HyDE-Project/HyDE/blob/master/CONTRIBUTING.md) document. - [ ] My code follows the code style of this project. - [ ] My commit message follows the [commit guidelines](https://github.com/HyDE-Project/HyDE/blob/master/COMMIT_MESSAGE_GUIDELINES.md). - [ ] My change requires a change to the documentation. - [ ] I have updated the documentation accordingly. - [ ] I have added a changelog entry. - [ ] I have added necessary comments/documentation to my code. - [ ] I have added tests to cover my changes. - [ ] I have tested my code locally and it works as expected. - [ ] All new and existing tests passed. (if appropriate) Add any other context about the problem here. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> * **Refactor** * Enhanced socket message handling for more reliable and consistent command argument processing across all operations. * Improved default command behavior to automatically display helpful information when commands are executed without any arguments provided. * Optimized internal message formatting and delivery while maintaining complete compatibility with existing fallback communication mechanisms for continued system reliability and operational stability. [](https://app.coderabbit.ai/change-stack/HyDE-Project/HyDE/pull/1741) <!-- end of auto-generated comment: release notes by coderabbit.ai --> * Remove * fix: Fix Hyprland 0.55 breaking changes in configuration files (HyDE-Project#1742) * fix(hypr): unset HL_INITIAL_WORKSPACE_TOKEN in startup to prevent apps locking to workspace 1 (HyDE-Project#1781) * docs: sync Chinese README with English version (HyDE-Project#1779) * fix(volume): use [[ ]] for VOLUME_PIPEWIRE_ENABLE comparison (HyDE-Project#1786) The PipeWire detection fallback was written as `|| $VOLUME_PIPEWIRE_ENABLE == true`, which executes the variable's value as a command with `==` and `true` as arguments instead of comparing it. On PulseAudio-only systems (where the pactl grep does not short-circuit) every invocation printed "==: command not found" when the variable was unset, and setting it to "true" only worked by accident of running /usr/bin/true. Wrap the check in [[ ]] so it is an actual string comparison. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(pm): restore module header position in zypper.py (HyDE-Project#1784) count_updates and list_updates were inserted above the module docstring and the `from __future__ import annotations` line. Python requires __future__ imports at the top of the file, so the module raised SyntaxError on import, breaking `hyde-shell pm` on openSUSE. Move both functions to the end of the file, matching the layout of the other manager modules. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * Fix/globalcontrol wallpaper validation (HyDE-Project#1785) * fix(lib): add missing $ to XDG_DATA_HOME fallback path in get_hyprConf The first fallback config path in get_hyprConf was the literal string "XDG_DATA_HOME/hyde/hyde.conf", which never exists, so user-level default theme values in $XDG_DATA_HOME/hyde/hyde.conf were silently skipped (the grep error is suppressed by 2>/dev/null). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * fix(wallpaper): validate nonexistent path passed to --set The check used `[ -z "$wallpaper_path" ] && [ ! -f "$wallpaper_path" ]`, so a non-empty path to a missing file skipped validation entirely and failed later in get_hashmap with a confusing "No image found in any source" error. Use || so both empty and nonexistent paths report "Wallpaper not found" as intended. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(zsh,hyde-shell): prevent PATH duplication on repeated source (HyDE-Project#1823) Co-authored-by: NoistNT <noistnt@users.noreply.github.com> * Lua (HyDE-Project#1755) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * chore: Release - dev → rc (HyDE-Project#1836) * feat: add wayle bar support as alternative to waybar - Add wayle to session.py known bars for clean session management - Add wallbash hook (wayle.dcol) to sync wallpaper colors with wayle - Make waybar.dcol conditional: skip waybar update when not running * dev * docs: add @0xGeN02 to contributors * feat: add wayle-bin and matugen-bin as optional packages in pkg_extra.lst * feat: add wallbash-to-wayle palette bridge for dynamic theming Uses dcol_* environment variables passed by wallbash's fn_wallbash to set wayle palette colors on every wallpaper/theme change. Files placed in .config/hyde/wallbash/ (non-core component). * fix: hyde-shell pypr subcommand passes args as single string to pypr CLI (HyDE-Project#1741) When running `hyde-shell pypr toggle console`, the `run_pypr()` function used `${*:-help}` to capture arguments into a scalar variable. When passed to `pypr "${message[@]}"`, the scalar expands as a single string "toggle console" instead of two separate args. The pypr client then normalizes spaces to underscores, looking up "toggle_console" instead of the "toggle" command with "console" as its argument. Additionally, socket direct writes via nc/socat/ncat lacked a trailing newline, which the pyprland daemon's readline() expects. Fix by using a bash array (`local -a msg=("$@")`) to preserve proper word-splitting, and adding `\n` to socket writes. Please read these instructions and remove unnecessary text. - Try to include a summary of the changes and which issue is fixed. - Also include relevant motivation and context (if applicable). - Make sure to make PR against dev and not the master - List any dependencies that are required for this change. (e.g., packages or other PRs) - Provide a link if there is an issue related to this pull request. e.g., Fixes # (issue) - Please add Reviewers, Assignees, Labels, Projects, and Milestones to the PR. (if applicable) Please put an `x` in the boxes that apply: - [ ] **Bug fix** (non-breaking change which fixes an issue) - [ ] **New feature** (non-breaking change which adds functionality) - [ ] **Breaking change** (fix or feature that would cause existing functionality to not work as expected) - [ ] **Documentation update** (non-breaking change; modified files are limited to the documentations) - [ ] **Technical debt** (a code change that does not fix a bug or add a feature but makes something clearer for devs) - [ ] **Other** (provide details below) Please put an `x` in the boxes that apply: - [ ] I have read the [CONTRIBUTING](https://github.com/HyDE-Project/HyDE/blob/master/CONTRIBUTING.md) document. - [ ] My code follows the code style of this project. - [ ] My commit message follows the [commit guidelines](https://github.com/HyDE-Project/HyDE/blob/master/COMMIT_MESSAGE_GUIDELINES.md). - [ ] My change requires a change to the documentation. - [ ] I have updated the documentation accordingly. - [ ] I have added a changelog entry. - [ ] I have added necessary comments/documentation to my code. - [ ] I have added tests to cover my changes. - [ ] I have tested my code locally and it works as expected. - [ ] All new and existing tests passed. (if appropriate) Add any other context about the problem here. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> * **Refactor** * Enhanced socket message handling for more reliable and consistent command argument processing across all operations. * Improved default command behavior to automatically display helpful information when commands are executed without any arguments provided. * Optimized internal message formatting and delivery while maintaining complete compatibility with existing fallback communication mechanisms for continued system reliability and operational stability. [](https://app.coderabbit.ai/change-stack/HyDE-Project/HyDE/pull/1741) <!-- end of auto-generated comment: release notes by coderabbit.ai --> * Remove * fix: Fix Hyprland 0.55 breaking changes in configuration files (HyDE-Project#1742) * fix(hypr): unset HL_INITIAL_WORKSPACE_TOKEN in startup to prevent apps locking to workspace 1 (HyDE-Project#1781) * docs: sync Chinese README with English version (HyDE-Project#1779) * fix(volume): use [[ ]] for VOLUME_PIPEWIRE_ENABLE comparison (HyDE-Project#1786) The PipeWire detection fallback was written as `|| $VOLUME_PIPEWIRE_ENABLE == true`, which executes the variable's value as a command with `==` and `true` as arguments instead of comparing it. On PulseAudio-only systems (where the pactl grep does not short-circuit) every invocation printed "==: command not found" when the variable was unset, and setting it to "true" only worked by accident of running /usr/bin/true. Wrap the check in [[ ]] so it is an actual string comparison. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(pm): restore module header position in zypper.py (HyDE-Project#1784) count_updates and list_updates were inserted above the module docstring and the `from __future__ import annotations` line. Python requires __future__ imports at the top of the file, so the module raised SyntaxError on import, breaking `hyde-shell pm` on openSUSE. Move both functions to the end of the file, matching the layout of the other manager modules. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * Fix/globalcontrol wallpaper validation (HyDE-Project#1785) * fix(lib): add missing $ to XDG_DATA_HOME fallback path in get_hyprConf The first fallback config path in get_hyprConf was the literal string "XDG_DATA_HOME/hyde/hyde.conf", which never exists, so user-level default theme values in $XDG_DATA_HOME/hyde/hyde.conf were silently skipped (the grep error is suppressed by 2>/dev/null). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * fix(wallpaper): validate nonexistent path passed to --set The check used `[ -z "$wallpaper_path" ] && [ ! -f "$wallpaper_path" ]`, so a non-empty path to a missing file skipped validation entirely and failed later in get_hashmap with a confusing "No image found in any source" error. Use || so both empty and nonexistent paths report "Wallpaper not found" as intended. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(zsh,hyde-shell): prevent PATH duplication on repeated source (HyDE-Project#1823) Co-authored-by: NoistNT <noistnt@users.noreply.github.com> * Lua (HyDE-Project#1755) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Lua (HyDE-Project#1835) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions * safe theme lua state generation --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Changelog --------- Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* open PR * chore: Release - dev → rc (HyDE-Project#1732) * feat: add wayle bar support as alternative to waybar - Add wayle to session.py known bars for clean session management - Add wallbash hook (wayle.dcol) to sync wallpaper colors with wayle - Make waybar.dcol conditional: skip waybar update when not running * dev * docs: add @0xGeN02 to contributors * feat: add wayle-bin and matugen-bin as optional packages in pkg_extra.lst * feat: add wallbash-to-wayle palette bridge for dynamic theming Uses dcol_* environment variables passed by wallbash's fn_wallbash to set wayle palette colors on every wallpaper/theme change. Files placed in .config/hyde/wallbash/ (non-core component). * fix: hyde-shell pypr subcommand passes args as single string to pypr CLI (HyDE-Project#1741) When running `hyde-shell pypr toggle console`, the `run_pypr()` function used `${*:-help}` to capture arguments into a scalar variable. When passed to `pypr "${message[@]}"`, the scalar expands as a single string "toggle console" instead of two separate args. The pypr client then normalizes spaces to underscores, looking up "toggle_console" instead of the "toggle" command with "console" as its argument. Additionally, socket direct writes via nc/socat/ncat lacked a trailing newline, which the pyprland daemon's readline() expects. Fix by using a bash array (`local -a msg=("$@")`) to preserve proper word-splitting, and adding `\n` to socket writes. # Pull Request ## Description Please read these instructions and remove unnecessary text. - Try to include a summary of the changes and which issue is fixed. - Also include relevant motivation and context (if applicable). - Make sure to make PR against dev and not the master - List any dependencies that are required for this change. (e.g., packages or other PRs) - Provide a link if there is an issue related to this pull request. e.g., Fixes # (issue) - Please add Reviewers, Assignees, Labels, Projects, and Milestones to the PR. (if applicable) ## Type of change Please put an `x` in the boxes that apply: - [ ] **Bug fix** (non-breaking change which fixes an issue) - [ ] **New feature** (non-breaking change which adds functionality) - [ ] **Breaking change** (fix or feature that would cause existing functionality to not work as expected) - [ ] **Documentation update** (non-breaking change; modified files are limited to the documentations) - [ ] **Technical debt** (a code change that does not fix a bug or add a feature but makes something clearer for devs) - [ ] **Other** (provide details below) ## Checklist Please put an `x` in the boxes that apply: - [ ] I have read the [CONTRIBUTING](https://github.com/HyDE-Project/HyDE/blob/master/CONTRIBUTING.md) document. - [ ] My code follows the code style of this project. - [ ] My commit message follows the [commit guidelines](https://github.com/HyDE-Project/HyDE/blob/master/COMMIT_MESSAGE_GUIDELINES.md). - [ ] My change requires a change to the documentation. - [ ] I have updated the documentation accordingly. - [ ] I have added a changelog entry. - [ ] I have added necessary comments/documentation to my code. - [ ] I have added tests to cover my changes. - [ ] I have tested my code locally and it works as expected. - [ ] All new and existing tests passed. ## Screenshots (if appropriate) ## Additional context Add any other context about the problem here. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Refactor** * Enhanced socket message handling for more reliable and consistent command argument processing across all operations. * Improved default command behavior to automatically display helpful information when commands are executed without any arguments provided. * Optimized internal message formatting and delivery while maintaining complete compatibility with existing fallback communication mechanisms for continued system reliability and operational stability. [](https://app.coderabbit.ai/change-stack/HyDE-Project/HyDE/pull/1741) <!-- end of auto-generated comment: release notes by coderabbit.ai --> * Remove * fix: Fix Hyprland 0.55 breaking changes in configuration files (HyDE-Project#1742) * fix(hypr): unset HL_INITIAL_WORKSPACE_TOKEN in startup to prevent apps locking to workspace 1 (HyDE-Project#1781) * docs: sync Chinese README with English version (HyDE-Project#1779) * fix(volume): use [[ ]] for VOLUME_PIPEWIRE_ENABLE comparison (HyDE-Project#1786) The PipeWire detection fallback was written as `|| $VOLUME_PIPEWIRE_ENABLE == true`, which executes the variable's value as a command with `==` and `true` as arguments instead of comparing it. On PulseAudio-only systems (where the pactl grep does not short-circuit) every invocation printed "==: command not found" when the variable was unset, and setting it to "true" only worked by accident of running /usr/bin/true. Wrap the check in [[ ]] so it is an actual string comparison. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(pm): restore module header position in zypper.py (HyDE-Project#1784) count_updates and list_updates were inserted above the module docstring and the `from __future__ import annotations` line. Python requires __future__ imports at the top of the file, so the module raised SyntaxError on import, breaking `hyde-shell pm` on openSUSE. Move both functions to the end of the file, matching the layout of the other manager modules. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * Fix/globalcontrol wallpaper validation (HyDE-Project#1785) * fix(lib): add missing $ to XDG_DATA_HOME fallback path in get_hyprConf The first fallback config path in get_hyprConf was the literal string "XDG_DATA_HOME/hyde/hyde.conf", which never exists, so user-level default theme values in $XDG_DATA_HOME/hyde/hyde.conf were silently skipped (the grep error is suppressed by 2>/dev/null). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * fix(wallpaper): validate nonexistent path passed to --set The check used `[ -z "$wallpaper_path" ] && [ ! -f "$wallpaper_path" ]`, so a non-empty path to a missing file skipped validation entirely and failed later in get_hashmap with a confusing "No image found in any source" error. Use || so both empty and nonexistent paths report "Wallpaper not found" as intended. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(zsh,hyde-shell): prevent PATH duplication on repeated source (HyDE-Project#1823) Co-authored-by: NoistNT <noistnt@users.noreply.github.com> * Lua (HyDE-Project#1755) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * chore: Release - dev → rc (HyDE-Project#1836) * feat: add wayle bar support as alternative to waybar - Add wayle to session.py known bars for clean session management - Add wallbash hook (wayle.dcol) to sync wallpaper colors with wayle - Make waybar.dcol conditional: skip waybar update when not running * dev * docs: add @0xGeN02 to contributors * feat: add wayle-bin and matugen-bin as optional packages in pkg_extra.lst * feat: add wallbash-to-wayle palette bridge for dynamic theming Uses dcol_* environment variables passed by wallbash's fn_wallbash to set wayle palette colors on every wallpaper/theme change. Files placed in .config/hyde/wallbash/ (non-core component). * fix: hyde-shell pypr subcommand passes args as single string to pypr CLI (HyDE-Project#1741) When running `hyde-shell pypr toggle console`, the `run_pypr()` function used `${*:-help}` to capture arguments into a scalar variable. When passed to `pypr "${message[@]}"`, the scalar expands as a single string "toggle console" instead of two separate args. The pypr client then normalizes spaces to underscores, looking up "toggle_console" instead of the "toggle" command with "console" as its argument. Additionally, socket direct writes via nc/socat/ncat lacked a trailing newline, which the pyprland daemon's readline() expects. Fix by using a bash array (`local -a msg=("$@")`) to preserve proper word-splitting, and adding `\n` to socket writes. # Pull Request ## Description Please read these instructions and remove unnecessary text. - Try to include a summary of the changes and which issue is fixed. - Also include relevant motivation and context (if applicable). - Make sure to make PR against dev and not the master - List any dependencies that are required for this change. (e.g., packages or other PRs) - Provide a link if there is an issue related to this pull request. e.g., Fixes # (issue) - Please add Reviewers, Assignees, Labels, Projects, and Milestones to the PR. (if applicable) ## Type of change Please put an `x` in the boxes that apply: - [ ] **Bug fix** (non-breaking change which fixes an issue) - [ ] **New feature** (non-breaking change which adds functionality) - [ ] **Breaking change** (fix or feature that would cause existing functionality to not work as expected) - [ ] **Documentation update** (non-breaking change; modified files are limited to the documentations) - [ ] **Technical debt** (a code change that does not fix a bug or add a feature but makes something clearer for devs) - [ ] **Other** (provide details below) ## Checklist Please put an `x` in the boxes that apply: - [ ] I have read the [CONTRIBUTING](https://github.com/HyDE-Project/HyDE/blob/master/CONTRIBUTING.md) document. - [ ] My code follows the code style of this project. - [ ] My commit message follows the [commit guidelines](https://github.com/HyDE-Project/HyDE/blob/master/COMMIT_MESSAGE_GUIDELINES.md). - [ ] My change requires a change to the documentation. - [ ] I have updated the documentation accordingly. - [ ] I have added a changelog entry. - [ ] I have added necessary comments/documentation to my code. - [ ] I have added tests to cover my changes. - [ ] I have tested my code locally and it works as expected. - [ ] All new and existing tests passed. ## Screenshots (if appropriate) ## Additional context Add any other context about the problem here. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Refactor** * Enhanced socket message handling for more reliable and consistent command argument processing across all operations. * Improved default command behavior to automatically display helpful information when commands are executed without any arguments provided. * Optimized internal message formatting and delivery while maintaining complete compatibility with existing fallback communication mechanisms for continued system reliability and operational stability. [](https://app.coderabbit.ai/change-stack/HyDE-Project/HyDE/pull/1741) <!-- end of auto-generated comment: release notes by coderabbit.ai --> * Remove * fix: Fix Hyprland 0.55 breaking changes in configuration files (HyDE-Project#1742) * fix(hypr): unset HL_INITIAL_WORKSPACE_TOKEN in startup to prevent apps locking to workspace 1 (HyDE-Project#1781) * docs: sync Chinese README with English version (HyDE-Project#1779) * fix(volume): use [[ ]] for VOLUME_PIPEWIRE_ENABLE comparison (HyDE-Project#1786) The PipeWire detection fallback was written as `|| $VOLUME_PIPEWIRE_ENABLE == true`, which executes the variable's value as a command with `==` and `true` as arguments instead of comparing it. On PulseAudio-only systems (where the pactl grep does not short-circuit) every invocation printed "==: command not found" when the variable was unset, and setting it to "true" only worked by accident of running /usr/bin/true. Wrap the check in [[ ]] so it is an actual string comparison. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(pm): restore module header position in zypper.py (HyDE-Project#1784) count_updates and list_updates were inserted above the module docstring and the `from __future__ import annotations` line. Python requires __future__ imports at the top of the file, so the module raised SyntaxError on import, breaking `hyde-shell pm` on openSUSE. Move both functions to the end of the file, matching the layout of the other manager modules. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * Fix/globalcontrol wallpaper validation (HyDE-Project#1785) * fix(lib): add missing $ to XDG_DATA_HOME fallback path in get_hyprConf The first fallback config path in get_hyprConf was the literal string "XDG_DATA_HOME/hyde/hyde.conf", which never exists, so user-level default theme values in $XDG_DATA_HOME/hyde/hyde.conf were silently skipped (the grep error is suppressed by 2>/dev/null). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * fix(wallpaper): validate nonexistent path passed to --set The check used `[ -z "$wallpaper_path" ] && [ ! -f "$wallpaper_path" ]`, so a non-empty path to a missing file skipped validation entirely and failed later in get_hashmap with a confusing "No image found in any source" error. Use || so both empty and nonexistent paths report "Wallpaper not found" as intended. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(zsh,hyde-shell): prevent PATH duplication on repeated source (HyDE-Project#1823) Co-authored-by: NoistNT <noistnt@users.noreply.github.com> * Lua (HyDE-Project#1755) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Lua (HyDE-Project#1835) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions * safe theme lua state generation --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Changelog * typo * fix (fonts) cantarell font * Fix: Ship hyde's wallbash template fix [Lua | Bug]: `lua_state.colors` is absent Fixes HyDE-Project#1840 * fix changelog --------- Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* open PR * chore: Release - dev → rc (#1732) * feat: add wayle bar support as alternative to waybar - Add wayle to session.py known bars for clean session management - Add wallbash hook (wayle.dcol) to sync wallpaper colors with wayle - Make waybar.dcol conditional: skip waybar update when not running * dev * docs: add @0xGeN02 to contributors * feat: add wayle-bin and matugen-bin as optional packages in pkg_extra.lst * feat: add wallbash-to-wayle palette bridge for dynamic theming Uses dcol_* environment variables passed by wallbash's fn_wallbash to set wayle palette colors on every wallpaper/theme change. Files placed in .config/hyde/wallbash/ (non-core component). * fix: hyde-shell pypr subcommand passes args as single string to pypr CLI (#1741) When running `hyde-shell pypr toggle console`, the `run_pypr()` function used `${*:-help}` to capture arguments into a scalar variable. When passed to `pypr "${message[@]}"`, the scalar expands as a single string "toggle console" instead of two separate args. The pypr client then normalizes spaces to underscores, looking up "toggle_console" instead of the "toggle" command with "console" as its argument. Additionally, socket direct writes via nc/socat/ncat lacked a trailing newline, which the pyprland daemon's readline() expects. Fix by using a bash array (`local -a msg=("$@")`) to preserve proper word-splitting, and adding `\n` to socket writes. # Pull Request ## Description Please read these instructions and remove unnecessary text. - Try to include a summary of the changes and which issue is fixed. - Also include relevant motivation and context (if applicable). - Make sure to make PR against dev and not the master - List any dependencies that are required for this change. (e.g., packages or other PRs) - Provide a link if there is an issue related to this pull request. e.g., Fixes # (issue) - Please add Reviewers, Assignees, Labels, Projects, and Milestones to the PR. (if applicable) ## Type of change Please put an `x` in the boxes that apply: - [ ] **Bug fix** (non-breaking change which fixes an issue) - [ ] **New feature** (non-breaking change which adds functionality) - [ ] **Breaking change** (fix or feature that would cause existing functionality to not work as expected) - [ ] **Documentation update** (non-breaking change; modified files are limited to the documentations) - [ ] **Technical debt** (a code change that does not fix a bug or add a feature but makes something clearer for devs) - [ ] **Other** (provide details below) ## Checklist Please put an `x` in the boxes that apply: - [ ] I have read the [CONTRIBUTING](https://github.com/HyDE-Project/HyDE/blob/master/CONTRIBUTING.md) document. - [ ] My code follows the code style of this project. - [ ] My commit message follows the [commit guidelines](https://github.com/HyDE-Project/HyDE/blob/master/COMMIT_MESSAGE_GUIDELINES.md). - [ ] My change requires a change to the documentation. - [ ] I have updated the documentation accordingly. - [ ] I have added a changelog entry. - [ ] I have added necessary comments/documentation to my code. - [ ] I have added tests to cover my changes. - [ ] I have tested my code locally and it works as expected. - [ ] All new and existing tests passed. ## Screenshots (if appropriate) ## Additional context Add any other context about the problem here. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Refactor** * Enhanced socket message handling for more reliable and consistent command argument processing across all operations. * Improved default command behavior to automatically display helpful information when commands are executed without any arguments provided. * Optimized internal message formatting and delivery while maintaining complete compatibility with existing fallback communication mechanisms for continued system reliability and operational stability. [](https://app.coderabbit.ai/change-stack/HyDE-Project/HyDE/pull/1741) <!-- end of auto-generated comment: release notes by coderabbit.ai --> * Remove * fix: Fix Hyprland 0.55 breaking changes in configuration files (#1742) * fix(hypr): unset HL_INITIAL_WORKSPACE_TOKEN in startup to prevent apps locking to workspace 1 (#1781) * docs: sync Chinese README with English version (#1779) * fix(volume): use [[ ]] for VOLUME_PIPEWIRE_ENABLE comparison (#1786) The PipeWire detection fallback was written as `|| $VOLUME_PIPEWIRE_ENABLE == true`, which executes the variable's value as a command with `==` and `true` as arguments instead of comparing it. On PulseAudio-only systems (where the pactl grep does not short-circuit) every invocation printed "==: command not found" when the variable was unset, and setting it to "true" only worked by accident of running /usr/bin/true. Wrap the check in [[ ]] so it is an actual string comparison. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(pm): restore module header position in zypper.py (#1784) count_updates and list_updates were inserted above the module docstring and the `from __future__ import annotations` line. Python requires __future__ imports at the top of the file, so the module raised SyntaxError on import, breaking `hyde-shell pm` on openSUSE. Move both functions to the end of the file, matching the layout of the other manager modules. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * Fix/globalcontrol wallpaper validation (#1785) * fix(lib): add missing $ to XDG_DATA_HOME fallback path in get_hyprConf The first fallback config path in get_hyprConf was the literal string "XDG_DATA_HOME/hyde/hyde.conf", which never exists, so user-level default theme values in $XDG_DATA_HOME/hyde/hyde.conf were silently skipped (the grep error is suppressed by 2>/dev/null). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * fix(wallpaper): validate nonexistent path passed to --set The check used `[ -z "$wallpaper_path" ] && [ ! -f "$wallpaper_path" ]`, so a non-empty path to a missing file skipped validation entirely and failed later in get_hashmap with a confusing "No image found in any source" error. Use || so both empty and nonexistent paths report "Wallpaper not found" as intended. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(zsh,hyde-shell): prevent PATH duplication on repeated source (#1823) Co-authored-by: NoistNT <noistnt@users.noreply.github.com> * Lua (#1755) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * chore: Release - dev → rc (#1836) * feat: add wayle bar support as alternative to waybar - Add wayle to session.py known bars for clean session management - Add wallbash hook (wayle.dcol) to sync wallpaper colors with wayle - Make waybar.dcol conditional: skip waybar update when not running * dev * docs: add @0xGeN02 to contributors * feat: add wayle-bin and matugen-bin as optional packages in pkg_extra.lst * feat: add wallbash-to-wayle palette bridge for dynamic theming Uses dcol_* environment variables passed by wallbash's fn_wallbash to set wayle palette colors on every wallpaper/theme change. Files placed in .config/hyde/wallbash/ (non-core component). * fix: hyde-shell pypr subcommand passes args as single string to pypr CLI (#1741) When running `hyde-shell pypr toggle console`, the `run_pypr()` function used `${*:-help}` to capture arguments into a scalar variable. When passed to `pypr "${message[@]}"`, the scalar expands as a single string "toggle console" instead of two separate args. The pypr client then normalizes spaces to underscores, looking up "toggle_console" instead of the "toggle" command with "console" as its argument. Additionally, socket direct writes via nc/socat/ncat lacked a trailing newline, which the pyprland daemon's readline() expects. Fix by using a bash array (`local -a msg=("$@")`) to preserve proper word-splitting, and adding `\n` to socket writes. # Pull Request ## Description Please read these instructions and remove unnecessary text. - Try to include a summary of the changes and which issue is fixed. - Also include relevant motivation and context (if applicable). - Make sure to make PR against dev and not the master - List any dependencies that are required for this change. (e.g., packages or other PRs) - Provide a link if there is an issue related to this pull request. e.g., Fixes # (issue) - Please add Reviewers, Assignees, Labels, Projects, and Milestones to the PR. (if applicable) ## Type of change Please put an `x` in the boxes that apply: - [ ] **Bug fix** (non-breaking change which fixes an issue) - [ ] **New feature** (non-breaking change which adds functionality) - [ ] **Breaking change** (fix or feature that would cause existing functionality to not work as expected) - [ ] **Documentation update** (non-breaking change; modified files are limited to the documentations) - [ ] **Technical debt** (a code change that does not fix a bug or add a feature but makes something clearer for devs) - [ ] **Other** (provide details below) ## Checklist Please put an `x` in the boxes that apply: - [ ] I have read the [CONTRIBUTING](https://github.com/HyDE-Project/HyDE/blob/master/CONTRIBUTING.md) document. - [ ] My code follows the code style of this project. - [ ] My commit message follows the [commit guidelines](https://github.com/HyDE-Project/HyDE/blob/master/COMMIT_MESSAGE_GUIDELINES.md). - [ ] My change requires a change to the documentation. - [ ] I have updated the documentation accordingly. - [ ] I have added a changelog entry. - [ ] I have added necessary comments/documentation to my code. - [ ] I have added tests to cover my changes. - [ ] I have tested my code locally and it works as expected. - [ ] All new and existing tests passed. ## Screenshots (if appropriate) ## Additional context Add any other context about the problem here. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Refactor** * Enhanced socket message handling for more reliable and consistent command argument processing across all operations. * Improved default command behavior to automatically display helpful information when commands are executed without any arguments provided. * Optimized internal message formatting and delivery while maintaining complete compatibility with existing fallback communication mechanisms for continued system reliability and operational stability. [](https://app.coderabbit.ai/change-stack/HyDE-Project/HyDE/pull/1741) <!-- end of auto-generated comment: release notes by coderabbit.ai --> * Remove * fix: Fix Hyprland 0.55 breaking changes in configuration files (#1742) * fix(hypr): unset HL_INITIAL_WORKSPACE_TOKEN in startup to prevent apps locking to workspace 1 (#1781) * docs: sync Chinese README with English version (#1779) * fix(volume): use [[ ]] for VOLUME_PIPEWIRE_ENABLE comparison (#1786) The PipeWire detection fallback was written as `|| $VOLUME_PIPEWIRE_ENABLE == true`, which executes the variable's value as a command with `==` and `true` as arguments instead of comparing it. On PulseAudio-only systems (where the pactl grep does not short-circuit) every invocation printed "==: command not found" when the variable was unset, and setting it to "true" only worked by accident of running /usr/bin/true. Wrap the check in [[ ]] so it is an actual string comparison. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(pm): restore module header position in zypper.py (#1784) count_updates and list_updates were inserted above the module docstring and the `from __future__ import annotations` line. Python requires __future__ imports at the top of the file, so the module raised SyntaxError on import, breaking `hyde-shell pm` on openSUSE. Move both functions to the end of the file, matching the layout of the other manager modules. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * Fix/globalcontrol wallpaper validation (#1785) * fix(lib): add missing $ to XDG_DATA_HOME fallback path in get_hyprConf The first fallback config path in get_hyprConf was the literal string "XDG_DATA_HOME/hyde/hyde.conf", which never exists, so user-level default theme values in $XDG_DATA_HOME/hyde/hyde.conf were silently skipped (the grep error is suppressed by 2>/dev/null). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * fix(wallpaper): validate nonexistent path passed to --set The check used `[ -z "$wallpaper_path" ] && [ ! -f "$wallpaper_path" ]`, so a non-empty path to a missing file skipped validation entirely and failed later in get_hashmap with a confusing "No image found in any source" error. Use || so both empty and nonexistent paths report "Wallpaper not found" as intended. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(zsh,hyde-shell): prevent PATH duplication on repeated source (#1823) Co-authored-by: NoistNT <noistnt@users.noreply.github.com> * Lua (#1755) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Lua (#1835) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions * safe theme lua state generation --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Changelog * typo * fix (fonts) cantarell font * Fix: Ship hyde's wallbash template fix [Lua | Bug]: `lua_state.colors` is absent Fixes #1840 * fix changelog * fix! missin lua.dcol --------- Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* open PR * chore: Release - dev → rc (HyDE-Project#1732) * feat: add wayle bar support as alternative to waybar - Add wayle to session.py known bars for clean session management - Add wallbash hook (wayle.dcol) to sync wallpaper colors with wayle - Make waybar.dcol conditional: skip waybar update when not running * dev * docs: add @0xGeN02 to contributors * feat: add wayle-bin and matugen-bin as optional packages in pkg_extra.lst * feat: add wallbash-to-wayle palette bridge for dynamic theming Uses dcol_* environment variables passed by wallbash's fn_wallbash to set wayle palette colors on every wallpaper/theme change. Files placed in .config/hyde/wallbash/ (non-core component). * fix: hyde-shell pypr subcommand passes args as single string to pypr CLI (HyDE-Project#1741) When running `hyde-shell pypr toggle console`, the `run_pypr()` function used `${*:-help}` to capture arguments into a scalar variable. When passed to `pypr "${message[@]}"`, the scalar expands as a single string "toggle console" instead of two separate args. The pypr client then normalizes spaces to underscores, looking up "toggle_console" instead of the "toggle" command with "console" as its argument. Additionally, socket direct writes via nc/socat/ncat lacked a trailing newline, which the pyprland daemon's readline() expects. Fix by using a bash array (`local -a msg=("$@")`) to preserve proper word-splitting, and adding `\n` to socket writes. Please read these instructions and remove unnecessary text. - Try to include a summary of the changes and which issue is fixed. - Also include relevant motivation and context (if applicable). - Make sure to make PR against dev and not the master - List any dependencies that are required for this change. (e.g., packages or other PRs) - Provide a link if there is an issue related to this pull request. e.g., Fixes # (issue) - Please add Reviewers, Assignees, Labels, Projects, and Milestones to the PR. (if applicable) Please put an `x` in the boxes that apply: - [ ] **Bug fix** (non-breaking change which fixes an issue) - [ ] **New feature** (non-breaking change which adds functionality) - [ ] **Breaking change** (fix or feature that would cause existing functionality to not work as expected) - [ ] **Documentation update** (non-breaking change; modified files are limited to the documentations) - [ ] **Technical debt** (a code change that does not fix a bug or add a feature but makes something clearer for devs) - [ ] **Other** (provide details below) Please put an `x` in the boxes that apply: - [ ] I have read the [CONTRIBUTING](https://github.com/HyDE-Project/HyDE/blob/master/CONTRIBUTING.md) document. - [ ] My code follows the code style of this project. - [ ] My commit message follows the [commit guidelines](https://github.com/HyDE-Project/HyDE/blob/master/COMMIT_MESSAGE_GUIDELINES.md). - [ ] My change requires a change to the documentation. - [ ] I have updated the documentation accordingly. - [ ] I have added a changelog entry. - [ ] I have added necessary comments/documentation to my code. - [ ] I have added tests to cover my changes. - [ ] I have tested my code locally and it works as expected. - [ ] All new and existing tests passed. (if appropriate) Add any other context about the problem here. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> * **Refactor** * Enhanced socket message handling for more reliable and consistent command argument processing across all operations. * Improved default command behavior to automatically display helpful information when commands are executed without any arguments provided. * Optimized internal message formatting and delivery while maintaining complete compatibility with existing fallback communication mechanisms for continued system reliability and operational stability. [](https://app.coderabbit.ai/change-stack/HyDE-Project/HyDE/pull/1741) <!-- end of auto-generated comment: release notes by coderabbit.ai --> * Remove * fix: Fix Hyprland 0.55 breaking changes in configuration files (HyDE-Project#1742) * fix(hypr): unset HL_INITIAL_WORKSPACE_TOKEN in startup to prevent apps locking to workspace 1 (HyDE-Project#1781) * docs: sync Chinese README with English version (HyDE-Project#1779) * fix(volume): use [[ ]] for VOLUME_PIPEWIRE_ENABLE comparison (HyDE-Project#1786) The PipeWire detection fallback was written as `|| $VOLUME_PIPEWIRE_ENABLE == true`, which executes the variable's value as a command with `==` and `true` as arguments instead of comparing it. On PulseAudio-only systems (where the pactl grep does not short-circuit) every invocation printed "==: command not found" when the variable was unset, and setting it to "true" only worked by accident of running /usr/bin/true. Wrap the check in [[ ]] so it is an actual string comparison. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(pm): restore module header position in zypper.py (HyDE-Project#1784) count_updates and list_updates were inserted above the module docstring and the `from __future__ import annotations` line. Python requires __future__ imports at the top of the file, so the module raised SyntaxError on import, breaking `hyde-shell pm` on openSUSE. Move both functions to the end of the file, matching the layout of the other manager modules. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * Fix/globalcontrol wallpaper validation (HyDE-Project#1785) * fix(lib): add missing $ to XDG_DATA_HOME fallback path in get_hyprConf The first fallback config path in get_hyprConf was the literal string "XDG_DATA_HOME/hyde/hyde.conf", which never exists, so user-level default theme values in $XDG_DATA_HOME/hyde/hyde.conf were silently skipped (the grep error is suppressed by 2>/dev/null). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * fix(wallpaper): validate nonexistent path passed to --set The check used `[ -z "$wallpaper_path" ] && [ ! -f "$wallpaper_path" ]`, so a non-empty path to a missing file skipped validation entirely and failed later in get_hashmap with a confusing "No image found in any source" error. Use || so both empty and nonexistent paths report "Wallpaper not found" as intended. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(zsh,hyde-shell): prevent PATH duplication on repeated source (HyDE-Project#1823) Co-authored-by: NoistNT <noistnt@users.noreply.github.com> * Lua (HyDE-Project#1755) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * chore: Release - dev → rc (HyDE-Project#1836) * feat: add wayle bar support as alternative to waybar - Add wayle to session.py known bars for clean session management - Add wallbash hook (wayle.dcol) to sync wallpaper colors with wayle - Make waybar.dcol conditional: skip waybar update when not running * dev * docs: add @0xGeN02 to contributors * feat: add wayle-bin and matugen-bin as optional packages in pkg_extra.lst * feat: add wallbash-to-wayle palette bridge for dynamic theming Uses dcol_* environment variables passed by wallbash's fn_wallbash to set wayle palette colors on every wallpaper/theme change. Files placed in .config/hyde/wallbash/ (non-core component). * fix: hyde-shell pypr subcommand passes args as single string to pypr CLI (HyDE-Project#1741) When running `hyde-shell pypr toggle console`, the `run_pypr()` function used `${*:-help}` to capture arguments into a scalar variable. When passed to `pypr "${message[@]}"`, the scalar expands as a single string "toggle console" instead of two separate args. The pypr client then normalizes spaces to underscores, looking up "toggle_console" instead of the "toggle" command with "console" as its argument. Additionally, socket direct writes via nc/socat/ncat lacked a trailing newline, which the pyprland daemon's readline() expects. Fix by using a bash array (`local -a msg=("$@")`) to preserve proper word-splitting, and adding `\n` to socket writes. Please read these instructions and remove unnecessary text. - Try to include a summary of the changes and which issue is fixed. - Also include relevant motivation and context (if applicable). - Make sure to make PR against dev and not the master - List any dependencies that are required for this change. (e.g., packages or other PRs) - Provide a link if there is an issue related to this pull request. e.g., Fixes # (issue) - Please add Reviewers, Assignees, Labels, Projects, and Milestones to the PR. (if applicable) Please put an `x` in the boxes that apply: - [ ] **Bug fix** (non-breaking change which fixes an issue) - [ ] **New feature** (non-breaking change which adds functionality) - [ ] **Breaking change** (fix or feature that would cause existing functionality to not work as expected) - [ ] **Documentation update** (non-breaking change; modified files are limited to the documentations) - [ ] **Technical debt** (a code change that does not fix a bug or add a feature but makes something clearer for devs) - [ ] **Other** (provide details below) Please put an `x` in the boxes that apply: - [ ] I have read the [CONTRIBUTING](https://github.com/HyDE-Project/HyDE/blob/master/CONTRIBUTING.md) document. - [ ] My code follows the code style of this project. - [ ] My commit message follows the [commit guidelines](https://github.com/HyDE-Project/HyDE/blob/master/COMMIT_MESSAGE_GUIDELINES.md). - [ ] My change requires a change to the documentation. - [ ] I have updated the documentation accordingly. - [ ] I have added a changelog entry. - [ ] I have added necessary comments/documentation to my code. - [ ] I have added tests to cover my changes. - [ ] I have tested my code locally and it works as expected. - [ ] All new and existing tests passed. (if appropriate) Add any other context about the problem here. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> * **Refactor** * Enhanced socket message handling for more reliable and consistent command argument processing across all operations. * Improved default command behavior to automatically display helpful information when commands are executed without any arguments provided. * Optimized internal message formatting and delivery while maintaining complete compatibility with existing fallback communication mechanisms for continued system reliability and operational stability. [](https://app.coderabbit.ai/change-stack/HyDE-Project/HyDE/pull/1741) <!-- end of auto-generated comment: release notes by coderabbit.ai --> * Remove * fix: Fix Hyprland 0.55 breaking changes in configuration files (HyDE-Project#1742) * fix(hypr): unset HL_INITIAL_WORKSPACE_TOKEN in startup to prevent apps locking to workspace 1 (HyDE-Project#1781) * docs: sync Chinese README with English version (HyDE-Project#1779) * fix(volume): use [[ ]] for VOLUME_PIPEWIRE_ENABLE comparison (HyDE-Project#1786) The PipeWire detection fallback was written as `|| $VOLUME_PIPEWIRE_ENABLE == true`, which executes the variable's value as a command with `==` and `true` as arguments instead of comparing it. On PulseAudio-only systems (where the pactl grep does not short-circuit) every invocation printed "==: command not found" when the variable was unset, and setting it to "true" only worked by accident of running /usr/bin/true. Wrap the check in [[ ]] so it is an actual string comparison. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(pm): restore module header position in zypper.py (HyDE-Project#1784) count_updates and list_updates were inserted above the module docstring and the `from __future__ import annotations` line. Python requires __future__ imports at the top of the file, so the module raised SyntaxError on import, breaking `hyde-shell pm` on openSUSE. Move both functions to the end of the file, matching the layout of the other manager modules. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * Fix/globalcontrol wallpaper validation (HyDE-Project#1785) * fix(lib): add missing $ to XDG_DATA_HOME fallback path in get_hyprConf The first fallback config path in get_hyprConf was the literal string "XDG_DATA_HOME/hyde/hyde.conf", which never exists, so user-level default theme values in $XDG_DATA_HOME/hyde/hyde.conf were silently skipped (the grep error is suppressed by 2>/dev/null). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * fix(wallpaper): validate nonexistent path passed to --set The check used `[ -z "$wallpaper_path" ] && [ ! -f "$wallpaper_path" ]`, so a non-empty path to a missing file skipped validation entirely and failed later in get_hashmap with a confusing "No image found in any source" error. Use || so both empty and nonexistent paths report "Wallpaper not found" as intended. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(zsh,hyde-shell): prevent PATH duplication on repeated source (HyDE-Project#1823) Co-authored-by: NoistNT <noistnt@users.noreply.github.com> * Lua (HyDE-Project#1755) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Lua (HyDE-Project#1835) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions * safe theme lua state generation --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Changelog --------- Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* open PR * chore: Release - dev → rc (HyDE-Project#1732) * feat: add wayle bar support as alternative to waybar - Add wayle to session.py known bars for clean session management - Add wallbash hook (wayle.dcol) to sync wallpaper colors with wayle - Make waybar.dcol conditional: skip waybar update when not running * dev * docs: add @0xGeN02 to contributors * feat: add wayle-bin and matugen-bin as optional packages in pkg_extra.lst * feat: add wallbash-to-wayle palette bridge for dynamic theming Uses dcol_* environment variables passed by wallbash's fn_wallbash to set wayle palette colors on every wallpaper/theme change. Files placed in .config/hyde/wallbash/ (non-core component). * fix: hyde-shell pypr subcommand passes args as single string to pypr CLI (HyDE-Project#1741) When running `hyde-shell pypr toggle console`, the `run_pypr()` function used `${*:-help}` to capture arguments into a scalar variable. When passed to `pypr "${message[@]}"`, the scalar expands as a single string "toggle console" instead of two separate args. The pypr client then normalizes spaces to underscores, looking up "toggle_console" instead of the "toggle" command with "console" as its argument. Additionally, socket direct writes via nc/socat/ncat lacked a trailing newline, which the pyprland daemon's readline() expects. Fix by using a bash array (`local -a msg=("$@")`) to preserve proper word-splitting, and adding `\n` to socket writes. # Pull Request ## Description Please read these instructions and remove unnecessary text. - Try to include a summary of the changes and which issue is fixed. - Also include relevant motivation and context (if applicable). - Make sure to make PR against dev and not the master - List any dependencies that are required for this change. (e.g., packages or other PRs) - Provide a link if there is an issue related to this pull request. e.g., Fixes # (issue) - Please add Reviewers, Assignees, Labels, Projects, and Milestones to the PR. (if applicable) ## Type of change Please put an `x` in the boxes that apply: - [ ] **Bug fix** (non-breaking change which fixes an issue) - [ ] **New feature** (non-breaking change which adds functionality) - [ ] **Breaking change** (fix or feature that would cause existing functionality to not work as expected) - [ ] **Documentation update** (non-breaking change; modified files are limited to the documentations) - [ ] **Technical debt** (a code change that does not fix a bug or add a feature but makes something clearer for devs) - [ ] **Other** (provide details below) ## Checklist Please put an `x` in the boxes that apply: - [ ] I have read the [CONTRIBUTING](https://github.com/HyDE-Project/HyDE/blob/master/CONTRIBUTING.md) document. - [ ] My code follows the code style of this project. - [ ] My commit message follows the [commit guidelines](https://github.com/HyDE-Project/HyDE/blob/master/COMMIT_MESSAGE_GUIDELINES.md). - [ ] My change requires a change to the documentation. - [ ] I have updated the documentation accordingly. - [ ] I have added a changelog entry. - [ ] I have added necessary comments/documentation to my code. - [ ] I have added tests to cover my changes. - [ ] I have tested my code locally and it works as expected. - [ ] All new and existing tests passed. ## Screenshots (if appropriate) ## Additional context Add any other context about the problem here. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Refactor** * Enhanced socket message handling for more reliable and consistent command argument processing across all operations. * Improved default command behavior to automatically display helpful information when commands are executed without any arguments provided. * Optimized internal message formatting and delivery while maintaining complete compatibility with existing fallback communication mechanisms for continued system reliability and operational stability. [](https://app.coderabbit.ai/change-stack/HyDE-Project/HyDE/pull/1741) <!-- end of auto-generated comment: release notes by coderabbit.ai --> * Remove * fix: Fix Hyprland 0.55 breaking changes in configuration files (HyDE-Project#1742) * fix(hypr): unset HL_INITIAL_WORKSPACE_TOKEN in startup to prevent apps locking to workspace 1 (HyDE-Project#1781) * docs: sync Chinese README with English version (HyDE-Project#1779) * fix(volume): use [[ ]] for VOLUME_PIPEWIRE_ENABLE comparison (HyDE-Project#1786) The PipeWire detection fallback was written as `|| $VOLUME_PIPEWIRE_ENABLE == true`, which executes the variable's value as a command with `==` and `true` as arguments instead of comparing it. On PulseAudio-only systems (where the pactl grep does not short-circuit) every invocation printed "==: command not found" when the variable was unset, and setting it to "true" only worked by accident of running /usr/bin/true. Wrap the check in [[ ]] so it is an actual string comparison. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(pm): restore module header position in zypper.py (HyDE-Project#1784) count_updates and list_updates were inserted above the module docstring and the `from __future__ import annotations` line. Python requires __future__ imports at the top of the file, so the module raised SyntaxError on import, breaking `hyde-shell pm` on openSUSE. Move both functions to the end of the file, matching the layout of the other manager modules. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * Fix/globalcontrol wallpaper validation (HyDE-Project#1785) * fix(lib): add missing $ to XDG_DATA_HOME fallback path in get_hyprConf The first fallback config path in get_hyprConf was the literal string "XDG_DATA_HOME/hyde/hyde.conf", which never exists, so user-level default theme values in $XDG_DATA_HOME/hyde/hyde.conf were silently skipped (the grep error is suppressed by 2>/dev/null). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * fix(wallpaper): validate nonexistent path passed to --set The check used `[ -z "$wallpaper_path" ] && [ ! -f "$wallpaper_path" ]`, so a non-empty path to a missing file skipped validation entirely and failed later in get_hashmap with a confusing "No image found in any source" error. Use || so both empty and nonexistent paths report "Wallpaper not found" as intended. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(zsh,hyde-shell): prevent PATH duplication on repeated source (HyDE-Project#1823) Co-authored-by: NoistNT <noistnt@users.noreply.github.com> * Lua (HyDE-Project#1755) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * chore: Release - dev → rc (HyDE-Project#1836) * feat: add wayle bar support as alternative to waybar - Add wayle to session.py known bars for clean session management - Add wallbash hook (wayle.dcol) to sync wallpaper colors with wayle - Make waybar.dcol conditional: skip waybar update when not running * dev * docs: add @0xGeN02 to contributors * feat: add wayle-bin and matugen-bin as optional packages in pkg_extra.lst * feat: add wallbash-to-wayle palette bridge for dynamic theming Uses dcol_* environment variables passed by wallbash's fn_wallbash to set wayle palette colors on every wallpaper/theme change. Files placed in .config/hyde/wallbash/ (non-core component). * fix: hyde-shell pypr subcommand passes args as single string to pypr CLI (HyDE-Project#1741) When running `hyde-shell pypr toggle console`, the `run_pypr()` function used `${*:-help}` to capture arguments into a scalar variable. When passed to `pypr "${message[@]}"`, the scalar expands as a single string "toggle console" instead of two separate args. The pypr client then normalizes spaces to underscores, looking up "toggle_console" instead of the "toggle" command with "console" as its argument. Additionally, socket direct writes via nc/socat/ncat lacked a trailing newline, which the pyprland daemon's readline() expects. Fix by using a bash array (`local -a msg=("$@")`) to preserve proper word-splitting, and adding `\n` to socket writes. # Pull Request ## Description Please read these instructions and remove unnecessary text. - Try to include a summary of the changes and which issue is fixed. - Also include relevant motivation and context (if applicable). - Make sure to make PR against dev and not the master - List any dependencies that are required for this change. (e.g., packages or other PRs) - Provide a link if there is an issue related to this pull request. e.g., Fixes # (issue) - Please add Reviewers, Assignees, Labels, Projects, and Milestones to the PR. (if applicable) ## Type of change Please put an `x` in the boxes that apply: - [ ] **Bug fix** (non-breaking change which fixes an issue) - [ ] **New feature** (non-breaking change which adds functionality) - [ ] **Breaking change** (fix or feature that would cause existing functionality to not work as expected) - [ ] **Documentation update** (non-breaking change; modified files are limited to the documentations) - [ ] **Technical debt** (a code change that does not fix a bug or add a feature but makes something clearer for devs) - [ ] **Other** (provide details below) ## Checklist Please put an `x` in the boxes that apply: - [ ] I have read the [CONTRIBUTING](https://github.com/HyDE-Project/HyDE/blob/master/CONTRIBUTING.md) document. - [ ] My code follows the code style of this project. - [ ] My commit message follows the [commit guidelines](https://github.com/HyDE-Project/HyDE/blob/master/COMMIT_MESSAGE_GUIDELINES.md). - [ ] My change requires a change to the documentation. - [ ] I have updated the documentation accordingly. - [ ] I have added a changelog entry. - [ ] I have added necessary comments/documentation to my code. - [ ] I have added tests to cover my changes. - [ ] I have tested my code locally and it works as expected. - [ ] All new and existing tests passed. ## Screenshots (if appropriate) ## Additional context Add any other context about the problem here. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Refactor** * Enhanced socket message handling for more reliable and consistent command argument processing across all operations. * Improved default command behavior to automatically display helpful information when commands are executed without any arguments provided. * Optimized internal message formatting and delivery while maintaining complete compatibility with existing fallback communication mechanisms for continued system reliability and operational stability. [](https://app.coderabbit.ai/change-stack/HyDE-Project/HyDE/pull/1741) <!-- end of auto-generated comment: release notes by coderabbit.ai --> * Remove * fix: Fix Hyprland 0.55 breaking changes in configuration files (HyDE-Project#1742) * fix(hypr): unset HL_INITIAL_WORKSPACE_TOKEN in startup to prevent apps locking to workspace 1 (HyDE-Project#1781) * docs: sync Chinese README with English version (HyDE-Project#1779) * fix(volume): use [[ ]] for VOLUME_PIPEWIRE_ENABLE comparison (HyDE-Project#1786) The PipeWire detection fallback was written as `|| $VOLUME_PIPEWIRE_ENABLE == true`, which executes the variable's value as a command with `==` and `true` as arguments instead of comparing it. On PulseAudio-only systems (where the pactl grep does not short-circuit) every invocation printed "==: command not found" when the variable was unset, and setting it to "true" only worked by accident of running /usr/bin/true. Wrap the check in [[ ]] so it is an actual string comparison. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(pm): restore module header position in zypper.py (HyDE-Project#1784) count_updates and list_updates were inserted above the module docstring and the `from __future__ import annotations` line. Python requires __future__ imports at the top of the file, so the module raised SyntaxError on import, breaking `hyde-shell pm` on openSUSE. Move both functions to the end of the file, matching the layout of the other manager modules. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * Fix/globalcontrol wallpaper validation (HyDE-Project#1785) * fix(lib): add missing $ to XDG_DATA_HOME fallback path in get_hyprConf The first fallback config path in get_hyprConf was the literal string "XDG_DATA_HOME/hyde/hyde.conf", which never exists, so user-level default theme values in $XDG_DATA_HOME/hyde/hyde.conf were silently skipped (the grep error is suppressed by 2>/dev/null). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * fix(wallpaper): validate nonexistent path passed to --set The check used `[ -z "$wallpaper_path" ] && [ ! -f "$wallpaper_path" ]`, so a non-empty path to a missing file skipped validation entirely and failed later in get_hashmap with a confusing "No image found in any source" error. Use || so both empty and nonexistent paths report "Wallpaper not found" as intended. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(zsh,hyde-shell): prevent PATH duplication on repeated source (HyDE-Project#1823) Co-authored-by: NoistNT <noistnt@users.noreply.github.com> * Lua (HyDE-Project#1755) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Lua (HyDE-Project#1835) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions * safe theme lua state generation --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Changelog * typo * fix (fonts) cantarell font * Fix: Ship hyde's wallbash template fix [Lua | Bug]: `lua_state.colors` is absent Fixes HyDE-Project#1840 * fix changelog --------- Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* open PR * chore: Release - dev → rc (HyDE-Project#1732) * feat: add wayle bar support as alternative to waybar - Add wayle to session.py known bars for clean session management - Add wallbash hook (wayle.dcol) to sync wallpaper colors with wayle - Make waybar.dcol conditional: skip waybar update when not running * dev * docs: add @0xGeN02 to contributors * feat: add wayle-bin and matugen-bin as optional packages in pkg_extra.lst * feat: add wallbash-to-wayle palette bridge for dynamic theming Uses dcol_* environment variables passed by wallbash's fn_wallbash to set wayle palette colors on every wallpaper/theme change. Files placed in .config/hyde/wallbash/ (non-core component). * fix: hyde-shell pypr subcommand passes args as single string to pypr CLI (HyDE-Project#1741) When running `hyde-shell pypr toggle console`, the `run_pypr()` function used `${*:-help}` to capture arguments into a scalar variable. When passed to `pypr "${message[@]}"`, the scalar expands as a single string "toggle console" instead of two separate args. The pypr client then normalizes spaces to underscores, looking up "toggle_console" instead of the "toggle" command with "console" as its argument. Additionally, socket direct writes via nc/socat/ncat lacked a trailing newline, which the pyprland daemon's readline() expects. Fix by using a bash array (`local -a msg=("$@")`) to preserve proper word-splitting, and adding `\n` to socket writes. Please read these instructions and remove unnecessary text. - Try to include a summary of the changes and which issue is fixed. - Also include relevant motivation and context (if applicable). - Make sure to make PR against dev and not the master - List any dependencies that are required for this change. (e.g., packages or other PRs) - Provide a link if there is an issue related to this pull request. e.g., Fixes # (issue) - Please add Reviewers, Assignees, Labels, Projects, and Milestones to the PR. (if applicable) Please put an `x` in the boxes that apply: - [ ] **Bug fix** (non-breaking change which fixes an issue) - [ ] **New feature** (non-breaking change which adds functionality) - [ ] **Breaking change** (fix or feature that would cause existing functionality to not work as expected) - [ ] **Documentation update** (non-breaking change; modified files are limited to the documentations) - [ ] **Technical debt** (a code change that does not fix a bug or add a feature but makes something clearer for devs) - [ ] **Other** (provide details below) Please put an `x` in the boxes that apply: - [ ] I have read the [CONTRIBUTING](https://github.com/HyDE-Project/HyDE/blob/master/CONTRIBUTING.md) document. - [ ] My code follows the code style of this project. - [ ] My commit message follows the [commit guidelines](https://github.com/HyDE-Project/HyDE/blob/master/COMMIT_MESSAGE_GUIDELINES.md). - [ ] My change requires a change to the documentation. - [ ] I have updated the documentation accordingly. - [ ] I have added a changelog entry. - [ ] I have added necessary comments/documentation to my code. - [ ] I have added tests to cover my changes. - [ ] I have tested my code locally and it works as expected. - [ ] All new and existing tests passed. (if appropriate) Add any other context about the problem here. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> * **Refactor** * Enhanced socket message handling for more reliable and consistent command argument processing across all operations. * Improved default command behavior to automatically display helpful information when commands are executed without any arguments provided. * Optimized internal message formatting and delivery while maintaining complete compatibility with existing fallback communication mechanisms for continued system reliability and operational stability. [](https://app.coderabbit.ai/change-stack/HyDE-Project/HyDE/pull/1741) <!-- end of auto-generated comment: release notes by coderabbit.ai --> * Remove * fix: Fix Hyprland 0.55 breaking changes in configuration files (HyDE-Project#1742) * fix(hypr): unset HL_INITIAL_WORKSPACE_TOKEN in startup to prevent apps locking to workspace 1 (HyDE-Project#1781) * docs: sync Chinese README with English version (HyDE-Project#1779) * fix(volume): use [[ ]] for VOLUME_PIPEWIRE_ENABLE comparison (HyDE-Project#1786) The PipeWire detection fallback was written as `|| $VOLUME_PIPEWIRE_ENABLE == true`, which executes the variable's value as a command with `==` and `true` as arguments instead of comparing it. On PulseAudio-only systems (where the pactl grep does not short-circuit) every invocation printed "==: command not found" when the variable was unset, and setting it to "true" only worked by accident of running /usr/bin/true. Wrap the check in [[ ]] so it is an actual string comparison. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(pm): restore module header position in zypper.py (HyDE-Project#1784) count_updates and list_updates were inserted above the module docstring and the `from __future__ import annotations` line. Python requires __future__ imports at the top of the file, so the module raised SyntaxError on import, breaking `hyde-shell pm` on openSUSE. Move both functions to the end of the file, matching the layout of the other manager modules. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * Fix/globalcontrol wallpaper validation (HyDE-Project#1785) * fix(lib): add missing $ to XDG_DATA_HOME fallback path in get_hyprConf The first fallback config path in get_hyprConf was the literal string "XDG_DATA_HOME/hyde/hyde.conf", which never exists, so user-level default theme values in $XDG_DATA_HOME/hyde/hyde.conf were silently skipped (the grep error is suppressed by 2>/dev/null). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * fix(wallpaper): validate nonexistent path passed to --set The check used `[ -z "$wallpaper_path" ] && [ ! -f "$wallpaper_path" ]`, so a non-empty path to a missing file skipped validation entirely and failed later in get_hashmap with a confusing "No image found in any source" error. Use || so both empty and nonexistent paths report "Wallpaper not found" as intended. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(zsh,hyde-shell): prevent PATH duplication on repeated source (HyDE-Project#1823) Co-authored-by: NoistNT <noistnt@users.noreply.github.com> * Lua (HyDE-Project#1755) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * chore: Release - dev → rc (HyDE-Project#1836) * feat: add wayle bar support as alternative to waybar - Add wayle to session.py known bars for clean session management - Add wallbash hook (wayle.dcol) to sync wallpaper colors with wayle - Make waybar.dcol conditional: skip waybar update when not running * dev * docs: add @0xGeN02 to contributors * feat: add wayle-bin and matugen-bin as optional packages in pkg_extra.lst * feat: add wallbash-to-wayle palette bridge for dynamic theming Uses dcol_* environment variables passed by wallbash's fn_wallbash to set wayle palette colors on every wallpaper/theme change. Files placed in .config/hyde/wallbash/ (non-core component). * fix: hyde-shell pypr subcommand passes args as single string to pypr CLI (HyDE-Project#1741) When running `hyde-shell pypr toggle console`, the `run_pypr()` function used `${*:-help}` to capture arguments into a scalar variable. When passed to `pypr "${message[@]}"`, the scalar expands as a single string "toggle console" instead of two separate args. The pypr client then normalizes spaces to underscores, looking up "toggle_console" instead of the "toggle" command with "console" as its argument. Additionally, socket direct writes via nc/socat/ncat lacked a trailing newline, which the pyprland daemon's readline() expects. Fix by using a bash array (`local -a msg=("$@")`) to preserve proper word-splitting, and adding `\n` to socket writes. Please read these instructions and remove unnecessary text. - Try to include a summary of the changes and which issue is fixed. - Also include relevant motivation and context (if applicable). - Make sure to make PR against dev and not the master - List any dependencies that are required for this change. (e.g., packages or other PRs) - Provide a link if there is an issue related to this pull request. e.g., Fixes # (issue) - Please add Reviewers, Assignees, Labels, Projects, and Milestones to the PR. (if applicable) Please put an `x` in the boxes that apply: - [ ] **Bug fix** (non-breaking change which fixes an issue) - [ ] **New feature** (non-breaking change which adds functionality) - [ ] **Breaking change** (fix or feature that would cause existing functionality to not work as expected) - [ ] **Documentation update** (non-breaking change; modified files are limited to the documentations) - [ ] **Technical debt** (a code change that does not fix a bug or add a feature but makes something clearer for devs) - [ ] **Other** (provide details below) Please put an `x` in the boxes that apply: - [ ] I have read the [CONTRIBUTING](https://github.com/HyDE-Project/HyDE/blob/master/CONTRIBUTING.md) document. - [ ] My code follows the code style of this project. - [ ] My commit message follows the [commit guidelines](https://github.com/HyDE-Project/HyDE/blob/master/COMMIT_MESSAGE_GUIDELINES.md). - [ ] My change requires a change to the documentation. - [ ] I have updated the documentation accordingly. - [ ] I have added a changelog entry. - [ ] I have added necessary comments/documentation to my code. - [ ] I have added tests to cover my changes. - [ ] I have tested my code locally and it works as expected. - [ ] All new and existing tests passed. (if appropriate) Add any other context about the problem here. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> * **Refactor** * Enhanced socket message handling for more reliable and consistent command argument processing across all operations. * Improved default command behavior to automatically display helpful information when commands are executed without any arguments provided. * Optimized internal message formatting and delivery while maintaining complete compatibility with existing fallback communication mechanisms for continued system reliability and operational stability. [](https://app.coderabbit.ai/change-stack/HyDE-Project/HyDE/pull/1741) <!-- end of auto-generated comment: release notes by coderabbit.ai --> * Remove * fix: Fix Hyprland 0.55 breaking changes in configuration files (HyDE-Project#1742) * fix(hypr): unset HL_INITIAL_WORKSPACE_TOKEN in startup to prevent apps locking to workspace 1 (HyDE-Project#1781) * docs: sync Chinese README with English version (HyDE-Project#1779) * fix(volume): use [[ ]] for VOLUME_PIPEWIRE_ENABLE comparison (HyDE-Project#1786) The PipeWire detection fallback was written as `|| $VOLUME_PIPEWIRE_ENABLE == true`, which executes the variable's value as a command with `==` and `true` as arguments instead of comparing it. On PulseAudio-only systems (where the pactl grep does not short-circuit) every invocation printed "==: command not found" when the variable was unset, and setting it to "true" only worked by accident of running /usr/bin/true. Wrap the check in [[ ]] so it is an actual string comparison. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(pm): restore module header position in zypper.py (HyDE-Project#1784) count_updates and list_updates were inserted above the module docstring and the `from __future__ import annotations` line. Python requires __future__ imports at the top of the file, so the module raised SyntaxError on import, breaking `hyde-shell pm` on openSUSE. Move both functions to the end of the file, matching the layout of the other manager modules. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * Fix/globalcontrol wallpaper validation (HyDE-Project#1785) * fix(lib): add missing $ to XDG_DATA_HOME fallback path in get_hyprConf The first fallback config path in get_hyprConf was the literal string "XDG_DATA_HOME/hyde/hyde.conf", which never exists, so user-level default theme values in $XDG_DATA_HOME/hyde/hyde.conf were silently skipped (the grep error is suppressed by 2>/dev/null). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * fix(wallpaper): validate nonexistent path passed to --set The check used `[ -z "$wallpaper_path" ] && [ ! -f "$wallpaper_path" ]`, so a non-empty path to a missing file skipped validation entirely and failed later in get_hashmap with a confusing "No image found in any source" error. Use || so both empty and nonexistent paths report "Wallpaper not found" as intended. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(zsh,hyde-shell): prevent PATH duplication on repeated source (HyDE-Project#1823) Co-authored-by: NoistNT <noistnt@users.noreply.github.com> * Lua (HyDE-Project#1755) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Lua (HyDE-Project#1835) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions * safe theme lua state generation --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Changelog --------- Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* open PR * chore: Release - dev → rc (HyDE-Project#1732) * feat: add wayle bar support as alternative to waybar - Add wayle to session.py known bars for clean session management - Add wallbash hook (wayle.dcol) to sync wallpaper colors with wayle - Make waybar.dcol conditional: skip waybar update when not running * dev * docs: add @0xGeN02 to contributors * feat: add wayle-bin and matugen-bin as optional packages in pkg_extra.lst * feat: add wallbash-to-wayle palette bridge for dynamic theming Uses dcol_* environment variables passed by wallbash's fn_wallbash to set wayle palette colors on every wallpaper/theme change. Files placed in .config/hyde/wallbash/ (non-core component). * fix: hyde-shell pypr subcommand passes args as single string to pypr CLI (HyDE-Project#1741) When running `hyde-shell pypr toggle console`, the `run_pypr()` function used `${*:-help}` to capture arguments into a scalar variable. When passed to `pypr "${message[@]}"`, the scalar expands as a single string "toggle console" instead of two separate args. The pypr client then normalizes spaces to underscores, looking up "toggle_console" instead of the "toggle" command with "console" as its argument. Additionally, socket direct writes via nc/socat/ncat lacked a trailing newline, which the pyprland daemon's readline() expects. Fix by using a bash array (`local -a msg=("$@")`) to preserve proper word-splitting, and adding `\n` to socket writes. # Pull Request ## Description Please read these instructions and remove unnecessary text. - Try to include a summary of the changes and which issue is fixed. - Also include relevant motivation and context (if applicable). - Make sure to make PR against dev and not the master - List any dependencies that are required for this change. (e.g., packages or other PRs) - Provide a link if there is an issue related to this pull request. e.g., Fixes # (issue) - Please add Reviewers, Assignees, Labels, Projects, and Milestones to the PR. (if applicable) ## Type of change Please put an `x` in the boxes that apply: - [ ] **Bug fix** (non-breaking change which fixes an issue) - [ ] **New feature** (non-breaking change which adds functionality) - [ ] **Breaking change** (fix or feature that would cause existing functionality to not work as expected) - [ ] **Documentation update** (non-breaking change; modified files are limited to the documentations) - [ ] **Technical debt** (a code change that does not fix a bug or add a feature but makes something clearer for devs) - [ ] **Other** (provide details below) ## Checklist Please put an `x` in the boxes that apply: - [ ] I have read the [CONTRIBUTING](https://github.com/HyDE-Project/HyDE/blob/master/CONTRIBUTING.md) document. - [ ] My code follows the code style of this project. - [ ] My commit message follows the [commit guidelines](https://github.com/HyDE-Project/HyDE/blob/master/COMMIT_MESSAGE_GUIDELINES.md). - [ ] My change requires a change to the documentation. - [ ] I have updated the documentation accordingly. - [ ] I have added a changelog entry. - [ ] I have added necessary comments/documentation to my code. - [ ] I have added tests to cover my changes. - [ ] I have tested my code locally and it works as expected. - [ ] All new and existing tests passed. ## Screenshots (if appropriate) ## Additional context Add any other context about the problem here. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Refactor** * Enhanced socket message handling for more reliable and consistent command argument processing across all operations. * Improved default command behavior to automatically display helpful information when commands are executed without any arguments provided. * Optimized internal message formatting and delivery while maintaining complete compatibility with existing fallback communication mechanisms for continued system reliability and operational stability. [](https://app.coderabbit.ai/change-stack/HyDE-Project/HyDE/pull/1741) <!-- end of auto-generated comment: release notes by coderabbit.ai --> * Remove * fix: Fix Hyprland 0.55 breaking changes in configuration files (HyDE-Project#1742) * fix(hypr): unset HL_INITIAL_WORKSPACE_TOKEN in startup to prevent apps locking to workspace 1 (HyDE-Project#1781) * docs: sync Chinese README with English version (HyDE-Project#1779) * fix(volume): use [[ ]] for VOLUME_PIPEWIRE_ENABLE comparison (HyDE-Project#1786) The PipeWire detection fallback was written as `|| $VOLUME_PIPEWIRE_ENABLE == true`, which executes the variable's value as a command with `==` and `true` as arguments instead of comparing it. On PulseAudio-only systems (where the pactl grep does not short-circuit) every invocation printed "==: command not found" when the variable was unset, and setting it to "true" only worked by accident of running /usr/bin/true. Wrap the check in [[ ]] so it is an actual string comparison. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(pm): restore module header position in zypper.py (HyDE-Project#1784) count_updates and list_updates were inserted above the module docstring and the `from __future__ import annotations` line. Python requires __future__ imports at the top of the file, so the module raised SyntaxError on import, breaking `hyde-shell pm` on openSUSE. Move both functions to the end of the file, matching the layout of the other manager modules. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * Fix/globalcontrol wallpaper validation (HyDE-Project#1785) * fix(lib): add missing $ to XDG_DATA_HOME fallback path in get_hyprConf The first fallback config path in get_hyprConf was the literal string "XDG_DATA_HOME/hyde/hyde.conf", which never exists, so user-level default theme values in $XDG_DATA_HOME/hyde/hyde.conf were silently skipped (the grep error is suppressed by 2>/dev/null). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * fix(wallpaper): validate nonexistent path passed to --set The check used `[ -z "$wallpaper_path" ] && [ ! -f "$wallpaper_path" ]`, so a non-empty path to a missing file skipped validation entirely and failed later in get_hashmap with a confusing "No image found in any source" error. Use || so both empty and nonexistent paths report "Wallpaper not found" as intended. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(zsh,hyde-shell): prevent PATH duplication on repeated source (HyDE-Project#1823) Co-authored-by: NoistNT <noistnt@users.noreply.github.com> * Lua (HyDE-Project#1755) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * chore: Release - dev → rc (HyDE-Project#1836) * feat: add wayle bar support as alternative to waybar - Add wayle to session.py known bars for clean session management - Add wallbash hook (wayle.dcol) to sync wallpaper colors with wayle - Make waybar.dcol conditional: skip waybar update when not running * dev * docs: add @0xGeN02 to contributors * feat: add wayle-bin and matugen-bin as optional packages in pkg_extra.lst * feat: add wallbash-to-wayle palette bridge for dynamic theming Uses dcol_* environment variables passed by wallbash's fn_wallbash to set wayle palette colors on every wallpaper/theme change. Files placed in .config/hyde/wallbash/ (non-core component). * fix: hyde-shell pypr subcommand passes args as single string to pypr CLI (HyDE-Project#1741) When running `hyde-shell pypr toggle console`, the `run_pypr()` function used `${*:-help}` to capture arguments into a scalar variable. When passed to `pypr "${message[@]}"`, the scalar expands as a single string "toggle console" instead of two separate args. The pypr client then normalizes spaces to underscores, looking up "toggle_console" instead of the "toggle" command with "console" as its argument. Additionally, socket direct writes via nc/socat/ncat lacked a trailing newline, which the pyprland daemon's readline() expects. Fix by using a bash array (`local -a msg=("$@")`) to preserve proper word-splitting, and adding `\n` to socket writes. # Pull Request ## Description Please read these instructions and remove unnecessary text. - Try to include a summary of the changes and which issue is fixed. - Also include relevant motivation and context (if applicable). - Make sure to make PR against dev and not the master - List any dependencies that are required for this change. (e.g., packages or other PRs) - Provide a link if there is an issue related to this pull request. e.g., Fixes # (issue) - Please add Reviewers, Assignees, Labels, Projects, and Milestones to the PR. (if applicable) ## Type of change Please put an `x` in the boxes that apply: - [ ] **Bug fix** (non-breaking change which fixes an issue) - [ ] **New feature** (non-breaking change which adds functionality) - [ ] **Breaking change** (fix or feature that would cause existing functionality to not work as expected) - [ ] **Documentation update** (non-breaking change; modified files are limited to the documentations) - [ ] **Technical debt** (a code change that does not fix a bug or add a feature but makes something clearer for devs) - [ ] **Other** (provide details below) ## Checklist Please put an `x` in the boxes that apply: - [ ] I have read the [CONTRIBUTING](https://github.com/HyDE-Project/HyDE/blob/master/CONTRIBUTING.md) document. - [ ] My code follows the code style of this project. - [ ] My commit message follows the [commit guidelines](https://github.com/HyDE-Project/HyDE/blob/master/COMMIT_MESSAGE_GUIDELINES.md). - [ ] My change requires a change to the documentation. - [ ] I have updated the documentation accordingly. - [ ] I have added a changelog entry. - [ ] I have added necessary comments/documentation to my code. - [ ] I have added tests to cover my changes. - [ ] I have tested my code locally and it works as expected. - [ ] All new and existing tests passed. ## Screenshots (if appropriate) ## Additional context Add any other context about the problem here. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Refactor** * Enhanced socket message handling for more reliable and consistent command argument processing across all operations. * Improved default command behavior to automatically display helpful information when commands are executed without any arguments provided. * Optimized internal message formatting and delivery while maintaining complete compatibility with existing fallback communication mechanisms for continued system reliability and operational stability. [](https://app.coderabbit.ai/change-stack/HyDE-Project/HyDE/pull/1741) <!-- end of auto-generated comment: release notes by coderabbit.ai --> * Remove * fix: Fix Hyprland 0.55 breaking changes in configuration files (HyDE-Project#1742) * fix(hypr): unset HL_INITIAL_WORKSPACE_TOKEN in startup to prevent apps locking to workspace 1 (HyDE-Project#1781) * docs: sync Chinese README with English version (HyDE-Project#1779) * fix(volume): use [[ ]] for VOLUME_PIPEWIRE_ENABLE comparison (HyDE-Project#1786) The PipeWire detection fallback was written as `|| $VOLUME_PIPEWIRE_ENABLE == true`, which executes the variable's value as a command with `==` and `true` as arguments instead of comparing it. On PulseAudio-only systems (where the pactl grep does not short-circuit) every invocation printed "==: command not found" when the variable was unset, and setting it to "true" only worked by accident of running /usr/bin/true. Wrap the check in [[ ]] so it is an actual string comparison. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(pm): restore module header position in zypper.py (HyDE-Project#1784) count_updates and list_updates were inserted above the module docstring and the `from __future__ import annotations` line. Python requires __future__ imports at the top of the file, so the module raised SyntaxError on import, breaking `hyde-shell pm` on openSUSE. Move both functions to the end of the file, matching the layout of the other manager modules. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * Fix/globalcontrol wallpaper validation (HyDE-Project#1785) * fix(lib): add missing $ to XDG_DATA_HOME fallback path in get_hyprConf The first fallback config path in get_hyprConf was the literal string "XDG_DATA_HOME/hyde/hyde.conf", which never exists, so user-level default theme values in $XDG_DATA_HOME/hyde/hyde.conf were silently skipped (the grep error is suppressed by 2>/dev/null). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * fix(wallpaper): validate nonexistent path passed to --set The check used `[ -z "$wallpaper_path" ] && [ ! -f "$wallpaper_path" ]`, so a non-empty path to a missing file skipped validation entirely and failed later in get_hashmap with a confusing "No image found in any source" error. Use || so both empty and nonexistent paths report "Wallpaper not found" as intended. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(zsh,hyde-shell): prevent PATH duplication on repeated source (HyDE-Project#1823) Co-authored-by: NoistNT <noistnt@users.noreply.github.com> * Lua (HyDE-Project#1755) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Lua (HyDE-Project#1835) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions * safe theme lua state generation --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Changelog * typo * fix (fonts) cantarell font * Fix: Ship hyde's wallbash template fix [Lua | Bug]: `lua_state.colors` is absent Fixes HyDE-Project#1840 * fix changelog --------- Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* open PR * chore: Release - dev → rc (HyDE-Project#1732) * feat: add wayle bar support as alternative to waybar - Add wayle to session.py known bars for clean session management - Add wallbash hook (wayle.dcol) to sync wallpaper colors with wayle - Make waybar.dcol conditional: skip waybar update when not running * dev * docs: add @0xGeN02 to contributors * feat: add wayle-bin and matugen-bin as optional packages in pkg_extra.lst * feat: add wallbash-to-wayle palette bridge for dynamic theming Uses dcol_* environment variables passed by wallbash's fn_wallbash to set wayle palette colors on every wallpaper/theme change. Files placed in .config/hyde/wallbash/ (non-core component). * fix: hyde-shell pypr subcommand passes args as single string to pypr CLI (HyDE-Project#1741) When running `hyde-shell pypr toggle console`, the `run_pypr()` function used `${*:-help}` to capture arguments into a scalar variable. When passed to `pypr "${message[@]}"`, the scalar expands as a single string "toggle console" instead of two separate args. The pypr client then normalizes spaces to underscores, looking up "toggle_console" instead of the "toggle" command with "console" as its argument. Additionally, socket direct writes via nc/socat/ncat lacked a trailing newline, which the pyprland daemon's readline() expects. Fix by using a bash array (`local -a msg=("$@")`) to preserve proper word-splitting, and adding `\n` to socket writes. Please read these instructions and remove unnecessary text. - Try to include a summary of the changes and which issue is fixed. - Also include relevant motivation and context (if applicable). - Make sure to make PR against dev and not the master - List any dependencies that are required for this change. (e.g., packages or other PRs) - Provide a link if there is an issue related to this pull request. e.g., Fixes # (issue) - Please add Reviewers, Assignees, Labels, Projects, and Milestones to the PR. (if applicable) Please put an `x` in the boxes that apply: - [ ] **Bug fix** (non-breaking change which fixes an issue) - [ ] **New feature** (non-breaking change which adds functionality) - [ ] **Breaking change** (fix or feature that would cause existing functionality to not work as expected) - [ ] **Documentation update** (non-breaking change; modified files are limited to the documentations) - [ ] **Technical debt** (a code change that does not fix a bug or add a feature but makes something clearer for devs) - [ ] **Other** (provide details below) Please put an `x` in the boxes that apply: - [ ] I have read the [CONTRIBUTING](https://github.com/HyDE-Project/HyDE/blob/master/CONTRIBUTING.md) document. - [ ] My code follows the code style of this project. - [ ] My commit message follows the [commit guidelines](https://github.com/HyDE-Project/HyDE/blob/master/COMMIT_MESSAGE_GUIDELINES.md). - [ ] My change requires a change to the documentation. - [ ] I have updated the documentation accordingly. - [ ] I have added a changelog entry. - [ ] I have added necessary comments/documentation to my code. - [ ] I have added tests to cover my changes. - [ ] I have tested my code locally and it works as expected. - [ ] All new and existing tests passed. (if appropriate) Add any other context about the problem here. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> * **Refactor** * Enhanced socket message handling for more reliable and consistent command argument processing across all operations. * Improved default command behavior to automatically display helpful information when commands are executed without any arguments provided. * Optimized internal message formatting and delivery while maintaining complete compatibility with existing fallback communication mechanisms for continued system reliability and operational stability. [](https://app.coderabbit.ai/change-stack/HyDE-Project/HyDE/pull/1741) <!-- end of auto-generated comment: release notes by coderabbit.ai --> * Remove * fix: Fix Hyprland 0.55 breaking changes in configuration files (HyDE-Project#1742) * fix(hypr): unset HL_INITIAL_WORKSPACE_TOKEN in startup to prevent apps locking to workspace 1 (HyDE-Project#1781) * docs: sync Chinese README with English version (HyDE-Project#1779) * fix(volume): use [[ ]] for VOLUME_PIPEWIRE_ENABLE comparison (HyDE-Project#1786) The PipeWire detection fallback was written as `|| $VOLUME_PIPEWIRE_ENABLE == true`, which executes the variable's value as a command with `==` and `true` as arguments instead of comparing it. On PulseAudio-only systems (where the pactl grep does not short-circuit) every invocation printed "==: command not found" when the variable was unset, and setting it to "true" only worked by accident of running /usr/bin/true. Wrap the check in [[ ]] so it is an actual string comparison. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(pm): restore module header position in zypper.py (HyDE-Project#1784) count_updates and list_updates were inserted above the module docstring and the `from __future__ import annotations` line. Python requires __future__ imports at the top of the file, so the module raised SyntaxError on import, breaking `hyde-shell pm` on openSUSE. Move both functions to the end of the file, matching the layout of the other manager modules. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * Fix/globalcontrol wallpaper validation (HyDE-Project#1785) * fix(lib): add missing $ to XDG_DATA_HOME fallback path in get_hyprConf The first fallback config path in get_hyprConf was the literal string "XDG_DATA_HOME/hyde/hyde.conf", which never exists, so user-level default theme values in $XDG_DATA_HOME/hyde/hyde.conf were silently skipped (the grep error is suppressed by 2>/dev/null). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * fix(wallpaper): validate nonexistent path passed to --set The check used `[ -z "$wallpaper_path" ] && [ ! -f "$wallpaper_path" ]`, so a non-empty path to a missing file skipped validation entirely and failed later in get_hashmap with a confusing "No image found in any source" error. Use || so both empty and nonexistent paths report "Wallpaper not found" as intended. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(zsh,hyde-shell): prevent PATH duplication on repeated source (HyDE-Project#1823) Co-authored-by: NoistNT <noistnt@users.noreply.github.com> * Lua (HyDE-Project#1755) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * chore: Release - dev → rc (HyDE-Project#1836) * feat: add wayle bar support as alternative to waybar - Add wayle to session.py known bars for clean session management - Add wallbash hook (wayle.dcol) to sync wallpaper colors with wayle - Make waybar.dcol conditional: skip waybar update when not running * dev * docs: add @0xGeN02 to contributors * feat: add wayle-bin and matugen-bin as optional packages in pkg_extra.lst * feat: add wallbash-to-wayle palette bridge for dynamic theming Uses dcol_* environment variables passed by wallbash's fn_wallbash to set wayle palette colors on every wallpaper/theme change. Files placed in .config/hyde/wallbash/ (non-core component). * fix: hyde-shell pypr subcommand passes args as single string to pypr CLI (HyDE-Project#1741) When running `hyde-shell pypr toggle console`, the `run_pypr()` function used `${*:-help}` to capture arguments into a scalar variable. When passed to `pypr "${message[@]}"`, the scalar expands as a single string "toggle console" instead of two separate args. The pypr client then normalizes spaces to underscores, looking up "toggle_console" instead of the "toggle" command with "console" as its argument. Additionally, socket direct writes via nc/socat/ncat lacked a trailing newline, which the pyprland daemon's readline() expects. Fix by using a bash array (`local -a msg=("$@")`) to preserve proper word-splitting, and adding `\n` to socket writes. Please read these instructions and remove unnecessary text. - Try to include a summary of the changes and which issue is fixed. - Also include relevant motivation and context (if applicable). - Make sure to make PR against dev and not the master - List any dependencies that are required for this change. (e.g., packages or other PRs) - Provide a link if there is an issue related to this pull request. e.g., Fixes # (issue) - Please add Reviewers, Assignees, Labels, Projects, and Milestones to the PR. (if applicable) Please put an `x` in the boxes that apply: - [ ] **Bug fix** (non-breaking change which fixes an issue) - [ ] **New feature** (non-breaking change which adds functionality) - [ ] **Breaking change** (fix or feature that would cause existing functionality to not work as expected) - [ ] **Documentation update** (non-breaking change; modified files are limited to the documentations) - [ ] **Technical debt** (a code change that does not fix a bug or add a feature but makes something clearer for devs) - [ ] **Other** (provide details below) Please put an `x` in the boxes that apply: - [ ] I have read the [CONTRIBUTING](https://github.com/HyDE-Project/HyDE/blob/master/CONTRIBUTING.md) document. - [ ] My code follows the code style of this project. - [ ] My commit message follows the [commit guidelines](https://github.com/HyDE-Project/HyDE/blob/master/COMMIT_MESSAGE_GUIDELINES.md). - [ ] My change requires a change to the documentation. - [ ] I have updated the documentation accordingly. - [ ] I have added a changelog entry. - [ ] I have added necessary comments/documentation to my code. - [ ] I have added tests to cover my changes. - [ ] I have tested my code locally and it works as expected. - [ ] All new and existing tests passed. (if appropriate) Add any other context about the problem here. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> * **Refactor** * Enhanced socket message handling for more reliable and consistent command argument processing across all operations. * Improved default command behavior to automatically display helpful information when commands are executed without any arguments provided. * Optimized internal message formatting and delivery while maintaining complete compatibility with existing fallback communication mechanisms for continued system reliability and operational stability. [](https://app.coderabbit.ai/change-stack/HyDE-Project/HyDE/pull/1741) <!-- end of auto-generated comment: release notes by coderabbit.ai --> * Remove * fix: Fix Hyprland 0.55 breaking changes in configuration files (HyDE-Project#1742) * fix(hypr): unset HL_INITIAL_WORKSPACE_TOKEN in startup to prevent apps locking to workspace 1 (HyDE-Project#1781) * docs: sync Chinese README with English version (HyDE-Project#1779) * fix(volume): use [[ ]] for VOLUME_PIPEWIRE_ENABLE comparison (HyDE-Project#1786) The PipeWire detection fallback was written as `|| $VOLUME_PIPEWIRE_ENABLE == true`, which executes the variable's value as a command with `==` and `true` as arguments instead of comparing it. On PulseAudio-only systems (where the pactl grep does not short-circuit) every invocation printed "==: command not found" when the variable was unset, and setting it to "true" only worked by accident of running /usr/bin/true. Wrap the check in [[ ]] so it is an actual string comparison. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(pm): restore module header position in zypper.py (HyDE-Project#1784) count_updates and list_updates were inserted above the module docstring and the `from __future__ import annotations` line. Python requires __future__ imports at the top of the file, so the module raised SyntaxError on import, breaking `hyde-shell pm` on openSUSE. Move both functions to the end of the file, matching the layout of the other manager modules. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * Fix/globalcontrol wallpaper validation (HyDE-Project#1785) * fix(lib): add missing $ to XDG_DATA_HOME fallback path in get_hyprConf The first fallback config path in get_hyprConf was the literal string "XDG_DATA_HOME/hyde/hyde.conf", which never exists, so user-level default theme values in $XDG_DATA_HOME/hyde/hyde.conf were silently skipped (the grep error is suppressed by 2>/dev/null). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * fix(wallpaper): validate nonexistent path passed to --set The check used `[ -z "$wallpaper_path" ] && [ ! -f "$wallpaper_path" ]`, so a non-empty path to a missing file skipped validation entirely and failed later in get_hashmap with a confusing "No image found in any source" error. Use || so both empty and nonexistent paths report "Wallpaper not found" as intended. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(zsh,hyde-shell): prevent PATH duplication on repeated source (HyDE-Project#1823) Co-authored-by: NoistNT <noistnt@users.noreply.github.com> * Lua (HyDE-Project#1755) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Lua (HyDE-Project#1835) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions * safe theme lua state generation --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Changelog --------- Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* open PR * chore: Release - dev → rc (HyDE-Project#1732) * feat: add wayle bar support as alternative to waybar - Add wayle to session.py known bars for clean session management - Add wallbash hook (wayle.dcol) to sync wallpaper colors with wayle - Make waybar.dcol conditional: skip waybar update when not running * dev * docs: add @0xGeN02 to contributors * feat: add wayle-bin and matugen-bin as optional packages in pkg_extra.lst * feat: add wallbash-to-wayle palette bridge for dynamic theming Uses dcol_* environment variables passed by wallbash's fn_wallbash to set wayle palette colors on every wallpaper/theme change. Files placed in .config/hyde/wallbash/ (non-core component). * fix: hyde-shell pypr subcommand passes args as single string to pypr CLI (HyDE-Project#1741) When running `hyde-shell pypr toggle console`, the `run_pypr()` function used `${*:-help}` to capture arguments into a scalar variable. When passed to `pypr "${message[@]}"`, the scalar expands as a single string "toggle console" instead of two separate args. The pypr client then normalizes spaces to underscores, looking up "toggle_console" instead of the "toggle" command with "console" as its argument. Additionally, socket direct writes via nc/socat/ncat lacked a trailing newline, which the pyprland daemon's readline() expects. Fix by using a bash array (`local -a msg=("$@")`) to preserve proper word-splitting, and adding `\n` to socket writes. Please read these instructions and remove unnecessary text. - Try to include a summary of the changes and which issue is fixed. - Also include relevant motivation and context (if applicable). - Make sure to make PR against dev and not the master - List any dependencies that are required for this change. (e.g., packages or other PRs) - Provide a link if there is an issue related to this pull request. e.g., Fixes # (issue) - Please add Reviewers, Assignees, Labels, Projects, and Milestones to the PR. (if applicable) Please put an `x` in the boxes that apply: - [ ] **Bug fix** (non-breaking change which fixes an issue) - [ ] **New feature** (non-breaking change which adds functionality) - [ ] **Breaking change** (fix or feature that would cause existing functionality to not work as expected) - [ ] **Documentation update** (non-breaking change; modified files are limited to the documentations) - [ ] **Technical debt** (a code change that does not fix a bug or add a feature but makes something clearer for devs) - [ ] **Other** (provide details below) Please put an `x` in the boxes that apply: - [ ] I have read the [CONTRIBUTING](https://github.com/HyDE-Project/HyDE/blob/master/CONTRIBUTING.md) document. - [ ] My code follows the code style of this project. - [ ] My commit message follows the [commit guidelines](https://github.com/HyDE-Project/HyDE/blob/master/COMMIT_MESSAGE_GUIDELINES.md). - [ ] My change requires a change to the documentation. - [ ] I have updated the documentation accordingly. - [ ] I have added a changelog entry. - [ ] I have added necessary comments/documentation to my code. - [ ] I have added tests to cover my changes. - [ ] I have tested my code locally and it works as expected. - [ ] All new and existing tests passed. (if appropriate) Add any other context about the problem here. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> * **Refactor** * Enhanced socket message handling for more reliable and consistent command argument processing across all operations. * Improved default command behavior to automatically display helpful information when commands are executed without any arguments provided. * Optimized internal message formatting and delivery while maintaining complete compatibility with existing fallback communication mechanisms for continued system reliability and operational stability. [](https://app.coderabbit.ai/change-stack/HyDE-Project/HyDE/pull/1741) <!-- end of auto-generated comment: release notes by coderabbit.ai --> * Remove * fix: Fix Hyprland 0.55 breaking changes in configuration files (HyDE-Project#1742) * fix(hypr): unset HL_INITIAL_WORKSPACE_TOKEN in startup to prevent apps locking to workspace 1 (HyDE-Project#1781) * docs: sync Chinese README with English version (HyDE-Project#1779) * fix(volume): use [[ ]] for VOLUME_PIPEWIRE_ENABLE comparison (HyDE-Project#1786) The PipeWire detection fallback was written as `|| $VOLUME_PIPEWIRE_ENABLE == true`, which executes the variable's value as a command with `==` and `true` as arguments instead of comparing it. On PulseAudio-only systems (where the pactl grep does not short-circuit) every invocation printed "==: command not found" when the variable was unset, and setting it to "true" only worked by accident of running /usr/bin/true. Wrap the check in [[ ]] so it is an actual string comparison. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(pm): restore module header position in zypper.py (HyDE-Project#1784) count_updates and list_updates were inserted above the module docstring and the `from __future__ import annotations` line. Python requires __future__ imports at the top of the file, so the module raised SyntaxError on import, breaking `hyde-shell pm` on openSUSE. Move both functions to the end of the file, matching the layout of the other manager modules. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * Fix/globalcontrol wallpaper validation (HyDE-Project#1785) * fix(lib): add missing $ to XDG_DATA_HOME fallback path in get_hyprConf The first fallback config path in get_hyprConf was the literal string "XDG_DATA_HOME/hyde/hyde.conf", which never exists, so user-level default theme values in $XDG_DATA_HOME/hyde/hyde.conf were silently skipped (the grep error is suppressed by 2>/dev/null). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * fix(wallpaper): validate nonexistent path passed to --set The check used `[ -z "$wallpaper_path" ] && [ ! -f "$wallpaper_path" ]`, so a non-empty path to a missing file skipped validation entirely and failed later in get_hashmap with a confusing "No image found in any source" error. Use || so both empty and nonexistent paths report "Wallpaper not found" as intended. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(zsh,hyde-shell): prevent PATH duplication on repeated source (HyDE-Project#1823) Co-authored-by: NoistNT <noistnt@users.noreply.github.com> * Lua (HyDE-Project#1755) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * chore: Release - dev → rc (HyDE-Project#1836) * feat: add wayle bar support as alternative to waybar - Add wayle to session.py known bars for clean session management - Add wallbash hook (wayle.dcol) to sync wallpaper colors with wayle - Make waybar.dcol conditional: skip waybar update when not running * dev * docs: add @0xGeN02 to contributors * feat: add wayle-bin and matugen-bin as optional packages in pkg_extra.lst * feat: add wallbash-to-wayle palette bridge for dynamic theming Uses dcol_* environment variables passed by wallbash's fn_wallbash to set wayle palette colors on every wallpaper/theme change. Files placed in .config/hyde/wallbash/ (non-core component). * fix: hyde-shell pypr subcommand passes args as single string to pypr CLI (HyDE-Project#1741) When running `hyde-shell pypr toggle console`, the `run_pypr()` function used `${*:-help}` to capture arguments into a scalar variable. When passed to `pypr "${message[@]}"`, the scalar expands as a single string "toggle console" instead of two separate args. The pypr client then normalizes spaces to underscores, looking up "toggle_console" instead of the "toggle" command with "console" as its argument. Additionally, socket direct writes via nc/socat/ncat lacked a trailing newline, which the pyprland daemon's readline() expects. Fix by using a bash array (`local -a msg=("$@")`) to preserve proper word-splitting, and adding `\n` to socket writes. Please read these instructions and remove unnecessary text. - Try to include a summary of the changes and which issue is fixed. - Also include relevant motivation and context (if applicable). - Make sure to make PR against dev and not the master - List any dependencies that are required for this change. (e.g., packages or other PRs) - Provide a link if there is an issue related to this pull request. e.g., Fixes # (issue) - Please add Reviewers, Assignees, Labels, Projects, and Milestones to the PR. (if applicable) Please put an `x` in the boxes that apply: - [ ] **Bug fix** (non-breaking change which fixes an issue) - [ ] **New feature** (non-breaking change which adds functionality) - [ ] **Breaking change** (fix or feature that would cause existing functionality to not work as expected) - [ ] **Documentation update** (non-breaking change; modified files are limited to the documentations) - [ ] **Technical debt** (a code change that does not fix a bug or add a feature but makes something clearer for devs) - [ ] **Other** (provide details below) Please put an `x` in the boxes that apply: - [ ] I have read the [CONTRIBUTING](https://github.com/HyDE-Project/HyDE/blob/master/CONTRIBUTING.md) document. - [ ] My code follows the code style of this project. - [ ] My commit message follows the [commit guidelines](https://github.com/HyDE-Project/HyDE/blob/master/COMMIT_MESSAGE_GUIDELINES.md). - [ ] My change requires a change to the documentation. - [ ] I have updated the documentation accordingly. - [ ] I have added a changelog entry. - [ ] I have added necessary comments/documentation to my code. - [ ] I have added tests to cover my changes. - [ ] I have tested my code locally and it works as expected. - [ ] All new and existing tests passed. (if appropriate) Add any other context about the problem here. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> * **Refactor** * Enhanced socket message handling for more reliable and consistent command argument processing across all operations. * Improved default command behavior to automatically display helpful information when commands are executed without any arguments provided. * Optimized internal message formatting and delivery while maintaining complete compatibility with existing fallback communication mechanisms for continued system reliability and operational stability. [](https://app.coderabbit.ai/change-stack/HyDE-Project/HyDE/pull/1741) <!-- end of auto-generated comment: release notes by coderabbit.ai --> * Remove * fix: Fix Hyprland 0.55 breaking changes in configuration files (HyDE-Project#1742) * fix(hypr): unset HL_INITIAL_WORKSPACE_TOKEN in startup to prevent apps locking to workspace 1 (HyDE-Project#1781) * docs: sync Chinese README with English version (HyDE-Project#1779) * fix(volume): use [[ ]] for VOLUME_PIPEWIRE_ENABLE comparison (HyDE-Project#1786) The PipeWire detection fallback was written as `|| $VOLUME_PIPEWIRE_ENABLE == true`, which executes the variable's value as a command with `==` and `true` as arguments instead of comparing it. On PulseAudio-only systems (where the pactl grep does not short-circuit) every invocation printed "==: command not found" when the variable was unset, and setting it to "true" only worked by accident of running /usr/bin/true. Wrap the check in [[ ]] so it is an actual string comparison. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(pm): restore module header position in zypper.py (HyDE-Project#1784) count_updates and list_updates were inserted above the module docstring and the `from __future__ import annotations` line. Python requires __future__ imports at the top of the file, so the module raised SyntaxError on import, breaking `hyde-shell pm` on openSUSE. Move both functions to the end of the file, matching the layout of the other manager modules. Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * Fix/globalcontrol wallpaper validation (HyDE-Project#1785) * fix(lib): add missing $ to XDG_DATA_HOME fallback path in get_hyprConf The first fallback config path in get_hyprConf was the literal string "XDG_DATA_HOME/hyde/hyde.conf", which never exists, so user-level default theme values in $XDG_DATA_HOME/hyde/hyde.conf were silently skipped (the grep error is suppressed by 2>/dev/null). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * fix(wallpaper): validate nonexistent path passed to --set The check used `[ -z "$wallpaper_path" ] && [ ! -f "$wallpaper_path" ]`, so a non-empty path to a missing file skipped validation entirely and failed later in get_hashmap with a confusing "No image found in any source" error. Use || so both empty and nonexistent paths report "Wallpaper not found" as intended. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Khing <53417443+kRHYME7@users.noreply.github.com> * fix(zsh,hyde-shell): prevent PATH duplication on repeated source (HyDE-Project#1823) Co-authored-by: NoistNT <noistnt@users.noreply.github.com> * Lua (HyDE-Project#1755) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Lua (HyDE-Project#1835) * lua * Added lua configs * Added lua support for Scripts * [for testing ] Added deez dots manifest files * [for testing ] Added deez dots manifest files * some migration logic for zsh * Added the partial deps list * Removed old hyprlang. * added defualt blnk hyprland.lua * Added hyprland error when wallbash for hyprland is not yet generated * Added hyprland error when wallbash for hyprland is not yet generated * Clean up all deprecated scripts * fixing session management logic for newer hyprland * reload on on common --reload and better keb hint UX and alt tab behavior * altab implementation and better binds handling * fix hyprlock * fix dolphin * fix dolphin * move kdeglobals to hyde bundle * cleanup * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * anim * fix batteerynotify dameon * resolves some issues * no anim on selection layer * exposes hyprland.anim.duration_scale for animation speed(duration) control * Silent fail when missing toml parser * fix altab * fix altab * y * app2unit wrapper for non systemd * kitty * some adjustments * added pm agnostic system update ui * cleanup * fix sys update * pm * fix: gobject theming * Fix waybar, move dconf to use lua lgi * make keepass and bitwarden float * some foundation for i18n , docs etc for scripts * todo * fix screenshot conflict * org * some handling on fresh install * almost * Update Configs/.local/bin/hyde-shell Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/luautils/selector/rofi.lua Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/keybinds_hint.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/compositor/hyprland.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/session/plugins/brave.py Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update Configs/.local/lib/hyde/shell/activate.fish Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix shell activations * uwsm hyprland env * fix session hyprland compositor * fix luau hyprtils rofi helper * fix no regex alternation on lua. * fix lua runtime * fix json output on lua * fix list builtin in completions * safe theme lua state generation --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Changelog * typo * fix (fonts) cantarell font * Fix: Ship hyde's wallbash template fix [Lua | Bug]: `lua_state.colors` is absent Fixes HyDE-Project#1840 * fix changelog --------- Co-authored-by: kRHYME7 <53417443+kRHYME7@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: 0xGeN02 <manuelmateodgl02@gmail.com> Co-authored-by: yun <chenzm39@gmail.com> Co-authored-by: PureFallen <68307987+PureFallen@users.noreply.github.com> Co-authored-by: BigDawnGhost <yelouis231589@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Ariel Piazzano <104594670+NoistNT@users.noreply.github.com> Co-authored-by: NoistNT <noistnt@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

Lua stuff
I don't have any idea for a smooth migration than to deprecate old config and install lua cleanly. wdyt?
Summary by CodeRabbit
New Features
hyde-shell layouts --select), animations, workflows, shaders, and themes.hyde-shellshell completions (including rofi/Waybar menu integration and new SwayNC controls).Bug Fixes