Coder Social home page Coder Social logo

pizslacker / sls-1.02 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from rdebath/sls-1.02

0.0 2.0 1.0 269.69 MB

The Linux distribution from 1993

Emacs Lisp 3.44% Shell 0.89% C 74.39% Clojure 0.01% Makefile 2.44% Scheme 0.01% TeX 1.69% C++ 4.92% Perl 0.20% Objective-C 0.11% Mathematica 0.02% Eiffel 0.04% JavaScript 0.03% Roff 9.06% PostScript 2.72% Pascal 0.01% Elixir 0.01% Awk 0.03% Perl 6 0.01% Scala 0.01%

sls-1.02's Introduction

SLS 1.02

SLS 1.02

This was the distribution to have in 1993, it was my first Linux distribution. To this day I haven't reinstalled the system that this was installed on. The machine has been upgraded, hard disks, motherboard, tape drives and so on. At some point during the nineties I upgraded the OS to use Debian Linux and since then it has been upgraded normally. But ... there are still a few signs of the original SLS 1.02 install.

To recreate the CD-ROM ISO file you can use the "jigdo-file" tool ...

$ jigdo-file make-image --jigdo=ISO/SLS-1.02.iso.jigdo *

But this probably isn't very useful as the CD-ROM is not bootable. The CD-ROM contains all the binaries and source uncompressed on the CD-ROM. There are floppy disk images for both 3½ and and 5¼ inch floppy drives.

Installed!

On the other hand a nice plain install of SLS 1.02 may be useful. This command should quickly reconstruct it for you.

$ jigdo-file make-image --jigdo=ISO/sls102_i386.qcow2.jigdo *

Use the qemu-system-i386 command below to run it.

How to Install

CDROM=/somwhere/on/your/disk
FLOPPY=`pwd`/floppy.img
DISK=`pwd`/sls-img.qcow2
FATDRIVE=`pwd`/slsfat

[ ! -e "$DISK" ] &&
    qemu-img create -f qcow2 "$DISK" 500M

mkdir "$FATDRIVE"
cp "$CDROM"/install/a1.3 "$FLOPPY"
cp -a "$CDROM"/install "$FATDRIVE"/.

qemu-system-i386 \
    -M isapc \
    -m 16M \
    -hda "$DISK" \
    -no-reboot \
    -net nic -net user,hostfwd=tcp:127.0.0.1:2023-:23 \
    -vga std -monitor vc \
    -fda "$FLOPPY" \
    -rtc base="date +1996-%m-%dT%T" \
    -boot once=a \
    -hdb fat:"$FATDRIVE" \

A disk of 500M is sufficient (or even huge!) and if you go above it you may
run into problems with "lilo" and the BIOS.

The "rtc base" is needed because SLS1.02 has a Y2K bug, 1996 is the last leap
year before this triggers. The "isapc" machine type is required to make the
network adaptor one that works with SLS1.02. Powerdown doesn't work correctly
so I use the "--no-reboot" trick. I've left the monitor console on Ctrl-Atl-2
as I won't need to swap floppies.

The install is very manual, you'll have to create the partition table directly
with "fdisk" and format it with "mke2fs". Don't worry about the Minux warning,
ext2 doesn't have the limitation. Don't bother with a swap partition, it can
only be 16Mb anyway and this version of Linux doesn't use a /boot partition.

The /dev/hdb1 partition will contain the files required for a mounted hard
disk install. Mount it onto "/mnt" before running the installer command.

You can overwrite the boot floopy (don't swap the floppy) when it comes to
that point in the install.

You will have to manually dismount all the partitions before doing a "quit"
command on the monitor console to turn off the VM.

The boot and FAT device are not needed once the install has completed.

    -boot once=a \
    -hdb fat:"$FATDRIVE" \

The Y2K bug is in "usr/src/time/clock.c", once it's fixed, compiled and
installed the RTC line can be replaced:

    -rtc base=localtime \

diff --git a/usr/src/time/clock.c b/usr/src/time/clock.c
index 9694bab..fbb8852 100644
--- a/usr/src/time/clock.c
+++ b/usr/src/time/clock.c
@@ -113,6 +113,7 @@ main (int argc, char **argv, char **envp) {
       tm.tm_mday = cmos_read(fd, 7);
       tm.tm_mon = cmos_read(fd, 8);
       tm.tm_year = cmos_read(fd, 9);
+      if (tm.tm_year < 70) tm.tm_year += 100;
     } while (tm.tm_min != cmos_read(fd, 2));
     tm.tm_mon--;
   }

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.