====== Quick start ======
===== Download =====
You have a few options:
* Download the [[http://snacklinux.geekness.eu/download/|latest ISO]] (x86 only) and boot as a live system
* Download the [[http://snacklinux.geekness.eu/download/|hard drive image file]] and boot as a pre-installed system
* Compile the kernel and root filesystem (any architecture) and boot into SnackLinux either in a virtual machine or on physical hardware.
SnackLinux supports most generic vintage hardware out of the box. If you require specific drivers, please compile your own custom kernel.
===== Install =====
You can install SnackLinux from a live ISO image to a local hard drive by runnning ''/root/install-snacklinux.sh'', or by booting from the hard drive img file (easiest).
If you are using vintage hardware and an IDE to Compact Flash adapter, you can simply dd the img file to your CF card.
dd if=snacklinux_cf_i486_01.03.25.img of=/dev/sda4
Note for live install: you will need to setup networking and install dialog, ncurses and lilo with ''fbpkg''
fbpkg install dialog && fbpkg install ncurses && fbpkg install lilo
bash install-snacklinux.sh /dev/hda
===== Networking =====
To set up networking, you can either use a static IP
ifconfig eth0 192.168.0.100 netmask 255.255.255.0
route add default gw 192.168.0.1
or use ''udhcpc'' for DHCP.
or create ''/etc/network/intefaces'' and use ''ifup eth0''
touch /etc/network/intefaces
auto eth0
iface eth0 inet static
address 192.168.1.X # Replace X with the specific IP address you want to assign to this device
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 8.8.8.8 8.8.4.4
Run ''fbpkg update'' to update the latest packages list and to check if the network is up.
==== SSH ====
Install dropbear via fbpkg by running ''fbpkg install dropbear''
Then set up the keys:
mkdir /etc/dropbear && cd /etc/dropbear
dropbearkey -t rsa -f dropbear_rsa_host_key
dropbearkey -t ecdsa -f dropbear_ecdsa_host_key
Now run ''dropbear'' to start the dropbear SSH server.
==== Packages ====
To see the available packages, run ''fbpkg search mypackage''.
Use ''fbpkg install '' or ''fbpkg remove '' for installation and removal. Run ''fbpkg --help'' for more information.
==== Programming ====
For compiling C/C++, install the essential tools:
fbpkg install gcc
fbpkg install make
fbpkg install binutils
fbpkg install m4
# Other software that may be of value
# tcc, ncurses, pkgconf, [[nim-lang|nim]]
==== Graphics (in-progress) ====
**Requirements:** Built-in or ISA VGA video card
**Graphics memory:** 512KB tested, possibly works with 256KB
SnackLinux supports only the ISA bus and excludes any PCI-based devices including graphics cards. Most graphics drivers in the kernel (4.4) are aimed at PCI cards, so we are left with two choices: vga16fb or simpleframebuffer. The ''vesafb'' graphics driver only supports VESA 2.0+ cards, which do not encompass most ISA graphics cards (Cirrus GD54xx, Trident TVGA 8900/9000, Oak 067/077).
The SnackLinux kernel does not have built-in graphics support to save on size and allow booting with 8MB of RAM. Boot SnackLinux by selecting any VGA text mode on boot (Extlinux), you may encounter issues loading the appropriate kernel module if "VESA" is selected.
To install ''linux-modules'' and load the appropriate modules:
fbpkg install linux-modules
modprobe vga16fb
fbset #confirm the current resolution
ls /dev/fb0 #confirm we have a framebuffer
modprobe mousedev #/dev/input/mice does not exist by default, this creates it
modprobe psmouse #for a PS/2 mouse
modprobe sermouse #for a serial mouse
Builds of MicroWindows 0.92 have been compiled but not ready for a full release. As a note, Microwindow looks for a mouse at ''/dev/mouse''
You can download the compiled packages here, extract to your local directory and run ''launcher.sh'':
wget http://snacklinux.geekness.eu/repo/testing/microwindows-serial-mouse.tgz #for using a serial mouse. Create /dev/psaux or create a symbolic link to your mouse
wget http://snacklinux.geekness.eu/repo/testing/microwindows-0.92-bin-gpm.tgz #for using gpm
fbpkg install gpm
**Work In Progress**: builds of an updated and refactored MicroWindows 0.92: https://github.com/ghaerr/microwindows/tree/master
Currently unable to run in 4bit mode, even with grayscale enabled.