uDSL - a personal experiment

I wish to make an attempt to rebuild the entirety of DSL with a few implementation changes - an attempt to squeeze a few more bytes out of the already tight DSL project.

1: everything (and I do mean everything) will be rebuilt from source using uClibc.

2: I will be building a 2.6.10 kernel using the knoppix 3.7 configuration.

3: SquashFS will be implemented upon KNOPPIX. sqsh type modules will be supported.

4: The x apps, all user applications, and basically anything non-system will be removed and repackaged. X-based user apps will be available in the least ram-using packages if available (like firefox), or be given a new package if not. The generic command line non-system and x apps will be in udsl-clapps.sqsh and udsl-xapps.sqsh.

5: Existing DSL modules will be mirrored. Redundant modules will be pared down to the most efficient (IE: uci>tar.gz>sqsh>dsl. UCI's consume only media space. tar.gzs consume media and 2x ramdisk. sqsh consumes media and inodes, dsls consume media, 2x ramdisk, and inodes.)

6: One unreleased module that will be built in is DSLGUI. This is a perl program I wrote using LUA/FLTK that allows intuitive (IE: What do you WANT to do?) package selection and dynamic download.

7: Included will be an also-unreleased dynamic uDSL builder that allows you to build a uDSL CD from downloaded packages and your existing CD, while using very little overhead RAM. I successfully tested this module using DSL 0.9.1, openoffice.uci, firefox.uci, gaim1_2.dsl and zsnes.dsl on a machine with a mere 128M ram and no swap (booyah). Unfortunately, it's kind of written in C (based on the mkisofs and cdrecord sources. Basically, it does the piping between the two "subprograms" internally, and does so with a small-ish 64k buffer). ___Warning___: THIS PROGRAM IS *NOT* FOR THE FAINT OF HEART, OR THOSE LOW ON CDRs. I don't have every brand, make and model of CD-R to test it with, and there's a very good chance that it will, on your system, produce only coasters. I mean, besides all my hacking about large amounts of code were removed (we know exactly which options and functionality is necessary for this application), and large amounts of code were inserted (pretty little gtk1.2 GUI).

8: Since I now own a Mac Mini, I will attempt to parallel my work in making a PPC version of uDSL

9: This ISO will be available in about four months (after I'm done debugging all my work, tweaking this and that, rebuilding everything in uClibc, debugging THAT, etc, ad inf.) or more. It will furthermore only be available by request and at discretion. This is a proof of concept, not a public beta.

Anyway, that's that, any questions?

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Similar approach of further shrinking...

I just started building a similar approach for building an extralight version. The final goals are different from yours, but many oft the concepts to get there are the same (µClibc, Squashfs, rebuilding all and everything).

In the medium term I need a solid and small base for customized toolboxes, that are in some cases much smaller than the usual complete DSL. I am using an own package format that allows finer grained decisions of what to include in a compressed image.

Some of the differences include that my simple toolbox' desktop consists of matchbox (desktop taskbar), gpe and some xfce-components (xfwm4), thus making the step to Gtk2 and removing Gtk1.

Since my version is not primarily intended to be customizable from the inside, but largely from the outside, no tools for downloading or installing additional software are included. However, I will make availaible the complete build environment on a ,,large'' ISO.

I guess a first alpha will be available in late march.