5 ms·
> So I’ve gotta ask: Is there a catch? Are these tools doing something evil to achieve what they’re achieving? it's not that complicated; they're fat binaries
by almostgotcaught 2y ago
> So I’ve gotta ask: Is there a catch? Are these tools doing something evil to achieve what they’re achieving?
it's not that complicated; they're fat binaries (plus i guess a lot of papering over the differences between the platforms) that exploit a quirk of tshell:
> One day, while studying old code, I found out that it's possible to encode Windows Portable Executable files as a UNIX Sixth Edition shell script, due to the fact that the Thompson Shell didn't use a shebang line.
(https://justine.lol/ape.html https://justine.lol/ape.html)
so the answer is simple: i can't think of anyone that wants to ship fat binaries.
- fragmede 2y agoAnyone focused on customer experience wants to ship a binary that just works, without customers having to know what a fat binary even is.
- thefaux 2y agoI don't think macos will allow you to run a downloaded cosmo binary without going into security settings and enabling it. That's not an experience I'd want my customers to have personally which means if you care about mac normies, this isn't a viable approach.
- fragmede 2y agoI don't know what magic is involved, but I was able to download eg https://cosmo.zip/pub/cosmos/bin/md5sum https://cosmo.zip/pub/cosmos/bin/md5sum and run it in a terminal without having to do run 'xattr -d com.apple.quarantine' on it.
- bluGill 2y agoUnless the customer is one who has issues with large downloads. Not everyone has fiber to the home with massive storage on modern computers. Some people have the entry level systems, settle for slow internet. Often they are in poor or "third world" places which means maybe you don't care about them, but they exist.
- 01HNNWZ0MV43FF 2y agoFat binaries are fine. Electron is a fat binary in a different sense.
- 0cf8612b2e1e 2y agoGiven how fat modern websites are, compassion for the bandwidth deprived seems rare.
- bluGill 2y agoVery much. Which is really a problem for those who do have bandwidth limitations. Or even low end phones / old computers. Or even new computers that are not very powerful.
- cycomanic 2y agoCorrect me if I'm wrong, but I always thought Apple universal binaries are fat binaries? So why did Apple build this ability if nobody wants it?
- almostgotcaught 2y ago> So why did Apple build this ability if nobody wants it? did you miss the part where they transitioned from x86 to arm64 in 2020?
- cycomanic 2y agoI don't get your point. People were arguing that one doesn't need fat binaries because cross compiling and having different binaries is fine. Apple clearly thought differently when they transitioned from x86 to arm (not their first architecture transition either). So now you're saying because apple finished the transition fat binaries are useless again? What about other platforms?
- almostgotcaught 2y ago> finished the transition fat binaries are useless again? yup that's exactly what i'm saying.
- oriolid 2y ago> apple finished the transition fat binaries are useless again? Is the transition really finished? I'm writing this on a x86_64 Macbook with a browser that is distributed as x86_64/arm64 universal binary.
- E39M5S62 2y agoAnd PowerPC to x86 before that.
- yencabulator 2y agoApple's fat binaries were never very "universal". They put in a codepath where macOS detects and handles macOS-arm-and-x86_64 binaries. That is something where they can support both variants, and themselves in control. Cosmopolitan libc is a pile of hacks, compared to that, more comparable to somebody making Linux boot on a 4004 CPU than what Apple did.