User:NeddySeagoon/Historical Gentoo

Why?
Like everything else gentoo, because I can.

Background
Gentoo started life on 1999-10-04. I didn't join in the fun until April 2003. I remembered it as April/May 2002, when I finally got ADSL. However I unearthed my original gentoo-minimal-1.4-rc4.iso CD the other day when I was was looking for bits to get and old A7N8X install to boot. Thats another story.

Having unearthed the gentoo-minimal-1.4-rc4.iso I just had to take it for a spin. After 18 years, it still works. That was a suprise.

It also contains a i686 stage 1. I couldn'd have used that in 2003 as my original Gentoo install was on a 450MHz k6-2.

So, I have a bootable ISO, a stage1 tarball. What else do I need for an install?

A contemporary portage snapshot and some distfiles.

I still have a rather dog eared, pages out of order, paper copy of the 2003 handbook if I can find it.

So I'll try an April 2003 Gentoo Install just because I can.

Preparation
Spin up a Virtual Machine. I gave it 1 core and a 20GB sparse HDD. Remember to put the HDD on an IDE controller and that the drive will be /dev/hda

Should you have real 2003 hardware to hand, you can read the compile commands as they scroll by.

In some video drivers MTTR support is optional, in others its not. XFree86 with the 256 colour VESA driver and twm works. gdm does not.

The Minimal ISO
Fetch the i686-gentoo-1.4-rc4-minimal.iso and attach it as the VM CDROM image.

The Portage Snapshot
The original Portage Snapshots have long gone, so in the Gentoo way, we need to make our own.

This cannot be made on our budding install as git is required. Originally, it would have been a download anyway. Clone the historical gentoo-x86 repo and make a portage-snapshot. Choose a date to match the stage tarball you happen to have handy.

A ready made portage-snapshot-2003-04-09 can be downloaded.

Untar the snapshot to /usr/portage.

almost works now. It will complain about a missing /etc/make.conf.

will fix that.

Base System Installation
Follow the Gentoo Linux 1.4 Installation Instructions with the exceptions below.

Do not. Make and install a new portage snapshot.

Set  in /etc/make.conf. All my distfiles since mid 2006 are there, including sources tracked down for this trip down memory lane.

Make an overlay. It will be needed lo work around missing source code files. My overlay is included in the root filesystem image.

VirtualBox Guest Additions
At this point, it would be normal practice to install VirtualBox Guest Additions but the 2.4.20 kernel is too old.

See unresolved symbol vunmap. In short "Actually we don't support all 2.4 kernels. The oldest guest kernel which is supported by VirtualBox is the RHEL3 kernel which is 2.4.21 with some modifications, among them vmalloc / vfree."

Gentoo Stats
Skip the handbook section 18.Gentoo-Stats. The code may well be available but the Gentoo server is no longer listening for reports.

Base System Files Missing and Workarounds
pam-login-3.10.tar.bz2 net-tools-1.60-gentoo-extra.tar.bz2 util-linux-2.11y-crypt-gentoo.patch.gz

Without  logins are not possible. Boot the liveCD and chroot instead or do a version bump of  to   in your overlay. That installs and works.

Without  there is no networking as   is required to bring up the network. The individual patches are still available so I've rolled a new. The size ane md5sum do not match the original. Copy the ebuild to the overlay and manifest it there.

is required to build util-linux with the default USE=crypt. Set USE=-crypt for.

That's two packages in the overlay so far.

Telnetd
I should have configured telnetd at this point, once  was installed. . Now there is a trap or two for the unwary. drops a ready to go configuration into /etc/xinitd.d. However,  only provides initd and does not install /etc/initd.conf so that it just works.

To get an run  Tab completion is a wonderful thing.

Edit and change the telnet line to read Be sure you are happy with the other services configured there.

will start inetd which in turn will start telnetd.

Root logins are not permitted. Its a security design feature. works.

ftpd
pulls in, so migrate telnet to xinetd as its so much easier.

telnetd should pull in  too but its unlikely anyone is interested in a bug now.

ftpd is installed but not configured.

NFS Version Three
nfs version three Is supported. Its probably the easiest way to transfer files out of the Gentoo guest. Its installed and automouts my media server to test media playback.

Installing a DeskTop
Start with XFree86. xorg is a thing of the future.

Follow the Gentoo Linux Desktop Configuration Guide with the exceptions below.

XFree86 Files Missing and Workarounds
The only XFree86 that all the files are found for (so far) is xfree-4.2.0-r12, so use that.

Deal with the failures as they arise.

e.g. gtk+ should depend on pango.

Starting Xorg
There is no autodetection of anything. Configure XFree86 then try Read, fix the configuration, rinse and repeat until it shows

twm in 256 colour mode looks the same today as it did in 2003

GNOME Files Missing and Workarounds
digests don't match. I have four different sources that all agree with each other an disagree with the portage snapshot. Copy the ebuild to the overlay and remake the manifest.

gdm
Start gdm

Starting gdm on the console or over telnet starts gdm on the console.

The GNOME desktop from 2003, in 24 bit colour, showing a few open windows.

KDE
The following files are missing kdelibs-3.1.1a.diff.bz2 kdebase-3.1.1a.diff.bz2 kdegraphics-3.1.1a.diff.bz2 kdebase-3.1.1a.diff.bz2

KDE Files Missing and Workarounds
Slackware 9.0 sources has version 3.1, which is still in the tree, so that is installed instead.

fails to build. See bug 15245

kdm


KDE sound events work too.

Goodies
Very few. Tracking down sources is not trivial.

alsamixer
Audio out is on the headphone control, at least, that makes sound output work.

cowsay
That's there. It needs a wrapper to make it work just with the cowsay command.

fortune-mod
No install is complete without "the notorious fortune program".

There is a story behind the app-games/ category. On Wed Sep 10, 2003, app-games was split into games-*/ and app-games/ was removed. app-games/fortune-mod became games-misc/fortune-mod. The fortune cookie databases were moved too. app-games/ is not in the historical git, so games-misc/* from Wed Sep 10, 2003 has been added to the overlay to provide as near to contemporary fortune-mod and fortune cookie databases as is currently available outside of CVS.

When fortune provides a quote that was actually spoken after the 9 April 2003, that's the reason.

VLC
Plays DVD rips, but cannot see files over nfs. Blueray rips don't work :)

XINE
Plays DVD rips over nfs but only in monochrome.

XMMS
FLAC and MP3 are both installed but not tested.

Bugs
Its all built for i586, almost. I forgot to turn off mmx, mmxext, 3dnow, 3dnowext and sse so it won't run on any real 586 or i686 hardware.

Moving the pointer in and out of the VM console confuses the mouse calibration, so some areas of the screen cannot be reached. Move the pointer top to bottom and left to right to the screen edges that can be reached to recalibrate.

Resources
Gentoo Linux 1.4 Installation Instructions The Installation Instructions there are for Gentoo Linux 1.4 which is slightly newer than the 1.4-rc4 install we have here.

i686-gentoo-1.4-rc4-minimal.iso

gentoo-x86 git import of CVS

portage-snapshot-2003-04-09

Matching distfiles for portage-snapshot-2003-04-09. (Incomplete).

Gentoo Linux Desktop Configuration Guide GNOME and ALSA are installed. Its unlikely I will test KDE as I was GNOME user.

Contemporary Gentoo alsa-guide

Sources of Sources
7.0-respin-SRPMS.iso shrike-SRPMS-disc1.iso shrike-SRPMS-disc2.iso shrike-SRPMS-disc3.iso valhalla-SRPMS-disc1.iso valhalla-SRPMS-disc2.iso

Fedora 1 SRPMS

Old Debian Sources

Slackware 9.0

The Virtual Machine Image
The Virtual Machine Image was created with

The directory contains the VM settings and the file  is the 20G root hard drive in a sparse file. Unpacked, its 2.4GB. If you put it on a filesystem that does not support sparse files, of forget to use the --sparse option to tar, it may be 20GB.

Configuring VirtualBox by Hand
The XML file of the VBox setup is provided.

Basic
Chose Linux and Gentoo (32-bit)

Advanced
Choose a Snapshot Folder. The default works.

The other options need VirtualBox Guest additions and our 2.4.20 kernel is too old to support that.

System Tab
I used 1GB RAM.

Choose the boot order. Only boot from the HDD if you can type on a dvorak keyboard. Otherwise boot a liveCD and edit /etc/rc.conf for the console and /etc/X11/XF86Config for the desktop.

Telnet should work on boot too. That's an option to fix your keymaps.

Choose the PIIX3 chipset. We have to use emulated hardware as the 2.4.20 kernel knows nothing of Virtio.

Display Tab
Use the VMSVGA Controller.

Storage Tab
Decompress the downloaded image and attach it the primary drive of the first PIIX4 IDE controller. It matters as IDE drives are assigned fixed names.

Audio Tab
Its ICH AC97 audio.

Network Tab
Both Bridged and NAT work. Bridged will make telnet using telnet easier.

Under advanced, choose one of the PCnet Ethernet adaptors as that is what kernel supports.

What you Get
A bootable Virtual Box disk image in a 20GB sparse file for /dev/hda. HDD that size were only a dream in 2003, so that's more that enough. It contains /boot and / (root). root is currently 1.5G.

In my build Virtualbox /dev/hdb contains 512MB swap, /home/, /usr/portage/ and /var/tmp/portage.

A very early /home/gentoo, the gentoo users home, is included.

Things you need to know.

Users and Passwords
root root gentoo gentoo

Keyboard Layout
I normally use dvorak-uk but this old system only has dvorak. That's what is set everywhere.

telnet
xinetd and telnet are both configured and xinetd is in the default runlevel, so telnet will work on boot.

Crypto
There is no working crypto. All the SSL certificates will have expired. All the cyphers from 2003 have not only bee depreciated, they have been removed too.

e.g. /etc/shadow and portage manifests both use md5. There is no ssh or connections to https://, which means most of the internet.

telnet should work, if you need remote access. That must only be used on a trusted network.

VirtualBox Enhancements
To install the VirtualBox Guest Additions a newer kernel is required and the VirtualBox Guest Additions provide most of the nice to haves, like shared folders, USB pass through and so on.

Get-U-Going
To play with Gentoo as it was, build your own, following the instructions above. The hard work is collecting the distfiles and that's already been done for you.

To just look at it, configure a Virtualbox VM, fetch the hda image, decompress it and attach it as master to the primary IDE contoller, so that its hda. That is required to boot it. If you can type on a US dvorak keyboard, log in at the console.

Package List
Package List

Acknowledgements
All the source code archive sites around the web that have unknowingly contributed their archives to this effort.

All the contributors to Any Old Distfiles ?