|
I used gentoo for a while in high school when I was young and foolish. It does not help you learn how to use Linux, it just teaches you "Oh that recent update broke something, better rebuild everything and hope that solves it"
|
# ? Jun 23, 2015 00:21 |
|
|
# ? May 1, 2024 00:18 |
|
OldAlias posted:don't take the difficulty of building something stupid like gentoo on the desktop as a point of pride. there are use cases for the os, i know a few shops that use it in production as a server. as previously mentioned you can learn server things with much less headaches on almost any other operating system. if you don't understand much of what you're doing setting it up you aren't going to learn anything, or be magically more wise by virtue of using it. if you want tape together a bunch of components yourself at least use arch, you'll actually finish the install in an afternoon why gentoo over centos or ugh, debian or ubuntu in tyool 2015
|
# ? Jun 23, 2015 00:46 |
|
nebulous performance reasons afaik
OldAlias fucked around with this message at 01:04 on Jun 23, 2015 |
# ? Jun 23, 2015 00:55 |
|
OldAlias posted:nebulous performance reasons afaik i'm reading this as no reason whatsoever
|
# ? Jun 23, 2015 01:21 |
|
if we omit PAM everything runs faster!!!!
|
# ? Jun 23, 2015 02:46 |
|
fun fact. much of the binary code in a linux should arguably be compiled -Os or maybe -O1 because 99.9% of it is not an inner loop and being smaller will make this non critical code thrash cpu caches less and occupy less physical ram which will actually improve average system performance much more than the theoretical 2% gain from funrolling or w/e the remaining code which is important to hyper optimize probably already has been, in a way where you get the right inner loop on many diff cpus without needing sep binaries for each. or that's how it works on good operation systems anyways this is why Gentoo is, and always was, the equivalent of ricing it's also why it's bullshit for anybody but the upstream developer of a package to control compiler options. they're in the best position by far to evaluate when and where to optimize effectively. (also they probably won't source patch critical security binaries with dumb bad poo poo that globally weakens ur rng) what I'm saying is all Linux are a gentoo, it's just that gentoo is extra gentoo
|
# ? Jun 23, 2015 03:25 |
|
literally every distro I ever encountered impaired Firefox perf (especially startup) by loving with heavily researched build config. at one point Fedora's binaries started up ~20% slower and were about as much worse on Sunspider, and they were generally pretty sane as measured against their peers
|
# ? Jun 23, 2015 03:30 |
|
I think that is because the Moz use PGO and no-one else does.
|
# ? Jun 23, 2015 03:32 |
|
no, this is from long before we did PGO on Linux. it was mostly from breaking things out into more shared libraries, and sometimes from "making compilation options consistent with distro preferences". or taking out the symbol-trimming custom linker script because it interfered with their usual debug system packaging. or such.
|
# ? Jun 23, 2015 03:51 |
|
I mean at one point Netscape had a custom gcc (egcs) to reduce symbol table weight, but I didn't expect distros to care *that* much about their users' experience
|
# ? Jun 23, 2015 03:52 |
|
Subjunctive posted:no, this is from long before we did PGO on Linux. it was mostly from breaking things out into more shared libraries, and sometimes from "making compilation options consistent with distro preferences". or taking out the symbol-trimming custom linker script because it interfered with their usual debug system packaging. or such. wouldn't it be cool if you could ship your own binaries, since you're the application author and you sort of know how these things should be made
|
# ? Jun 23, 2015 03:59 |
|
Suspicious Dish posted:wouldn't it be cool if you could ship your own binaries, since you're the application author and you sort of know how these things should be made ewt wouldn't stand for it 20 years ago, and I won't stand for it now
|
# ? Jun 23, 2015 04:00 |
|
Subjunctive posted:ewt wouldn't stand for it 20 years ago, and I won't stand for it now who
|
# ? Jun 23, 2015 04:01 |
|
the one who wasn't Bob and wasn't not-that-djb
|
# ? Jun 23, 2015 04:02 |
|
I imagine that they have paintings of them in the hallway at RHAT
|
# ? Jun 23, 2015 04:03 |
|
Subjunctive posted:no, this is from long before we did PGO on Linux. it was mostly from breaking things out into more shared libraries, and sometimes from "making compilation options consistent with distro preferences". or taking out the symbol-trimming custom linker script because it interfered with their usual debug system packaging. or such. i remember pitching my college roommate a linux distro/crazy infrastructure that did live PGO on almost everything with p2p optimization distribution, like at any given time some subset of your system packages were doing pgo based on your actual usage (with dumb stochastic bs), your results were distributed and matched with others based on system and usage profiles, so youd also be pulling new builds, verifying them and profiling them against your best all the time. i dont remember if pgo was the acronym of choice back then i was on pills, had just taken advanced compilers, and had a bootstrap installed gentoo. a real fuckwit
|
# ? Jun 23, 2015 04:14 |
|
Subjunctive posted:I imagine that they have paintings of them in the hallway at RHAT nope, just a bunch of posters about Fedora and JBoss. i wasn't around during the jbj days.
|
# ? Jun 23, 2015 04:22 |
|
Breakfast All Day posted:i remember pitching my college roommate a linux distro/crazy infrastructure that did live PGO on almost everything with p2p optimization distribution, like at any given time some subset of your system packages were doing pgo based on your actual usage (with dumb stochastic bs), your results were distributed and matched with others based on system and usage profiles, so youd also be pulling new builds, verifying them and profiling them against your best all the time. i dont remember if pgo was the acronym of choice back then I think there was a Linux distro that was based around this idea for like 15 minutes until they realized they'd need network infra more sophisticated than a cdrom.com mirror and faded below the threshold of slow Slashdot news days. confidential to SD: Erik Troan
|
# ? Jun 23, 2015 04:22 |
|
Suspicious Dish posted:nope, just a bunch of posters about Fedora and JBoss. i wasn't around during the jbj days. jbj is latter-day, man. I'm talking about Mother's Day poo poo.
|
# ? Jun 23, 2015 04:24 |
|
Notorious b.s.d. posted:if we omit PAM everything runs faster!!!! On a machine dedicated to gaming, you can just set init=/usr/bin/xinit
|
# ? Jun 23, 2015 05:03 |
|
Wintering Stinkbug posted:On a machine dedicated to gaming, you can just install windows fixed
|
# ? Jun 23, 2015 19:51 |
|
yeah, dedicated gaming system is just about the worst application of general purpose desktop Linux.
|
# ? Jun 23, 2015 20:29 |
|
Suspicious Dish posted:wouldn't it be cool if you could ship your own binaries, since you're the application author and you sort of know how these things should be made i was really happy when Linus bitched about this at debconf. of course, the result has been fuckall happening. the only movement I've seen on it was that stupid idea to use containers. hey guys, instead of making our software not suck and assume hard paths like /usr/share/gtk, let's just containerize everything and download gigabytes to make each individual desktop app work. totally great idea.
|
# ? Jun 23, 2015 20:44 |
|
clearly the best way to implement application bundles is for every application to bundle its own linux distro
|
# ? Jun 23, 2015 21:13 |
|
crazypenguin posted:i was really happy when Linus bitched about this at debconf. of course, the result has been fuckall happening. nobody thinks this
|
# ? Jun 23, 2015 21:21 |
|
Suspicious Dish posted:nobody thinks this did I misinterpret this? http://0pointer.net/blog/revisiting-how-we-put-together-linux-systems.html quote:In the example above, we have three vendor operating systems installed. All of them in three versions, and one even in a beta version. We have four system instances around. Two of them of Fedora, maybe one of them we usually boot from, the other we run for very specific purposes in an OS container. We also have the runtimes for two GNOME releases in multiple versions, plus one for KDE. Then, we have the development trees for one version of KDE and GNOME around, as well as two apps, that make use of two releases of the GNOME runtime. Finally, we have the home directories of two users. To me that sounds like Firefox gets developed against Fedora, so to install firefox under this scheme on debian or whatever, first download an entire fedora OS image. maybe the idea is that apps will only depend against runtimes or something?
|
# ? Jun 23, 2015 21:48 |
|
okay, yeah, it looks like runtimes as the only deps for apps. hmm, maybe this is alright, except for the btrfs bit. that's still a completely stupid pile of crap just to work around hard-coded paths in shared object files.
|
# ? Jun 23, 2015 22:14 |
|
It's mostly to work around hard dependencies on library versions, not paths.
|
# ? Jun 23, 2015 22:25 |
|
crazypenguin posted:okay, yeah, it looks like runtimes as the only deps for apps. Note that we're really pushing xdg-app as the real implementation, which doesn't use btrfs. I don't know if Lennart is still pushing his btrfs system.
|
# ? Jun 23, 2015 22:29 |
|
i don't think so, it's really about paths. the trouble is that we currently do things like name a package "gtk-2.0-0" and thus it owns that name under /usr/lib and such, even though its gtk 2.20.1-ubuntu6. skipping the runtime stuff and just talking packages, if we installed everything to, say, /usr/pkg/gtk/2.20.1-ubuntu6/{bin,lib,include,share}, then that could co-exist with any other version including -ubuntu7 just fine. all our troubles stem from wanting one thing to own the name "gtk-2.0-0" in /usr/lib and one package putting its data under /usr/share and so on. and this btrfs approach is ignoring and not fixing that problem, and just heaping more abstraction layers on instead. Suspicious Dish posted:Note that we're really pushing xdg-app as the real implementation, which doesn't use btrfs. I don't know if Lennart is still pushing his btrfs system. I'll put it on my todo list to check out. haven't seen anything about it yet. thanks.
|
# ? Jun 23, 2015 22:46 |
|
from the xdg-app page:quote:A runtime provides a well-defined environment that an app can run in. Examples would be "GNOME 3.14" or "KDE 5.6". A runtime can be thought of as a /usr filesystem with fixed contents. When a bundled app gets run, the runtime it needs gets mounted at /usr. this is exactly what I was initially afraid of. how is this not essentially going to be an os per application if it's providing all of /usr?
|
# ? Jun 23, 2015 22:56 |
|
Not all of /usr, just enough to run applications that can connect to a display server and sound server running outside the runtime, with stuff like fonts presumably bind-mounted in. At first read it does look like "Launching firefox causes a gigantic fully loaded bloated and isolated Ubungu VM to get loaded and then firefox to get launched from there" but it is actually nicer than that The real problem is that this model is too heavyweight for things that aren't desktop or server applications. Like you couldn't sanely use this to install nc or whatever.
|
# ? Jun 23, 2015 23:41 |
|
crazypenguin posted:all our troubles stem from wanting one thing to own the name "gtk-2.0-0" in /usr/lib and one package putting its data under /usr/share and so on. no, the problems stem from gtk not taking binary compatibility seriously so the packages in the OS can be updated without every goddamn app breaking you'll note that Apple doesn't ship 15 different versions of AppKit or UIKit in one OS, that's because new versions are sufficiently compatible with code built against old versions (and extensively tested for that before release)
|
# ? Jun 24, 2015 00:54 |
|
crazypenguin posted:this is exactly what I was initially afraid of. how is this not essentially going to be an os per application if it's providing all of /usr? it will be an OS per application and it will be hilariously terrible the solution is to take binary compatibility of libraries seriously one of the only unixoid libraries I've found that seems to is, surprisingly, libssh2. they made some mistakes in their API (using unsigned int for sizes instead of size_t) and they've chosen to preserve them due to binary compatibility. (I've asked them to make that configurable so we can at least use the right types in situations where we don't need bincompat)
|
# ? Jun 24, 2015 00:58 |
|
Subjunctive posted:I mean at one point Netscape had a custom gcc (egcs) to reduce symbol table weight, but I didn't expect distros to care *that* much about their users' experience if distros cared about user experience they wouldn't make linux
|
# ? Jun 24, 2015 01:15 |
|
eschaton posted:no, the problems stem from gtk not taking binary compatibility seriously so the packages in the OS can be updated without every goddamn app breaking sd can you please beat your former red hat colleagues over the head with this post thx "oh it's just the interface for putting windows and buttons on screen nbd we can break that poo poo constantly and nobody will care"
|
# ? Jun 24, 2015 01:29 |
|
Mr Dog posted:sd can you please beat your former red hat colleagues over the head with this post thx No. Breaking poo poo in minor updates and having qa miss it is a time honored practice. But really, the auto depsolver is reasonably good. Apple doesn't have a lot of problems because they keep the public API pretty stable. You're just as hosed as Linux if you rely on private/undocumented stuff, because keeping that stable/backwards compatible means hamstringing yourself. Also, .app containers basically being chroots with full deps inside them helps an awful lot. crazypenguin posted:i don't think so, it's really about paths. ... with LD_LIBRARY_PATH or a chroot? How is that not just as lovely as Lennart's idea? Or containers?
|
# ? Jun 24, 2015 02:14 |
|
just statically link everything, what could go wrong?
|
# ? Jun 24, 2015 02:27 |
|
tried it, the distros split it back out
|
# ? Jun 24, 2015 02:38 |
|
|
# ? May 1, 2024 00:18 |
|
evol262 posted:And you expect the linker to resolve this sanely how? Explicit -ubuntu7 names? Packaging binaries in /use/pkg/ubuntu7/bin you'd use the normal, existing so names. it's perfectly possible already for rpath to do this sensibly already. App bundle binaries use rpath to look things up locally, and locally are symlinks to the correct so files in the correct packages. so basically under /usr/pkg/yosposbithc/1.0.0/lib/libgtk-2.0-0.so -> /usr/pkg/gtk/2.20.1-ubuntu6/lib/whatsever.so. so at install time, the correct dependencies are installed, and the correct symlinks created to the exact package version, and then it's just a normal program you just run. no env vars, no container setup. just a program.
|
# ? Jun 24, 2015 02:44 |