Commit b2b3712
fix: exclude bundled OpenSSL libs from Linux binary (#466)
* fix: exclude bundled OpenSSL libs from Linux binary (#462)
PyInstaller's bootloader sets LD_LIBRARY_PATH to the binary directory in
--onedir mode. When apm spawns git, git-remote-https inherits that path
and loads the bundled (build-machine) libssl instead of the system one.
On distros where system libcurl requires a newer OpenSSL ABI than the
build machine provides (e.g. Fedora 43 with OPENSSL_3.2.0), this causes
symbol lookup errors and git clone failures.
Fix: exclude libssl.so.3 and libcrypto.so.3 from a.binaries on Linux.
Python's _ssl module still works because it finds system libssl via the
standard dynamic linker search path.
Validated via Docker: built on Ubuntu 24.04, tested on Fedora 43 --
apm --version, apm --help, git clone over HTTPS all pass.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* fix: address PR review comments
- CHANGELOG: use PR number (#466) instead of issue number
- apm.spec: soften 'always available' to 'expected on supported targets'
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
---------
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>1 parent 8549142 commit b2b3712
2 files changed
Lines changed: 17 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
15 | 15 | | |
16 | 16 | | |
17 | 17 | | |
| 18 | + | |
18 | 19 | | |
19 | 20 | | |
20 | 21 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
209 | 209 | | |
210 | 210 | | |
211 | 211 | | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
212 | 228 | | |
213 | 229 | | |
214 | 230 | | |
| |||
0 commit comments