frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Start all of your commands with a comma

https://rhodesmill.org/brandon/2009/commands-with-comma/
193•theblazehen•2d ago•56 comments

OpenCiv3: Open-source, cross-platform reimagining of Civilization III

https://openciv3.org/
679•klaussilveira•14h ago•203 comments

The Waymo World Model

https://waymo.com/blog/2026/02/the-waymo-world-model-a-new-frontier-for-autonomous-driving-simula...
954•xnx•20h ago•552 comments

How we made geo joins 400× faster with H3 indexes

https://floedb.ai/blog/how-we-made-geo-joins-400-faster-with-h3-indexes
125•matheusalmeida•2d ago•33 comments

Jeffrey Snover: "Welcome to the Room"

https://www.jsnover.com/blog/2026/02/01/welcome-to-the-room/
25•kaonwarb•3d ago•21 comments

Unseen Footage of Atari Battlezone Arcade Cabinet Production

https://arcadeblogger.com/2026/02/02/unseen-footage-of-atari-battlezone-cabinet-production/
62•videotopia•4d ago•2 comments

Show HN: Look Ma, No Linux: Shell, App Installer, Vi, Cc on ESP32-S3 / BreezyBox

https://github.com/valdanylchuk/breezydemo
235•isitcontent•15h ago•25 comments

Vocal Guide – belt sing without killing yourself

https://jesperordrup.github.io/vocal-guide/
39•jesperordrup•5h ago•17 comments

Monty: A minimal, secure Python interpreter written in Rust for use by AI

https://github.com/pydantic/monty
227•dmpetrov•15h ago•121 comments

Show HN: I spent 4 years building a UI design tool with only the features I use

https://vecti.com
332•vecti•17h ago•145 comments

Hackers (1995) Animated Experience

https://hackers-1995.vercel.app/
499•todsacerdoti•22h ago•243 comments

Sheldon Brown's Bicycle Technical Info

https://www.sheldonbrown.com/
384•ostacke•21h ago•96 comments

Microsoft open-sources LiteBox, a security-focused library OS

https://github.com/microsoft/litebox
360•aktau•21h ago•183 comments

Show HN: If you lose your memory, how to regain access to your computer?

https://eljojo.github.io/rememory/
292•eljojo•17h ago•182 comments

Where did all the starships go?

https://www.datawrapper.de/blog/science-fiction-decline
21•speckx•3d ago•10 comments

An Update on Heroku

https://www.heroku.com/blog/an-update-on-heroku/
413•lstoll•21h ago•279 comments

ga68, the GNU Algol 68 Compiler – FOSDEM 2026 [video]

https://fosdem.org/2026/schedule/event/PEXRTN-ga68-intro/
6•matt_d•3d ago•1 comments

Was Benoit Mandelbrot a hedgehog or a fox?

https://arxiv.org/abs/2602.01122
20•bikenaga•3d ago•10 comments

PC Floppy Copy Protection: Vault Prolok

https://martypc.blogspot.com/2024/09/pc-floppy-copy-protection-vault-prolok.html
66•kmm•5d ago•9 comments

Dark Alley Mathematics

https://blog.szczepan.org/blog/three-points/
93•quibono•4d ago•22 comments

How to effectively write quality code with AI

https://heidenstedt.org/posts/2026/how-to-effectively-write-quality-code-with-ai/
260•i5heu•17h ago•202 comments

Delimited Continuations vs. Lwt for Threads

https://mirageos.org/blog/delimcc-vs-lwt
33•romes•4d ago•3 comments

Female Asian Elephant Calf Born at the Smithsonian National Zoo

https://www.si.edu/newsdesk/releases/female-asian-elephant-calf-born-smithsonians-national-zoo-an...
38•gmays•10h ago•13 comments

I now assume that all ads on Apple news are scams

https://kirkville.com/i-now-assume-that-all-ads-on-apple-news-are-scams/
1073•cdrnsf•1d ago•459 comments

Introducing the Developer Knowledge API and MCP Server

https://developers.googleblog.com/introducing-the-developer-knowledge-api-and-mcp-server/
60•gfortaine•12h ago•26 comments

Understanding Neural Network, Visually

https://visualrambling.space/neural-network/
291•surprisetalk•3d ago•43 comments

I spent 5 years in DevOps – Solutions engineering gave me what I was missing

https://infisical.com/blog/devops-to-solutions-engineering
150•vmatsiiako•19h ago•71 comments

The AI boom is causing shortages everywhere else

https://www.washingtonpost.com/technology/2026/02/07/ai-spending-economy-shortages/
8•1vuio0pswjnm7•1h ago•0 comments

Why I Joined OpenAI

https://www.brendangregg.com/blog/2026-02-07/why-i-joined-openai.html
154•SerCe•10h ago•144 comments

Learning from context is harder than we thought

https://hy.tencent.com/research/100025?langVersion=en
187•limoce•3d ago•102 comments
Open in hackernews

Show HN: Inspect and extract files from MSI installers directly in your browser

https://pymsi.readthedocs.io/en/latest/msi_viewer.html
135•rmast•7mo ago
Hey everyone!

I'm excited to share a small web app I built that allows you to view and extract the contents of Windows MSI installers directly in your browser. It's essentially a web-based "lessmsi" powered by Pyodide.

You can try it out at: https://pymsi.readthedocs.io/en/latest/msi_viewer.html

My motivation for building this was from part of my day job -- I often get Windows MSI installers and need to extract files while preserving the relative directory structure and filenames, as they would appear after a full installation. The existing tools I found were good but limited in which platforms they support: lessmsi works great on Windows, while msitools works for Linux/macOS. Neither is a truly cross-platform solution that works on any major OS.

So we developed pymsi (a pure Python library, available on GitHub at https://github.com/nightlark/pymsi) to handle reading and extracting MSI files from Python. Then I realized that since pymsi has no native dependencies, it could potentially run in a web browser using Pyodide. After a bit of "vibe coding" and fixing some "hallucinated" functions/classes that don't exist in pymsi, the result was this client-side web app.

If you need an MSI file to experiment with, older versions of PowerToys included the installer in .msi form, such as this one: https://github.com/microsoft/PowerToys/releases/download/v0....

Note that the underlying pymsi library hasn't been extensively tested against a bunch of MSI installers yet, so there might still be lingering bugs. If you come across any issues, please don't hesitate to report them in on the GitHub repository (https://github.com/nightlark/pymsi/issues).

I'd love to hear your feedback and answer any questions!

Comments

rmast•7mo ago
As a side note, I just tried it in mobile Safari on my iPhone -- at least inspecting MSI files works, extracting files may work as well (not sure where it is placing the "downloaded" zip file).
jasonjmcghee•7mo ago
My safari puts things in icloud drive / downloads
lxgr•7mo ago
That's configurable in the Safari settings, fwiw (I personally prefer my downloads to not automatically become uploads, especially on mobile data).
pragma_x•7mo ago
I feel like this would also solve the "I just need the printer driver file(s), not everything else" use-case. Nice work.
blangk•7mo ago
Printer drivers rarely if ever come in MSI format. They most commonly use self extracting exe archive.
nebula8804•7mo ago
Yeah, start the installer, quickly look at the temp directory for the files, nab em then quit the installer. This and many other janky techniques are what I use to survive in the jungles of the Windows platform.

I would also like to promote one of my most favorite tools ever: InstallWatch Pro by Epsilon Squared

It takes a complete HDD and Registry snapshot, you install something then it takes another snapshot and shows you the diff in a easy to read format.

wiseleo•7mo ago
Thank you for InstallWatch Pro mention. That app tends to get reinvented every so often. I remember seeing something like it as early as 1996.
nebula8804•7mo ago
Yeah Im sure even ChatGPT can spit out a script that can do this work. It just seems like this particular software by this company is really simple and super solid.

I wish there was an equivalent for MacOS & Linux as the scripts I have tried to make(or had ChatGPT try to make) just don't cut the mustard. I'd rather just have some commercial software do this even if I have to pay for a license.

lloydatkinson•7mo ago
What’s its homepage? I only see the usual fake software sites on google
nebula8804•7mo ago
Sorry it seems like their site is not accessible: I think its www.epsilonsquared.com
Lanrei•7mo ago
Neat. I usually just use 7zip to open .exe and .msi files.
hypercube33•7mo ago
I don't think 7zip really can see into a lot of janky MSI files to get the actual installed content, can it?...it can technically break open NSIS files and get the source but that is disabled in code after 15.05 (GitHub has a mod to renable source extraction fyi) and yes self extracting exe files.
rmast•7mo ago
My experience with 7zip has been that it can read the tables and cab files from MSI files, but when you go to extract the contents you just get the raw files without the directory restructure associated with the MSI file (and the names of the extracted files can also have issues).
atmanactive•7mo ago
Let's not forget Universal Extractor: https://github.com/Bioruebe/UniExtract2
WarOnPrivacy•7mo ago
I had forgotten. For years and years it was part of my install everywhere kit. This is a good reacquaintance.
danielodievich•7mo ago
I was there at Microsoft in the beginning of MSI, which was what, Office XP? Gosh or was it 2003? The tooling for dealing with them was super jank then. I could have never predicted that you'd be able to just casually open it in a browser. Nice job man!
EvanAnderson•7mo ago
I remember dealing with installing the Windows Installer redistributable on Windows 98. The Wikipedia[0] article cites Office 2000 shipped w/ Windows Installer 1.0.

[0] https://en.wikipedia.org/wiki/Windows_Installer

simonw•7mo ago
This is really cool! Suggestion: find a small MSI file that you can host as part of the demo and add a "load example file" button - that way people can try it out even if they don't have an MSI file to hand already.
hypercube33•7mo ago
I don't know the license around it but hosting orca.msi would be a silly thing to do
rmast•7mo ago
It looks like orca.msi uses external cab files, so maybe a bit harder to do than just fetching a single file MSI into the Pyodide file system. If the license allows, it would be interesting to have as an option for the example.
rmast•7mo ago
Thanks for the suggestion! I just added a button to load a small example MSI file.
pragmatick•7mo ago
Minor thing: When I load the page and click "Load example file" while Pyodide is still loading I see a stacktrace for a short time. Perhaps disable the button until it's loaded?
jamesholden•7mo ago
Feedback: A way to export data would be nice.
rmast•7mo ago
What type of data export would you find most useful?

* Tables as a collection of CSV files, or an Excel workbook

* Contents of streams

* StringPool data dump

* Option to configure file dump to export using either SourceDir paths, or target destination dir paths