Basically we use a base Linux and modified Squeak to use SVGAlib instead of X-Windows.
Later on some friends created a whole OS in Squeak (e.g. you could browse the TCP/IP protocol as a class in Smalltalk): https://wiki.squeak.org/squeak/1762
I used to have such a floppy. It was mindblowing, even though at the time 2 floppies would be enough to bootstrap a Debian install (if you had a common network card, the drivers of which were included).
Debian would just show the old curses-like installer, and pull the rest of the system from the repo, while QNX had a full GUI, network card/modem drivers, and a friggin web browser in 1.44 MB.
QNX, Floppix (2 diskettes)[0], MenuetOS[1], and Kolibri[2] were all very exciting to me in the early '00s. Eventually I got a USB drive (128MB!) and more or less gave up on the floppy life, but I do still appreciate the idea of running froim a floppy.
In the mid-2000s I was using a nice single-floppy router distribution called freesco. I thought it worked pretty well, but I didn't put it under any stress.
I don't know if the project still has the same soul as it did then, but here it is:
I found a small Pentium 100MHz desktop in the trash back then, stuck a spare pair of 3com NICs in it, and loaded up Turbolinux that I got with a Linux magazine.
A couple weeks later I came home to find the internet "not working", it got hacked (I never applied updates), and I replaced it with Freesco and never looked back.
I had to click the link to find out it's not FreeSCO (i.e. Not a free version of SCO Unix), which would have been quite... surprising.
Buried deep into SCO's FTP server there still is a bootable single-floppy demo of SCO OpenServer intended for POS devices or so, but it's lacking any kind of GUI and most command line utilities...
This might be nitpicking, but I feel this is the proper site for it: the name of the system is "X Window System". There is no "X Windows", "X-Windows" or such.
See the Wikipedia section [1] on nomenclature for details.
>I was digging through some old papers, and ran across a 15 [now 33] year old “XNextEvent” newsletter, "The Official Newsletter of XUG, the X User’s Group", Volume 1 Number 2, from June 1988. Here’s an article that illustrates how far the usage of the term "X Windows" has evolved over the past 15 [33] years. (Too bad The Window System Improperly Known as X Windows itself [still] hasn’t evolved.)
>Someone on slashdot asks, “Why is it still called X-Windows?”. Predictably, the first reply says: “It isn’t. It’s called ‘The X Window System.’ Or simply ‘X’. ‘X Windows’ is a misnomer.”
>He didn’t ask why it is “X-Windows”. He asked why it’s called “X-Windows”. You’re wrong that it isn’t called “X-Windows”. It is! It’s just that it isn’t “X-Windows”. Being something is independent of being called something.
>The answer to the question ‘Why is it still called X-Windows?’ is: It’s still called X-Windows in order to annoy the X-Windows Fanatics, who take it upon themselves to correct you every time you call it X-Windows. That’s why it’s called X-Windows.
>The following definitive guide to the consequences of saying “X Windows” is from the June 1988 “XNextEvent” newsletter, “The Official Newsletter of XUG, the X User’s Group”, Volume 1 Number 2:
>Things That Happen When You Say ‘X Windows’
>THE OFFICIAL NAMES
>The official names of the software described herein are:
>- X
>- X Window System
>- X Version 11
>- X Window System, Version 11
>- X11
>Note that the phrases X.11, X-11, X Windows or any permutation thereof, are explicitly excluded from this list and should not be used to describe the X Window System (window system should be thought of as one word).
>The above should be enough to scare anyone into using the proper terminology, but sadly enough, it’s not. Recently, certain people, lacking sufficient motivation to change their speech patterns, have fallen victim to various ‘accidents’, or ‘misfortune’. I’ve compiled a short list of happenings, some of which I have witnessed, others which remain heresay. I’m not claiming any direct connection between their speech habits and the reported incidents, but you be the judge… And woe betide any who set the cursed phrase into print!
>- You are forced to explain toolkit programming to X neophytes.
>- Bob Schiefler says, “You should know better than that!”
>- The Power Supply (and unknown boards) on your workstation mysteriously give up the ghost.
>- Ditto for the controller board for the disk on your new Sun.
>- Your hair falls out.
>- xmh refuses to come up in a useful size, no matter what you fiddle.
>- You inexplicitly lose both of your complete Ultrix Doc sets.
>- R2 won’t build.
>- Bob Schiefler says “Type ‘man X’”.
>- Your nifty new X screen saver just won’t go away.
>- The window you’re working in loses input focus. Permanently.
>[...] Don wrote the chapter on the X-Windows Disaster. (To annoy X fanatics, Don specifically asked that we include the hyphen after the letter “X,”, as well as the plural of the word “Windows,” in his chapter title.)
Once Xorg became stable enough on Linux, it has served me well for many years. Most old complaints have been addressed a decade ago; it's got shared memory, accelerated 3d, fast paths for codecs... there's nothing to complain with regards to performance.
In terms of feature, using it through SSH always impressed me and allowed some quick tricks that would be much more complicated otherwise. It also allowed advanced usages like in Compiz, which I personally got involved and used to impress my friends who did not use Linux.
The remaining problems were more complicated to fix. Old code base, old unused extensions, lack of isolation and sandboxing, different DPI and refresh rates on devices, no guarantees of when something was drawn and single thread architecture that introduces unneeded latency. That's why we got Wayland.
I'm nostalgic to see Xorg go, but I'm happy to know it will be replaced by something better.
Picking nits is fine, but this seems like an irrelevant nit. Like I at least get the argument about calling Linux GNU/Linux, even if I don’t care… but this one, I’m not sure why anyone would care.
The author of the linked article didn’t call it by the wrong name in the title. Changing the title to this incorrect name may mislead people into thinking that the person who wrote the linked content is incompetent, unqualified, or foolish.
I remember back in the late 90's or maybe 2000/2001 running some distro with X from two floppies. OSes that could be run from floppy were great because my parents weren't to keen on me partitioning the hard drive of the family computer, though there were options like the version of Mandrake that easily installed to a disk file on the Windows hard drive(it was probably possible on others, but Mandrake made it easy) and ZipSlack that used a UMSDOS filesystem to run on top of DOS, though it would leave weird little files around the file system that were noticeable once you went back to Windows, so it wasn't popular with my parents either.
It makes me sad how programmers can keep up with the insane improvement of the hardware, only to make software slower and bigger than ever, while adding very little useful functionality.
Today's apps are meant for things like 4K screens and have graphical resources to match.
Then, everyone loves to bundle in third-party frameworks and libraries, which bloat individual apps and cannot be shared.
If you look at the actual application logic code, it has grown much more reasonably in proportion to apps 20 years ago. It's just that there's a lot more junk tagging along with it. If you look at typical Linux packages, where library reuse is still the norm (though perhaps not for long, with containers...), you'll find fairly sensibly sized binaries.
Modern Linux kernels don't fit on floppies any more, but if you look at the actual code in there... there's good reasons for it to exist (and of course you can compile time disable a lot of it, though probably not enough to get it small enough for a floppy any more). Complexity is unfortunately necessary for things to work and perform well on modern systems (e.g. think of how much more complicated things got once SMP/multicore became the norm).
Programmers still carefully optimise things when it matters e.g, IoT.
However, to lament programmers not eking out every megabyte of payload size is nonsensical - in my opinion. Why waste a scarce resource (labour hours) optimising the use of a cheap and plentiful resource (bandwidth/storage).
Imagine a world where fusion energy was the most commonly employed energy source and the cost of electricity in both environmental and economic terms was negligible. Should we still have energy-star rated refrigerators? Why? What purpose would it serve?
> However, to lament programmers not eking out every megabyte of payload size is nonsensical - in my opinion. Why waste a scarce resource (labour hours) optimising the use of a cheap and plentiful resource (bandwidth/storage).
I'll give a counterpoint to this example; MineSweeper on the Windows Store.
Last time I took a look, the installation size of this app was more than a 'functional' install of the entire Windows 98 OS, including a slightly-less-colorful version of the same game.
Or, for a more 'Business' example. Autocad 2013+; it became bloated, frustrating to work with, and expensive.
> Imagine a world where fusion energy was the most commonly employed energy source and the cost of electricity in both environmental and economic terms was negligible. Should we still have energy-star rated refrigerators? Why? What purpose would it serve?
In a 'happy path' fusion scenario, the best refrigerator design would be one with the lowest ozone depleting and/or greenhouse gas emitting setup, so long as the energy consumption was overall sustainable on the grid a lot of them were hooked up to.
> However, to lament programmers not eking out every megabyte of payload size is nonsensical - in my opinion. Why waste a scarce resource (labour hours) optimising the use of a cheap and plentiful resource (bandwidth/storage).
Bandwidth and storage are not always plentiful. I might have a lot of other things to store and not enough room for a half a gig deck of cards. And maybe my local tower is down and I've got an intermittent signal from the next one over.
> Imagine a world where fusion energy was the most commonly employed energy source and the cost of electricity in both environmental and economic terms was negligible. Should we still have energy-star rated refrigerators? Why? What purpose would it serve?
A more efficient fridge dumps less heat into the kitchen (or wherever), which means temperature fluctuation and more comfort, even if A/C is effectively free, it makes noise and what not. The other comment about environmental impact is also worth considering, although if energy is free and plentiful, I expect most power plants to switch and for syngas to takeover where liquid fuel still makes sense, which might make worrying about emissions obsolete (although who knows, anyway fusion seems capital intensive for the forseable future, so I'm not going to plan for free and plentiful energy)
I think software quality was actually higher then. Dealing with a new API or framework is work too, often it’s actually more work than a bespoke implementation.
Lots of functionality has been added that cost significant effort to implement, but people don't even notice it's there.
Eg, take calculating the length of a string. That's just "add 1 to count until reaching \0", right?
Not in the modern day, where you have UTF8, and what qualifies as a character is a lot more complicated than it used to be. A modern program, wanting to accurately calculate the number of characters in a string then brings up a bunch of UTF8 machinery with it. Then there's a good deal more than that to UTF8, so that also brings up a bunch of other code that is needed for other purposes, but for now may not be used.
But these days we mostly use GUIs, so instead of "length of a string in characters", you probably want "length of a string in pixels". In comes the TrueType library you need to parse the font and implement the virtual machine (!), because these days a font file contains code that helps the system produce the best possible result.
And so on, and so forth. Doing the most basic version possible in English on a fixed width text display with fixed width fonts is just a few bytes of code. Doing the modern version that takes into account things like that Japan exists quickly expands the problem to megabytes worth of code.
Just tried this out for fun on my 486DX2 PC ( https://i.imgur.com/NOeR1Ad.jpg ). It boots, but obviously the minimal kernel only has included support for a small set of hardware, which does not include serial mouse, S3 805 VGA (works, but graphical artifacts), and 3C509 ISA network card. Will have to try out the provided toolchain and scripts to try and see if I can rebuild with better hardware support for my 486. Why bother, you ask? Why not, I say!
Back in the day, Damn Small Linux (DSL) made the controversial decision to stake themselves to Linux 2.4 because 2.6 was just too big and bloated, they said.
A newer kernel most definitely wouldn't fit on a floppy. 2.4+ was where they loosened the requirements and kernels started getting into the multi-megabyte territory.
Reminds me of 20 years ago, working with a fledgling "internet appliance software" company.. our existing software was on QNX and we wanted to transition it to Linux. I got a working system up with web browser, email, and chat (irc/jabber) up on a system with a 32MB Disk-On-Chip. Couldn't have done it without busybox! We used Qt Framebuffer instead of X Window... but same idea. :) Well done getting it to boot off a floppy!
looks good, i once stripped down win 3.11 to fit on a 2MF 3.0 2 MB formatted floppy, the compressed win.uc2 extracted to a dos ramdisk. this x floppy seems more efficient
Back in the day QNX used to have advertisements about having the entire OS and a GUI on a 1.44 MB disk:
* https://crackberry.com/heres-how-qnx-looked-1999-running-144...
* http://toastytech.com/guis/qnxdemo.html
With a friend and stimulated by the QNX demo we ported a Squeak Smalltalk graphical environment to one 1.44mb disk: http://swain.webframe.org/squeak/floppy/
Basically we use a base Linux and modified Squeak to use SVGAlib instead of X-Windows.
Later on some friends created a whole OS in Squeak (e.g. you could browse the TCP/IP protocol as a class in Smalltalk): https://wiki.squeak.org/squeak/1762
Still existing and getting developed: http://squeaknos.blogspot.com/?m=1
2 replies →
The nopsys/CogNOS project is more recent (commits in 2018): "CogNOS is actually a third iteration of the orginal SqueakNOS project ..."
https://github.com/nopsys/CogNOS
There is a conference paper about it, also from 2018:
https://charig.github.io/assets/papers/SCDE-DLS.pdf
I used to have such a floppy. It was mindblowing, even though at the time 2 floppies would be enough to bootstrap a Debian install (if you had a common network card, the drivers of which were included).
Debian would just show the old curses-like installer, and pull the rest of the system from the repo, while QNX had a full GUI, network card/modem drivers, and a friggin web browser in 1.44 MB.
That browser (which can be seen on the page linked by GP) is astounding for its size.
Out of curiosity, what are currently the most minimal, "graphic" (i.e. not Links-like), browsers available today? Any Open Source ones?
11 replies →
QNX, Floppix (2 diskettes)[0], MenuetOS[1], and Kolibri[2] were all very exciting to me in the early '00s. Eventually I got a USB drive (128MB!) and more or less gave up on the floppy life, but I do still appreciate the idea of running froim a floppy.
[0] https://www.floppix.com/ [1] http://menuetos.net/ [2] http://www.kolibrios.org/en/
I recently tried to boot again muLinux, I still think it's kinda impressive! http://micheleandreoli.org/public/Software/mulinux/
I understand the appeal of radical portability that a floppy-based OS gives you, but the fragility of floppy disk media is something I don't miss!
7 replies →
QNX had a Photon microGUI that is probably superior to X windows (Wayland). It's a shame it never got fully open sourced.
Wayland is not related to the X Window System, it is a ground up redesign.
And while Microgui is nice it purposely isn’t directly comparable to a compositing window manager.
What is QNX's business model nowadays?
I understand Ford Sync3 is based on it, but are there other consumer-visible products based on it?
5 replies →
In the mid-2000s I was using a nice single-floppy router distribution called freesco. I thought it worked pretty well, but I didn't put it under any stress.
I don't know if the project still has the same soul as it did then, but here it is:
https://www.freesco.org/
I found a small Pentium 100MHz desktop in the trash back then, stuck a spare pair of 3com NICs in it, and loaded up Turbolinux that I got with a Linux magazine.
Followed the Linux IP Masquerade HOWTO (http://www.e-infomax.com/ipmasq/howto/m-html/ipmasq-HOWTO-m....), and I soon had it running the network in my apartment building with a cable modem and 100mb SMC hub (also from a dumpster)
A couple weeks later I came home to find the internet "not working", it got hacked (I never applied updates), and I replaced it with Freesco and never looked back.
I had to click the link to find out it's not FreeSCO (i.e. Not a free version of SCO Unix), which would have been quite... surprising.
Buried deep into SCO's FTP server there still is a bootable single-floppy demo of SCO OpenServer intended for POS devices or so, but it's lacking any kind of GUI and most command line utilities...
2 replies →
The original Macintosh was 64KB of ROM plus a 400KB floppy. Snug.
Yeah, even if you include the stuff in ROM, Macs and Amigas had full GUI environments using much less space back in the 80's.
With that in mind, having an antique version of X running from a floppy isn't that impressive. It's still really cool though. :D
I ran that! It was actually really good.
This might be nitpicking, but I feel this is the proper site for it: the name of the system is "X Window System". There is no "X Windows", "X-Windows" or such.
See the Wikipedia section [1] on nomenclature for details.
[1]: https://en.wikipedia.org/wiki/X_Window_System#Nomenclature
Done.
Thanks! Much appreciated.
The X-Windows Disaster
https://donhopkins.medium.com/the-x-windows-disaster-128d398...
>Things That Happen When You Say ‘X Windows’
>I was digging through some old papers, and ran across a 15 [now 33] year old “XNextEvent” newsletter, "The Official Newsletter of XUG, the X User’s Group", Volume 1 Number 2, from June 1988. Here’s an article that illustrates how far the usage of the term "X Windows" has evolved over the past 15 [33] years. (Too bad The Window System Improperly Known as X Windows itself [still] hasn’t evolved.)
>Someone on slashdot asks, “Why is it still called X-Windows?”. Predictably, the first reply says: “It isn’t. It’s called ‘The X Window System.’ Or simply ‘X’. ‘X Windows’ is a misnomer.”
>He didn’t ask why it is “X-Windows”. He asked why it’s called “X-Windows”. You’re wrong that it isn’t called “X-Windows”. It is! It’s just that it isn’t “X-Windows”. Being something is independent of being called something.
>The answer to the question ‘Why is it still called X-Windows?’ is: It’s still called X-Windows in order to annoy the X-Windows Fanatics, who take it upon themselves to correct you every time you call it X-Windows. That’s why it’s called X-Windows.
>The following definitive guide to the consequences of saying “X Windows” is from the June 1988 “XNextEvent” newsletter, “The Official Newsletter of XUG, the X User’s Group”, Volume 1 Number 2:
>Things That Happen When You Say ‘X Windows’
>THE OFFICIAL NAMES
>The official names of the software described herein are:
>- X
>- X Window System
>- X Version 11
>- X Window System, Version 11
>- X11
>Note that the phrases X.11, X-11, X Windows or any permutation thereof, are explicitly excluded from this list and should not be used to describe the X Window System (window system should be thought of as one word).
>The above should be enough to scare anyone into using the proper terminology, but sadly enough, it’s not. Recently, certain people, lacking sufficient motivation to change their speech patterns, have fallen victim to various ‘accidents’, or ‘misfortune’. I’ve compiled a short list of happenings, some of which I have witnessed, others which remain heresay. I’m not claiming any direct connection between their speech habits and the reported incidents, but you be the judge… And woe betide any who set the cursed phrase into print!
>- You are forced to explain toolkit programming to X neophytes.
>- Bob Schiefler says, “You should know better than that!”
>- The Power Supply (and unknown boards) on your workstation mysteriously give up the ghost.
>- Ditto for the controller board for the disk on your new Sun.
>- Your hair falls out.
>- xmh refuses to come up in a useful size, no matter what you fiddle.
>- You inexplicitly lose both of your complete Ultrix Doc sets.
>- R2 won’t build.
>- Bob Schiefler says “Type ‘man X’”.
>- Your nifty new X screen saver just won’t go away.
>- The window you’re working in loses input focus. Permanently.
>[...] Don wrote the chapter on the X-Windows Disaster. (To annoy X fanatics, Don specifically asked that we include the hyphen after the letter “X,”, as well as the plural of the word “Windows,” in his chapter title.)
Once Xorg became stable enough on Linux, it has served me well for many years. Most old complaints have been addressed a decade ago; it's got shared memory, accelerated 3d, fast paths for codecs... there's nothing to complain with regards to performance.
In terms of feature, using it through SSH always impressed me and allowed some quick tricks that would be much more complicated otherwise. It also allowed advanced usages like in Compiz, which I personally got involved and used to impress my friends who did not use Linux.
The remaining problems were more complicated to fix. Old code base, old unused extensions, lack of isolation and sandboxing, different DPI and refresh rates on devices, no guarantees of when something was drawn and single thread architecture that introduces unneeded latency. That's why we got Wayland.
I'm nostalgic to see Xorg go, but I'm happy to know it will be replaced by something better.
I wonder how many of the UNIX Hater's handbook authors now use UNIX in a way or another.
2 replies →
Picking nits is fine, but this seems like an irrelevant nit. Like I at least get the argument about calling Linux GNU/Linux, even if I don’t care… but this one, I’m not sure why anyone would care.
The author of the linked article didn’t call it by the wrong name in the title. Changing the title to this incorrect name may mislead people into thinking that the person who wrote the linked content is incompetent, unqualified, or foolish.
1 reply →
Searches won't work properly because of people who don't care about correctness. That's the primary reason why some of us care.
4 replies →
I for myself get annoyed every time I see this misspell. The name is X Window. Even microserfs can learn it.
2 replies →
I remember back in the late 90's or maybe 2000/2001 running some distro with X from two floppies. OSes that could be run from floppy were great because my parents weren't to keen on me partitioning the hard drive of the family computer, though there were options like the version of Mandrake that easily installed to a disk file on the Windows hard drive(it was probably possible on others, but Mandrake made it easy) and ZipSlack that used a UMSDOS filesystem to run on top of DOS, though it would leave weird little files around the file system that were noticeable once you went back to Windows, so it wasn't popular with my parents either.
Was it https://web.archive.org/web/20051212184456/http://mulinux.su... ?
Oh wow I remember using this distro on a very old Toshiba 386 laptop, good times...
>I remember back in the late 90's or maybe 2000/2001 running some distro with X from two floppies.
Perhaps it was "2-Disk Xwindow Linux": https://web.archive.org/web/20020408075857/http://www.mungki...
muLinux was know for getting a minimal but usable Linux on a single floppy and using two to get a X11 working environment.
Today's flashlight apps are bigger than this.
It makes me sad how programmers can keep up with the insane improvement of the hardware, only to make software slower and bigger than ever, while adding very little useful functionality.
Resources and copypasta.
Today's apps are meant for things like 4K screens and have graphical resources to match.
Then, everyone loves to bundle in third-party frameworks and libraries, which bloat individual apps and cannot be shared.
If you look at the actual application logic code, it has grown much more reasonably in proportion to apps 20 years ago. It's just that there's a lot more junk tagging along with it. If you look at typical Linux packages, where library reuse is still the norm (though perhaps not for long, with containers...), you'll find fairly sensibly sized binaries.
Modern Linux kernels don't fit on floppies any more, but if you look at the actual code in there... there's good reasons for it to exist (and of course you can compile time disable a lot of it, though probably not enough to get it small enough for a floppy any more). Complexity is unfortunately necessary for things to work and perform well on modern systems (e.g. think of how much more complicated things got once SMP/multicore became the norm).
> cannot be shared
[Cries in Zircon static linking]
Programmers still carefully optimise things when it matters e.g, IoT.
However, to lament programmers not eking out every megabyte of payload size is nonsensical - in my opinion. Why waste a scarce resource (labour hours) optimising the use of a cheap and plentiful resource (bandwidth/storage).
Imagine a world where fusion energy was the most commonly employed energy source and the cost of electricity in both environmental and economic terms was negligible. Should we still have energy-star rated refrigerators? Why? What purpose would it serve?
> However, to lament programmers not eking out every megabyte of payload size is nonsensical - in my opinion. Why waste a scarce resource (labour hours) optimising the use of a cheap and plentiful resource (bandwidth/storage).
I'll give a counterpoint to this example; MineSweeper on the Windows Store.
Last time I took a look, the installation size of this app was more than a 'functional' install of the entire Windows 98 OS, including a slightly-less-colorful version of the same game.
Or, for a more 'Business' example. Autocad 2013+; it became bloated, frustrating to work with, and expensive.
> Imagine a world where fusion energy was the most commonly employed energy source and the cost of electricity in both environmental and economic terms was negligible. Should we still have energy-star rated refrigerators? Why? What purpose would it serve?
In a 'happy path' fusion scenario, the best refrigerator design would be one with the lowest ozone depleting and/or greenhouse gas emitting setup, so long as the energy consumption was overall sustainable on the grid a lot of them were hooked up to.
2 replies →
So:
It is not just a lack of optimization, I don't even know what to call it at this point. Intentional wastefulness probably.
I am a software engineer but I can't even imagine how a flashlight app can be several megabytes. What is inside it?
> However, to lament programmers not eking out every megabyte of payload size is nonsensical - in my opinion. Why waste a scarce resource (labour hours) optimising the use of a cheap and plentiful resource (bandwidth/storage).
Bandwidth and storage are not always plentiful. I might have a lot of other things to store and not enough room for a half a gig deck of cards. And maybe my local tower is down and I've got an intermittent signal from the next one over.
> Imagine a world where fusion energy was the most commonly employed energy source and the cost of electricity in both environmental and economic terms was negligible. Should we still have energy-star rated refrigerators? Why? What purpose would it serve?
A more efficient fridge dumps less heat into the kitchen (or wherever), which means temperature fluctuation and more comfort, even if A/C is effectively free, it makes noise and what not. The other comment about environmental impact is also worth considering, although if energy is free and plentiful, I expect most power plants to switch and for syngas to takeover where liquid fuel still makes sense, which might make worrying about emissions obsolete (although who knows, anyway fusion seems capital intensive for the forseable future, so I'm not going to plan for free and plentiful energy)
1 reply →
I think software quality was actually higher then. Dealing with a new API or framework is work too, often it’s actually more work than a bespoke implementation.
Lots of functionality has been added that cost significant effort to implement, but people don't even notice it's there.
Eg, take calculating the length of a string. That's just "add 1 to count until reaching \0", right?
Not in the modern day, where you have UTF8, and what qualifies as a character is a lot more complicated than it used to be. A modern program, wanting to accurately calculate the number of characters in a string then brings up a bunch of UTF8 machinery with it. Then there's a good deal more than that to UTF8, so that also brings up a bunch of other code that is needed for other purposes, but for now may not be used.
But these days we mostly use GUIs, so instead of "length of a string in characters", you probably want "length of a string in pixels". In comes the TrueType library you need to parse the font and implement the virtual machine (!), because these days a font file contains code that helps the system produce the best possible result.
And so on, and so forth. Doing the most basic version possible in English on a fixed width text display with fixed width fonts is just a few bytes of code. Doing the modern version that takes into account things like that Japan exists quickly expands the problem to megabytes worth of code.
Unifont is monospaced and it looks nice. Oh, and displays CJK.
Very cool!
Just tried this out for fun on my 486DX2 PC ( https://i.imgur.com/NOeR1Ad.jpg ). It boots, but obviously the minimal kernel only has included support for a small set of hardware, which does not include serial mouse, S3 805 VGA (works, but graphical artifacts), and 3C509 ISA network card. Will have to try out the provided toolchain and scripts to try and see if I can rebuild with better hardware support for my 486. Why bother, you ask? Why not, I say!
The Xwoaf-rebuild-4.0 floppy image booted up for me first try in Parallels. Made me unreasonably happy.
Linux 2.2.26 is kind of hilariously old. Linux 2.2 was released in 1999.
FWIW, it also runs out-of-the-box in QEMU, VMWare and Virtualbox.
Wouldn't it work with a newer kernel though, too?
Generally speaking, newer kernels are bigger.
Back in the day, Damn Small Linux (DSL) made the controversial decision to stake themselves to Linux 2.4 because 2.6 was just too big and bloated, they said.
A newer kernel most definitely wouldn't fit on a floppy. 2.4+ was where they loosened the requirements and kernels started getting into the multi-megabyte territory.
4 replies →
my first time touching Linux, was when these Kernel versión was new.
Reminds me of 20 years ago, working with a fledgling "internet appliance software" company.. our existing software was on QNX and we wanted to transition it to Linux. I got a working system up with web browser, email, and chat (irc/jabber) up on a system with a 32MB Disk-On-Chip. Couldn't have done it without busybox! We used Qt Framebuffer instead of X Window... but same idea. :) Well done getting it to boot off a floppy!
Sounds like the browser and chat system was in-house, to be able to just switch out X for Qt?
Very cool.
my first linux distro (TAMU) included X11, g++, and emacs all on 4 floppies. Era: 1994-95
wow, that's less then dos and win3.11 combined
My second Linux installation came with Xwindows. IIRC that were like 4 or 5 floppies
looks good, i once stripped down win 3.11 to fit on a 2MF 3.0 2 MB formatted floppy, the compressed win.uc2 extracted to a dos ramdisk. this x floppy seems more efficient
Nice. Now do it in Rust running (and building) on a Pentium.
y tho