Build the Panama Hyprland desktop
This commit is contained in:
@@ -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.
|
||||
@@ -0,0 +1,28 @@
|
||||
# ─────────────────────────────────────────────────────────────────────────────
|
||||
# uwsm environment — Hyprland-specific (HYPR* and AQ_*)
|
||||
#
|
||||
# uwsm sources this only for the Hyprland session, after ./env. Keeping the
|
||||
# compositor-specific variables separate means the general env file stays
|
||||
# reusable if another compositor is ever added.
|
||||
#
|
||||
# See ./env for why these live here instead of in hypr/env.lua.
|
||||
# ─────────────────────────────────────────────────────────────────────────────
|
||||
|
||||
# ── GPU selection ────────────────────────────────────────────────────────────
|
||||
# Discrete RX 7800 XT first (it drives DP-2), integrated second so anything
|
||||
# plugged into its outputs still works.
|
||||
#
|
||||
# These are the colon-free stable symlinks created by the udev rule at
|
||||
# config/copy/etc/udev/rules.d/99-panama-gpu.rules -- /dev/dri/cardN numbering
|
||||
# is not stable across boots, and the /dev/dri/by-path/ names contain colons,
|
||||
# which AQ_DRM_DEVICES itself uses as a separator.
|
||||
#
|
||||
# Guarded, because pointing this at a device that does not exist stops Hyprland
|
||||
# from starting at all.
|
||||
if [ -e /dev/dri/amd-dgpu ]; then
|
||||
if [ -e /dev/dri/amd-igpu ]; then
|
||||
export AQ_DRM_DEVICES=/dev/dri/amd-dgpu:/dev/dri/amd-igpu
|
||||
else
|
||||
export AQ_DRM_DEVICES=/dev/dri/amd-dgpu
|
||||
fi
|
||||
fi
|
||||
Reference in New Issue
Block a user