Hey all,
I set myself a project late last year - I have an old laptop, Toshiba Satellite 2800 with a Celeron 650 and 64MB RAM, and I wanted to make it usable. My options were to reinstall Windows or to try Linux on it. Any Windows version that would run on it would be too old and/or unstable, so I figured I'd try Linux. After a failed attempt at Ubuntu (GNOME is massive in 2000-spec terms) and nearly-as-bad attempts at Xubuntu and Fluxbuntu, I tried DSL. Loved its speed straight-off, but in the end decided that the 2.6 kernel offered by DSL-n would be more favourable in the long-term. However, there are two things anyone who has tried DSL-n will know:
1. APT doesn't work on it without serious hacking, and
2. nobody works on it anymore.
And so, with these two things firmly stowed away in a dark corner of my mind, I stubbornly proceeded to try anything and everything I could to get the old beast working...
...and succeeded
This process was made even more necessary by my need to get ndiswrapper working for my Netgear WG511v2 PCMCIA card, and the foolhardy desire to have a portable music-recording computer for around the home.
The purpose of this post is simply to detail the steps involved in the process, so anyone else who would like a working, low-resource-use operating system for a low-end PC can glean some information for their own process.
So...
What you need:
- A working Linux distribution on another computer (I used Ubuntu 7.10 "Gutsy Gibbon", and would highly recommend it)
- A USB key drive (aka "Nerdstick") or working network connection between your target computer and the one with the working Linux distro on it
- LAN or modem connection to the internet (broadband highly recommended)
- DSL-n installation disc (create from downloadable image on DSL-n website)
- Working, standard DSL-n installation on target computer
N.B. Depending on your computer, this last requirement might be hard to come by in and of itself - for instance, my computer's CD drive doesn't work anymore, and so I had to use a boot floppy and a USB CD drive (see
here - it doesn't matter that it's a DSL boot floppy, use the "install fromusb" option and it'll work with the DSL-n CD)
1. Install gnu-utils.dsl from the System section of MyDSL
2. Download dsl-dpkg.dsl into your home directory from
here (or by copying from the 50MB version of DSL) and install using MyDSL -> Load Local MyDSL Extension.
3. Copy the following directories from your working distro to your DSL-n computer using your USB key or network connection and the "sudo cp -RP" command:
- /var/lib/apt/
- /var/cache/apt/
- /usr/lib/perl/
- /usr/lib/perl5/
Note that if you copy this straigt from a computer you use a lot, you're going to have an awful lot of *.deb files, which you don't actually need to copy. Feel free not to copy these. Also, some people have needed to copy /usr/sbin/install-info and /usr/sbin/dpkg-restore, but these weren't present on my working Linux distro and I haven't suffered from not having them.
4. Change /etc/apt/sources.list to read:
Comment out the entries already there, so that you can change back if you have errors. I used the Ubuntu repositories because, in my opinion, they're simpler to navigate and better-maintained than the Debian ones, and they are what I already use for my working Linux distro (Ubuntu).
5. At this point, you're probably ready to try to run apt for the first time. Run "sudo apt-get update" to update apt's file lists.
6. If all goes well, run:
- "sudo apt-get install debconf"
- "sudo apt-get install perl"
- "sudo apt-get install apt-utils"
If you have any errors at points 5 or 6, it will most likely be because apt is looking for a file or directory that you don't have on your target computer yet. Try to find out what file that is, and copy it from your working Linux distro (possibly with the directory branch it belongs to as well). There's a good chance I've forgotten something I've done here, so please let me know if you have big errors.
7. If all goes well in these last few steps, you should have a working installation of apt on your DSL-n computer. Make sure you go no further until you do, or you're kinda stuffed in a few steps' time. Although apt may work, what you have is a very-out-of-date system that is marginally compatible with a Debian-based system. You may choose to stop here, or you may do as I did and hack on regardless
) You can upgrade a few core components without breaking anything by using "sudo apt-get install xxxxxx" where xxxxxx is the package name - just make sure you don't try to upgrade anything to do with X, or anything with xorg or xserver in the package name, or anything that depends on something with xorg or xserver in the package name, or you will break X and you'll be stuck with a command-line interface. Less than awesome.
To get your computer more up to date, continue:
8. WARNING - this step will appear to break your installation in the aforementioned manner, but persistence pays off.
Run the command "sudo apt-get dist-upgrade".
This will upgrade everything it possibly can, short of the Linux kernel and a few other random things. You will need to restart your computer after this step.
9. When your computer starts up again, X will fail to load, citing either errors about your X server being unavailable, or not being able to find the right font sizes. DSL-n uses Xvesa as its X server, but this is non-standard for Debian-based systems, and I think the dist-upgrade command breaks this setup, leaving you with only a command-line interface. However, it can be restored:
10. Run "sudo /usr/sbin/xsetup.sh". Select the "Xvesa" option, and select the options applicable to your computer on the following screens.
11. Run "sudo apt-get install --reinstall fluxbox". Although Fluxbox is already installed, reinstalling it from scratch seemed to fix some problems my computer had, re-establishing Fluxbox as my window manager.
12. Restart your computer. If it still won't boot into X, please reply and we'll try to work out what's going on - I just can't remember if there was anything else I had to fix, but I'm pretty sure there wasn't. If your computer boots into X ok, you're all good
13. So now you will have an updated X Window system, but still an outdated kernel. If this bothers you, you may have to compile your own for your system, as I did - the generic one available through apt with the linux or linux-generic packages hung my computer halfway through startup. Download the latest linux-source package, or the latest stable kernel source tarball from
www.kernel.org, and follow the instructions to compile and install your own kernel. It's relatively straight-forward - just know what hardware your computer has, and have a few hours up your sleeve.
If you've managed to get to this stage and ironed out all the problems along the way - well done, your old beast is now up-to-date, relatively compatible with Debian/Ubuntu, and probably running pretty ok... and surely better than it would under Windows!
Hope I haven't forgotten too many steps along the way... and hope this is helpful to someone!
P.S. For a quick, full-featured internet browser for your system, try Opera. It's non-free, but it doesn't have the memory leakage problems of Firefox or Seamonkey and it has a lot more features than Dillo. And no, I was not paid to say this.