What exactly is an "extension"?
Topic: What exactly is an "extension"?
started by: jgombos
Posted by jgombos on Nov. 05 2006,06:37I would like to create a driver with an installation script to make installation easy for other DSL users. I was told to read the Wiki on < MyDSL .dsl extensions >. That is some very rough text. This documentation never explains exactly what an extension is. Only that whatever it is, it uses lots of RAM. I have no idea what a cloop file is, or a unionfs is, so I had no chance of following the explanation.
I thought reading how to create a .dsl extension might give me some clues, but it only says how to convert a Debian package to a DSL extension. From that, I get the impression that a DSL "extension" is a package. No documentation seems to exist for how to create an extension from scratch.
Someone please explain all this to me like I'm a four year old.
Posted by mikshaw on Nov. 05 2006,14:19There are 4 articles about creating myDSL extensions. It sounds like you saw only the first one.
Yes, extensions are software packages. The .tar.gz and .dsl packages are gzipped tarballs. The .uci and .unc packages are compressed iso (cloop) files. As far as I see it, the tarballs will eventually be replaced by cloops.
Posted by roberts on Nov. 05 2006,16:00I called them extensions and not packages because to call them packages would imply some sort of package management. It all has to do with trying to give the same advantage of adding applications to the liveCD user that traditional hard drive users have. The taking up alot of ram, has to do with the fact that only a ramdisk is available when running the OS from cdrom. Reboot and the extensions are gone. No package management needed. The unc and uci are mounted applications and do not take up alot of ram. The other two, tar.gz and .dsl, take up more ram, simply because both of them 'install' onto the ramdisk. If you want to read some history of why I created extensions read < this. >
Posted by jgombos on Nov. 05 2006,19:25So would I be correct in saying a .dsl extension exists on remastered CDs, while unc/uci extensions exist on some form of mounted writable media?
I don't understand why a .dsl extension would consume ramdisk space, if it's on the CD and can be used readonly.
I have a NIC driver to package up, and I'm not sure which way to go.
Posted by roberts on Nov. 05 2006,19:55A .dsl is a tarball, whether it is on a simple remastered cd,i.e, as an extension ala mkmydsl, or a persistent store, i.e, a hard drive, pendrive. etc. At boot time or dynamically it is untarred onto ramdisk. The only way for it not to be would be to install on a full remastered cd, but then by definition it would not be an extension. You would have another remastered DSL and would be larger than 50MB.
Surely, you know how to make a tarball for your nic driver. The only new thing is to add the menu and possibly icon for it. For that just untar an example extension and see how it is done. Then try it out by booting dsl with base and norestore options. Then try to dynamically load your tarball. tar.gz means it loads to /opt, and .dsl means it can load to most of the filesystem.
Posted by RayRoko on Nov. 21 2006,21:46I think someone has to add text from this topic into creating extension WIKI. I am also trying to learn how to make extensions and the WIKI in its present state was not helpful. Questions I have:
- what utility is the best to create a .dsl?
- how to specify the files to be added into the .dsl
- how to name and evoke startup/initialization scripts from the .dsl
- how to make add menus and icons
Posted by ^thehatsrule^ on Nov. 21 2006,21:57I think < http://damnsmalllinux.org/wiki/index.php/Creating_MyDSL_Extensions > should be adequate. Admittedly, the .dsl section is kinda empty, but the .tar.gz info page is great (by mikshaw!) - and it's basically the same as making a .dsl so you might want to take a look at that instead.