Chalk me up as another satisfied Ubuntu user.  Kubuntu, really, which is Ubuntu
with the KDE desktop in lieu of Gnome.  That's an important distinction, as far
as I'm concerned: when I first abandoned SUSE and was looking around for a new
distro, I checked out Ubuntu and rejected it because I simply prefer KDE over
Gnome.  It's not religious to me, the KDE desktop just fits the way I work, and
that means a lot.  So when I heard about Kubuntu, I was excited to give it a
try, and after a couple of days tinkering with the live distro, I made the
decision to install.  And no regrets!  The following comments apply to Breezy
Badger, the second official release.

	
Why Ubuntu? Why Kubuntu?  Ubuntu has several things going in its favor:  It's
Debian-based, and the more I know about Debian the more I like it.  It runs a
clean, cutting-edge KDE 3.4 desktop, which has made great gains in useability
and polish since even 3.3, which was already a great desktop.  And the
alternatives -- Windowmaker, Blackbox, etc. -- are only an apt-get away if I
want them.  For the moment, I haven't had the urge.  Thirdly, its USB support
is great, it worked well with my PCMCIA modem, something no distro other than
SUSE had been able to accomplish.  And lastly, two things I was unable to get
working under Xandros worked well with Kubuntu: Postfix and a kernel
framebuffer.  That lets me work at a virtual console with my all-time favorite
console applications: Mutt and Lynx/Links.  Xandros XD3 was a great distro, but
I never got Postfix working, and the lack of the framebuffer meant my virtual
consoles were unbearably ugly, font-wise.  So Kubuntu was like a breath of
fresh air.


Complaints I have little to complain about, as I liked Kubuntu enough to stick
with it.  But there are some areas where Kubuntu can work on improving the next
release: Java: For mostly political reasons, Ubuntu doesn't include Java in its
distro.  This is a hassle for me because I do a lot of writing using Jedit, the
Java-based text editor.  Browser: Kubuntu relies on the KDE suite of
applications, so Konqueror is the browser of choice.  But no browser plug-ins
have been installed or configured.  In this day and age, a browser without
plugins is hardly worth using.  Flash and friends ought to come configured.
Grub: SUSE's install routine allows you to install GRUB on the MBR, on the
partition, or even on a boot floppy.  Kubuntu has little flexibility: either
install it on the MBR or don't, and the installation didn't provide me with
good working entries for other distros on my hard drive.

	Virtual Consoles: The consoles don't clear when you're done with them,
which leaves the previous session's text on the screen.  Annoying.  Printers:
I was unable to get the printer configuration routine to connect my Epson
Stylus C60 over a parallel cable.  Seems like a nice little utility (which you
access through the KControlpanel), but none of the test pages ever arrive at
the printer, and I don't know why.  Yast2 under SUSE and Xandros were both able
to configure that printer with no difficulty at all, establishing print queues,
configuring Cups, and all.  A major disappointment.  Politics: Besides Java,
certain packages aren't readily available in the Apt archives, probably for
political reasons.  I understand the philosphy and even respect it, but
personally pragmatism leads me to want the package more than the politics.
Opera, latex2html, and java are all subject to this constraint, and require
additional downloads.

Package List No distro is complete without downloading all the apps that are
missing on the CD.  Ubuntu's Debian repositories make that easy.  Once I got my
internet connection running I downloaded the following: Gimp 2.2 (image
manipulation tool) Gqview (image collection viewer) Quanta (webpage authoring
tool) Synaptic (for apt-get repositories) Emacs and Xemacs TeTeX and aucTeX
(for LaTeX authoring) Lynx, Links, urlview, and antiword (console utilities:
the first two are console web browsers.  Jed and Joe (two excellent console
text editors).  Xplanet (graphical toy) Mysql and mysqlcc (Database stuff)
Mtink (a utility to work with Epson printers - invaluable if you've got one) 


And I downloaded the following packages from their respective websites, since
they weren't available through Ubuntu: Opera (my favorite web browser)
available from www.opera.com.  Pine (console email program, when I thought
maybe I wouldn't be able to get Mutt working) Available from Washington
University.  Jedit (my favorite text editor and word processor) Available from
www.jedit.org.  LaTeX2HTML (a wonderful utility that I've been using to place
online my Woodnotes series of tech articles, including the popular Woodnotes
Guide to Emacs for Writers).

Tips for Configuration and Installing Virtual Consoles I found this tip at the
Ubuntu Wiki:
	
	Go in your /etc/inittab and add to the "1:2345:respawn:/sbin/getty
38400 tty1" lines the following code: "-I '033[2J033[f'".
	
	Like so: 1:2345:respawn:/sbin/getty 38400 tty1 -I '033[2J033[f'
2:23:respawn:/sbin/getty 38400 tty2 -I '033[2J033[f' ... (etc)
	
	This sends a clear console code on exit. An old modem thing.
	

Postfix Configuring Postfix was a little more difficult.  The challenge is
getting Postfix and SASL to interoperate in order for me to authenticate to my
ISP.  I learned a lot about how to do this from this webpage.  I added the
following to /etc/postfix/

	
	smtp_sasl_auth_enable=yes
smtp_sasl_password_maps=hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options=
	
	smtpd_sasl_auth_enable=yes smtpd_use_pw_server=yes
	
I added the following to /etc/postfix/sasl/smtpd.conf
	
	smtp_sasl_auth_enable=yes
smtp_sasl_password_maps=hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options=
	
	smtpd_sasl_auth_enable=yes smtpd_use_pw_server=yes
	


Dial up Modem Since most developers have broadband, the old-fashioned, unlucky
dial-up users like myself are frequently forgotten.  The Gnome desktop as a
whole is criminally guilty of forgetting about dial-up folks like myself, and
the excellent KPPP dialup utility is one of the many reasons I prefer the more
feature-complete KDE desktop.  Kubuntu's kppp required some tweaking, however.
First of all, the first time I loaded it up it complained that there was no
/etc/resolv.conf file.  I opened a shell and created one to get past that
problem (sudo touch /etc/resolv.conf).  Afterwards KPPP would dial up,
authenticate, and then die as soon as it passed control over to the PPP daemon
pppd.  I suspected the problem was somewhere in the interface between kppp and
pppd.  Kppp was connecting to my ISP correctly, but when it came for pppd to do
its trick, it died without warning.  So I took a look at /etc/ppp/options and
saw the following code:

# Require the peer to authenticate itself before allowing network packets to be
# sent or received.  Please do not disable this setting. It is expected to be
# standard in future releases of pppd. Use the call option (see manpage) to
# disable authentication for specific peers.
auth

I disregarded the warning, put an additional # before the auth command to
disable it, and kppp has worked like a charm ever since.  The reason is that
kppp does its own authentication and then hands control over to the pppd
daemon.  But as configured originally the first thing it tried to do was
authenticate again.  Not necessary, and disabling that behavior lets me dial up
with ease.

Printing I had trouble getting an Epson Stylus C60 printer to receive
information over a parallel cable.  Fewer and fewer people still use parallel
cable in a world of USB, but my old laptop only had one USB slot, so using
parallel cable allows me to save the USB for another peripheral, in this case a
trackball.

I found very few articles on the Internet about people experiencing printer
trouble with (K)ubuntu, which makes me think my problems do not represent the
typical Kubuntu user experience.  The problem was that as I ran the KDE printer
setup wizard (a very nice little wizard!) but when it came time to test the
printer setup, nothing was printed, and KDE didn't register any errors for my
attention.  Trying to run the wizard as root didn't help.

The following are the steps I took to diagnose the problems.  Turns out to have
been a simple driver issue and maybe a couple of easy tweaks.

1. Determine whether or not the Cups daemon (cupsd) is running at all.
	
		pl -Al | grep cupsd
	
	That showed the cupsd was indeed running.  2. Check that the kernel is
able to deal with parallel cable by running modprobe parport_pc An empty
response is good (no news is good news).  Otherwise you'll get an error stating
that kernel module was not found.  But that was not my problem.  3. Read the
cups error log to see if the errors revealed any useful information.  Turns
out, they did.  Find the error log at /var/spool/log/cups/.  In my case, the
errors didn't provide enough information to tell me what was wrong, but
suggested helpfully that I enable more verbose logging.  This I did by
modifying /etc/cups/printers.conf and killing and restarting cupsd.  The
verbose logging helped me figure out that cupsd was receiving the document but
was unable to render it - sounded like a bad driver to me.  I tried another
driver combination instead of the one the kprinter wizard listed as
recommended, and this resolved my problems.

4. The following are changes I made en route to my solution.  I don't know if
they really made a difference or not:  User kprinter (run it as root) to make
myself part of the "lp" group.  Kuser gave me some trouble so I
finally just manually edited the /etc/group file, which was easier, really.  I
also fixed the permissions on the lp cups driver by switching to the
/etc/udev/permissions.d/udev-permissions directory and ensuring that lp had
permissions level of 0666 (it was 0660 before, I think).

Locales and Consoles I had a lot of trouble with the $LOCALE variables and the
smooth operation of my virtual consoles, Konsoles, aterms, and vterms.  Xterms
never worked right with emacs and mutt displayed a lot of characters with
diacritical marks incorrectly.  I solved it by adding the following to my
.bashrc:

	
LOCALE=en_US.utf8 && export LOCALE LC_CTYPE=en_US.iso88591 && export LC_CTYPE
alias xterm='xterm -en ISO-8859-1 -fg white -bg black'
	

To get the locales thing working correctly I had to reconfigure the locales
package with 'dpkg--reconfigure locales'.  To get Konsole to deal with the
diacritical marks I had to manually set the encoding to Western European
(ISO-8859-1) from the "Settings" menu.

This is something that could definitely use more work in the next release, as
console users like myself rely so heavily on these things being correctly
configured.

The Verdict: I finally went back to SUSE, this time installing 9.3 over FTP.
Their excellent YaST2 utility makes a world of difference, and most packages I
use came already installed.  I was furthermore pleasantly surprised to find out
a lot of what had annoyed me about 9.2 were specific to that release, and 9.3
was a much better product, even on the same hardware.