As of 2016-02-26, there will be no more posts for this blog. s/blog/pba/
Showing posts with label experience. Show all posts

I still can't believe it's been three years when I checked the date of installation of my Gentoo, I thought it was only two years. Time flies by fast, I guess. During this period, Gentoo hardly had disappointed me and it was never broken by updating. By broken, it means system doesn't get unbootable or something oopsie which needs some special hacks in order to fix. It works nicely for me.

It's no argue from me that Gentoo isn't suitable for everyone, especially people who don't RTFM and/or STFW, or update system in regular basis. Gentoo requires your attention, but that is same for all systems in my opinion.

From time to time, there are some posts about leaving Gentoo or suggesting it is dying. A leave is really up to the user, when he or she feels it is not the distribution they like, then that's what it is. I never got to understand what those leaving posts were for. If you want to leave, then just do it, why do you show up and mumble things without much constructive effect added to community? It's not like you would be able to give more feedback sine you were not be using Gentoo anymore.

Furthermore, if you've used Gentoo for a year and you want to leave, I don't think it's wise unless you don't actually use or utilize it well. Flexibility of merging is one major attraction from it, you can't find such thing on binary-based distribution. Only thing you need to pay is the compilation time. I don't agree that would be really an issue if you are already a one-year user. The fact is merging doesn't really take long time, you can't argue that compilation time takes a lot of your time. Nowadays, 1 CPU has multiple core, you only need to spare one core for compilation. Computer is old? My laptop is more than five years old, long compilation time is just for an excuse and nothing more from it.

As you may have heard about USE flag, it's the main reason of why I like Gentoo. If you have compiled from source tarball on you own and have checked out the build script of the source, you would know there usually are some switches to enable/disable features, which would be regarding the dependency you will need to compile the source. Generally, a well-written ebuild will pass those switches to Gentoo users as USE flags. That is not something binary-based distribution can give you.

Stability is another point, but this vary with the environment and packages you merge. I dare to say as long as you use stable packages, i.e. no ~arch, your system should be 99% stable. 0.5% unstable is the bugs, another 0.5% is your stupidity. (these numbers are just from my feelings)

This brings up the question: Do you really need up-to-date version?

To be honest, the stable packages in Portage tree isn't so out of date. They get updated very often certainly for common packages and almost immediately after a significant security hole being exposed and upstream has a quick fix.

If you really need to use latest version, then ~arch on the package or use those definitely-straight-out-source-repository 9999 ebuilds. From my experiences, I rarely needed to use latest version, simply because you don't even know what latest version has provided features which don't exist in previous version. Latest version is just for feeding your ego, not your actual need.

As I learn more and more about Gentoo, I have my own way to do the update and I stick with it, never got myself into troubles. One thing very important for Gentoo users about maintenance is to update in regular basis, I would say at least once a month, weekly is the best in my opinion.

If you think using Gentoo can make you learn more about a package or Linux, well, I don't think that's entirely true. For configuration file (RC), it's just as same as other distribution, RC files are processed by the programs, not Gentoo. It's hardly for you to learn from Gentoo instead of from manpage or some documentation. You still need to read documentations if you read other distributions. What distribution you use isn't very important for learning a package. The important factor of leaning Linux is you, not the distribution.

And Gentoo actually has some custom programs or scripts in order to help some packages run smoothly, e.g. multi-slots, webapp setups, Bash completion files, font-config, etc. You actually don't need to touch some configuration files, just run the helper and press 1 or 2 or 3 or whatever the option is numbered with.

Nevertheless, you still have chance to learn a little when you first install Gentoo. But you have Gentoo documentation to help you out, you only need to read once and do once. At least, I only did once because I have never broken my Gentoo, never had a chance to do the second time.

The fact in it is that it's not much difference from other distributions, they just have some fancy GUI or TUI to help with those. Some basically are still configuration files, and you can edit with text editor. If you really want to learn, then do it from source tarball, that's how you learn things the most.

For a Gentoo newbie, the biggest obstacle is actually configuring kernel in my opinion if you don't want to use default/safe settings. There are like a million options to choose in kernel. But once you successfully compile your first working kernel, you wouldn't have anymore problem. And you will and can do it at once as long as your RTFM, which is the famous Gentoo handbook.

I haven't checked newly added option in newer versions of kernel for very long time. Every time, a new version is marked stable, I just copied the old configuration to newer kernel and compiled it. It has too many new stuff, so I stopped checking out the new options and just went straight to compile with old configuration file. So, that 0.5% comes from this kind of behavior, user's stupidity. But it only counts when things is broken due to this kind of laziness.

As of dying of Gentoo, I would say that's unlikely. You can't find one like it, that's unique, which means market that others can't take from it. It owns a portion and that always is there, even thought it's just a small portion.

What actually would die is a derivation of a distribution without uniqueness. They come and disappear. For long life of a derivation, you just can't cut it with only some fancy default background or pre-selected packages. Fundamentally, it's still the same as the original.

Three years, I've learned a lot more about Linux. Even though it's not directly about Gentoo, but it was with me and will still be for many years. I can tell you this, Gentoo is getting better and it's already awesome.

Wanna try Gentoo? Do you read?

This is a real experience, happened last afternoon. Here is how it goes:
I went out of my room and tried to make some food for lunch. Later, I took my lunch and sat on a stool by table in the living room. I need to sit on stool in order to eat comfortable. If I sit on sofa, then the table would be too low. There is a small space between me (where I sat on stool) and sofa.

While I was eating, I wonder where is the cat? You know cat is quite good to hide. After finished, I couldn't resist finding him. So I checked up his eating place, top of washer, kitchen, small spaces between plants, and my wardrobe.

That cat is really like my wardrobe. I know this time he didn't have a chance to sneak into there, but I have to check again. Cat is good, you know.

But I can't find it anywhere, at least I believe I had searched all places which he have hidden.

I sat on the stool again, just thought how I couldn't spot it? Somehow, I turned my head back and looked down. Yea, he was right there and sleeping in that small space! Unbelievable! I missed seeing it twice. Every time when I sit on the stool, I faced towards where the cat is. Must be his fur color.
He beat me again

Cat:1, Human:0

When SXXT happens, it's time to change your password.

How so? Yesterday, I happily committed my code, which is for backing up layout templates for blogs on After committing done, I saw my Google password when switched back to editor. Anyone who is in normal mental state would loudly yell with "SXXT!" or "FXXK!". I did. I forgot to empty the strings, which have my gmail and password before committed. Actually, I thought I did, because I got prompted for my email and password, therefore I believed that I had emptied two strings. Obviously, I didn't.

The Subversion repository is at Google Code hosting. I deleted the project (sort of making project private) and requested a reset to my repository. Meanwhile, I used svnsync to retrieve all revisions to my computer. After resetted, I tried to sync back without the idiot revision, but I can't get the job done. Later, I manually re-committed the rest of revisions.

From this incident, I have learnt:
  • Never allow to put password or other sensitive contents in source, must use a configuration file with secured permission in home directory or similar way if needed
  • Always check status and diff before committing
  • Always grep the diff before committing
  • If SXXT still happens, do not reset if there is only one password involved. Changing the password, instead, would be much easier; and removing the SXXT and committing again
Even you can perfectly "rollback", you still can not assure that no one has checked out your SXXT as their juicy fruit or no bots has crawled your SXXT and indexed it.

When SXXT happens, you can appreciate it for reminding you of changing password and the opportunity to have new blog post to share your SXXT mood.