Categories
College Life LAN Linux/BSD Software

A New Semester

Been a week since the new semester began. All the initial registration/post-registration/add-drop exercise is finally over (damn! we need to replace those UG office clerks by software :X).

The first week tends to be a little boring and happens to give me time to check out distros 🙂 (Has this become a semesterly-routine after I’ve started using Gentoo :})
This semester’s distro check was special. Tired of endless compiles on my 1800Ghz AMD64 machine I went out looking for candidates that could replace my Gentoo.
First, it was OpenSUSE. The last time I tried OpenSUSE was version 10.0 – had given up after experiencing KDE apps crashing. This time, it was beranger’s blog that prompted me to give it another shot and 10.2 ended up occupying my harddisk for a couple of days :P.

OpenSUSE seems to not respect GNOME’s default look and try customise it with mono-goodness (sarcasm? maybe). Novell is into UI and Interaction design research and all that, maybe they are doing a better job. Probably just me not able to cope up with a new default GNOME look-feel-experience after using upstream’s for a long time. OpenSUSE did have a lot of packages and yet there were several unofficial repositories floating around. IIRC there was privoxy in one of them but no tor 😐 (which I need in order to browse sites such as Orkut in my campus). For some reason, the beagled seemed to use up a lot of CPU although I thought it must’ve finished the first-time crawl after the install. The package-manager (Yast2) did a nasty job (refreshing mirror info) at every fireup – was annoying.

Next up was OpenBSD. I had tried this one out once during it’s 3.8 days. Now it’s 4.1 and expected my sound device to work. Unfortunately it didn’t. All that disabling and enabling USB etc. just made me give up on this. Their packages are sweet though. KDE was well packaged (except for konqueror crashing at times when I’m browsing the openbsd ftp mirror). GNOME was stuck up at 2.8 I think.
Ah yes, I tried FreeBSD before this and after too. I had done a silly thing with

setenv ftp_proxy username:passwd@proxy:3128

and blamed fetch for timing out 😛 (that was silly of me, I even managed to get people flaming on wget vs. fetch on ##FreeBSD =P.
The correct scheme was

setenv ftp_proxy http://username:passwd@proxy:3128

. For some reason portsnap never worked for me. (It could fetch, but not extract). Was a little weary of the i386 packages. Thought they were suboptimal. Tried out amd64 too. No ease. FreeBSD doesn’t satisfy my desktop-usage needs.

After seeing Rohit going ga ga over freeculture and fedora thought I’d try fedora too! Oh yeah, Manu Vajpai was distro-hunting too. He too was “let’s try this one out dude”. Since my DVD writer doesn’t seem to write properly I started using my brains a little and downloaded the fedora install cd’s kernel image and initrd and put in on my /boot. I quickly downloaded the F-7 DVD from one of the mirrors on LAN onto my hard disk. Next boot was a simple grub command line invocation to boot fedora’s installer kernel and point at my DVD iso on the hard disk. Installation was fast :}. The fun ends soon though. For some reason I wasn’t comfortable even after disabling SELinux. There was no linuxdcpp in the repositories – which gives you a clue that there is something missing here, more like, “this distro is so damn US-centric that it doesn’t even have a p2p program that’s immensely popular in Europe and LANs in India”. Probably something else. They’re one of the few distros that have Indic fonts.

It looked like I missed an important distro. Yes – Debian. I was playing with debian when amd64 port was still unofficial. Now the port is not only official but has plenty of packages that interest me. No need for unofficial repositories and all related hassle. I used a netinstallation CD which was a weekly snapshot of the testing version. Unlike Fedora or OpenSUSE, this netinstall CD has support for (authenticating) proxy! This is amazing for us “third world” countries who depend on proxy servers while some institutes enjoy class A networks. Well, let’s leave that for another day. I upgraded to sid/unstable and nothing has broken so far – unlike ubuntu in the < 6.04 days (haven’t used the recent versions and don’t plan to).
Debian is maturing. It’s always been. Today, I see useful apps such as the module-assistant. Handy when it comes to dealing with nvidia drivers. The Iceweasel and Icedove is something else. Doesn’t matter to me as long as it does my job like Firefox and Thunderbird did.

TODO: get ZFS-fuse working 🙂

Categories
College Life Newsgroups Software

Another Gentoo loyalist turns to Ubuntu in the campus

This is the second person. Earlier it was Mandu. Who said that it was fun but it took too much it and that he doesn’t want to spend too much of the precious resource – time.
Yesterday, ManuBansal posts on iitk.questions.unix:

Manu Bansal wrote:
> Another Gentoo loyal turned away.
>
> All I wanted to do was to upgrade to Valknut-3.8 from 3.7. dclib won't
> compile, and I wouldn't know why. Nobody would know why. Then suddenly,
> working on a project one day, it would occur to me that probably new code
> wouldn't compile with my relatively old gcc. And I would decide to upgrade
> gcc. I wouldn't know why the system is not using the newer gcc, and then,
> not being that noob, I would unmerge the old gcc, in the hope that the new
> gcc would come in effect. It still wouldn't, so I would update environment
> etc, but that wouldn't help either. And then I would take the plunge,
> without knowing that I was about to, and reboot. And nothing would work
> anymore! All applications would bail out for missing glibc. So I would
> realize I've lost glibc, and apps were compiled against the old one. So I
> would again try to emerge the old one, and even python would complain for
> the lib! Wow! That IS stranded. Then, and only then, would I get to know
> that there's a full Gentoo gcc upgrade guide.
>
> That I was able to put back my system did have a good effect - it raised
> my confidence in my hack-debug-skills. But then what would I do?
> An "emerge -eav system" and then "emerge -eav world". And then I will
> realize ebuilds for half of my packages don't exist anymore!
>
> I'm still not saying Gentoo package management is bad. But is it useful at
> all? A system which CAN benefit from compile optimization benefits would
> die compiling packages before they can be used. A system that can compile
> fast doesn't need those optimizations. And even the never-beatable
> dependency management goes for a ride when you upgrade 200 packages (half
> of them being kde) at a go. And gcc upgrade remains dirty - all it has is
> some suite of grep-based scripts, in addition to usual emerge.
>
> If one has still to upgrade all 100-200 packages, wouldn't bins/rpms be
> better?
>
> "Murphy's Law of Gentoo installation: If a compile can fail, it will."
> -- source: http://forums.gentoo.org/viewtopic-t-322136.html
>
> What is it called? Ubuntu? Or Fedora? ...
>
> Manu.

And you know what? I forgot to mention the funniest idea they have in
emerge - once in a while, a package emerge would beep for 10 seconds,
trying to draw your attention to a super-important message about a followup
action to the installation, maybe even something like "follow the gcc
upgrade guide". And that will happen in a compile of 4 hours on a P4 with
abundant RAM, after which the compile will spit enough to drive out the
message from display cache. Do they expect us to sit and stare at the
compile all this while?

All this leaves me wondering. Was he so out of touch after all? Looking at the need to upgrade his gcc for the valknut upgrade, it hints that he hadn’t updated his system in a long-time. And that too, long enough not to realize that there’s a proper way to upgrade his gcc. He unmerged his gcc! At least, he could’ve unmerged it with the = and version number…

emerge -Cav =sys-devel/gcc-3.4.6-r4

(assuming that 3.4.6-r4 was the old version he was trying to get rid of). It still is a mystery why he had to do that when he could’ve googled to figure out that there’s a handy tool called gcc-config.
Disheartening.
About the info warn qa messages – he should’ve made use of the ELOG system the recent versions of portage come with.
Here’s a snip of the /etc/make.conf.example


# logging related variables:
# PORTAGE_ELOG_CLASSES: selects messages to be logged, possible values are:
# info, warn, error, log, qa
# Warning: commenting this will disable elog
PORTAGE_ELOG_CLASSES="warn error log"


# PORTAGE_ELOG_SYSTEM: selects the module(s) to process the log messages. Modules
# included in portage are (empty means logging is disabled):
# save (saves one log per package in $PORT_LOGDIR/elog,
# /var/log/portage/elog if $PORT_LOGDIR is unset)
# custom (passes all messages to $PORTAGE_ELOG_COMMAND)
# syslog (sends all messages to syslog)
# mail (send all messages to the mailserver defined
# in $PORTAGE_ELOG_MAILURI)
# save_summary (like "save" but merges all messages
# in $PORT_LOGDIR/elog/summary.log,
# /var/log/portage/elog/summary.log if
# $PORT_LOGDIR is unset)
# mail_summary (like "mail" but sends all messages in
# a single mail when emerge exits)
# To use elog you should enable at least one module
#PORTAGE_ELOG_SYSTEM="save mail"

# PORTAGE_ELOG_COMMAND: only used with the "custom" logging module. Specifies a command
# to process log messages. Two variables are expanded:
# ${PACKAGE} - expands to the cpv entry of the processed
# package (see $PVR in ebuild(5))
# ${LOGFILE} - absolute path to the logfile
# Both variables have to be quoted with single quotes
#PORTAGE_ELOG_COMMAND="/path/to/logprocessor -p '\${PACKAGE}' -f '\${LOGFILE}'"

# PORTAGE_ELOG_MAILURI: this variable holds all important settings for the mail
# module. In most cases listing the recipient address and
# the receiving mailserver should be sufficient, but you can
# also use advanced settings like authentication or TLS. The
# full syntax is:
# address [[user:passwd@]mailserver[:port]]
# where
# address: recipient address
# user: username for smtp auth (defaults to none)
# passwd: password for smtp auth (defaults to none)
# mailserver: smtp server that should be used to deliver the mail (defaults to localhost)
# alternatively this can also be a the path to a sendmail binary if you don't want to use smtp
# port: port to use on the given smtp server (defaults to 25, values > 100000 indicate that starttls should be used on (port-100000))
# Examples:
#PORTAGE_ELOG_MAILURI="root@localhost localhost" (this is also the default setting)
#PORTAGE_ELOG_MAILURI="user@some.domain mail.some.domain" (sends mails to user@some.domain using the mailserver mail.some.domain)
#PORTAGE_ELOG_MAILURI="user@some.domain user:secret@mail.some.domain:100465" (this is left uncommented as a reader exercise ;)

# PORTAGE_ELOG_MAILFROM: you can set the from-address of logmails with this variable,
# if unset mails are sent by "portage" (this default may fail
# in some environments).
#PORTAGE_ELOG_MAILFROM="portage@some.domain"


# PORTAGE_ELOG_MAILSUBJECT: template string to be used as subject for logmails. The following
# variables are expanded:
# ${PACKAGE} - see description of PORTAGE_ELOG_COMMAND
# ${HOST} - FQDN of the host portage is running on
#PORTAGE_ELOG_MAILSUBJECT="package \${PACKAGE} merged on \${HOST} with notice"

It was all there. Gentoo might not be just about optimizations. There’s unlimited scope for flexibility here. A little reading up saves a hell lot of headache later. And, why do you have to read so much? Because, probably, it was your choice to use Gentoo in the first place – and Gentoo doesn’t come to you as a desktop-distribution but as a meta-distribution. Do the initial setup well and live happily ever after.

Categories
College Life Linux/BSD Navya Software

Gentoo, KDE, amd64!?

Not so long ago, I gave LG3D liveCD a shot only to end up losing a partition 😐 The included file-manager was at fault here. All I did was try browsing the contents of that partition and it’s gone!
I lost another partition. This was when I was trying out the pirated copy of MacOSX86 freely available on LAN. The Partition Utility on the installation DVD only looked good, but very deadly to actually use. Ah well.
All this activity was on the Seagate 160GB HDD. A faithful old chap from one of the best HD makers out there who sell in India. The other ill-fated hard drive is my infamous Samsung 160GB SATA HDD. My Gentoo installation on it got screwed when I was trying to rebuild the reiserfs partition’s trees. Apparently, it was filled with bad-blocks 🙁
So, made use of the other hard drive which recently suffered partition losses 😛
Installed gentoo-amd64 as usual. Emerged gnome-light and a few essentiall apps. Was happy for a few days until one day we had to test out our LAN TV setup for the upcoming cricket matches. VLC was our friend. Had to recompile the kernel with v4l support and stuff and VLC was ready to go. It picked up stuff pretty well from the TV card we had. The CPU usage was however, heavy compared to a similar setup on a neighbour’s 32-bit windows installation.

All that stuff for a month or so ago. Before the earlier post on LDFLAGS.

Now coming to the title of this post. I emerged KDE out of boredom after seeing a lower-end comp showing very good startup speeds for KDE apps on openSUSE. Surprised as I was, I quickly went to #gentoo-kde on freenode and asked around a bit on how to go about this KDE business. There are a lot of split ebuilds and takes a lot of time to go through. I began with one of those overlays which had a
“kde-lite” ebuild which was neat and just what I wanted 🙂
KDE is good. I usually prefer running a desktop with all-Qt/KDE or all GTK+/Gnome. I didn’t want to use Firefox or Linuxdcpp on KDE. So I had to get opera whose flashplugin wrapper never plays youtube or googlevideo :|. It too, like mozilla’s firefox binary, doesn’t render indic-fonts properly. Konqueror does it fine. But it seems to be unsupported by many websites even though Konqueror claims standards compliance.
Yestereve, we had a meeting to discuss MEMP’s current development status and plans for the future. Arun asked us if we are going to support amd64 and asked us “will we be able to convince that plain x86 installation is better than amd64”? Suprised as U was, on asking him the howcomes, he logged into my comp and fired up firefox and mplayer and did the same on his 32-bit gentoo Os and compared the ‘htop’ monitor. Firefox and mplayer on my comp was unusually, strangely, using up too much memory. Is the 64-bit OS at fault here? Is it worth all the trouble? Or should I just install a 32-bit Os and be happy with it?
(this post is kind of written in a hurry)