Friday, May 30, 2008

Adventures with Puppy

For more information about Puppy Linux, click here.

My first attempt at installation failed because I didn't wipe everything before starting. Since Puppy and DSL use different versions of the Linux kernel, that was a dumb decision on my part. Lo and behold, upon rebooting, I got a kernel panic. For those of you who only speak Windows, a kernel panic is similar to the Blue Screen Of Death.

Upon rebooting with the CD, it went straight into the "live" version, in other words, running Puppy completely in RAM. For a machine with Lazarus's limitations, this made everything slow. Molasses running uphill in January slow. A text-based installer would have been nice, especially for a distro that claims to be pretty minimalist.

I used GParted (a GUI-based partitioning tool) to redo the partitions on my hard drive, and it worked fine. I thought the "install" icon on the desktop was to install to the hard drive, but it wasn't. It's actually their package retrieval tool. That's a confusing way to label it, I think. You have to go to "Menu", "Setup," and then "Puppy Universal Installer" to install to the hard drive. Another unique aspect of the desktop is that you only click icons once instead of double-clicking to activate them.

Once I got started on the installer, it mostly walked me through it, although there was some confusion on one particular part. Browsing the forums tells me I'm not the only person to be confused about this, so I'll probably post something about it there. As I was finishing up the install, Mr. Williams walked by and said, "Ooh, I like that desktop a lot better [than DSL]." He's right; Puppy has a surprisingly attractive desktop for a distro its size.

The Ethernet didn't work out of the box, but it was an easy setup via the "connect" function, which is Puppy's equivalent of Windows' Internet Connection Wizard. SeaMonkey is the default browser, but you can get other browsers if you want via the package retriever. Puppy also has its own system monitor, but unlike DSL, this one is down in the tray.

I like Puppy OK, but I'm not sure Lazarus has the resources to pull it off. Even SeaMonkey runs a tad slow, and the monitor shows memory use over the halfway mark much of the time. Puppy's website tells of someone who installed it on a machine with 32 MB of RAM, but I'd be curious to know exactly what they were able to do with it.

Next time: how much Debian can I get away with on Lazarus?

Thursday, May 29, 2008

Intermezzo: Rant About Linux Sites

Before I install any piece of software on my computer, there are 3 basic things I want to know about it:

1. What does it do? If there are several options on the market, what does it do that it's competitors don't?

2. Will it run on my machine?

3. How do I install this freakin' thing?

Regarding the first question, most distro sites do a pretty good job. Usually, the information about what makes a particular distro unique is on the front page, exactly where it should be.

Question #2 is the big stumbling block for most distros. Specifically, I'm talking about system requirements. This stuff needs to be accessible from some very prominent place, like the front page or the FAQ, not buried in a wiki somewhere. Most "About Our Distro" pages tell how a distro was first developed in 2002 by Joe Schmo in his employer's cubicle/a university lab/his mother's basement, etc. I guess that's good information, but I don't think the average user cares. If I really get comfy with a distro, I might want to know that stuff, but under no circumstances should it be more prominent than the system requirements. The system requirements don't necessarily have to be exact. They can say something like, "OurLinux can run on as little as 64 MB of RAM, but 128 MB RAM is preferred," and so on. When I can find this information at all, it's usually kind of buried.

Also, it wouldn't hurt to remind the user how to find what kind of hardware they have, because I can almost guarantee that the vast majority of users out there don't know. When we first acquired Lazarus, I asked Mr. Williams, "What are the specs on it?" He gave me a blank look and replied, "Uh, 64?" And this was after he'd been using the machine for 6 years. I'm not calling Mr. Williams stupid or anything (he's certainly not), but I think it's a good illustration of how most typical users don't exactly have their specs committed to memory.

Question #3 isn't as problematic. I can put together to burn the .iso to CD, boot from said CD and follow the rest, but it wouldn't hurt to have that spelled out. Also, sometimes there are commands required, although most distros that require these are pretty good about mentioning them up front.

So, if anyone wonders why more people don't try Linux, I really think the issues discussed above are a big part of it. I'm not even going to get into the WiFi support issue, as that is outside the scope of my project. If I ever decide to blog about my Linux experience on my laptop, I'll discuss it there.

Sunday, May 25, 2008

More Thoughts on DSL

I'm not sure if I can count this as a useful skill, but I've gotten really good at typing "sudo cfdisk /dev/hda". For those who don't recognize that string, I'll break it down for you:

sudo: the command to become "superuser", which is required for just about any system-altering function. If you're going to be executing several commands at the root level, you should probably do this separately by typing "sudo -s", which will make you superuser until you are ready to leave this mode by typing "exit".

cfdisk: a command-line tool for working with disk partitions. Those of you who remember the good ol' days of DOS will note the similarity to "fdisk". Those of you who don't know what disk partitions are should familiarize yourselves with them before attempting to install any version of Linux. Fortunately, this is an easy concept to learn. You can start here.

/dev/hda: "dev" is simply an abbreviation of "device". Any drivers for peripheral devices (disk drive, keyboard, mouse, etc.) will be in a /dev directory of some kind. You may have guessed that "hda" refers to a hard drive, and you would be absolutely right. If I had multiple hard drives, they would be listed as "hda", "hdb", etc. In other words, "hda" is Linux-speak for "C:\" on an equivalent Windows system.

This is a useful command to know when you've hosed your system. I expected to hose my system multiple times, so I gained a lot of experience with booting off the CD and starting over. If you plan to use DSL, you can go to their website to see what to do after typing this command. This step will vary depending on what your plans for DSL are.

I did get the MyDSL package retriever working and was able to retrieve some decent apps with it. However, it was good for me to play with the "crude" apps I mentioned in my previous post. I even used vim to edit some configuration files. In the words of David Carradine, "I'm all about old-school." It's nice to know that if something were to happen and the command-line interface was all I had, I'd at least be able to perform basic functions.

To summarize, DSL may not be terribly slick, but it definitely gets the job done. Mr. Williams wasn't too fond of the desktop, which is understandable. The average user (which Mr. Williams pretty much is) wants a slick interface and a system that doesn't require much tweaking. However, I think it was good for me to learn about the different tools common to most versions of Linux.

Next distro to step up: Puppy. I've heard a lot of good things about it, so I'm curious to see how it works on a system like Lazarus. I'll keep you posted!

Thursday, May 22, 2008

First Impressions of DSL

For those of you just joining us, DSL is Damn Small Linux. Click the link for more information.

Linux advocates often cite smaller size as one of its greatest advantages. This enables it to run more quickly than other OS's, as well as run on some older hardware that might not be able to run the latest offerings from Microsoft or Apple. And they are absolutely right. The whole startup CD for DSL was around 50 MB. To give you a comparison, the version of Microsoft Office that I have on Lucy is over 500 MB.

How do they achieve such ruthless efficiency? It's the eternal trade-off between speed and user-friendliness. Imagine a spectrum with efficiency at one end and ease of use at the other end. The most efficient programs usually make significant sacrifices in things like slick interfaces and idiot-proofing. On the other end, programs that are slick and easy to use tend to be total resource hogs.

As you can probably guess, the applications that come with DSL are generally crude, but there are ways to add applications. The support pages suggest activating apt-get immediately after installation, but I haven't found it to be that useful. DSL does come with its own package retriever called MyDSL. Obviously, you're not going to get cutting-edge apps, but you can get stuff for what you need.

One really cool thing about DSL is that it has a system resource monitor built into its desktop. In other words, you can see at any time how much memory and CPU power you're using, just by looking at the desktop. No special keys or commands are required. It also shows how much free disk space you have and your IP address. I love this feature.

Dillo, the default browser in DSL, claims to be adequate for browsing most sites. It does render most pages, but the formatting may not be what you're used to; it's often similar to mobile phone browsing. That doesn't really bother me, but some people might be freaked out by that. Dillo supports multiple tabs, which is nice. And, as advertised, it is very fast.

Firefox, of course, renders pages better, but system performance suffers on a machine like Lazarus.  If you're one of those people who likes to have several browser tabs open at once (like I am), it can be a tad frustrating. Then again, maybe I need to exercise a little browser discipline anyway.

One thing I have discovered (and kind of figured from the outset), is that for long-term use, I really need to upgrade the RAM. A swap partition can only do so much. But at least I've proven that I can achieve the functionality I wanted with the resources I have. Next time, I'll get down and dirty with the details of various applications.

Tuesday, May 20, 2008

Give My Creation...Life!

As soon as I posted the last post, I realized that I did have a computer that could run DSL in RAM. Lucy has 1 GB of RAM and a Windows partition. While booting up the CD was very easy, DSL did not recognize the mouse. This was not a huge surprise, since the mouse is a Apple Bluetooth Mighty Mouse. But it wouldn't recognize the keyboard or trackpad, either. I had to shut Lucy down manually, which I don't like doing. But I decided to proceed with the install on Lazarus. I had Lucy in my lap with the DSL wiki up as I put in the CD.

Lo and behold, installation was a breeze! It probably helps that I'm old enough to remember when the command-line interface ruled the earth, therefore I don't fear it like many users do. All peripherals were detected, and I was able to connect to the web without doing anything extra. DSL comes with its own web browser, Dillo, and an old experimental version of Firefox called Bon Echo.

That's all I'm going to put up for now. I'll post details of my experience with DSL in a day or two.

First Distro Chosen

The first Linux distro I am going to attempt to install is Damn Small Linux, hereafter referred to as DSL. I chose it because I wanted to start with something that was designed with systems like Lazarus in mind. I am fully aware that I can install bare-bones versions of fancier distros and tweak them myself, and I'll eventually try that, too. But for now, I'm going to keep it simple and save the large amounts of customization for later. Obviously, distros such as Ubuntu, Fedora, etc., are out.

It seems like a lot of information on various Linux distros is rather light on installation info, so I'm hoping this means that installation is relatively easy. I noticed DSL's website references a "boot floppy." Holy crap, I haven't heard that term in ages! I'm not even sure I have any floppies in my house (I haven't used a computer at home that even had a floppy drive for almost 2 years). A few quick searches reveal that I can still get them on the cheap if I can't find any here. Sadly, I don't have enough RAM to test-run DSL strictly in memory, so I'm going to have to install it to the hard drive right off.

Token cheap plug: if you like what I'm doing, consider clicking on some of the ads. The proceeds will help me buy fancier equipment and take this operation really high-speed! That is all.

Monday, May 19, 2008

Phase 0: Mission Complete

As the title says, Phase 0 of Operation Lazarus has been completed successfully. What, you may ask, is Phase 0? It's making sure that Lazarus is up and running with all major hardware changes required for short-term desired functions.

Equipment required:
1 Phillips-head screwdriver
1 PCI Ethernet card (I'm using a D-Link DFE-530TX+)

Unfortunately, I got a little ahead of myself and started unplugging everything right away. A quick read of the manual revealed that I actually needed to install the drivers before installing the hardware, so I had to re-plug everything back in. Even I have to take regular doses of RTFM.

When I first started setting everything up, I saw something that indicated to me that I would be the first person outside the eMachines factory to go inside the tower. How did I deduce this? Well, I saw this on the tower:

Yup, that's a manufacturer's QA seal. Of course, eMachines doesn't exactly target the compulsive-modifier customer. Fortunately for me, any possible warranty on Lazarus is long expired, so I pulled the sticker and was greeted by:

So naughty Danielle has voided the warranty (shown at right). I wonder if eMachines maintains this policy with their current products. It seems like there is much debate among manufacturers as to whether to have this policy. Anyway, warranty voided and Phillips-head screwdriver in hand, I removed the case.

Here is a shot of Lazarus's innards:
Why, yes, those are 2 ISA slots, for those who might be wondering. After a few exclamations about eMachines' perceived facetiousness, I removed the modem and replaced it with the Ethernet card. Since I eventually plan to add some USB ports, it made sense to remove the modem and not worry about punching out the other PCI slot right now.

The actual switch of cards was very easy. Once I plugged everything back in, Lazarus recognized the Ethernet card with no difficulty whatsoever. Plugging in an actual cable into our broadband modem hooked us right up to the Internet. Of course, it was somewhat slow, but I expected that. For good measure, I even changed the monitor resolution from 800x600 to 1024x768.

This means that all prep work is complete. I have established that Lazarus is capable of booting up and connecting to the Internet without major modifications. Obviously, the next step is to attempt to install some version of Linux.

Thursday, May 15, 2008

Adding New Parts

So I've been to my friendly neighborhood Geek-Toys-R-Us and acquired an Ethernet card and a KVM switch. I did research to make sure that these items would be compatible with all the OS's I'm going to be using. I'm leaving Windows 98 on Lazarus until all hardware is in place and ready to go.

The KVM switch is an IOGEAR MiniView Micro USB Plus (Model #GCS632U). Although Conrad is a Mac, my monitor precedes that purchase and is a VGA. The switch comes with all the appropriate cables, which is nice. It does not require batteries or any external power cords. As the name implies, the switch is USB-based and will go into Lazarus's lone USB almost-certainly-not-2.0 port. Eventually I'll probably get a USB 2.0 PCI card for Lazarus, but it's not a high priority right now, as I don't really plan on sticking in a crapload of USB devices.

As per the instructions, I made sure both machines were completely turned off before hooking up anything. After plugging the appropriate cables into the appropriate outlets, I powered up Conrad first. Everything worked perfectly except for the speakers. Then I powered up Lazarus to: 1) test the switch, and 2) see if Lazarus would recognize the peripherals in this new setup.

As mentioned previously, the switch has no buttons, so toggling between computers has to be done via "hotkeys" on the keyboard. I noticed in my research that one user had reviewed this model negatively because the manual says to toggle by tapping the Scroll Lock key twice, which does not exist on a Mac keyboard. If this user had bothered to read further, they would see that the manual gives options for Mac users. I'll concede that the method for invoking Hotkey Mode on Macs is kind of fussy and takes some getting used to. However, it is doable. I did have to go through a few different settings before finding one that I liked. Moral of the story: a spoonful of RTFM (Google it if you don't know what it means) makes the installation go down a whole lot easier.

On Lazarus, it did take some time to recognize the USB peripherals. In fact, I had to plug in a PS/2 mouse that came with him to click on the appropriate buttons, as he didn't recognize the keyboard or the mouse at first. There were no video issues with Lazarus, although sometimes toggling will mess with the settings on Conrad. However, the resolution always resets itself upon logging in, so I'm not worrying about it right now.

The speakers started working once I disconnected them from the switch, shut them off, reconnected them, and turned them back on. It never ceases to amaze me how many "technical tricks" are variations of turning something off and then turning it back on.

Next time: putting in the Ethernet card.

Tuesday, May 13, 2008

Details About Lazarus

As stated in the previous post, Lazarus is an old eMachines. Specifically, he is an etower 500ix. Here are some of his specs:
Processor: Intel Celeron 500 MHz
Memory: 64 MB
Operating system: Windows 98 SE
Hard drive: 10 GB
Other drives: CD-ROM, 3.5" floppy

Lazarus was purchased in early 2000 at an office store in eastern Oregon. My in-laws kept the receipt and all other paperwork associated with Lazarus, which they gave to us along with the tower.

Eventually, this may well turn into Operation Bionic Linux Box, in which I gradually upgrade the machine from the inside out. However, I am keeping hardware modifications to a minimum right now for 2 reasons:

1. I'd like to see what is possible with these limited resources.
2. Money's a bit tight at the moment.

So for the time being, the only hardware change is going to be adding an Ethernet card, as Lazarus only does dial-up in his current state. Fortunately, Ethernet cards are cheap, and money isn't that tight.

Also, I need a KVM switch. I've done a little research on this. I'd like to get one with a button toggle, but it looks like those are outside my budget right now, so keyboard toggle it is.

Some of you may be wondering which flavor of Linux I plan to use. I plan to experiment with several of them and will, of course, detail my experiences with each distro here. Stay tuned!

Saturday, May 10, 2008

Welcome to Operation Lazarus!

Thanks for dropping in! My mission in Operation Lazarus is to resurrect an old machine using Linux. Obviously, this blog is where I'm going to talk about it.

DRAMATIS PERSONAE






Lazarus: An 8-year-old eMachines that used to belong to my in-laws.




Conrad: A Mac mini that will share a monitor, keyboard, mouse and possibly speakers with Lazarus via a KVM switch.








Lucy: A MacBook that I will probably have up for browsing wikis, etc. during operations.


Danielle: Crazy human attempting Operation Lazarus.

Mr. Williams: Crazy enough to still be married to Danielle; primary user of Lazarus when he was new.

Lazarus was the first new computer that Mr. Williams ever had at home, so there is some sentimental attachment. When the in-laws got a new computer about a year and a half ago, they asked if we wanted the old one. Since I like to play with computers the way car hounds like "project cars", I jumped at the chance. Until now, I've lacked either the time or the space to start this project. Now I'm ready to get started. Watch this space for status updates.