diff --git a/scripts/setup/machine-setup/lib/packages.sh b/scripts/setup/machine-setup/lib/packages.sh index 2e14962d..0e994a18 100644 --- a/scripts/setup/machine-setup/lib/packages.sh +++ b/scripts/setup/machine-setup/lib/packages.sh @@ -94,26 +94,32 @@ pkgs_core() { # sources.list.d entry by hand). Left in deliberately rather than dropped # in the same change — it is one small package, and pulling it is a # separate decision from removing the tool that wanted it. + # poppler-utils is `pdftoppm`, and it is what makes an attached PDF readable. + # The agent reads a PDF by RENDERING its pages, not by extracting text — which + # is the only approach that works on a document made of diagrams and + # wireframes, where extraction returns almost nothing. Without it the attach + # button uploads happily and the read fails, which reads as the feature being + # broken rather than a package being absent. echo curl ca-certificates gnupg git jq unzip \ apt-transport-https lsb-release software-properties-common \ wget zip brotli build-essential python3 btop htop tree tmux ripgrep fd-find net-tools eza \ - fail2ban unattended-upgrades + poppler-utils fail2ban unattended-upgrades ;; pacman) echo curl ca-certificates gnupg git jq unzip \ wget zip brotli base-devel python btop htop tree tmux ripgrep fd net-tools eza \ - fail2ban + poppler fail2ban ;; dnf) echo curl ca-certificates gnupg2 git jq unzip \ wget zip brotli python3 btop htop tree tmux ripgrep fd-find net-tools eza \ - fail2ban + poppler-utils fail2ban ;; brew) # curl, unzip and the TLS roots ship with macOS; the compilers come from # the Xcode command line tools, which is not a formula — see xcode_clt_*. # brotli is here because macOS ships the library but not the CLI. - echo gnupg git jq wget brotli btop htop tree ripgrep fd eza + echo gnupg git jq wget brotli btop htop tree ripgrep fd eza poppler ;; esac }