Files
hpr-knowledge-base/hpr_transcripts/hpr2823.txt
Lee Hanken 7c8efd2228 Initial commit: HPR Knowledge Base MCP Server
- MCP server with stdio transport for local use
- Search episodes, transcripts, hosts, and series
- 4,511 episodes with metadata and transcripts
- Data loader with in-memory JSON storage

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-26 10:54:13 +00:00

189 lines
9.7 KiB
Plaintext

Episode: 2823
Title: HPR2823: Gentoo and why I use it
Source: https://hub.hackerpublicradio.org/ccdn.php?filename=/eps/hpr2823/hpr2823.mp3
Transcribed: 2025-10-19 17:19:34
---
This is HPR Episode 2823 entitled Gen2 and why I use it, it is hosted by Alden and is
about 12 minutes long and carrying a clean flag.
The summary is, I talk about what Gen2 is and why I love it so much.
This episode of HPR is brought to you by AnanasThost.com.
Get 15% discount on all shared hosting with the offer code HPR15 that's HPR15.
Get your web hosting that's honest and fair at AnanasThost.com.
Alright, so it's been a while, I haven't done a podcast in a while.
I almost stopped, so get into this little rut where I don't.
I just get nothing done, but I'm going to be doing some stuff today.
So I had someone recommend that I explain why I use Gen2.
I'm so sorry, I forgot your name if I meant to look it up before I'll put it in the
script.
Thank you for that suggestion.
So yeah, why do I use Gen2?
I'll start with what Gen2 is.
So for those of you who don't know, the way Gen2 actually works is rather than with
a neural package manager, all of the binaries get downloaded right from a server.
With Gen2, that's not the case, you don't have binaries, instead everything is compiled
from scratch.
So when you install a package, it downloads the source code and then compiles it and
installs it to your system, which I think is pretty neat.
So the reason there are a lot of different reasons people argue that it has some minor
performance boost.
I personally don't use it for that reason.
They're very well.
There is a performance boost, but it's so slim that it's really not worth compiling
every package on your system for, especially if you're on an X86 system.
This is basically worthless.
However, it does have some other advantages.
My personal favorite mechanism is use flags.
So what this allows you to do is choose what functionality you want and what functionality
you don't want.
So for example, I don't use system D on my system.
By default, lots of packages will try to load system D related libraries and stuff, which
means I'll have to have system D installed to use those programs.
But I don't with Gen2, because with Gen2, I can just set minus system D as a global use
flag, and then every single program will be compiled without system D support.
And so I won't need system D installed to run that program.
It's pretty convenient.
I do the same thing with the pulse audio and a couple other things.
You can also use use flags to enable certain functionality.
I have it enabling a whole bunch of stuff.
My memory eludes me.
But the other super cool thing about use flags is you can control, it's not just system
Y, you can control it per program, you can sort of micromanage.
So if a particular piece of functionality is causing you issues, you can just disable
it.
Or maybe there's some experimental feature that you want to enable, but it's not available
by default.
You can enable that.
It's super convenient.
It doesn't sound that convenient, but trust me, it's amazing.
Of course, it does come with a little bit of nightmares.
But once you fear the gist of how things tend to work, it's actually pretty neat.
Gentoo also has live packages.
And some other Deasters have that as well.
I know you can do this with Arch, but I just really like the way it's done with Gentoo.
So with a live package, instead of having specific versions, it's just downloaded from
a Git repository or a subversion repository or whatnot.
And it's built using the latest commit, which is pretty neat.
Using that on your entire system is a good way to break stuff.
But for specific programs, it works pretty well.
I don't have many issues with it.
With some programs, it's very useful to have that option to just use the latest version
no matter what.
Now I should mention the way you update live packages is different than the way you update
regular packages.
In order to update live packages, you'll have to use the live rebuild target.
However, that target is not very smart.
And it will just rebuild all of the live packages on your system, regardless of whether
or not they need an update.
So there is a pretty neat package on Gentoo called Smart Live Rebuild that will actually
rebuild things smartly.
So it only rebuilds stuff if it needs to be rebuilt.
If there's an update, I use it.
It works great.
It's amazing.
Strongly recommend it if you use a lot of live packages.
It is important to keep in mind that live packages will not be updated in your system update.
So I have made that mistake a couple of times.
I'll update my system every couple of weeks.
Everything's fine.
And then I'll use some other program and you're like, wow, this is super outdated.
How did that happen?
Well, it was probably because I forgot to update my live packages.
So just remember to do that.
I think I probably have more live packages than the average person.
It's usually not an issue.
It still isn't for me.
I have a stupid amount of live packages.
Just something to keep in mind.
Live packages are neat.
The way eBuilds work is also pretty cool.
So eBuilds, they're like the build script.
It controls how they build packages.
So if you use Arch Linux, it's basically the equivalent of a package build.
And I think eBuilds are really cool because they have functionality where you can include
these e-classes.
I'm not an expert on the portage by any means.
I'm a little bit fuzzy on how all of that works.
I have written a couple eBuilds myself, but I'm no expert, I don't pretend to be.
But you can basically import functionality, which is super cool.
You can do all kinds of fancy stuff with that.
Sometimes I think it was one package I made on eBuild for.
I didn't have to write any code pretty much.
I just included an e-class for CMake and for Git.
And all I had to do is specify the Git repo URL, and that's it.
I'm done.
Of course, you also have to specify it.
Some other stuff like the package name and version and whatnot.
But no actual code, which is super cool.
You can whip up a package in 15 minutes if you know what you're doing.
That's so neat, and it's also means you have less redundancy, you don't have so much
code that's just the same thing over and over because you can just import functionality.
I think that's super cool.
My system is also much lighter.
And being light isn't necessarily something that everybody cares about.
I care about it, but on the other hand, I have a tendency to intentionally break my
system because if you know what I'm talking about, you know what I'm talking about.
Some people just like to have stuff break so that they can fix it.
Which sounds insane, but I mean, honestly, if you're using Linux, you've probably had
to fix something at one point, and you've probably experienced that incredible sense of
success when you actually finally do it.
You get that a lot with Gen 2.
I won't lie.
It breaks a lot.
It's a lot of maintenance.
Pardon me, but it does make up for that with lots and lots of control.
It isn't just like randomly breaking.
There's always a reason.
It's usually your fault, and you just have so much control.
For example, System D, I know lots of people don't have a problem with System D. I personally
don't like it.
It's a matter of personal preference, I guess.
But I personally don't like it, so I just built my system without it.
No big deal.
You can just do that.
Paul Sodio, I just caught rid of it, built my system without it, console kit.
You can basically do whatever you want.
It's really neat.
The amount of incredible control you have, another super cool thing is the idea of building
your own kernel.
Of course, you can do this on other systems as well, but I just thought I'd love it
into this podcast since I don't really want to do an entire podcast on custom kernels,
but customizing your kernel is super neat, because going into Gentoo, I knew absolutely
nothing about the kernel whatsoever pretty much.
I had never compiled my kernel before.
I barely knew how it worked, and I'm still not an expert on the kernel.
I still barely know how it works, but I have a much better understanding now, and that's
helped me outside of just changing kernel options.
Yeah, it's really, really useful skill to have when you're using a Linux system, and
actually be able to customize the kernel itself.
That's also pretty neat, because you can control every aspect of how you do stuff, and
realistically, a mainstream kernel probably works fine.
They just turn on every option, and for the most part, it works.
But it's neat to be able to do stuff yourself and get an understanding of how the system
you have is actually working, and how the kernel is working.
It's super cool.
But yeah, that's really all I have to say.
If you have any feedback, please shoot me an email, or if you're listening to this from
HPR at a comment, that would be nice.
I love feedback.
Please give me feedback.
I'm glad to hear that my audio is good.
You guys made sure that last time.
So thank you.
I hope it has descended in quality.
Yeah, thanks, and I will hopefully be recording another podcast some time in the next couple
of weeks.
Yeah, see you then.
You've been listening to HECK Upublic Radio at HECKUpublicRadio.org.
We are a community podcast network that releases shows every weekday, Monday through Friday.
Today's show, like all our shows, was contributed by an HPR listener like yourself.
If you ever thought of recording a podcast, then click on our contributing to find out
how easy it really is.
HECKUpublicRadio was founded by the digital dog pound and the infonomicon computer club,
and is part of the binary revolution at binrev.com.
If you have comments on today's show, please email the host directly, leave a comment on
the website or record a follow-up episode yourself.
Unless otherwise status, today's show is released under Creative Commons' Attribution
ShareLive 3.0 license.