Stupid decisions that makes Linux "difficult"

Three days ago I got some spare time and rebuilt my parent's "server" machine and moved away from Debian to Kubuntu.

The decision to move from Debian to Kubuntu was based on the fact that this "server" is also used as workstation, running KDE with Firefox and Amarok, among other KDE applications, and Kubuntu ships new KDE and other applications much faster than stock Debian.

I've downloaded Edgy, burned the CD and started the install on empty HDD, really easy and fast to install, it worked like a charm.

Then I started to install apache, mysql and php, they're required to run the web-apps I've developed. Also worked like a charm... just few minutes to get everything up and running, without problems.

Then I went to configure the printer (cups)... what was really easy before and never took more than minutes, turned to be my pain for the last 3 days! First I tried to just copy my old cupsd.conf/printers.conf over and restart, no go. Then I backed up to original files and tried KDE's (used to be) excellent printer management interface... which started to freeze, without any glue I did fallback to CUPs web interface (http://localhost:631/)... which is great and always work, my last resource... but then I found out that it also don't work.

After listening half hour of blaming GNU/Linux being difficult by my father and my girlfriend, I started to dig what happened to that used-to-be-easy area that is now failing and giving everybody a bad impression. I started running strace and trying to figure out why it was looping forever, consuming 100% CPU. Then I downloaded the source code ubuntu ships. After many hours hunting the problem, I've found that

/usr/lib/cups/daemon/cups-check-pam-auth
was owned by cupsys:shadow, but "cupsys" is not in the "shadow" group, thus the suid bit didn't work and pam was not allowing authentication. Just adding "cupsys" to "shadow" group solved it:
adduser cupsys shadow

I was about to report this on launchpad, then I found bug #47892 describing the same problem... first I did feel stupid, because it title contain the same error message my /var/log/cups/error_log "cupsdAuthorize: pam_authenticate() returned 7 (Authentication failure)", but then, reading the bug comments I see that ubuntu, the distro that hopes to make things easier, was making things much difficult without any acceptable reason, a really stupid decision IMHO, how can a distro think that users will read /usr/share/doc/cupsys/README.Debian.gz, possible many Ubuntu users don't even know what Debian is or why they should read a document with that name...

As I said in the bug comment, do it right, or just don't do it. Being incompatible without any good reason is not acceptable. They claim this is to make things more secure, but really, cups never did that bad in security and just changing CUPS to listen to localhost by default would suffice. I'm not the only one that had this problem, and I'll not be the last. I hope this blog entry get indexed by google, so next time one search for "cupsdAuthorize: pam_authenticate() returned 7 (Authentication failure)" he will find, because I didn't.

For those that wonder, it's quoted "server" because the machine is actually a low-end PC (900Mhz Duron, 256mb), but it used to run my http/mysql/cyrus/postfix/svn servers, aside from my parent's services and is also a workstation he uses for some web-applications I've developed, together with printing from firefox, and last but not least, he plays some music using Amarok... yeah, Linux can do so much stuff with so simple hardware!