
Minimal Linux Live: a minimalistic distro with basic network support via DHCP - vmorgulis
http://minimal.linux-bg.org/
======
ComputerGuru
The answer to the question that's probably on everyone's mind: the resulting
image is 12MiB for the x64 version and 11MiB for the x86 version.

By comparison, 16 MiB buys you a full-fledged (windowed) Linux live CD:
[http://tinycorelinux.net/](http://tinycorelinux.net/) (or you can use their
11MiB kernel-only environment).

~~~
icebraining
Seems equivalent. The 16MB TinyCore is the x86 version, whereas the x86-64
port takes 25MB.

~~~
slezyr
OpenWrt 3MB

~~~
icebraining
The x86 version seems to be 6MB.

------
jbuzbee
Anyone remember Tom's Rescue Disk? This linux-on-a-floppy was a must-have for
rescue and recover back in the day... The web site lives on, but many of the
links are 404'd

[http://www.toms.net/rb/](http://www.toms.net/rb/)

~~~
bluedino
It's not Linux, but QNX's demo floppy packed a ton on a single disk. Network
drivers, web browser, VESA 2.0 video drivers, a few apps...

[http://toastytech.com/guis/qnxdemo.html](http://toastytech.com/guis/qnxdemo.html)

~~~
nhf
QNX was ahead of its time. I think it underpinned most versions of the
BlackBerry OS and is used in cars / infotainment systems, but I think they
would have made a killing in the IoT space if they had developed in another
era.

~~~
mcpherrinm
QNX was only used in BB10, which was only introduced after the fall of
BlackBerry's popularity (and, arguably, was part of the reason for their old
products stagnating)

------
peller
This is awesome, thanks for sharing.

The full build process is documented [1,2], and the sources are very readable
and well-commented.

Also appears to include a basic install-to-disk script, which from the looks
of it you definitely should _not_ try unless you know how to fix your MBR
after it overwrites whatever you've currently got in place.[3]

Github:
[https://github.com/ivandavidov/minimal](https://github.com/ivandavidov/minimal)

[1] [http://blog.idzona.com/2016/04/component-architecture-of-
min...](http://blog.idzona.com/2016/04/component-architecture-of-minimal-
linux-live.html)

[2]
[https://github.com/ivandavidov/minimal/blob/master/src/the_d...](https://github.com/ivandavidov/minimal/blob/master/src/the_dao_of_minimal_linux_live.txt)

[3]
[https://github.com/ivandavidov/minimal/blob/master/src/overl...](https://github.com/ivandavidov/minimal/blob/master/src/overlay_mll_utils_03_installer.sh)

------
adictator
Good job. I'm personally a big fan of the alpine distro.

~~~
subway
I just wish there were an Alpine variant with native glibc support.

~~~
justincormack
It would hardly be Alpine, and it would be much bigger, its very hard to make
a small glibc.

~~~
subway
A great deal of the cruft in modern distros comes from docs, example configs,
etc -- things Alpine does a great job of cutting out. Obviously a glibc
variant is going to have a much larger memory footprint, and (arguably) is
less secure than an musl libc distro, but it gains the ability to run glibc-
only software ( _cough_ Oracle Java _cough_ ) without having to ship around
container/host images with all the extra junk deb packages bring along for the
ride.

~~~
voltagex_
I may be misunderstanding the problem but wouldn't it be possible to package
up the bare minimum for running the JRE?

------
dbcurtis
This is pretty cool. Had one minor script glitch (the scripts do not defend
against having './' in $PATH, so picked up wrong cpio at one point) but built
up pretty much straight-away.

I then spent a few minutes adding Micropython to the image, so now I have a
12MiB image that includes a pretty nice and very compact Python, although I
haven't added my favorite uPython libraries yet.

------
gravypod
Can I build this for a floppy? I've got an old machine I want to install into.

~~~
slim
Look for an older archive for a distribution like slackware. Your hardware
should be more supported

~~~
gravypod
The machine is an i486, it's not "that" old so I'd like to get it running with
debian or preferably arch. If I can get something to bootstrap the network ISA
card I've got in there and allow me to build a linux environment I can
bootstrap the other OS over a small one (like this).

~~~
j3097736
Try debian woody or slackware 10, both are from around 2004 and should run on
16Mb of RAM or less

There's also Damn Small Linux which is based on debian woody, you could
install dos, then transfer DSL image using a null-modem cable and loadlin to
disk and use that to bootstrap it from DOS

~~~
gravypod
I'm on DOS 6.22, a 200MB HDD, 4 COM, 1 Parallel, and I've got a shit load of
floppy disks. What I don't have is drivers for my network card.

How would I go about bootstrapping DSL? What is a null-modem cable?

PS: I've also got a zip program and a C compiler on there. If I need to write
software to make this happen I have the power to do so.

------
Koshkin
Projects like this is one of the things that make Linux the single most
important, first-grade in its universal usefullness, operating system.

Another similar cool multi-platform project that has been around for a while
is Aboriginal Linux.

------
LeonM
This is awesome! I'm going to try this to cross-compile for ARM, so MLL might
be the embedded linux 'boilerplate' which I need.

~~~
jaboutboul
You may be better off using Yocto[1], which is a custom distortion builder for
small-space use cases. It's an official Linux Foundation project as well.

[1] [https://www.yoctoproject.org](https://www.yoctoproject.org)

~~~
voltagex_
Has anyone used both Yocto and Buildroot? How do they compare?

~~~
pritambaral
Have used Yocto and Buildroot for Freescale board's official images. Cannot
recommend buildroot.

Buildroot is a poor build system. Perhaps make has spoiled me, but I expect
anything that calls itself a build system to be able to find on its own what
needs to be rebuilt. With buildroot, when I changed a component, I either had
to explicitly ask for it to be rebuilt (and the explicitly ask the final image
to be rebuilt), or explicitly mark the component dirty. The problem with the
latter being that it's a one-way action; there's no way to clear the dirty
flag without a full clean and rebuild of that component. Made our custom
kernel dev work painfully slow.

Yocto was simple enough to read about and understand the setup.

------
foolinaround
What are the usecases envisioned for this distro?

~~~
Gracana
> All you get is a simple shell console which supports all BusyBox applets
> and... well, that's all. This is why it's called "minimal".

> The good news is that the build scripts are very small in size and simple to
> understand. You can easily learn from the scripts and later modify them to
> include more stuff (I encourage you to do so). After you learn the basics
> you will have all the necessary tools and skills to create your own fully
> functional Linux based operating system. Entirely from scratch!

Build your own lightweight linux-based systems and utilities, I guess. And
learn while doing.

------
known
I've tried and it works perfectly;

