Hacker News new | ask | show | jobs
by jancsika 1660 days ago
Operable phrase: at your fingertips!

I don't want Gentoo.

I want Gentoo that has been prepared as if the user just recompiled every goddamned program that makes up the core os, build desiderata and all waiting for me to make another change.

So if I decide I want to recompile coreutils after messing with a single implementation file, `make` or whatever will just incrementally recompile what is needed.

Another way to think of it: (I hope) all coreutils devs have a dev environment they use where they can make such a change and have very little latency from the moment of a code change to the moment they see results from running/testing the command in question. I want a distro that delivers code and source in such a way that the code of all core programs is just waiting for me to incrementally rebuild any of those programs.

And that wouldn't even really suffice-- there are probably some core programs which still have long incremental recompiling times. Digression-- I'd bet all the browsers are such examples-- in fact I'll just claim it here in the hopes that the internet gods strike me down. :)

Edit: clarification

1 comments

> I want Gentoo that has been prepared as if the user just recompiled every goddamned program that makes up the core os, build desiderata and all waiting for me to make another change.

You likely don't want that. You can expect compiled objects to be in a 10:1 ratio compared to the final build size. Rust is closer to 30:1 in my experience so far. Then you have projects that vastly exceed that.

As a dev, I'm constantly struggling with disk space with just the projects I'm working on.

This doesn't even begin to handle the issue of contained/reproducible builds.

And with things such as LTO, you might be waiting at the "linking" step way longer than what you might think.

I don't think you realize how GOOD gentoo makes it already, considering all the variables in question. You can rebuild and patch the entire system, from start to finish, with a single command. Take a moment to appreciate this fact alone.

> You likely don't want that.

Don't taze my fantasy, bro!

As it stands, OP's shorthand of "anyone" expands to "anyone with enough free time to slow smoke an entire pig" for a large class of programs. That's blocking a lot more participation and limiting the upshot of OP's rhetoric.

If someone builds a thing where I can fuck around in FF codebase and see the results in less than two minutes, "anyone" suddenly becomes a lot more meaningful/actionable.