Skip to content

feat: add zellij terminal multiplexer with theme support#32

Open
mrosseel wants to merge 101 commits into
henrysipp:mainfrom
mrosseel:feat/zellij-support
Open

feat: add zellij terminal multiplexer with theme support#32
mrosseel wants to merge 101 commits into
henrysipp:mainfrom
mrosseel:feat/zellij-support

Conversation

@mrosseel
Copy link
Copy Markdown
Contributor

@mrosseel mrosseel commented Feb 6, 2026

Summary

  • Add zellij.nix home-manager module with sensible defaults (nushell shell, mouse mode, vim scrollback editor)
  • Create zellij.kdl theme files for all 14 themes using colors extracted from kitty.conf
  • Theme uses the omarchy symlink pattern (~/.config/omarchy/current/theme/zellij.kdl) for dynamic theme switching

Test plan

  • Build with zellij module enabled
  • Verify theme loads correctly
  • Test theme switching updates zellij colors

🤖 Generated with Claude Code

mrosseel and others added 30 commits July 7, 2025 00:00
This reverts commit 001b72e.
Tier 1 Features:
- Add launch-or-focus functionality for smoother app switching
- Add essential GUI apps: gnome-calculator, evince, loupe
- Add audio device switching with omarchy-audio-switch script
- Add jq package dependency for JSON parsing
- Add keybindings: SUPER+R (calculator), SUPER+; (audio switch)

Tier 2 Features:
- Add terminal choice: ghostty, alacritty, kitty (configurable)
- Add new themes: flexoki-light, matte-black
- Add image editing: krita
- Add GPU screen recording with gpu-screen-recorder
- Replace wf-recorder with gpu-screen-recorder for better performance

New Scripts:
- bin/omarchy-launch-or-focus: Focus existing windows or launch apps
- bin/omarchy-audio-switch: Cycle through audio output devices
- bin/omarchy-screenrecord: Toggle GPU-accelerated screen recording

Configuration Changes:
- Add omarchy.terminal option (ghostty/alacritty/kitty)
- Update launch-or-focus integration for browser, file manager, etc.
- Simplify screen recording keybindings (all SUPER+PRINT variants toggle)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
mrosseel and others added 30 commits January 3, 2026 01:04
- Ensure Elephant service is running before Walker launches
- Remove sleep delay and redundant uwsm-app wrapper from walker launch
- Fix omarchy-restart-walker to handle root execution and properly restart
  Elephant service along with Walker

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Includes keybindings, status scripts, and waybar integration.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add voxtype recording indicator
- Use locale-aware clock format
- Update bluetooth and audio icons
- Fix expand icon scroll events

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Lock screen shortly after screensaver starts
- Add inhibit_sleep to wait for lock before sleep

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- omarchy-cmd-present: check if commands exist
- omarchy-launch-anydesk: launch with X11 backend
- omarchy-launch-deskflow: launch in XWayland mode

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
The screensaver had both windowrule (new syntax) and windowrulev2 (old
syntax) rules, causing input to be blocked in fullscreen mode. Keep only
the windowrule version to match upstream omarchy.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Change pgrep -x tte to pgrep -f tte (NixOS uses .tte-wrapped)
- Add flock to prevent concurrent screensaver launches
- Add omarchy-show-logo and omarchy-show-done scripts from Omarchy
- Deploy logo.txt to ~/.local/share/omarchy/ for omarchy-show-logo
- Use activation script to copy screensaver.txt on first use (user-customizable)
- Remove duplicate screensaver.txt (now generated from logo.txt)

Also includes:
- Switch to iwd wifi backend for impala TUI support
- Add nix-ld for unpatched binaries
- Static waybar config to preserve omarchy icon character
- Add xdg-terminal-exec and xdg-terminals.list
- Custom terminaltexteffects package for --random-effect support
- Disable blueman GUI tray (using bluetui TUI)
- Update logo.txt to OMNIX branding

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Workaround for nixpkgs bug where com.brave.Browser.desktop has
NoDisplay=true outside the [Desktop Entry] section, causing duplicate
entries in app launchers.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add runtime theme loading for terminals (alacritty, kitty, ghostty)
- Fix terminal restart script for NixOS wrapped binaries (pgrep -x issue)
- Use alacritty IPC instead of touch for config reload
- Rewrite browser theming to match omarchy (chromium/brave policy support)
- Add browser policy directories via systemd tmpfiles
- Add missing restart scripts (btop, hyprctl, mako)
- Add missing theme-set calls (cursor, obsidian)
- Fix walker menu with -n flag for new instance per call

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Enables universal Super+C/V copy/paste via Hyprland's sendshortcut
dispatcher which translates to Ctrl+Insert and Shift+Insert.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Moves evince to dedicated module with xdg.mimeApps configuration
so PDFs open with evince by default.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Update walker from v2.12.2 to v2.13.0 to match OPR edge
- Add /version-compare skill for comparing package versions
  between omarchy, OPR, and omarchy-nix

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Kill any existing waybar before starting new one to prevent
multiple instances accumulating during config reloads.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Replace hardcoded "henry" username with cfg.username in 1password.nix
- Remove development artifacts (flake.lock.orig, input.nix.orig)
- Remove placeholder issue URL in default.nix
- Replace absolute home paths with relative paths in CLAUDE.md
- Add hyprland groupbar styling to match upstream omarchy

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Keybindings were largely wrong (missing SHIFT modifiers, reversed
screenshot/recording keys, nonexistent bindings). Updated theme count
from 13 to 17, fixed flake URL, removed nonexistent firewall options,
and trimmed outdated sections.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Replace pkgs.system with pkgs.stdenv.hostPlatform.system to fix
deprecation warnings. Remove pie hardening overrides as PIE is now
default in compilers and the flag no longer exists.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Enable mDNS service discovery and gvfs virtual filesystem support,
matching the original omarchy's avahi/gvfs-smb/gvfs-mtp/gvfs-nfs
packages which Arch provides implicitly with desktop setups.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add zellij.nix module with sensible defaults
- Create zellij.kdl theme files for all 14 themes
- Theme uses omarchy symlink pattern for dynamic switching

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant