>no real purpose outside of making packages take 10x longer to installWhat am I missing here?
-march and any compile flag you wantuse flagsebuildsopenrc by defaultif you search these terms and it doesnt make any sense then obviously it isnt for you
>>108062354Having OpenRC is nice, but I still don't see the purpose of compiler flags, is there ever a case where you actually get a substantial performance gain with a custom compiled package over just a binary?
>>108062354The entire idea behind gentoo is to compile your entire system targeting your exact architecture and facilitate that process? If so, that's pretty cool. Compiling from source is often a pain in the ass. Gentoo has been a meme for he longest time but I never really looked into it.
>>108062267steam ruins my gentoo install with those 32bit deps
>>108062400Yes.
>>108062400No, it is minimalist brainrot syndrome. There are no performance gains, build servers already use highest optimization flags. It is for excluding shit at compile time
gentoo is based
>gentoo threadinb4 wall of text
>>108062267Use CachyOS instead, they do most of the work for you with package optimizations.>>108062422https://github.com/ivan-hc/Steam-appimage
>>108062450They do not, they don't do pgo or use x86-64-v4 features.
>>108062462second this
>>108062462>>108062513third thisposted from my macbook
>>108062400>>108062450do you seriously think a binary that runs on both a core 2 duo and an emerald rapids xeon (as is the case with most distros) is completely optimized for either case?
>>108062267
>>108062267yes, a brain to comprehend gentoo
>>108062584>do you seriously think a CPU that runs a binary from 20 years ago and a binary for 0 years ago hasn't completely optimized for the 20 year old binary?
The point isn't the compiling nor the optimizations. The point of gentoo is to have absolute control of what's on your system. The only way to remove harmful features from software is to compile them yourself with those features disabled. Eg removing dependencies on redhat crapware. Or sometimes the other way around, you get to add non-standard features to the software you run. Eg EAC compat in glibc, alsa support in firefox, etc optional patches.We've had these threads for as long as I remember, when will you learn?
They have a lot of binary packages available now which solves the compile time problem. I have no idea how plausible it would be to install a system and not really have to build much.
>>108062488just do it
>>108062584There is no measurable difference
>>108062407>your exact architectureas opposed to the prebuilt packages that target half my architecture?
>>108062267The boomer mindset that is now seeping into Gen X and older Millennials.>Muh nostalgia>Muh learn how to walk before ya run>Back in muh day we had to compile our own drivers It's all old fucks who can't let go and seem to have forgotten that we live in a new paradigm where we don't have to instead each and every library we need for an app or software package. >B-but but butBut nothing. Linux has evolved and is far better now than it has ever been. Gentoo, Slackware, LFS are for chuds. People who value their time install Fedora, Mint, Pop, Ubuntu, Catchy, or a slew of other distros that make your life 1000 times easier.That's not hate it's truth
>>108062267>no real purposebesides PURGING POETTERINGWARE FROM MY DISTROTOTAL POETTERING DEATH
>>108062267>take 10x longer to installmore like x100000, retard. firefox takes an hour and a half to compile for me here.>What am I missing here?you're too low iq. gen2 is just not for you.>>108062656lmao! so true
>>108063491holy filtered
>>108062354>package manager written in python awardguix >crux >
>>108062267Probably the most fresh distro among stable.Also ability to customize as you want. You can literally cut out something rather huge.But for most usecases yeah, it's kinda a waste of time. It was a good next exercise to learn more about Linux ecosystem after Arch for me but I called it a day after that.>>108062511>>108062584But how does that help? Check what instructions are in v4 in comparison to v3 which is minimal for at least RPM distros now and tell me how is that shit used by system.The irony is the shit that can actually benefit from those is usually something that you won't compile.PGO is... well... PGO.For me the only noticeable win was faster boot time compared to Arch, both booted directly into kernel.Also those niggers used python for portage, fucking subhumans. I get that with compilation times loss from using python is not as noticeable as it is for dnf<5 but still. The fact that walking over dependency graphs takes so long and that simplest loops are not auto resolved with compiling twice is such a fucking meme.
>>108064803agree the simple fact that portage is a python mess makes Gentoo dogshit. I wrote my package manager in go and it's awesome, zero external dependencies, statically compiled x86 and arm binaries. I can uninstall glibc and my package manager still works
>>108064854It takes hardly any time to compile things, outside of chromium or something. So it doesn't bother me. But yeah, agree about python. But until an alternative exists it's the best I have.
>>108062267packages are optimized for your system, because it was compiled on your system
>>108064803>mentions guixfuck youlisp is fast, don't compare it to python
>>108062400>is there ever a case where you actually get a substantial performance gain with a custom compiled package over just a binary?Yes, see CachyOS benchmarks from Phoronix that constantly stomp over other distros.Optimised binaries and kernel packages make a difference.
>>108064857static linking is just interpreter (ld.so) + all its dependencies bundled into one binaryanyone can do that
>>108064857On Gentoo if you unmerge Glibc then nothing breaks because the preserved libs feature of Portage keeps them there. Yes, they thought of that.
>>108064857>tar czf your-package-manager.tar.gz your-package-manager-binary /usr/lib/glibc
>>108062422I use an Archlinux chroot for that. There are signs Valve may finally have realised 64-bit computing exists though. On Windows they're shipping 64-bit binaries now, on macOS they did that ages ago thanks to Apple (but who games on a Mac?) so Linux is hopefully next.
im being swayed as my hardware ages and everyone else is going for latest today
>>108065029what was valve's reason to use 32-bit binaries?is it just them being retarded or some technical reason?
>>108064963It's a retarded language that should be dead for like 30 years now but bunch of thinking cap niggers keep it alive for some reason.
>>108065154Just Valve time.32-bit computers used to still be in use even though everything else has long since moved on only now Valve is doing so. Steam is quite possibly the only piece of 32-bit software running on your PC.
>>108065162lambda calculus is the correct way to do computation
>>108064979yet none of the distros do that, go ahead delete /lib/libc.so.6 or equivalent and show me your package manager still working>>108064993delete /lib/libc.so.6 and /bin/python* and show you me how portage recovers>>108065004 what if tar is not statically linked, what if you don't have a local binary and need to fetch it from the repos
>>108065390you extract the tarball archive into your ISO, retardwhen you boot, glibc is there, voila, super easy>delete /lib/libc.so.6 and /bin/python*delete /usr/bin/your-package-manager and let's see your package manager recoveryour argument is midwit, anon
>>108065420why are you talking about an ISO retard.my point is if you break python portage is broken, if something breaks glibc 99% of distros are broken, with my package manager is just do packagemanager install glibc and it fetches the archive from the repo and installs it. zero dependencies required, no buysbox required either.
>>108062267>Source-based with optional binary packages>Optimized builds for your specific processor>Compile time customization through USE flags>Overlays for custom repos>Very simple to write your own ebuilds>Very simple (and expected) to compile your own kernel>Good documentation>>108062400Yes.>>108063159>that imageBy Me.
>>108064854>>108064857>python portageI wonder how much of the slowdown during dependency resolution have to do with Python and how much with the algorithmical complexity (combinatorial explosion) of graph traversal with backtracking constrained by masks, USE flags, slots, etc...>>108065207Based, although not a single Lisp is actually implemented with λ-calculus, that would be unbearably slow without dedicated hardware, they are all implemented with virtual machines, or compiled, it's more of a way to think about computation.
>>108065443Python is simply a system dependency like many others, similarly Portage depends on Bash too, and?
>>108065448I heard that their algorithms are suboptimal trash.Doesn't cancel out the fact that they chose python. And that it does its job in slowing shit down.
>>108065162>t. brutally filtered
>>108063491Why are zoomers so scared of actually learning something?
>>108062488You just know the gentooFUD schizo will appear
>>108062400Not just performance, also security...if you don't need a specific part/functionality of a program just dont compile it with the program. Less code getting loaded into memory = less attack vector for unknown vulnerabilities. Also it all adds up...think about all the unnessesary ram usage when you deploy thousands of virtualservers etc...this also makes backups smaller that are done of those machines...storing and loading bloat is expensive.
>>108066701but you need all the python bloat that comes with portage and extra overhead from compiling everything lmao, if you want a minimal system use alpine.
>>108066950>all the python bloat that comes with portagePython itself is not even that bloated, at its core it's a bytecode compiler and virtual machine with a bunch of data structure implementations all in C, sure it has a complete standard library written in Python (oh noes the horrors imagine having a decent std huh rustfags?)It gets its bad reputation from its ecosystem and packaging, but Portage has no third party Python dependencies.>extra overhead from compiling everything???
>What am I missing here?/etc/portage/patches
>>108067024>???are you retarded or just pretending? do you think gcc and all the other development tools and headers don't add extra bloat to your minimalist setup?
>>108067155>gcc and all the other development tools and headersNo faggot, that's not what bloat is, that is called useful (actually fundamental) software.Actual minimalism braindamage here.
>>108067178didn't realize I was talking to the anime avatar schizo tard, here have your last (you)
Compiling isn't an installation process. And it takes much longer than that.
>>108067207If you don't have a compiler installed and you can't compile you're not worth talking to anyway.
>>108065154You don't have video games otherwise faggot
>>108067266if you don't have your own distro you're not worth talking to either
Look at these faggots posting anime girl avatars.They won't even use git. They don't know how virtualization works.They think 32 bit dependencies are bloat. They are unemployed underaged skiddies.
>>108062267Nothing. It's pointless. Which was fine when it was based, but it's been pozzed for years. I mean, look at what this thread became almost instantly.
>>108067325I built my distro and package manager from scratch, full multilib support, binary repos and cross compilation to arm64 for my Pi that also runs my own distro. what have you done faggot?
>lambda calculus>it's not lambda and its not calculustotal cs death
It's the only sane distro but sadly trannies are slowly infiltrating into the gentoo development community so we'll see how long it lasts.
>>108062450you are a retard
i just find it weird that arch is so highly respected here for being about setting it up how you like, yet gentoo is made fun of for providing even more options for setting it up how you likethe issue of compilation times is so overblown as well imo. sure it may be off-putting during the initial installation, but like once things are set up, why would i care how long it takes to compile a new version of my browser? i can keep using the current version while it's building, i'm not using my computer 24 hours a day, either. not to mention there are binary packages available for things you don't care to build yourself
>>108067406I was going to do that but it became so fucking boring to write install scripts for the packages that I quit early. I had my own package manager which was just a shell script and it supported dependency resolution and everything was fucking simple. Just too much work with the actual nuances for each package.
>>108066950I would prefer portage to be written in lua. I do think it has to be an interpreted language, because you want it to be able to take lots of custom changes.But it's python. I don't really care about conpiling that either, because i need it for other things already, so it is not bloat.Idk what your definiton of bloat is, but it is surely something unique to you.I am not going to reject gentoo and go for a binary distros because the package manager is written in a language i have to install in all of them.I dont understand what the argument is here.
>>108067444Have you been on 4channel for 30 minutes? Your perspective is entirely wrong. Arch has been made fun of this board for literally a decade. Gentoo was largely praised up until recently (because of it's tranny coup)
>>108067266I use proprietary nvidia drivers, so i need to have a compiler installed, and the kernel sources, anyway, to build the module.
>>108067446yeah it can get boring so I implemented a script to scrape the arch pkgbuild to make a new package structure that fits my package format. so instead of doing everything from scratch I just do a few adjustments in nano and I'm done.
>>108067484i'm just talking about recently
>>108067504I guess that works, nice. I got as far as into compiling Xorg and I just said fuck it I'm not maintaining this shit.
>>108062267I used gentoo for three years, over a decade ago. And my only prior experience with Linux was a year of Ubuntu.Gentoo helped me a lot.You don't need to be skilled to use Gentoo, you acquire skill by using it. All the docs and manuals exist. You just have to be ready to read a bit.In fact, Gentoo IS the solution to distro hopping.If you know how shit works, you can modify any distro to your liking.You use Fedora or Ubuntu and don't like something? Thanks to your prior Gentoo experience, it's no problem for you to build your own package.Distro hopping is retarded. If you switch distro than twice in a year, you unironically need to install Gentoo and main it, until you feel that you are ready. Once you have knowledge and you don't get anything new out of it, you can go for something that doesn't take hours to update firefox.
>>108067577>you can go for something that doesn't take hours to update firefox.But it doesn't, thanks to FEATURES="getbinpkg"
>>108067596Why use gentoo if you then get a binary package?Compiling firefox is a good experience, because it has so many build flags and so many different languages.So rather than having to maintain a user.js with 500 flags to disable telemetry and spyware, you just don't compile that shit in in the first place.I would take clang and llvm from binary packages, though, there is no reason why you would ever care about that shit, llvm is cancer that should not exist... but still does, because corpos dont like the gcc license.
>>108067546yeah I automated a lot, local repology instance to keep track of outdated packages, bump version that automatically bumps a package version, applies substitution to sources file and commit to git. automatic sync of local packages with the binary repo and so on. next automation step would be to have a git hook that sends build requests to a build server that then uploads successful artifacts back to the binary repo. something like alpine does with their apk builds.
>>108067632>Why use gentoo if you then get a binary package?You still configure USE flags and stuff for all packages as before, portage simply pulls a binary build of a package from the binary repo IF it matches your USE flags. If it doesn't, it compiles from source.
>>108067432Did it take 8 hours to compile that response?
>>108067697-> firefox 147.0.3 2 x86_64 native 27m58s-> nodejs 25.6.0 1 x86_64 native 24m36s-> gcc 15.2.0 1 x86_64 native (multi) 7m22s-> rust 1.93.0 1 x86_64 native (multi) 21m5scompilation times are not bad if you don't have a shitbox, the worst is probably webkit2gtk but appart for lutris nothing I use requires it
>>108067546>>108067638Are you doing LFS?
>>108067851it's mostly based on LFS/Gaming on LFS and Arch but I have everything packaged including KDE Plasma.
>>108067950>KDE PlasmaGigabloat.
>>108068010but it's comfy so I don't care
>>108067638I see, very nice work. As a last resort before ditching my idea of my own distro, I tried to use the BSD pkgsrc package manager (builds from source) and I managed to get Xorg running but even with pkgsrc's patches it was too much work for me because there were bugs related to linux even though pkgsrc theoretically supports linux.
Opinion on doing bootstrapping from Gentoo stage 1 with a custom profile?Can it be considered an LFS-lite experience?
>>108068052yeah it's a lot of work but I always liked playing around with LFS/Gentoo/Kiss so making my own distro made sense to me and I decided to make the package manager from scratch when I realized my lack of programming skills wasn't an issue anymore thanks to AI.
>>108068119while i'm not an expert, from what i understand starting from stage 1 is likely practically pointless unless you have an actual need for it, like if you're targeting an unusual platform or something. even with a stage 3 install usually the first steps involve setting up your make.conf and rebuilding everything, replacing the binaries from the stage 3 anyway
Which way is the logo facing? is it an arrow pointing right or a pacman eating left?
>>108065390>delete /lib/libc.so.6 and /bin/python* and show you me how portage recoversWhy are you deleting that though? What even is this argument? If you fucked up that catastrophically restore from your last known good backup. You shouldn't be manually deleting ANYTHING in /lib. If you are then you clearly don't know what you're doing and Gentoo is not for you.
>>108068119What >>108068270 said, you don't need it. If you're thinking you should do that so everything uses your custom flags or whatever then you still don't need it, emerge -e @system followed by emerge -e @world is enough.
emerge -e @system
emerge -e @world
>>108068270>>108069134But I wanted to hypothetically use a non-supported init or develop my own implementation of portage I would need to bootstrap from stage 1 right?I might also just do it to better undestand Gentoo and Portage as a whole, right now it's not entirely clear what is configured and how are things built in the profile.
>>108069215>But I wanted to hypothetically use a non-supported init or develop my own implementation of portage I would need to bootstrap from stage 1 right?Not at all. Just make an ebuild for your "hypothetical non-supported init" and unmerge OpenRC and Sysv. Be aware that you'd be on your own to make init scripts for your hypothetical non-supported init but you absolutely don't need a stage1 for that.Stage1 installs are designed for bootstrapping new platforms (think a new CPU architecture, etc).
>>108069238>>108069215Where you would need a new stage1 though is if you were doing something unusual like using a different libc like Relibc or Picolibc, etc, instead of one of the supported libc's (currently only Musl and Glibc) or using different toolchains like Clang as a system compiler with libc++ (Clang didn't used to be supported as a system compiler without the GCC bits but now it is).
>>108069262>>108069215Also, as for developing your own Portage, as long as you support the same package database format in /var/db/pkg then you could replace Portage without needing an entire new stage1.Keep in mind this is a very large undertaking and would be a lot of work. There were attempts to replace Portage with a C++ implementation called Paludis but it failed because it didn't keep up with Portage development and was full of bugs so couldn't reliably be used.https://wiki.gentoo.org/wiki/Paludis
>>108069215>use a non-supported initYou could literally just point /etc/inittab to your own shell scripts in /etc/init.d/
>>108069238>>108069262>>108069457>>108069625Thanks for the information.