Build the Panama Hyprland desktop

This commit is contained in:
Gabriel Brown
2026-08-17 10:32:55 -04:00
parent 67033f2a31
commit 5248883e4b
190 changed files with 18554 additions and 34 deletions
+56
View File
@@ -0,0 +1,56 @@
# ─────────────────────────────────────────────────────────────────────────────
# uwsm environment — general (toolkit / theming / cursor)
#
# Why this file exists, and why it duplicates hypr/env.lua:
#
# The session logs in via "Hyprland (uwsm-managed)", which runs the compositor
# under the systemd user manager. Variables set with hl.env() in hyprland.lua
# are exported into the COMPOSITOR's environment -- but NOT into the systemd
# user manager. Anything started as a user unit (vicinae.service,
# hyprpolkitagent.service, hyprpaper.service, hyprsunset.service) and every app
# those units launch would therefore not see them.
#
# uwsm sources this file into the systemd activation environment before the
# session starts, which covers both. Keep the two in sync; hypr/env.lua remains
# the fallback for the plain (non-uwsm) "Hyprland" session.
#
# Format is plain shell: `export KEY=VALUE`.
# ─────────────────────────────────────────────────────────────────────────────
# ── Cursor ───────────────────────────────────────────────────────────────────
# No HYPRCURSOR_THEME: oreo_blue_cursors is a plain XCursor theme with no
# hyprcursors/ directory, so hyprcursor would resolve it to nothing.
export XCURSOR_THEME=oreo_blue_cursors
export XCURSOR_SIZE=24
# ── Toolkits ─────────────────────────────────────────────────────────────────
export QT_QPA_PLATFORM="wayland;xcb"
# Derives the Qt palette from the live GTK3 theme (adw-gtk3-dark). Single
# value, not a list -- Qt splits on ":" and uses only the first token.
export QT_QPA_PLATFORMTHEME=gtk3
export QT_WAYLAND_DISABLE_WINDOWDECORATION=1
export QT_AUTO_SCREEN_SCALE_FACTOR=1
export GDK_BACKEND=wayland,x11
export SDL_VIDEODRIVER=wayland
export CLUTTER_BACKEND=wayland
export MOZ_ENABLE_WAYLAND=1
# Electron apps (Slack, Obsidian, Claude, Codex, BlueBubbles, Podman Desktop)
# pick Wayland from this rather than needing per-app flags.
export ELECTRON_OZONE_PLATFORM_HINT=auto
# The systemd user manager can survive a GNOME logout, leaving this stale as
# `gnome` even after uwsm updates XDG_CURRENT_DESKTOP. Vicinae checks both and
# otherwise waits for a GNOME clipboard extension before falling back to the
# native Wayland data-control backend.
export XDG_SESSION_DESKTOP=Hyprland
export DESKTOP_SESSION=hyprland
export GDMSESSION=hyprland
# ── Selection overlay theming ────────────────────────────────────────────────
# slurp is used by screenshot tooling; match Tokyo Night Moon so the region
# picker doesn't flash a default-blue box.
export SLURP_ARGS="-d -c 82aaffff -b 2e2f3d99 -s 82aaff22 -B 2e2f3d55 -w 2"
# XDG_CURRENT_DESKTOP and XDG_SESSION_TYPE are set by uwsm itself.