[geeklog-devel] Plugin help --- Package Extractor
Heather Engineering
info at heatherengineering.com
Wed Jun 13 06:08:10 EDT 2007
Sure - send me a copy and I'll try it out on OSX.
Euan.
------------------------------------------------------------------------
-----
Euan McKay
PhD Candidate in International Relations
Department of Advanced Social and International Studies
Graduate School of Arts and Sciences
The University of Tokyo
Email: euan at euans.net
Mobile: 090 6150 6553
Tel/Fax: 03 5307 3996
On 2007/06/13, at 11:26, Joe Mucchiello wrote:
> I've just about finished a new plugin called Package Extractor for
> Geeklog. I consider it only Alpha level code at the moment. In a
> nutshell, it presents an upload form for plugin tarballs. You
> upload the tarball and it extracts the files to the proper
> directories (admin to /public_html/admin/plugins/$plugin_name,
> public_html to /public_html/plugins/$plugin_name, and the rest to /
> plugins/$plugin_name). Assuming nothing goes wrong it redirects you
> to the plugin.php where the install link for the new plugin should
> be available in lower part of the page.
>
> Features (and Limitations):
> * Appears on the Admin menu only to members of Root as "Package
> Extractor (N/A)".
> * It only works with tar, tar.gz, tar.bz2 and tgz files as it is
> using PEAR::ARCHIVE::TAR to do the extractions. Plans for zip and
> rar support as they become available.
> * Likewise, it is pretty strict about the file name being $plugin_
> $plver_$glver.tar.
> * If there is a file named package.inc in the tarball, it will
> attempt to execute the function plugin_postpackageupload_$plugin
> (if it exists) after it moves the files. This is a place where
> plugins with weird file location requirements can move more stuff
> around. (Like Blaine's lib-portalparts.php file.) If the function
> returns false, the upload is aborted (though I still need to make
> it clean up.
> * Each major step of the process executes in its own request using
> redirects to avoid long processing time limitations made by some
> webhosts.
> * Files are placed in /data/packages before extraction. On success
> they are moved to /data/packages/installed. (Automatic cleanup of
> installed is a future feature.)
> * If the plugin is already installed, it compares plugin versions.
> If they match, it aborts the extraction. If they don't match it
> disables the current plugin, extracts and re-enables. This should
> activate the "upgrade" button in the plugins.php admin screen.
> * It logs much of its activity to a file called /logs/package.log
>
> Future Ideas:
> * Well, some kind of SOAP/XML-RPC/Web20/whatever-it's-called-these-
> days interface to a public website which would allow you to
> download the package from the web rather than uploading from the
> browser would be really cool. Probably include a support URL API
> like plugin_support_site_$plugin so plugins can reveal their
> "official" website to the package extractor (this would go in
> functions.inc of course).
> * It's called Package Extractor because I expect it to also work
> with Theme installation someday.
> * package.inc could have lots of cool functions. Like,
> plugin_final_instructions_$plugin, a function that would display an
> informative page about last minute things you MUST take care before
> hitting that install link. It would end on that page instead of
> plugins.php page if the function returns a string. Or,
> plugin_home_server_$plugin which, with the web20 interface could
> allow the plugin to verify it is up to date.
> * Oh, yeah. It needs a good icon.
>
> As I said, it's at the Alpha stage. It works in my test environment
> for most simple plugins (autotags, nettools, faq, glutil). More
> complex plugins really need that package.inc file but that's up to
> the plugin writers to support. And that's why I'm posting here.
> This thing needs testing in alternate environments (I've only got
> Win XP, Apache 2, PHP 5, GL 1.4.1). I'm looking for a few testers
> and for a few plugin writers to support the package.inc extensions.
>
> I'll have a tarball available to those who request it by the end of
> the week (although originally I was going to post this Sunday so
> who knows). I just need to test installing the package extractor
> plugin itself as it's been an active plugin in my test system for a
> while now. I also need to make a sample package.inc file.
>
>
> ----
> Joe Mucchiello
> Throwing Dice Games
> http://www.throwingdice.com
> _______________________________________________
> geeklog-devel mailing list
> geeklog-devel at lists.geeklog.net
> http://eight.pairlist.net/mailman/listinfo/geeklog-devel
More information about the geeklog-devel
mailing list