4 ms·
For those wondering, the submission is a library / tooling usage that generates a single binary that executes across Linux, Mac, Windows, and BSDs. The author d
by llm_nerd 3y ago
For those wondering, the submission is a library / tooling usage that generates a single binary that executes across Linux, Mac, Windows, and BSDs. The author defines that as Actually Portable (which was the confusing part to me as we all know that python runs on just about everything)
- Retr0id 3y agofwiw the definition doesn't come from the author, it's how Cosmopolitan/APE describes itself (APE being Actually Portable Executable - as opposed to a mere Portable Executable, aka EXE)
- thesuperbigfrog 3y agoJustine's αcτµαlly pδrταblε εxεcµταblε website: https://justine.lol/ape.html https://justine.lol/ape.html
- moffkalast 3y agoCouldn't the same result be achieved by just copying an entire virtualenv? Though that is rather annoying to source every time and in every terminal.
- salviati 3y agoAny binary dependency you have would need to be present for all target architectures in your virtualenv for this to work. But when you pip install a package only the binary for your current platform gets installed.
- moffkalast 3y agoI presume you'd have the same problem with the binary, there'd have to be separate builds for arm, x64, etc.
- ingenieroariel 3y agoThere are separate static builds for aarch64 and x86_64, those are put into a "fat binary" that runs on current generation hardware/software combos (osx with aarch64, win with x86_64 and linux with both). Just building for two things is better than figuring out the whole matrix of OS vs architectures which was the other option. For other architectures like Power/armv7/i686 the software can run using the Blink project [0] [0] https://github.com/jart/blink https://github.com/jart/blink
- pfarrell 3y agoIf you are distributing software to an audience who want to use your thing without having to build it, then something like this is much more appealing than virtualenv.