diff options
| author | Craig Jennings <c@cjennings.net> | 2026-01-31 13:47:02 -0600 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-01-31 13:47:02 -0600 |
| commit | 3e2d5c156e71d52b71bd27ba55e46815755c761a (patch) | |
| tree | d80fe18e6ec87ea14a75e940827c3c9ed0735fac /dotfiles/common/.profile.d/browser.sh | |
| parent | 8d8c148ce83efe8f86037affbc7e67c3db7705cc (diff) | |
feat(dotfiles): add browser helpers and update qalculate config
- Add browser.sh with Wayland-aware open-chrome/firefox/url functions
- Disable qalculate multiple instances
Diffstat (limited to 'dotfiles/common/.profile.d/browser.sh')
| -rw-r--r-- | dotfiles/common/.profile.d/browser.sh | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/dotfiles/common/.profile.d/browser.sh b/dotfiles/common/.profile.d/browser.sh new file mode 100644 index 0000000..e2b3b69 --- /dev/null +++ b/dotfiles/common/.profile.d/browser.sh @@ -0,0 +1,36 @@ +# browser.sh +# Craig Jennings <c@cjennings.net> +# Browser wrapper functions for Wayland sessions + +# Open URL(s) in Chrome, handling Wayland display detection +# Usage: open-chrome "https://example.com" "https://another.com" +open-chrome() { + local wayland_socket + wayland_socket=$(ls /run/user/$(id -u)/wayland-* 2>/dev/null | head -1 | xargs -r basename) + + WAYLAND_DISPLAY="${WAYLAND_DISPLAY:-$wayland_socket}" \ + XDG_RUNTIME_DIR="${XDG_RUNTIME_DIR:-/run/user/$(id -u)}" \ + /opt/google/chrome/chrome "$@" &>/dev/null & +} + +# Open URL(s) in Firefox, handling Wayland display detection +# Usage: open-firefox "https://example.com" +open-firefox() { + local wayland_socket + wayland_socket=$(ls /run/user/$(id -u)/wayland-* 2>/dev/null | head -1 | xargs -r basename) + + WAYLAND_DISPLAY="${WAYLAND_DISPLAY:-$wayland_socket}" \ + XDG_RUNTIME_DIR="${XDG_RUNTIME_DIR:-/run/user/$(id -u)}" \ + /usr/bin/firefox "$@" &>/dev/null & +} + +# Generic URL opener using xdg-open +# Usage: open-url "https://example.com" +open-url() { + local wayland_socket + wayland_socket=$(ls /run/user/$(id -u)/wayland-* 2>/dev/null | head -1 | xargs -r basename) + + WAYLAND_DISPLAY="${WAYLAND_DISPLAY:-$wayland_socket}" \ + XDG_RUNTIME_DIR="${XDG_RUNTIME_DIR:-/run/user/$(id -u)}" \ + xdg-open "$@" &>/dev/null & +} |
