I think its always interesting how the more you get into a community project, it can take you in directions that you never anticipated going towards in the first place. For instance, I wanted to be a gentoo dev for a very long time, so that I could help out with the tree, and ebuilds and things like that. I always figured that if that ever happened, I’d be working on stuff like documentation and who knows what else. What ended up happening is I’m doing something completely different — taking care of Planet Gentoo, helping out with user relations, and maintaining multimedia ebuilds and a little qa on the side. It’s nowhere near what I thought I’d be working on, but I’m very happy nontheless. Working on Gentoo and helping to improve things is great fun.
One thing I committed to the tree yesterday was the latest version of ogmrip. If you haven’t heard of it before, I’d recommend you check it out if you’re looking for a good little DVD ripping program. It’s similar to dvd::rip except that instead of using transcode, this uses MEncoder. That, and ogmrip is a lot simpler. I like it a lot, though. And I know how hard it is to find a cool ripping program out of the probable dozens that are in the portage tree, so check this one out.
One of the cool features that it has that I really like is it can encode your files and wrap them straight into Matroska. Woots. Now if he would only add chapter support too, that would be really cool.
It also handles subtitles pretty easily, which I consider “the final frontier” since there’s so many ways to get them, and it’s all very confusing, imo. It’s one of the few things I prefer leaving to a GUI when it comes to encoding video.
Working on ogmrip though got me thinking a bit about how life was like before I was a developer too, and some of the other frustrations that I had as a user. One of the problems with learning so much stuff is that I tend to forget what it was like, and what problems I wanted to fix. I am starting to remember a few of them though, and here’s what I can recall:
Everything was always marked unstable, and never seemed to get marked stable.
I always hated that — it seemed like all the multimedia stuff (which I still play around with a lot) is all marked ~arch and so you never knew if it was really unstable or just been sitting in the tree for years and no one has bothered to look at it.
Recently I joined the amd64 herd so I could hopefully help out on problems like that. So far I haven’t done jack squat because I’ve been sitting in the shadows just observing how things go on, for fear of breaking everyone’s boxes. But I have noticed one thing — a lot of the stabilization requests that come across that get neglected are for ebuilds that are are of just totally fringe programs. I mean, pretty much all of the bugs that I’ve seen have been for stuff I’ve never even *heard* of (and I’ve been using Gentoo a long time, too). I suppose that’s one reason that some of this stuff isn’t getting around to being marked stable, is because nobody uses it in the first place. I know when I see this stuff, I immediately think to myself “I’m not gonna test it, I don’t even know what it does, and I obviously don’t need it if I never heard of it.” I don’t know if that’s anyone else’s take on stuff or not. But it definately explains why my fringe amd64 stable requests pretty much just sit in the tree.
Anyway, I’ll see what I can do about that, at least for the multimedia stuff that I’m familiar with. It was a bit of a bumpy road getting dvd::rip stabilized since it had so many deps across a few arches that needed to be stabilized first, but it was kind of a cool sense of accomplishment once it was done. (Actually, dvd::rip is stable on all the arches except for x86, but that’s because of xvid-1.1.0 bugs. Just downgrade to xvid-1.0.0 and you’ll be superb.)
New ebuilds never get into the tree.
That was another thing that always bothered me about being a user, is ebuild requests would just sit out there in limbo and I had no idea why. Now I understand a little bit better. Its kind of the same situation as before, in that if there aren’t any devs that are interested in using it, they’re not going to support it.
I was poking around the media-tv bugs today, and I saw a few programs that actually looked pretty cool. I’m going to try and get them into the tree (provided they are stable, and work well) since it looks like they would be pretty beneficial. Then I started looking at other ones that I wasn’t interested in using, but they still looked pretty helpful. It got me thinking about something I read in this great article, Myths, Lies, and Truths about the Linux kernel.
The myth was this: “My driver is only for an obscure piece of hardware, it would never be accepted into the main kernel.” And the awesome response was this:
This just is not true at all. We have a whole sub-architecture that only has 2 users in the world out there. We have drivers that I know have only one user, as there was only one piece of hardware ever made for it. It just isn’t true, we will take drivers for anything into our tree, as we really want it.
Thinking about that really got me thinking about how I’ve always perceived Gentoo as well — just totally willing to take this fringe stuff that no one else has heard of and integrate it into the tree. Just replace “drivers” with “software” in that quote, and that’s the feeling I’ve always had, and I think that’s what makes Gentoo really cool. Sure, Debian, Suse, Fedora and Ubuntu might not package your really odd software in their tree, but Gentoo will! I’ve just always found it really cool that the tree has so much stuff in there that I have never heard of and never would have been able to find out about on my own.
I think that keeping these tiny, well-written and working applications in the tree just increases the cool factor, and I’m going to try and help out some more on that too.
I can think of some other stuff that bugged me, but I’m running out of steam so I better stop there. Gentoo is some great stuff, and that’s all there is to it.