Add lib.optionals pkgs.stdenv.isLinux guards to roles that contain
Linux-only packages or services to prevent build failures on Darwin:
- communication: Guard Electron apps (element-desktop, fluffychat,
nextcloud-talk-desktop) that don't build on Darwin due to electron
build-from-source limitations
- kdeconnect: Guard entire config block since services.kdeconnect
requires D-Bus and systemd (Linux-only)
- sync: Guard syncthingtray package (requires Linux system tray)
- email: Guard systemd.user.services/timers (Darwin uses launchd)
- desktop: Guard Linux-only packages, services, and KDE-specific
configurations including gnome-keyring, systemd services, and
XDG mime associations
Implements bead: nixos-configs-tcu
The rbw unlock systemd services were failing to launch the rbw-agent
daemon due to two issues:
1. Missing RBW_AGENT environment variable - rbw looks for this variable
to locate the agent binary, falling back to PATH lookup. Systemd
user services have minimal environments without the necessary PATH.
2. Default KillMode=control-group - when the oneshot service completed,
systemd was killing all processes in the cgroup including the
daemonized agent.
Fixed by:
- Setting RBW_AGENT environment variable to explicit agent binary path
- Using KillMode=process to only kill the main process, allowing the
spawned agent daemon to persist after service completion
Adds two systemd user services to automatically unlock the rbw vault:
- rbw-unlock-on-login: Runs at graphical session start
- rbw-unlock-on-resume: Runs after resuming from suspend
This solves the issue of mbsync prompting for password every 5 minutes.
Once unlocked, the vault stays unlocked as long as mbsync syncs every
5 minutes (which resets the 1-hour lock timeout). Only prompts at login
or after long suspend periods.
- Switch nix-deck to use nixpkgs-unstable and unstable home-manager/plasma-manager
- Remove jovian-compat.nix shim (not needed on unstable)
- Add bitwarden-desktop compatibility overlay for stable/unstable coexistence
- Update hardware-configuration.nix with actual Steam Deck hardware detection
- Add 8GB swap file configuration
- Configure AMD CPU microcode updates
This allows nix-deck to work with the latest Jovian-NixOS while keeping other
machines on stable 25.05.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add rofi package to desktop role with solarized theme
- Configure rofi with drun, run, and window modes
- Set up proper keybindings: Super+d for rofi (i3) and wofi (sway)
- Fix shared config structure to avoid undefined menu reference
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
KDE applications in i3 were showing only "Other..." in default
applications due to missing applications.menu file. Plasma 6 renamed
applications.menu to plasma-applications.menu but KDE components
still look for the old name.
This creates a symlink from the new location to the expected location
using XDG config file management.
Fixes kmail and systemsettings not detecting installed applications.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>