Ok, I have an old Pentium 75Mhz that I'd like to use as a desktop system. Below I have more detailed explanations what I'd like to use if for, techical specifications (=limitations
), my plans so far (ie. networking, software considerations, etc.) and so on.
First of all, the P75 is not the only computer in use here. I have two other computers in LAN and I plan to use their resources too...
I would like to receive suggestions on which distribution to choose (two options I have considered are listed below, other suggestions are welcome) as well as suggestion related to my software choices, possible alternatives, better ideas for achieving what I want (which is why I wrote so lenghty explanations), etc.
I would not have written all this if I just wanted help - I'm also hoping that someone might gain something out of my ideas (if that is possible - how would I know if this seems just stupid for others?). Anyway any replies are appreciated and I thank for advance for any possible suggestions that I *might* receive.
Hard disk: 750Mb
Video: Matrox Millenium PCI Video Card, should be VESA compatible, that's all I know at the moment.
Audio: Not sure about anything else but it provided SB16 compatibility (although that was most likely with separate drivers for DOS). Anyway audio is not mandatory for this system.
Networking: Has old but very good 3com ethernet card. Also serial port for using it as "dumb terminal".
What I want:
Normally the system will be used mostly to provide web browser, irc (I have a separate shell account so this only requires ssh client) and such. I have planned to have several software choices, not limited to running them locally - that way I can experiment between ultra-light and barely-usable solutions to find out which ones are best for general use and which ones are good alternatives to provide more features (with cost of slowing down the system) and vice versa.
I also like to experiment and hack around my systems for fun - for that purpose only (as it has no user value) I'd like to have dual-boot between OpenDOS and linux (if possible).
What distro should I use?
Obviously with 16Mb RAM any modern distro using 2.6 series kernel is out of question. Also I am not going to build one by hand so let's forget that.
What I want from a distro is a light system with minimal footprint and possibility to run X Window server - I have checked and it is possible (even with just 16Mb RAM). Also to have graphics without X server the console needs to run in framebuffer. So far I only know one or two possible solutions:
Damn Small Linux:
This has what I need but reports minimum requirement of 24MB RAM - I only have 16MB, so does anyone know if it's enough when combined with swap partition of 32-128MB? I would expect so as I have read it has been reported to run Dillo (which runs in X only) with even 486 with 16MB.
Running 2.6 kernel and stuff that I don't need (like GTK2). It's said to be larger, slower and on top of that "under development, and not considered stable enough for for wide use" so it doesn't sound good - however it's minimum requirements with X is only 16MB memory. I'm thinking that if DSL-N can do it with 16MB I don't know what (if anything) does DSL have that requires more.
So if anyone can confirm my thoughts that DSL with X can be ran with 16MB RAM, please send a reply to say so - and remember, I plan to give up to 128MB of the limited HD space for swap partition, although obviously swapping is not what 75Mhz system needs and ignoring RAM requirements from webpages DSL-N has only downsides when compared to DSL on low-end systems.
I'm open to suggestions (even other than linux as long as it's *nix-like) - if you know any other distros that would run (with X Window server) on this old system. Also I need development tools so I can install applications - I except that I will sooner or later have to install something from source so if a distribution does not come with them it needs to be relatively easy to obtain them from web and install them. DSL supports APT & installing from debian repositories, something equally simple would be nice but I am not afraid to get my hands dirty if you can give me good enough reasons for trying some other distro!
Anyone with good alternatives and replacements for the following software, please do post a reply even if it's just one program and nothing else to comment on my post!
Notice that I have planned several choices just for web browsing - this is to ensure that I have lightweight choice, full featured modern GUI choice and something in between (obviously I don't expect heavy scripted sites like facebook to be usable any other way than via remote connection to my other systems).
- ssh - to access my shell account where I run irssi and certain public Slash'Em
- telnet - to remotely use console mode applications of my two other systems. Unsecure but telnet on my 2 other systems will be opened only inside LAN, which I consider trusted. Also some MUD's are accessible via telnet only.
- gpm - for mouse support in console & framebuffer
- web in textmode / framebuffer graphics with links-based browsers:
- ELinks - Much like links(2) and yet while it lacks framebuffer/graphics support it's, for me at least (and that matters most) preferred one hands down, and here's why: First of all it is dead simple to set up a hotkey similar to HTML-code/normal view but instead set it in ELinks to launch current page URL in links2 graphics mode - it's still lame and without good reasons I would just run links2. However ELinks provides:
2. CSS stylesheets and inline styles - no other console browser I know has CSS support, not even links2 in framebuffer. Meanwhile ELinks seems to provide better CSS support than even some lightweight browsers for X within the limitations of terminal. This feature is the biggest single reason while in my opinion most pages look better with ELinks than any other browser in console/framebuffer. Also it provides clarity on pages formatted with CSS and even with console limitations it is often better to read than with graphical browser with no CSS support.
3. Colors. Unfortunately as far as I know linux console driver only supports 16-colors even though with framebuffer it could easily be developed to offer up to 256 colors. ELinks may still be configured differently according to terminal it's running in so for now it should be either set to use calors set in elinks or carefully crafted to use documents color settings unless overridden by settings that ensure never using same fg/bg colors or even increase contrast of fg/bg by changing text color when contrast is too low. Also by setting at active link color settings in ELinks to override document colors the result looks usually really good and rarely worse than in other console browsers - if the site is well designed it looks most likely good even with just 16-colors that do not always match that well with all document colors. And document colors can be switched on/off with hotkey. The only browser that can sometimes look better is links2 with 8- or even 16-bit colors, images, different font sizes and no limitations of console but as far as colors go most pages today define colors in stylesheets and only rarely provide additional html-tag color settings so the default fg/bg colors will be used everywhere.
4. Extensible with scripts in several different languages, ie. perl, lua, ruby, etc. to rewrite/parse HTML before rendering it. Lua scripting being according documentation the "officially supported" (ELinks-Lua). Just the mention of scripting ticked my thoughts and as far as I know this is also feature not available in other console browsers. Scripts can be binded to hooks, and even just ELinks:re_format_html_hook is more than I need (for this browser anyway). With only couple lines I could create a parser to identify some of the most common ad-banners (ie. google-ads) and parse them from HTML before returning it for ELinks to render - same with most commonly seen html/css formattings that do not look good in ELinks and thus making the web experience even better. On most often used pages even site specific parsing/rewriting would be an option, for my nature such stuff is not extra work but rather extra fun.
5. Tabs - well, obviously having tabs is quite important - especially when there are no windows but just one screen filled by currently running process per tty. Without tab support 'screen' could be used to make things slightly better but as Elinks can do tabs I'd rather use them than run multiple ELinks instances inside screen. I love screen though and will simply use it to run ELinks + other console programes (like irssi) inside other screen "windows".
- Framebuffer image viewer - although links2 could be used for that, especially as this is mostly needed to view images on webpages.
- fbvnc, directvnc or some other vnc client for framebuffer - if anyone has either an opinion about what framebuffer vnc client is good or a warning to not use a specific client please tell me. VNC client is especially important with such low-end system and two powerful (relatively) systems running on same LAN. Can be used to connect remotely to either regular X session already running or a virtual X server can be started on one of the more powerful systems vie telnet or ssh first (in either case starting vnc server via ssh/telnet is done first and closed afterwards, x11vnc is used to provide vnc->existing X session).
Programs I plan to use in X are mostly similar:
- wmii - Window manager has to be highly keyboard optimized, extensible via scripting and default to tiling/tabbing window management mode. Floating window mode is needed far some programs to run correctly and wmii can manage floating windows on top of tiling ones which is the perfect solution (while ie. ion has floating mode support but not on same virtual desktop). Also tiling window managers available today are pretty much guaranteed to be among the most lightweight ones leaving even fluxbox easily behind in lightness.
- urxvt - light terminal, supports extensions via scripting in my favorite language, Perl. Also I might still end up using ELinks sometimes in X too and abusing it's support for 256 colors with xterm would be a must (it looks way better that way). Since urxvt is not only lighter and extensible but can also be set to provide 256 colors just like xterm this is obvious choice as far as terminal programs go. I'm also planning to write plugin to copy/paste via keyboard similar to 'screen' but with ability to copy in mouse Clipboard OR to Primary selection buffer and pasting from either one of them thus removing the need to use mouse with terminal (I don't hate mouse, I just like not having to move hand between keyboard/mouse, besides most things are faster via keyboard (if correctly supported).
- Dillo2 - ultralight graphical web browser nowdays providing at least partial CSS style support too.
- ssh with X forwarding - prowiding way to run X programs remotely from one of the more powerful systems.
- tightvncviewer - another way to use resources of other systems but I already mentioned this in console program considerations above. tightvnc provides best optimizations provided by free vnc clients/servers (as far as I know) although it remains to be seen whetever the P75 is fast enough so that advantages of smaller network traffic will not be countered if decompressing received data is too slow.
- Firefox? - I don't know if this system can really run firefox and be actually usable at same time... An older version maybe, but how old? Perhaps some other relatively modern browser? Maybe older version of Opera could be usable? P75 is quite slow after all, I recall back in mid-90's using this computer with win95 and I think I used to run netscape 3 and/or 4 on it so would I need to get that old version (and would it still run? ). Does anyone have any idea what regular desktop browsers could run and be usable on P75 with as little RAM as 16M?