diff options
| author | 2026-04-21 01:23:18 +0100 | |
|---|---|---|
| committer | 2026-04-21 01:23:18 +0100 | |
| commit | d00bf2cb2d5087164fa509a4f20a2be62a519044 (patch) | |
| tree | e788986ca341fa7a9d7327b48c58d2e0c0c43115 /dot_local/bin/executable_linkhandler | |
| parent | 9b2af4dd6c73ea57cc921f41120db7a2700e806d (diff) | |
| download | dotfiles-d00bf2cb2d5087164fa509a4f20a2be62a519044.tar.gz dotfiles-d00bf2cb2d5087164fa509a4f20a2be62a519044.tar.bz2 dotfiles-d00bf2cb2d5087164fa509a4f20a2be62a519044.zip | |
refactor: restructure to chezmoi source state
Rename home/ contents to chezmoi naming conventions:
- dot_ prefix for dotfiles and dot-dirs
- private_dot_ for .gnupg and .ssh directories
- private_ for 0600 files (nym.pub)
- executable_ for scripts in .local/bin and display-toggle.sh
- symlink_ for mimeapps.list symlink
Diffstat (limited to 'dot_local/bin/executable_linkhandler')
| -rwxr-xr-x | dot_local/bin/executable_linkhandler | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/dot_local/bin/executable_linkhandler b/dot_local/bin/executable_linkhandler new file mode 100755 index 0000000..e91da50 --- /dev/null +++ b/dot_local/bin/executable_linkhandler @@ -0,0 +1,49 @@ +#!/usr/bin/env sh + +resolve_url() { + if [ -f "$1" ]; then + local_url="$1" + else + local_url="/tmp/$(echo "$1" | sed "s/.*\///")" + curl -sL "$1" >"$local_url" + fi + printf "%s" "$local_url" +} + +if [ -z "$1" ]; then + url=$(wl-paste) +else + url="$1" +fi + +case "$url" in +*.mkv* | *.webm* | *.mp4* | *.mp3* | *.ogg* | *.mov* | *.ts* | *.m3u8* | *.gif* | *.m4a* | *youtube.com/watch* | *youtube.com/playlist* | *youtu.be* | *twitch.tv* | *invidio.us* | *lbry* | *streamye.com* | *streamvi.com* | *streamwo.com* | *videos.lukesmith.xyz*) + setsid mpv -quiet "$url" >/dev/null 2>&1 & + ;; +acestream://*) + setsid acestream-launcher "$url" >/dev/null 2>&1 & + ;; +*.png | *.jpg | *.jpe | *.jpeg | *.PNG | *.JPG | *.JPE | *.JPEG) + local_url="$(resolve_url "$url")" + setsid imv "$local_url" >/dev/null 2>&1 & + ;; +*.pdf | *.ps | *.epub) + local_url="$(resolve_url "$url")" + setsid zathura "$local_url" >/dev/null 2>&1 & + ;; +*rss* | *feed* | http*.xml | http*.atom) + setsid rssadd "$url" >/dev/null 2>&1 & + ;; +mailto:*) + setsid aerc "$url" >/dev/null 2>&1 & + ;; +*.dot) + setsid xdot "$url" >/dev/null 2>&1 & + ;; +http*) + librewolf "$url" >/dev/null 2>&1 & + ;; +*) + $TERMINAL -e "$EDITOR" "$1" + ;; +esac |
