frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Start all of your commands with a comma (2009)

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

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

https://openciv3.org/
694•klaussilveira•15h ago•206 comments

Hoot: Scheme on WebAssembly

https://www.spritely.institute/hoot/
6•AlexeyBrin•1h ago•0 comments

The Waymo World Model

https://waymo.com/blog/2026/02/the-waymo-world-model-a-new-frontier-for-autonomous-driving-simula...
962•xnx•20h ago•555 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
130•matheusalmeida•2d ago•35 comments

Unseen Footage of Atari Battlezone Arcade Cabinet Production

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

Vocal Guide – belt sing without killing yourself

https://jesperordrup.github.io/vocal-guide/
54•jesperordrup•5h ago•24 comments

Jeffrey Snover: "Welcome to the Room"

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

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

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

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

https://github.com/valdanylchuk/breezydemo
236•isitcontent•15h ago•26 comments

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

https://github.com/pydantic/monty
233•dmpetrov•16h ago•125 comments

Where did all the starships go?

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

UK infants ill after drinking contaminated baby formula of Nestle and Danone

https://www.bbc.com/news/articles/c931rxnwn3lo
11•__natty__•3h ago•0 comments

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

https://vecti.com
335•vecti•17h ago•147 comments

Hackers (1995) Animated Experience

https://hackers-1995.vercel.app/
502•todsacerdoti•23h ago•244 comments

Sheldon Brown's Bicycle Technical Info

https://www.sheldonbrown.com/
386•ostacke•21h ago•97 comments

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

https://eljojo.github.io/rememory/
300•eljojo•18h ago•186 comments

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

https://github.com/microsoft/litebox
361•aktau•22h ago•185 comments

An Update on Heroku

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

PC Floppy Copy Protection: Vault Prolok

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

Dark Alley Mathematics

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

Was Benoit Mandelbrot a hedgehog or a fox?

https://arxiv.org/abs/2602.01122
21•bikenaga•3d ago•11 comments

The AI boom is causing shortages everywhere else

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

How to effectively write quality code with AI

https://heidenstedt.org/posts/2026/how-to-effectively-write-quality-code-with-ai/
265•i5heu•18h ago•216 comments

Delimited Continuations vs. Lwt for Threads

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

Introducing the Developer Knowledge API and MCP Server

https://developers.googleblog.com/introducing-the-developer-knowledge-api-and-mcp-server/
64•gfortaine•13h ago•28 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/
1076•cdrnsf•1d ago•460 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...
39•gmays•10h ago•13 comments

Understanding Neural Network, Visually

https://visualrambling.space/neural-network/
298•surprisetalk•3d ago•44 comments

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

https://infisical.com/blog/devops-to-solutions-engineering
154•vmatsiiako•20h ago•72 comments
Open in hackernews

DRM Panic QR code generator

https://rust-for-linux.com/drm-panic-qr-code-generator
81•weinzierl•7mo ago

Comments

danhor•7mo ago
It seems like this is already deployed in Arch, as I've hit it yesterday. I was surprised at first, but it was quite useful.
homebrewer•7mo ago
It's easy to check (unless the kernel was compiled without config in procfs, which it probably wasn't):

  $ zgrep CONFIG_DRM_PANIC_SCREEN_QR_CODE /proc/config.gz
  CONFIG_DRM_PANIC_SCREEN_QR_CODE=y
kokada•7mo ago
Thanks, also seems enabled by default in NixOS.
sudobash1•7mo ago
There are mainstream distros that don't have config.gz. Fedora is one of them. But it keeps a copy of it's config next to the kernel. If you don't have /proc/config.gz try this:

grep CONFIG_DRM_PANIC_SCREEN_QR_CODE /boot/config-$(uname -r)

(Fedora is enabling the DRM panic screen QR code)

greatgib•7mo ago
Fun, and nice addition, but again another good example of let's sneak some rust in critical parts of the kernel so that rust will become mandatory.

I would not really have noticed if there wasn't this section about why rust, where arguments looks phony and clearly made up afterward to justify a decision that was already taken:

   This project was written in rust, because memory safety is critical in a panic handler.

   For this particular case, I found the Rust code to be cleaner, and easier to read.
rcxdude•7mo ago
I suspect it's more of a 'this would be handy to have, and I would prefer to use rust' as opposed to motivated by making the language harder to do without in the kernel. Certainly this kind of thing I would find rust much nicer for than C.

(I would agree the first argument is kinda wavy. If anything the panic handler has a fairly unique relationship with memory safety: it's likely to be executing in an environment where that's already gone out the window and it needs to try to assume as little as possible about what might or might not be correct that its reading from and writing to, while also its own memory safety is perhaps less critical because the system is already crashing, it's just got to get the info out before everything completely stops. Though that doesn't make it immune from security concerns. A code execution vulnerability in the handler means any panic could turn into a worse problem)

tialaramex•7mo ago
The elaborate Rust type system and so on does not exist in the machine code executing when "the system is already crashing". Very often it turns out that expressive Rust you wrote which talks about a fancy Iterator protocol and a lambda function just got compiled into the same sixteen CPU instructions that would have been emitted for the (much harder to understand) macro expanded C you'd have to write instead with the same meaning.

Rust vs C matters a lot more for maintainers, who read the source code - hopefully not from a machine which is currently crashing - than for the executable kernel itself.

rcxdude•7mo ago
I'm aware, whuch means that e.g. you're liekly already in undefined behaviour land and rust's safety guarantees are no longer, well, guaranteed.
jeroenhd•7mo ago
The first version of the PR is a little more honest: https://patchwork.freedesktop.org/series/135886/

> There is no particular reason to do it in rust, I just wanted to learn rust, and see if it can work in the kernel.

Which I think is fairer. Good on him for trying to stay on top of recent developments. With Linux basically supporting Rust now so it's a valid choice, especially for a new component. Plus, it's not like this is an important features, the anti-Rust people can live perfectly fine without QR code crash dumps like they have for decades now.

I think doing this in C is an unnecessary risk (you really don't need all that many raw pointer interactions and shared struct ownership) but the security and stability of this component hardly matters. The kernel is already dead because of a bug or a hardware failure anyway, this is just making the catastrophic failure of the rest of the system a bit prettier.

meindnoch•7mo ago
>Good on her for trying

"Pronouns: He/Him" https://gitlab.com/kdj0c

jeroenhd•7mo ago
Good catch, didn't spot that on the freedesktop site and the docs page linked. I've edited my comment.

My apologies to kdj0c if he's reading this.

greatgib•7mo ago
> > There is no particular reason to do it in rust, I just wanted to learn rust, and see if it can work in the kernel.

Good catch the earlier comment, with that I would not even have raise an eyebrow because it is more a motivation that I find valid and not fishy like the post rationalization that is in the original post.

That being said, I still find it ridicule the attempt to emphasis on how dangerous it is to do "C code" for the kernel because not memory safe all of that, when you see for how long the kernel exist, was able thrive, with relatively few critical issues in the end compared to most software out there.

ChocolateGod•7mo ago
What's the need for memory safety if the kernel is going to stop executing and memory will be wiped before any further execution is done.
krior•7mo ago
Memory safety is not just about releasing unused memory.
kookamamie•7mo ago
Agreed, picking Rust for the project likely has very little to do with "memory safety".
varispeed•7mo ago
> because memory safety is critical in a panic handler.

As in: I can't be bothered to write memory safe code.

rs186•7mo ago
> let's sneak some rust in critical parts of the kernel so that rust will become mandatory.

This project is a great example of where and when Rust should be used.

"sneak" some rust in the kernel? It is exactly this kind of attitude that is slowing progress.

justsomehnguy•7mo ago
IMO "sneaking" in some important yet not critical parts is the way to both test the tech and how it plays along
josephcsible•7mo ago
Rust being mandatory in Linux will be a good thing. I eagerly await the day that (aside from arch-specific syscall boundary code, etc. that has to be assembly) the entire kernel becomes 100% Rust only.
dmitrygr•7mo ago
Absolutely nobody stops you from writing one in rust. Have fun.
josephcsible•7mo ago
I'm not saying that it's easy or that I could do it. I'm just saying that if it does happen, it would be a good thing, not something you should be opposed to.
Am4TIfIsER0ppos•7mo ago
How am I supposed to use a QR code when the only thing that I have to decode it is currently panicking? If I am supposed to draw it I hope it is only a few bits. A traditional BSOD with codes and registers would be easier to copy.
bauruine•7mo ago
It may isn't useful for you but a huge majority has a phone they can use for this task.
elmigranto•7mo ago
What if your phone’s kernel panics? :)
tialaramex•7mo ago
Did you know other people have phones too?
ChocolateGod•7mo ago
That's planned obsolescence and you should get a new one.
andrelaszlo•7mo ago
Bring out the crayons and some graph paper!
preisschild•7mo ago
Get your second phone, duh :)
weinzierl•7mo ago
In this context DRM stands for Direct Rendering Manager.

It has nothing to do with digital rights management.

userbinator•7mo ago
Do not want. More dumbing down and opaqueing? This is as stupid as what happened to Windows' BSoDs.
preisschild•7mo ago
Have you even read what it does in the link? How is it "dumbing down and opaqueing" to just encode the kernel panic in a QR code?

Its not like in windows where you get some cryptic error code. This is just encoding kernel panic traces as a QR code, so more can fit on the screen without scrolling and copying is easy.

userbinator•7mo ago
and copying is easy

It's always easier to read and share text, e.g. over the phone, and not have to rely on another complex layer of obscurity --- especially when you're trying to figure out what happened.

ranger207•7mo ago
I think a QR code is easier for most people to share in a computer-readable format. You take a picture on your phone and either decode the QR code on your phone or send the picture to another computer and decode it there. The alternative is taking a picture on your phone of a screen of text, and either manually typing out what it says or using OCR, which (given pictures I've seen where people take pictures of their screen) is going to run into difficulties
kokada•7mo ago
That is even assuming that the TTY has the correct resolution for your monitor, that is not always the case. If not, it is highly likely that the most important information will be missing, it happened for me quite a few times.

Of course, it doesn't mean that the QR code could also not be cut off the screen, but since QR code is more dense in information (like the post says), I think this is more rare.

userbinator•7mo ago
The problem is the opaqueness. I can read text and so can everyone else, and instantly have an idea what it's saying. No one can read a QR code and it furthers the impression of learned helplessness that M$ and the like would want. Hence keep this shit out of Linux.

You take a picture on your phone and either decode the QR code on your phone

Not everyone has nor wants another corporate surveillance device.

preisschild•7mo ago
A QR code is a totally open standard, you don't need a proprietary "corporate surveillance device" to read it.
userbinator•7mo ago
You still need more than your eyes and brain.
preisschild•7mo ago
Thankfully, almost everyone has a mobile QR decoder always in their pockets...
jcalvinowens•7mo ago
This is awesome. I can't tell you how many times in my life I've been sent a photo of a Linux panic bracktrace with the first half missing because the screen couldn't display enough lines...

Funny story: on an x86 motherboard with no serial, I recently resorted to using an old 4K monitor with the 4x6 tiny console font to catch a panic (that netconsole wouldn't log for some reason).

sudobash1•7mo ago
I am disappointed to see that the QR code is completely replacing the panic messages. There is plenty of room on most monitors to have a stack trace on one side and the QR code on the other.

I probably won't be enabling this on my machines, but good on them for trying to improve on the Linux panic screen.