A few weeks ago I updated Hal to Ubuntu 11.10 (Oneiric Ocelot). This was relatively easy because Hal was already at 11.04, allowing me to do a distribution update from the update manager. Our other Linux box, harlie, was running Ubuntu 10.10, so that option wasn't available unless I updated first to 11.04 and then to 11.10. Instead, I downloaded 11.10 to a CD, and did an install more or less for scratch.
Now, mind you, the Ocelot has what are supposedly a lot of nifty features, including the not-quite-Mac-like-enough-to-be-sued (you might want to ask Google about that) Unity desktop interface. And, if you don't like Unity, you can get Gnome 3! I didn't really want any of that. What I wanted was a machine that had all the modern software but looked and acted exactly like the old Ubuntu. I didn't quite get that, but I came pretty close.
BUT: This release of Ubuntu sets computing back at least 10 years. In the effort to make everything super friendly, they have dumbed down the user interface so much that you MUST use the command line to make even the simplest changes: For example, up through 11.04 you could easily change theme colors through a GUI widget. This is an appropriate use of the GUI, you can see what the current colors are, select the colors you want, and if they aren't right you can fix them right then and there. But now, guess what? THE ONLY WAY TO CHANGE THEME COLORS IS TO EDIT A FRAKIN' TEXT FILE. AS THE SUPERUSER! (I only shout because I'm mad.) This is (pick one):
- So stupidly idiotic that one expects that there must be a malevolent being doing this, someone who wants everyone to throw up their hands in exasperation and switch to OS X. Or worse, Windows 8.
And this kind of idiocy exists all over the place: Things that were easy to do before are now hidden. Usually you have to edit a text file that hasn't appreciably changed since 1999. OK, I can do that, but until last month I didn't have to. Hence my frustration.
The worst of it is, this isn't just Ubuntu, a lot of the changes are driven by Gnome 3. It's enough to drive one back to the ugliness that is FVWM, where at least you know you have to edit menus going in.
But not just yet. Click below to see how I overcame the obstacles, at least so far.
I didn't do this all alone, there is a world of information out there on web. I've linked to specific bits of information as they occur, but you might also want to take a look at some of the big overviews:
BACK UP EVERYTHING IN /home, AT LEAST
Run $ cat /etc/passwd
Note the output associated with individual user names, particularly the user number. You'll need this later.
Especially note who is user 1000, as that should be the initial user for this system.
Get the Ubuntu CD We're using the 32-bit version for Harlie, as he's a little older than Hal. Burn CD.
Boot up with your CD.
Try out the Live CD first. This is a good time to see if your wireless connection will work out of the box. I found that my Broadcom wireless card wouldn't — not surprising, it never had before. So I pulled out an old USB wireless dongle, which worked perfectly, again as before. We'll get the Broadcom working later. You'll have to log into your wireless network, of course, click on the standard fan-shaped icon at the top right of your screen to set it up. If you don't have a working wireless connection, you'll have to dig out an Ethernet cable. Hope it's long enough.
Start Installation. It will ask if you want to download updates during the install, and if you want the Fluendo MP3 plugin. Say yes to the first, your choice on the second.
Under Installation Type: Harlie was running 10.10, with separate partitions for the system (/) and our data (/home). Ubuntu was smart enough to figure this out and offered to install 11.10 in the place of 10.10, and not to touch /home. This is the one major advance, IMHO, over previous installations. The alternative way to do this at this point is to choose the
Something elseoption and map the appropriate partitions yourself. In either case, remember to back up any files you want to keep before proceeding. If this is the first time you are installing Ubuntu on this machine, you can let Ubuntu install everything in one big partition, or select
Something elseand set up the partitions the way you want them.
Worrisome: the install didn't recognize my swap partition, which was already set up. It did let me go fix the partition table to tell it where the swap partition was. Looking at the partition table it seems it has mapped everything else correctly, we'll see.
Set time zone appropriately. Choices seem to be New York; New York, New York; NY,NY; and NYC. I can only assume you get a different choice if you live in, say, Seattle.
English (US) keyboard. That's QWERTY, of course.
Set machine name, initial account. Use the account name associated with "1000" if you want to set the machine up like it was before.
everybody here is converting from Windowsfallacy is revealed. The install program asks it you want to import all the accounts from the Windows installation on this computer. It cares not about the already set up Linux accounts, which I will apparently have to rescue myself.
Installation commences. Wait until it finishes. Have a coffee, read a blog. You do have another computer handy, right?
Select Ubuntu 2D as window manager and log in. If you try straight Ubuntu, indicating 3D, you may get a
your graphics card isn't up to snufferror.
Pause to admire the wonderfulness of the Unity interface. Try not to barf.
Something will start to wiggle on the Dock. It's called the update manager. Click it and do it. Restart if (when) required.
Click the top box on the
Dash, and type
terminalinto the search-bar. Drag the terminal icon onto the dock. You'll thank yourself later.
Open a terminal. Type
$ sudo apt-get install synaptic
(If you prefer Ubuntu Software Center, ignore this step. But you don't, right?)
From the same terminal, run
$ sudo synaptic
Install a bunch of stuff. You can do this from the command line, or with synaptic. In order of importance (to me):
- gnome — an almost reasonable window manager
- gnome-tweak-tool — Because it isn't all that reasonable
- tcsh — My favorite shell. I use bash is for scripts, but I learned Unix with csh.
- build-essential — because you want to be able to install your own programs
- emacs and emacs-goodies-el — because you want to use the One True Editor to write your programs
- gfortran — You mean there's another programming language?
- chromium-browser — if you prefer Chrome as your browser.
- ubuntu-restricted-extras — because a computer isn't just for programming
- vlc — Watch just about anything, in any format.
- texlive and texlive-bibtex-extra — Make your musings look professional.
- backintime-gnome (or backintime-kde, if that's how you roll) — because at some time you will delete a file you really wanted to save
- k3b — You're going to want to burn CDs and DVDs. This program I understand.
At some point a box may open up saying
Configuring gdm. Set the default display manager to gdm or lightdm, your choice. Wanting to keep everything the same as before, I chose gdm. You'll also have to accept the MS-Fonts license, if you want the Fonts.
Wait until Synaptic (or apt-get, if you're on the the command line) is done, then close synaptic (if open).
Set up backups for your machine. I use a permanently mounted USB disk and the aforementioned backintime software. I also have extensive setup notes.
If you want this machine to talk to other boxes on your network, install openssh-client and openssh-server. You will also have to set up /etc/hosts.allow and /etc/hosts.deny to secure your connection. I wrote up some notes about that. You can also install sshfs for a quick-and-dirty, but secure, way of mounting a remote computer's disk on your machine.
If you want to watch DVDs, head over to 15 Things I Did After Installing New Ubuntu 11.10 Oneiric Ocelot and look for Enable Full DVD Playback(Dual Layer DVD Support). Remember, you didn't hear it here.
System Settingsin the Dock, then click on
User Accounts. Set up other accounts now. If you mounted your old /home, you can match users to the appropriate home directories. You used to be able to do this right from this menu. Now you can't. Ubuntu will now cheerfully assign the first user account number 1000, the second 1001, etc. The only way to get around this is to give yourself superuser privileges and edit the /etc/passwd file. If you don't know how to do this, your probably don't want to do it.
Log out, or restart if you're told it's necessary.
Log back in, but before you do, click on the box that says
Ubuntu 2Dand change it to
GNOME Classic (No effects).Note that
Classicis something of a misnomer.
You'll now have something that approximates the Gnome 2 desktop. In order to make it more like Gnome, under Applications, click on Other, and then Advanced Settings. (I have another rant ready about the moronic organization of the menus. Maybe later.) This is the gnome-tweak-tool by another name. Under the Desktop listing in the tool, I set
Have file manager handle the desktopand
Show mounted volumes on the desktopto On, and everything else Off. YMMV. Under
Theme, see if you can find something you can live with.
Classicstill comes with a top and bottom panel. In Real Gnome 2 you could manipulate the panel by right-clicking on it. In Faux 2 you have to press Alt while you right click. I mean, what would happen if a naive Windows user accidentally right clicked on the top panel and had to make (gasp) a choice? And, yes, you really do have to reconstruct your panels.
Now let's get the real wireless card working. This computer has a Broadcom BCM4318 wireless card dating from about 2009. You can read more about installing Broadcom drivers at WifiDocsDriverbcm43xx. For me, it was easy. All I had to do was run
$ sudo apt-get install b43-fwcutter firmware-b43-installerand the card automagically connected. At this point I disconnected the USB wireless dongle and everything works file. (This is another substantial improvement over 10.10, the last time I had to figure out how to get the wireless card to connect.)
Set up the printer. We have a Canon printer connected to a USB port on Harlie. When I turned on the printer Ubuntu started the setup, identified the printer as an iP4000, and then refused to work. I had to go to Applications/System Settings/Printers, uninstall the printer, and then add it back. Why? Who knows. No, he probably doesn't either.
Now to set up the printer to be shared on the network. Easy? It used to be, but it's not anymore. See Ubuntu 11.10 Shared Network. It wasn't obvious even then, but here's what you do:
- Open a browser and go to http://localhost:631
- Click the Administration tab.
Share printers connected to this system
Now go back to the remote computer. Again browse to http://localhost:631. Click on Administration, then on Add Printer. Your network printer should show up under Discovered Network Printers. Click Continue and proceed with the install like it's 1999.
- Add in the other users to the computer, if any, remembering to give them the IDs found in step 2. As noted, this is difficult to do. If you previously had users Alice (1000), Bob (1001), and Clarence (1002) as users, then you'll have to reinstall them in that order or you may find Bob has access to Clarence's files and vice versa. See the above entry about editing /etc/passwd. You may also want to set up backintime for each of these accounts.
That's it for now. You'll note we have nearly 40 bullets to go through, many with sub-bullets to go along. This, my friends, is the state of Ubuntu today.