- Floppinux, sebuah distribusi Linux ringan yang bisa melakukan boot dari satu disket floppy (1.44MB), telah diperbarui ke edisi 2025 (v0.3.1)
- Versi baru ini berbasis kernel Linux 6.14.11 dan BusyBox 1.36.1, serta mencakup penyimpanan persisten (264KB) dan kompatibilitas dengan perangkat keras modern
- Dapat berjalan hanya dengan CPU Intel 486DX (33MHz) atau yang lebih tinggi dan RAM 20MB, serta mendukung editor teks (vi) dan perintah manipulasi file dasar
- Berjalan baik di perangkat keras nyata maupun emulator (qemu, Bochs, 86Box), dan dikonfigurasi agar pengguna membangun sendiri kernel dan toolchain-nya
- Sejak pertama kali dirilis 4 tahun lalu, proyek ini telah digunakan untuk pendidikan dan eksperimen, dan edisi kali ini berfokus pada pemeliharaan kernel terbaru dan pembaruan tutorial pembelajaran
Gambaran proyek
- Floppinux bertujuan membangun sistem Linux minimal yang dapat melakukan boot dari satu disket floppy
- Dirancang dalam bentuk workshop pembelajaran yang mirip dengan “Linux From Scratch”, sehingga pengguna dapat memodifikasi dan memperluasnya sendiri
- Distribusi yang dihasilkan menyediakan lingkungan terminal berbasis teks, memungkinkan pengeditan file dan penulisan skrip sederhana
- Ruang penyimpanan yang tersisa adalah 264KB, sehingga file yang dibuat pengguna dapat disimpan langsung ke disket
Fitur utama dan spesifikasi kebutuhan
- Mendukung boot dari satu disket, kernel terbaru (6.14), dan CPU x86 32-bit (486DX atau lebih tinggi)
- Menyertakan editor teks (vi), perintah manipulasi file dasar (cat, cp, mv, rm, dll.), dan kemampuan scripting sederhana
- File dapat disimpan ke disket melalui penyimpanan persisten (persistent storage)
- Kebutuhan perangkat keras minimum: Intel 486DX 33MHz, RAM 20MB, drive floppy internal
Konfigurasi kernel
- Linux 6.14.11 digunakan sebagai kernel terakhir yang masih mendukung penuh CPU i486
- Konfigurasi kernel disusun dengan fokus pada fungsi boot minimum, dan mencakup initramfs terkompresi XZ, dukungan eksekusi ELF, serta filesystem FAT
- Dukungan untuk TTY, block device, filesystem /proc dan sysfs diaktifkan
- Hasil build kernel dibuat sebagai bzImage (881KiB)
Lingkungan build dan toolchain
- Build dilakukan di Omarchy Linux (OS 64-bit berbasis Arch), dan prosedur yang sama juga dapat diterapkan pada sistem yang kompatibel dengan POSIX
- Build target 32-bit didukung melalui cross-compiler i486-linux-musl-cross
- qemu digunakan sebagai lingkungan emulasi, Bochs untuk debugging, dan 86Box sebagai alternatif meski lebih lambat
Kumpulan alat berbasis BusyBox
- Menggunakan BusyBox 1.36.1, yang menyediakan kumpulan perintah ringan pengganti utilitas GNU
- Perintah utama yang dipilih: cat, cp, df, echo, ls, mkdir, mv, rm, sync, vi, mount, umount, clear, test
- Dibangun sebagai binary statis (static binary) untuk menghilangkan ketergantungan pada shared library
- Root filesystem (rootfs.cpio.xz) yang dihasilkan setelah build BusyBox berukuran 137KiB
Konfigurasi filesystem dan inisialisasi
- Mencakup struktur direktori minimum, pesan sambutan (welcome), inittab, dan skrip inisialisasi rc
- Skrip rc me-mount
/proc dan /sys, lalu membuat direktori /home dan me-mount disket ke /mnt
- Saat boot, sistem menampilkan banner sambutan lalu masuk ke shell (/bin/sh)
- Melalui konfigurasi syslinux.cfg, pesan boot dan parameter kernel ditentukan
APPEND root=/dev/ram rdinit=/etc/init.d/rc console=tty0 tsc=unstable
Pembuatan image boot
- Membuat image floppy 1.44MB (floppinux.img), lalu memformatnya dan memasang bootloader (syslinux)
- Kernel, root filesystem, dan file konfigurasi disalin ke image
- Setelah diuji boot dengan qemu, image dapat ditulis ke disket nyata
- Juga disertai peringatan tentang risiko kehilangan data jika memilih drive yang salah
Ringkasan akhir
- Versi: 0.3.1 (Desember 2025)
- Kernel: 6.14.11
- BusyBox: 1.36.1
- Ukuran image: 1.44MiB
- Sisa ruang: sekitar 253KiB
- Perintah yang didukung: manipulasi file (cat, cp, mv, rm, ls, mkdir), administrasi sistem (df, sync, mount, umount), pemrosesan teks (echo, more), editor (vi)
Makna proyek
- Floppinux adalah distribusi ultra-ringan yang dioptimalkan untuk mempelajari struktur kernel Linux dan proses boot
- Menghadirkan lingkungan Linux lengkap yang benar-benar dapat berjalan di perangkat keras nyata ke dalam satu disket
- Dapat dimanfaatkan sebagai platform contoh yang berguna untuk pendidikan, eksperimen sistem retro, dan pengenalan pengembangan embedded
1 komentar
Komentar Hacker News
Saat Natal, ada yang mencoba membuat komputer era 32-bit benar-benar cukup layak dipakai
Masalahnya bukan performa, melainkan dukungan perangkat lunak dan driver video
Sekarang paket untuk 32-bit hampir tidak lagi dibangun, jadi bahkan CLI pun terbatas karena ketergantungan 64-bit
Di kernel, driver GPU lama juga sudah dihapus sehingga hanya mode VGA dasar yang tersisa, sampai pemutaran MPEG2 pun terasa berat
Akhirnya ia mencoba memasang Debian 5 yang cocok dengan perangkat kerasnya, tetapi ISO saat itu tidak mendukung boot dari USB sehingga ia menyerah
Kesimpulannya, proyek seperti ini memang menyenangkan, tetapi sulit dipakai untuk penggunaan nyata
Antarmuka lamanya terasa lebih baik daripada UI ribbon, dan fitur seperti WordArt membangkitkan nostalgia
Fitur versi terbaru memang bagus, tetapi tetap mengejutkan bahwa perangkat lunak yang usianya hampir 30 tahun bisa sepolished ini
NetBSD masih menyediakan paket dan pkgsrc untuk i386
Tautan repositori pkgsrc
Saya sendiri lebih suka mode teks VGA daripada grafis
Aplikasi berbasis browser terlalu banyak, dan program lambat berbasis JS juga bertebaran
Menarik juga bahwa LLM dilatih dari kode seperti ini
Bahkan NAT gateway dan web server juga dijalankan bersamaan, dan semuanya tetap baik-baik saja
Ironisnya, sekarang 16GB pun terasa kurang
Bisa boot dari floppy atau CD lalu chainload ke USB bahkan di PC lama
Saya pernah memakainya di Pentium MMX; memang lambat, tapi berfungsi dengan baik
Distribusi Linux pertama yang pernah saya pakai dulu adalah Damn Small Linux (DSL)
Awalnya sempat dipakai untuk upaya porting ke GameCube, tetapi tim pengembang utamanya kemudian beralih ke Gentoo
DSL 2024 saat ini berbasis antiX 23 i386, dan untuk memasukkan lingkungan desktop dalam batas 700MB, paket bahasa dan dokumentasi dipangkas
File yang diperlukan bisa diunduh lagi lewat skrip pemulihan
Situs resmi
Dari beberapa ulasan, Alpine disebut sebagai distro yang direkomendasikan, walau saya tidak yakin seberapa tepercaya itu
Saya mengujinya di 486 sungguhan, tetapi gagal boot
Saya memasang RAM 32MB, namun muncul error “Booting kernel failed: Invalid Argument”
Diduga penyebabnya BIOS tidak mendukung rutin peta memori E820h
Bisa merujuk ke screenshot dan
galeri perangkat keras nyata
Strategi persistensi berbasis FAT12 yang diajukan di artikel adalah pendekatan yang cerdas untuk menghemat ruang
Tetapi floppy tidak memiliki journaling, sehingga ada risiko besar kerusakan data saat listrik terputus
Sebagai gantinya, memakai filesystem berstruktur log seperti JFFS2, atau menserialisasikannya ke tar hanya saat shutdown, mungkin bisa lebih aman
Saya sudah memakai FAT selama puluhan tahun, dan hampir tidak pernah mengalami kerusakan data
Sampai sekarang pun sebagian besar perangkat embedded masih memakai FAT
Dengan mengatur urutan salinan FAT1/FAT2 dan pembaruan ukuran file, pemulihan saat crash tetap dimungkinkan
Slackware 8 maupun NetBSD terbaru pun masih mempertahankan struktur seperti itu
Saya ingat floppy demo QNX pada 1999
Dari disk 1,44MB, GUI dan web browser langsung berjalan
Setelah itu saya belum pernah melihat hal seperti itu lagi
Sekarang sistem seperti itu ada lagi
Untuk menambah ruang sisa 264KB, bisa memakai format floppy yang diperluas
Seperti disk instalasi Windows 95, jika memakai format track 21 sektor, kapasitasnya bisa sampai 1680KB
Bahkan alat pemformatan standar Linux juga bisa membuat layout seperti ini
Saya merindukan suara floppy disk dan antusiasme saat loading
Akan bagus kalau suara itu bisa diatur lewat pengaturan
Saya tertawa saat membaca kalimat “membakar floppy dalam 5 menit”
Saya jadi penasaran apakah floppy memang harus diformat
Jika syslinux atau lilo bisa memuat kernel langsung dari sektor floppy, sepertinya akan lebih sederhana
ext2 mungkin juga bisa lebih kecil daripada FAT
Saya ingat menerima Slackware pada 1997 sebagai set floppy 12 disk
Hanya saja kualitasnya buruk, jadi instalasinya cukup menyiksa
Saya mengunduhnya lewat FTP di VAX, lalu mentransfernya ke PC DOS dengan Kermit untuk instalasi, dan harus mengulang karena ada disk rusak di tengah jalan
Seri X untuk X11, sedangkan seri A/B/C untuk sistem dasar
Saya menjalankannya di sistem Coppermine 933MHz, dan kemudian ingat pernah gagal saat mencoba membangun X11 setelah mengganti HDD