What zmachine.ps does is to emulate the ZMachine VM in PostScript and display the output to stdout/console.
And if it werent for the PS stack limitations for sure you could emulate Linux under Risc-V.
Heck, you can emulate old RISC Linux' syscalls (enough to run static binaries) in Perl without ever calling to C bindings, not even once.
Yes but at the same time we now have options... For example it's now totally possible to do the following:
- intercept any PDF downloaded
- send it to a sandboxed app before opening
- open it from withing the sandbox
- headlessly screenshot every page to images
- pull the pictures (one per page) out of the sandbox
- reconstruct a similar PDF from the pictures
It's not hard and it can literally be vibe coded in a few prompts (because it's really not hard).Some people are going to say: "But PDFs aren't supposed to be PICTURES, it has to be searchable, so we want our Turing-complete, exploits-ridden, 2 GB big PDF readers running as admin/root and we insist, we repeat INSIST, to have our ability to open any unkown PDF from any proprietary PDF readers for that is the way!".
Thing is: we know have tool that can extract text from pictures too and they work perfectly fine.
So, yup, the surface attack PDFs have is utterly horrifying but we're already at a point where we can just honey-badge any potentially evil PDF into a well-behaving one.
https://hackingpassion.com/linux-inside-pdf/
When I protested about their shitty website shoving ads down my throat, the answer was - I'm paraphrasing of course, but something along the lines of - of course I need ads! I have to cover the cost of my shitty WordPress site (and what are you even thinking to question that!!?? You outta ur mind or somethin?)
I felt like I was indeed stuck with her in 2010 after that...
Previous discussion: https://news.ycombinator.com/item?id=42959775
Linux Running in a PDF - https://news.ycombinator.com/item?id=42959775 - Feb 2025 (104 comments)
Please submit the original source. If a post reports on something found on another site, submit the latter.
I thought that PDF was some sort of open standard.
Is it turing complete, runs actual linux binary through wasm or something
edit: went to tweet RISC-V emulator in PDF