diff options
| -rwxr-xr-x | archsetup | 29 | ||||
| -rw-r--r-- | assets/2026-01-30-yt-dlp-deno-requirement.md | 24 | ||||
| -rw-r--r-- | assets/2026-01-30-yt-dlp-pipx-migration.md | 32 |
3 files changed, 84 insertions, 1 deletions
@@ -1422,6 +1422,32 @@ hyprland() { pacman_install nautilus # file manager pacman_install sushi # nautilus spacebar file preview aur_install nautilus-open-any-terminal # right-click "open in terminal" with configurable terminal + + # Hyprland Plugins (via hyprpm) + # Plugins require compilation, so cmake must be installed first + action="Hyprland Plugins" && display "subtitle" "$action" + pacman_install cmake # required for plugin compilation + + # Add plugin repositories and enable plugins (runs as user) + action="installing hyprland-plugins repository" && display "task" "$action" + (sudo -u "$username" hyprpm add https://github.com/hyprwm/hyprland-plugins --notify >> "$logfile" 2>&1) || \ + error "warn" "$action" "$?" + + action="enabling hyprscrolling plugin" && display "task" "$action" + (sudo -u "$username" hyprpm enable hyprscrolling >> "$logfile" 2>&1) || \ + error "warn" "$action" "$?" + + action="enabling xtra-dispatchers plugin" && display "task" "$action" + (sudo -u "$username" hyprpm enable xtra-dispatchers >> "$logfile" 2>&1) || \ + error "warn" "$action" "$?" + + action="installing hy3 repository" && display "task" "$action" + (sudo -u "$username" hyprpm add https://github.com/outfoxxed/hy3 --notify >> "$logfile" 2>&1) || \ + error "warn" "$action" "$?" + + action="enabling hy3 plugin" && display "task" "$action" + (sudo -u "$username" hyprpm enable hy3 >> "$logfile" 2>&1) || \ + error "warn" "$action" "$?" } ### Display Server (conditional) @@ -1749,7 +1775,8 @@ developer_workstation() { pacman_install python-lsp-server # python language support pacman_install rlwrap # adds readline support to programs (SBCL-related) pacman_install sdcv # stardict dictionary system - pacman_install yt-dlp # video download + pacman_install deno # JS runtime for yt-dlp YouTube extraction + pipx_install yt-dlp # video download (pipx keeps it current) action="setting up emacs configuration files" && display "task" "$action" emacs_dir="/home/$username/.emacs.d" diff --git a/assets/2026-01-30-yt-dlp-deno-requirement.md b/assets/2026-01-30-yt-dlp-deno-requirement.md new file mode 100644 index 0000000..84e11fa --- /dev/null +++ b/assets/2026-01-30-yt-dlp-deno-requirement.md @@ -0,0 +1,24 @@ +# Install deno for yt-dlp JavaScript runtime + +## Problem + +yt-dlp now requires a JavaScript runtime for full YouTube extraction. Without it, you get this warning: + +``` +WARNING: No supported JavaScript runtime could be found. +YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. +``` + +## Solution + +Install deno (the default supported runtime): + +```bash +sudo pacman -S deno +``` + +## Why + +YouTube uses JavaScript for some format extraction. Without a JS runtime, yt-dlp may not be able to access all video formats or could fail on certain videos. + +See: https://github.com/yt-dlp/yt-dlp/wiki/EJS diff --git a/assets/2026-01-30-yt-dlp-pipx-migration.md b/assets/2026-01-30-yt-dlp-pipx-migration.md new file mode 100644 index 0000000..a128baa --- /dev/null +++ b/assets/2026-01-30-yt-dlp-pipx-migration.md @@ -0,0 +1,32 @@ +# Change yt-dlp installation from pacman to pipx + +## Problem + +yt-dlp stopped working because the Arch repos were behind upstream. The pacman version was 2025.12.08 while the latest release was 2026.01.29 (7 weeks behind). + +yt-dlp updates frequently to keep up with site API changes, so being outdated often causes extraction failures. + +## Solution + +Install yt-dlp via pipx instead of pacman: + +```bash +# Install pipx if not already installed +sudo pacman -S python-pipx + +# Install yt-dlp via pipx +pipx install yt-dlp + +# Remove the pacman version to avoid PATH conflicts +sudo pacman -R yt-dlp +``` + +## Updating + +To update yt-dlp in the future: + +```bash +pipx upgrade yt-dlp +``` + +This pulls directly from PyPI which stays current with upstream releases. |
