upx not found in PATH when upx-ucl is installed

#214 · closed · 3 comments

View on GitHub ↗

rjvkn

On the current image, upx-ucl installs upx-ucl but not an upx binary, so tools expecting upx fail: ``` tssh -i id_ed25519 -p 2222 127.0.0.1 Warning: Permanently added '127.0.0.1:2222' (ssh-ed25519) to the list of known hosts. catcher$ link --goos windows --garble --upx --lzma --name x.exe upx could not be found in PATH ``` Could we add a symlink so upx resolves to upx-ucl? Proposed Dockerfile change: ``` RUN apt install -y upx-ucl gcc-mingw-w64 RUN ln -s /usr/bin/upx-ucl /usr/local/bin/upx ``` Happy to open a PR if you’re OK with this.

Comments

NHAS

Ah thats a bit silly isnt it. Im happy with either changing the binary to be upx-ucl, or to do the symlink. And also happy for you do open a PR to get your name associated with the fix, thanks for finding it!

rjvkn

Yep — exactly. Even though Docker is the recommended path, this repo still exposes server/client binaries, so it can be used outside Docker too. That’s why I went with a portable runtime fix: resolve `upx` first, then fall back to `upx-ucl`, and run whichever exists. This keeps `--upx` working across both Docker and non-Docker environments, without baking Debian-specific naming into the code.

NHAS

Howdy. Thanks for the pr! Looks good and I've merged it into unstable for testing.