frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

New Tool: lsds – List All Linux Block Devices and Settings in One Place

https://tanelpoder.com/posts/lsds-list-linux-block-devices-and-their-config/
101•mfiguiere•11mo ago

Comments

DonHopkins•11mo ago
I always wanted the /dev/zero character device driver, which you can map into memory to clear it, or use as an infinite source of nulls, to use the minor node number as the value that got mapped into memory or produced, so you could make an infinite source of beeps with:

mknod /dev/seven c 1 7

I wonder what would happen if you made a /dev/seven device in your http servers public_html directory? Would it dutifully serve it up?

Better yet, support for utf-8 unicode, so you can make an infinite source of poo emojis.

The "Everything Is A File" philosophy should be taken to its logical conclusion.

dlt713705•11mo ago
Awesome! That actually inspired me to code this: https://codeberg.org/mco-system/pooper
don-code•11mo ago
I challenge anyone to find another place on the Internet where one person's joke is another person's kernel module.
tanelpoder•11mo ago
Astute observation, but also CrowdStrike would like a word :-)
xerxes901•11mo ago
Question: what actually reads /etc/pooper to configure the character? I can’t work out how that file’s contents ends up as module parameters and I’d love to know!
dlt713705•11mo ago
You are absolutely right, the /etc/pooper file was never loaded.

The code has been updated and now you can change the pooped char on the fly with something like :

`echo "<WHATEVER UTF-8 CHAR>" | sudo tee /sys/module/pooper/parameters/char_utf8`

/etc/pooper file and module unload/reload are no more needed :)

xerxes901•11mo ago
Thanks for clarifying, and implementing this essential feature!
DonHopkins•11mo ago
Finally somebody who gives a shit! Thank you for dropping that generous contribution.

Now I can use that device as an RSS feed! That puts the log into blog.

I haven't seen that much shit emerge from a wormhole since the Ed the Happy Clown episode of Yummy Fur comics:

https://everything2.com/node/1485685?bookmark_site=twitter&o...

>We now skip back in time a little, where we find Ronald Reagan before his mysterious transformation. He presides over an America that has no concept of toilets, and piles of feces on every street corner are becoming a serious problem. Fortunately, science can help; a farmer has stumbled across a small portal to another dimension. The solution is clear; push America's mounting shit through the portal via a huge funnel. The exit point for the portal is in fact the anus of the gentleman who couldn't stop shitting back in the prison in Ed's world; so there is at least a good scientific explanation for that little episode.

>During the official opening of the shit disposer, Reagan tragically falls into the giant collection of pending waste. His body blocks the funnel, but not before his head has gone through the portal; a headless president is recovered. A scientist heads though the portal on a rescue mission.

>(Now, I know what you're thinking, and I've no idea how Reagan's head became attached to the end of Ed's penis. It makes no sense, even within the logic of Ed's universe, and it's not explained. If you have any notions, please let me know - but for now, we'll just have to accept that somehow, it happened...)

The Chester Brown Interview:

https://www.tcj.com/the-chester-brown-interview/3/

Best NSFW Ronald Reagan Quote Ever:

https://the-comics-journal.sfo3.digitaloceanspaces.com/wp-co...

Support Indie Comics!

anonymousiam•11mo ago
Easy to get an infinite stream of bell codes with: yes ^V^G
bitbang•11mo ago
Very nice, needs option for json/jsonl output.
tanelpoder•11mo ago
Thanks! Yep I was thinking of doing that next, will be very easy as under the hood the data is stored in Python dictionaries.
appleaday1•11mo ago
can we package this for Arch? Arch Defense Taskforce where you at?
tanelpoder•11mo ago
I just added a little comment/errata regarding the NVME_QDEPTH column to the post (search for errata). I should probably rename that column to emphasize that (for now) it’s the Linux nvme module level max QD and not the hardware one (it’s complicated…)
nerflad•11mo ago
If you came to represent... https://wiki.archlinux.org/title/Creating_packages

Maintaining an AUR package can be great fun and an instructive glimpse into what FLOSS maintainers go through.

jayofdoom•11mo ago
I'll note, lsblk can return a heck of a lot more data than it does by default (and nvme drives show up there). lsblk -H will list for your system, and you can specify columns. You can also adjust output.

I guess with this in mind, I'm curious how this is different?

tanelpoder•11mo ago
Hi, yep lsblk targets a wider area of functionality, like showing mountpoints, device UUIDs, while lsds focuses only on block device settings.

Maybe the latest Linux versions have lsblk versions that support these columns, but in RHEL9 at least I don't see equivalents to lsds'es WBT_LAT, QDEPTH (not the same as lsblk's RQ-SIZE), WCACHE, FUA and some others. But these 4 are which I regularly need (especially when troubleshooting a yet another slow fsync() issue etc). I did and do use lsblk all the time too, but still end up catting and grepping various additional files and correlating the results, sometimes on systems with 100+ multipath block devices.

The other reason was that I wanted a tool that shows me where it gets these values too (for myself and sometimes for explaining stuff to others).

Edit: That being said, it shouldn't be hard at all to add the said extra fields to lsblk too.

strunz•11mo ago
Would be worth adding this as an FAQ on the page. Great job btw.

EDIT: Would also be really cool to define what each field means, if you're gonna reimplement everything anyways, why not make it as user friendly as possible.

tanelpoder•11mo ago
Thanks. Yep I have to revamp the whole 0x.tools webpage, right now it's a mix of older tools & prototypes and the "final stuff" and it's confusing what's what.

The lsds verbose option shows where in the Linux /sys fs each individual field comes from (lsds -lpv) so that's the ultimate source of what each field means. But I could pull each sysfs file's description from docs into a table on the webpage (I'm probably too lazy to create a manpage for now - help is appreciated)

Edit: Since there are not that many fields, it would be possible to add a -d option in addition to -v to get a human readable description for each field too. One of the main sources of confusion is the "queue_depth" vs. "nr_requests" fields. My ideal (which I usually don't reach) is to make these tools "explainable", so that they tell you from where they got their input data (and what basic math was applied).

jayofdoom•11mo ago
Thank you for the detailed response, even if I'm reading it late! This is exactly what I was trying to learn; what this tool exposed that lsblk is missing.
trillic•11mo ago
Rewrote most of the functionality in C as an exercise

https://gist.github.com/grahameger/2507019334f07036f84080a87...

The SPLC indictment, the Klan history behind it, and ignominy of Todd Blanche

https://www.lawdork.com/p/splc-indictment-united-klans-of-america
1•bryanrasmussen•2m ago•0 comments

A $440k Breast Reduction: How Doctors Cashed in on a Consumer Protection Law

https://www.nytimes.com/2026/04/22/us/politics/doctors-insurers-arbitration.html
1•kevinwang•3m ago•0 comments

Ask HN: Find a Claude skill is so hard

1•chunpaiyang•5m ago•1 comments

Proofs Are Programs: A Few Examples of the Curry-Howard Correspondence

https://adueck.github.io/blog/curry-howard-proofs-are-programs/
1•birdculture•5m ago•0 comments

Tailwind CSS v4: A Complete Migration Guide

https://news.ycombinator.com/submit
1•Craftly•10m ago•1 comments

Jeffrey Epstein's name appears twice on a 2015 Silicon Valley dinner invite

https://hebrewhorror.substack.com/p/the-eternal-jew-the-eternal-jeff
1•meandthemajor•12m ago•0 comments

My extension got crickets here, but just got Google's Featured badge

https://chromewebstore.google.com/detail/nexopad-expansor-de-texto/jjjmhgbdbepmledkcoalkfhnnnoignca
1•rychzx•13m ago•1 comments

New Gas-Powered Data Centers Could Emit More Greenhouse Gas Than Nations

https://www.wired.com/story/new-gas-powered-data-centers-could-emit-more-greenhouse-gases-than-en...
3•voxadam•16m ago•0 comments

Ask iFixit: How Do I Fix Sticky Plastics?

https://www.ifixit.com/News/93833/ask-ifixit-how-do-i-fix-sticky-plastics
2•yladiz•17m ago•0 comments

France's 'Secure' ID agency probes breach as crooks claim 19M records

https://www.theregister.com/2026/04/22/frances_secure_id_agency_probes/
2•Brajeshwar•17m ago•0 comments

Tesla lithium refinery discharge contains toxic metals, district demands halt

https://electrek.co/2026/04/21/tesla-lithium-refinery-toxic-metals-wastewater-texas/
3•breve•20m ago•0 comments

Show HN: Sift – save AI tokens in Codex/Claude by summarizing command output

https://github.com/panpeter/sift-skill
1•piotrwilczek•21m ago•1 comments

Alby AI Transport

https://ably.com/ai-transport
1•handfuloflight•21m ago•0 comments

Chat-py: A Python port of Vercel's chat SDK

https://github.com/desplega-ai/chat-py
1•tarasyarema•21m ago•1 comments

Scientists build 'gas battery' that turns noxious pollutants into electricity

https://www.the-independent.com/tech/battery-breakthrough-current-air-pollution-b2961684.html
1•giuliomagnifico•23m ago•0 comments

Show HN: Galen – a structured layer between humans and AI

https://galenvoice.com/
1•drgeorgealex•23m ago•0 comments

Spaced Repetition: Beginner Guide/FAQ

https://entropicthoughts.com/spaced-repetition-beginner-guide-faq
2•ibobev•24m ago•0 comments

A WebGPU Implementation of Surfel-Based Global Illumination

https://juretriglav.si/surfel-based-global-illumination-on-the-web/
3•juretriglav•24m ago•0 comments

X402-Powered X API

https://twit.sh/
2•mempirate•24m ago•1 comments

Symposium: Community-Oriented Agentic Development

https://smallcultfollowing.com/babysteps/blog/2026/04/21/symposium/
1•ibobev•24m ago•0 comments

Columnar Storage Is Normalization

https://buttondown.com/jaffray/archive/columnar-storage-is-normalization/
1•ibobev•25m ago•0 comments

Show HN: Postchi, An ide like api client, clean and local

https://getpostchi.com
1•hamedmonji30•25m ago•0 comments

Spectrum-Ts

https://github.com/photon-hq/spectrum-ts
1•handfuloflight•26m ago•0 comments

The eighth-generation TPU: An architecture deep dive

https://cloud.google.com/blog/products/compute/tpu-8t-and-tpu-8i-technical-deep-dive
2•meetpateltech•27m ago•0 comments

Show HN: Every 4s, Familiar OCRs my screen into Markdown (open source, local)

https://github.com/familiar-software/familiar
1•talsraviv•27m ago•3 comments

Gecko: A fast GLR parser with automatic syntax error recovery

https://vnmakarov.github.io/parsing/compilers/c/open-source/2026/04/22/gecko-glr.html
1•compilersfun•28m ago•0 comments

Russia's funeral industry booms amid record losses in Ukraine

https://finance.yahoo.com/economy/articles/russias-funeral-industry-booms-amid-102400132.html
1•jonnybgood•28m ago•0 comments

Ask HN: Why don’t laptops beep loudly like cars when locking and unlocking?

1•amichail•30m ago•3 comments

Show HN: Rapunzel – a tree-style terminal for AI agents

https://github.com/salmanjavaid/rapunzel/tree/main
1•WasimBhai•30m ago•1 comments

Show HN: Cai – Local AI Action Layer for macOS (Free, MIT, MLX)

https://getcai.app/
1•soyasis•32m ago•0 comments