myDSL Extensions (deprecated) :: post install



Quote
My solution was all of like 6 lines and 1 new file

I posted before seeing your last post...that response was to your first reply.

Quote
mydsl-install is _not_ called during bootup as far as I can determine from source

It is if you are auto-loading myDSL packages.  dsl-config calls mydsl-load if there are myDSL apps in the root, or if you specify a "mydsl=" boot option, which in turn calls mydsl-install.  If you are not auto-loading myDSL apps, there's no reason to run the post-install.

Quote
What I offer is far from a "rewrite" of myDSL

I see that now that I look at the script.  As i said before, i was responding to what you had posted earlier, and it sounded to me like a lot of extra work just to run one more script.

Quote
sometimes a script can still fail... unless it's a pristine CD one can't guarantee what environment it's going into

I agree.  I don't have much development experience beyond making a few myDSL packages, so I really don't know what it would take to make things bug-free.

Quote
did you like the idea of making them unexecutable when finished rather than deleting?

I don't really have a preference...I just thought maybe the idea could be expanded or modified in the future.  The script i made overwrites the tmp file with each new package anyway, so i guess it doesn't matter at this point.

Quote
It's main purpose is for dealing with .dsl packages that are subsequentially installed... so mkwritable is going to get called soon enough anyways

Not necessarily.  As I said i don't use many .dsl extensions, and when I do it's infrequently...just occasionally boot into XFree for a game or with some dev tools.  Usually I use only tar.gz or uci extensions.  It's not a huge difference in memory usage, but I figure why bother setting it up to run mkwriteable when there is no need?  The files in your extension can be written to the system without running mkwriteable.../etc isn't in ramdisk, but it does allow a limited amount of writing.

It looks like your script is basically the same as mine, except 1) it runs at boottime regardless of whether or not it's needed, and 2) it runs all files found in the mydsl.postinstall directory.  Keep in mind that you may be running unnecessary commands with both differences.  The boot without myDSL apps that i mentioned is one. The other is the fact that mydsl-install is run with each myDSL application...you run all post-install scripts every time a myDSL package is installed.

i filled out my application and took the beta-tester job. yyyc514's four dsls are semi-functional together, although skippy locks up X and keyboard. Also, I couldn't get X to load properly until i dug around in .xinitrc and found that it was unable to make it's temp file in /tmp, which seems odd to me because it succeeds a few lines later making one for ssh-agent. Anyhow the obvious fix was just to point the mktemp line to /home/dsl/ as i knew that was writable, and everything came up fine. the post-install for gtk2-small worked fine as well, without a hitch. 
mikshaw, i wanted to test your version too, i was given a 403 Permission Denied when trying to wget it. Would be happy to try again, im in irc 24/7 :)
I think the xfce.dsl is an awesome contribution and the idea of a post-install script as well...glad to help further DSL, if all i can contribute atm is testing, glad to do that! :)

Quote
It is if you are auto-loading myDSL packages.  dsl-config calls mydsl-load if there are myDSL apps in the root, or if you specify a "mydsl=" boot option, which in turn calls mydsl-install.  If you are not auto-loading myDSL apps, there's no reason to run the post-install.

Check again, it's only called in optional/* loops... the main auto-load loops do the loading manually...

Quote
The script i made overwrites the tmp file with each new package anyway, so i guess it doesn't matter at this point.

I leave them around... they delete themselves on a successful execution.

Quote
It's not a huge difference in memory usage, but I figure why bother setting it up to run mkwriteable when there is no need?  The files in your extension can be written to the system without running mkwriteable.../etc isn't in ramdisk, but it does allow a limited amount of writing.

If possible I'll change this.

Quote
It looks like your script is basically the same as mine, except 1) it runs at boottime regardless of whether or not it's needed, and 2) it runs all files found in the mydsl.postinstall directory.  Keep in mind that you may be running unnecessary commands with both differences.

Check /etc/init.d/dsl-config again, I might still be wrong but I'm pretty sure it has to be handled the way I've approached it.

Quote
The other is the fact that mydsl-install is run with each myDSL application...you run all post-install scripts every time a myDSL package is installed.

Upon success the scripts remove themselves... otherwise they stick around until the errors are dealt with, of course popping up during subsequent installs (kinda like how debian handles errors in the middle of installs).

I'm not sold on this last behavor, but failling scripts should be few and far between and serious enough to warrant attention when they do not work.

As I said in irc, I was wrong that mydsl-load is run during boottime.  It was an assumption rather than a fact.  I'm not sure why it was built like this, unless maybe it has something to do with xtdesk.
I was just clarifying for non-IRCers... any other thoughts from anyone on this project?

I haven't tested auto-install at bootup yet... might be a few bugs there, but for normal installs it works great... if it's going to be adopted I'd probably need to write a how-to for post-install authors...

Next Page...
original here.