r21 - 23 Apr 2007 - 07:55:18 - SvenDowideitYou are here: TWiki >  Codev Web > TWikiOn > TWikiOnDebian > TWikiOnDebianPlugins
Tags:
, create new tag
Default TWiki directory Debian directory
/home/httpd/twiki/bin /usr/lib/cgi-bin/twiki
/home/httpd/twiki/pub /var/www/twiki/pub
/home/httpd/twiki/templates /var/lib/twiki/templates
/home/httpd/twiki/data /var/lib/twiki/data
/home/httpd/twiki/lib/TWiki /usr/share/perl5/TWiki

-- FrankHorowitz - 23 Sep 2002

Who has experience with plugins they would like to share?

-- GrantBow - 17 Nov 2002

Some plugins need CPAN modules, and I believe plugins currently fail silently if they don't find the right TWiki modules on the Perl @INC path - SettingLibPath (setlib.cfg) is in the TWikiAlphaRelease and may help here.

Once BeijingRelease is out, that should help a bit with Debian packaging including plugins.

-- RichardDonkin - 17 Nov 2002

I am considering making a twiki-plugins deb package from the twikiplugins cvs, but it will require that we tag the plugins that are known to work with a particular release

-- SvenDowideit - 25 Jan 2003

The meta data you require already exists, but not in CVS. It's in the form data on each Plugin page. See WebForm and the TestedOnTWiki field. (i.e. CommentPlugin)

-- GrantBow - 26 Jan 2003

yeah, but mining twiki pages is going to be harder to automate. I want this to be extremely simple, so that whoever makes the packages mostly just has to test them.

-- SvenDowideit - 26 Jan 2003

Sounds like this could be a good TWikiPlugins or TWikiAddOns opportunity. At the very least you can make a topic that does a search and then use the output. Put that output into a file and use it as input for the packaging, perhaps. It's not elegant or end-to-end automated but I think it might be effective. I put this in a pretty table but it's easy enought to format the output as a straight text list and perhaps nest a search to only show the topics for a certain release. It would be very impressive to use a drop-down selection list for this table, but sorting by clicking on the column headers is enough for now.

%SEARCH{search="TopicClassification.*?value=\"PluginPackage\"" web="Plugins" scope="text" regex="on" nosearch="on" nototal="on" header="| Topic: | TestedOnTWiki: |" format="| $topic? | $formfield(TestedOnTWiki? ) |"}%

CVS integration with TWiki is a fascinating topic since we use it to version control our own code anyway. I never understood why we don't use RCS and topics to control the code itself, but probably because these kinds of tools do not exist yet to make it easy to do.

-- GrantBow - 27 Jan 2003

So are plugins easy to install on a Debian hosted TWiki? Or is it so difficult that it's a custom job every time and hard to discuss here?

-- GrantBow - 02 May 2003

I am now at a stage that I can consider the issue of how best to support TWikiPlugins. there probably a number of ways to approach it

  1. like suggested in DebianBug:210898 (softlinks to fake the normal TWiki install directory structure)
  2. hand copying into each location (not a real option)
  3. a TWikiTopic? install script (via an attach-like script)
  4. a debian package that i maintain
  5. Ideas?

I am leaning towards 3 as this would allow any TWikiAdmin? to download a Plugin, and then use the TWiki web interface to configure it. I am thinking that after doing an apt-get install twiki, everything should be able to be configured via our Web interface (including the TWiki.cfg options). This would force us to be very careful about security.

it would also mean that I could move PluginTopics? around, so if a PluginAuthor? put the ConfigTopic? into the TWikiWeb? I could install it in the ConfigWeb? , or the PluginsWeb? .... thus enforcing the desired file Layout.

-- SvenDowideit - 15 Sep 2003

I tried using method 1 yesterday. It just resulted in the symlinks being clobbered, when I extracted the plugins.

-- JensMadsen - 18 Sep 2003

I'd like to know - how many of you would scream if the $twikiLibPath setting also contained a directory that was writeable by twiki (i'm considering something in twiki/data , thus allowing me to write a cgi based plugins installer...

-- SvenDowideit - 17 Oct 2004

I think a CgiBasedPluginInstaller? would be nice, but you'll lose (or have to reinvent) the capabilities of a PackageManagementSystem? like "What package does /this/file belong to?" "Has /it been modified since installation?" aso.

The approach I favored was to write a plugin debianizer script (first attempt). The plugins I'm currently interessted in mostly work without manual modification (Exceptions: CommentPlugin and SessionPlugin).

Please take a look and tell me what you think.

-- ChristopherHuhn - 02 Feb 2005

There is no specific proposal for documentation here, so I'm changing it from DocRequest to GeneralWaffle?

-- CrawfordCurrie - 15 Feb 2005

One problem are the default plugins that are shipped with the twiki release as they belong to the twiki package on debian. They cannot be upgraded using dpkg and newly included plugins will conflict old ones that were seperately installed as deb's with a previous release.

Best approach would be to separate these plugins into their own packages and let twiki depend on or recommend them, I think.

-- ChristopherHuhn - 25 Feb 2005

Here's a suggested patch at attached twikiplugin2deb script... nothing much... but may help, maybe.

$ diff -u twikiplugin2deb twikiplugin2deb.new
--- twikiplugin2deb     2006-10-06 12:01:19.000000000 +0200
+++ twikiplugin2deb.new 2006-10-06 11:59:37.000000000 +0200
@@ -11,6 +11,13 @@
 # curl http://twiki.org/cgi-bin/view/Plugins/WebTopicList?skin=rss | \
 #      grep "Plugin$" | cut -f 2 -d ' '

+CURL=/usr/bin/curl
+
+if [ ! -x $CURL ]
+then
+    echo "Error : $CURL not found" >&2
+    exit 1
+fi

 PLUGIN=$1
 TWIKI_HOMEURL=http://twiki.org
@@ -21,14 +28,18 @@
 # TODO:
 #VERSION=$(date +%Y%m%d)
 LAST_MODIFIED="$(HEAD $PLUGINURL | grep Last-Modified: | cut -f 2- -d ' ')"
+echo "$PLUGINURL last modified : $LAST_MODIFIED"
 VERSION=$(date -d "$LAST_MODIFIED" +"%y%m%d")
+echo "Version : $VERSION"

 [ "$DEBEMAIL" ] || DEBEMAIL="$(whoami)@$(cat /etc/mailname)"
 # TODO: get the fullname
 [ "$DEBFULLNAME" ] || DEBFULLNAME="$(whoami)"

+
 if [ ! -e $PLUGIN-$VERSION.zip ]; then
-       curl $PLUGINURL -o $PLUGIN-$VERSION.zip
+        echo "$CURL $PLUGINURL -o $PLUGIN-$VERSION.zip"
+       $CURL $PLUGINURL -o $PLUGIN-$VERSION.zip
        touch -d "$LAST_MODIFIED" $PLUGIN-$VERSION.zip
 fi
-- OlivierBerger - 06 Oct 2006

Now that I've played with the script a little, I think I'll have to re-write it to have proper changelogs etc (probly in Perl smile ) - there is however quite a bit of stuff that will need to be done to get dependancies happening properly etc.

add the following to your apt sources.list to to play, but do so at your own risk - I've not tested anything

deb http://distributedINFORMATION.com/experimental experimental main contrib
deb-src http://distributedINFORMATION.com/experimental experimental main contrib

you still need to run configure (or hand edit /etc/twiki/LocalSite.cfg ) to enable any plugins.

(hehe, for me, I can now apt-get install twiki twiki-moveabletypeskin twiki-bugscontrib )

ok, today's effort gets us 171 plugins that can be installed. many you will need to fill their dependancies yourself by hand, but this will improve over time as I automate the generation of dependancies.

debian:~# apt-cache search twiki
ewiki - ErfurtWiki: an implementation of the WikiWikiWeb hypertext system
twiki - A Web Based Collaboration Platform
twiki-accessstatsplugin - Provides statistics by parsing access log file, such as Apache access log
twiki-actiontrackerplugin - Adds support for action tags in topics, and automatic notification of action statuses
twiki-aliasplugin - Define aliases which will be replaced with arbitrary strings automatically
twiki-antiwikispamplugin - prevents registered Wiki Spam from being saved
twiki-attachcontentplugin - Saves dynamic topic text to an attachment
twiki-autonavigationplugin - Display an auto-generated "quick links" bar listing commonly viewed topics
twiki-batchuploadplugin - Attach multiple files at once by uploading a zip archive
twiki-beautifierplugin - Highlights and formats code fragments.
twiki-beewikiplugin - .
twiki-behaviourcontrib - =Behaviour= Javascript event library to create javascript based interactions that degrade well when javascript is not available
twiki-bibtexplugin - Embeds <nop>BibTeX entries in a TWiki page
twiki-blacklistplugin - Utility to keep malicious users away from a public TWiki site
twiki-blogaddon - Simple blogging application
twiki-blogplugin - Basic blogging features used to implement the BlogUp <nop>TWikiApplication
twiki-breadcrumbsplugin - A flexible way to display breadcrumbs navigation
twiki-bugscontrib - Item Tracking system implemented as a TWiki Application
twiki-buildcontrib - Automate build process for Plugins, Add-ons and Contrib modules
twiki-caboteriaskin - .
twiki-calendarplugin - Show a monthly calendar with highlighted events
twiki-chartplugin - Create PNG or GIF charts to visualize TWiki tables
twiki-checklistplugin - Create simple checklists.
twiki-clirunnercontrib - Run independent TWiki scripts from your TWiki code (mostly unit tests)
twiki-colorpickercontrib - .
twiki-commentplugin - Allows users to quickly post comments to a page without an edit/preview/save cycle.
twiki-commonheaderfooterplugin - Plugin to insert a common header and/or footer into every topic.
twiki-comparerevisionsaddon - .
twiki-controlsplugin - This plugin renders a control (typically used in an HTML form) based on values defined in a topic.
twiki-datefieldplugin - Adds a =date= type to forms
twiki-dbcachecontrib - Reusable code that treats TWiki forms as if they were table rows in a database
twiki-dbcacheplugin - Lightweighted frontend to the DBCacheContrib
twiki-dbiqueryplugin - Make complex database queries using DBI Perl module
twiki-dblclickeditplugin - start editing with dbl clic mouse button
twiki-diffwordbywordaddon - Show word-by-word differences between revisions of topics
twiki-directedgraphplugin - Embed directed graphs in TWiki topics (using the Graphviz package)
twiki-directedgraphwebmapplugin - Directed Graph of (part of) a web
twiki-diskusageplugin - This plugin shows the disk usage for the current web
twiki-doxygenplugin - Creates links to doxygen-generated docs using =%<nop>DOX{classname}%=.
twiki-easytimelineplugin - Generate graphical timeline diagrams from markup text
twiki-editcontrib - Provides subroutines useful in writing plugins that edit and save parts of topics.
twiki-edithiddentableplugin - Edit TWiki tables rows using a form
twiki-editrowplugin - Single table row inline edit
twiki-editsyntaxplugin - Edit TWiki content using your preferred wiki syntax
twiki-edittableplugin - Edit TWiki tables using edit fields, date pickers and drop down boxes
twiki-edittablerowplugin - Edit TWiki tables rows using a form
twiki-emailobfuscationplugin - Obstuficates e-mail addresses by characters to their HTML character entity references.
twiki-excelimportexportplugin - Renders an attached Excel spreadsheet as TWiki table
twiki-explicitnumberingplugin - Use the ==#<nop>#.==, ==#<nop>#..== _etc._ notation to insert outline numbering sequences (1, 1.1, 2, 2.1) in topic's text. Support also numbered headings.
twiki-externallinkplugin - This plugin will mark external links so users don't leave your site by accident.
twiki-filelistplugin - Displays a formattable list of topic attachments, anywhere in a topic.
twiki-filterplugin - Substitute and extract information from content by using regular expressions
twiki-findelsewhereplugin - Create links by looking first in the current web, then in a predefined list of other webs
twiki-flexweblistplugin - Flexible way to display hierarchical weblists
twiki-footnoteplugin - Footnotes are notes placed at the end of a topic.
twiki-foreachplugin - Loop over successive elements of a list, or a range of numbers.
twiki-formfieldlistplugin - Renders a list of fields in the form attached to some topic (extending the predefined variable [[%TWIKIWEB%.TWikiDocumentation#FORMFIELD][FORMFIELD]])
twiki-formqueryplugin - Provides query capabilities across a database defined using forms and embedded tables in TWiki topics.
twiki-foruserlanguagesplugin - used to insert full or partial translations and keep them in original topic.
twiki-funcuserscontrib - *EXPERTS ONLY* Proposed API for user access, for use with TWiki-4.0.x
twiki-fundraisingplugin - Show a fundraising message with a progress bar
twiki-gaugeplugin - Build dashboards that contain graphical images of gauges defined with =%<nop>GAUGE{}%= variables.
twiki-generatesearchplugin - This plugin generates a form-driven search based on a TWiki.TWikiForms.
twiki-genpdfaddon - .
twiki-genpdflatexaddon - .
twiki-globalreplaceplugin - Global search and replace functionality across all topics in a web
twiki-glueplugin - Enable <nop>TWikiML to span multiple lines
twiki-gnuplotplugin - Allows users to plot data and functions using <nop>GnuPlot
twiki-googiespellcontrib - .
twiki-googleajaxsearchplugin - Dynamic Google AJAX search service for public TWiki sites
twiki-googleanalyticsplugin - Adds Google Analytics !JavaScript code to all pages
twiki-guidplugin - Generates GUID unique ids
twiki-headlinesplugin - Build news portals that show headline news based on RSS news feeds from news sites.
twiki-historyplugin - Shows a complete history of a document
twiki-holidaylistplugin - Create a table with a list of people on holidays
twiki-htmlformsplugin - .
twiki-htmlmetaplugin - _Insert html "meta name" entries into html header_
twiki-ifdefinedplugin - Render content conditionally
twiki-imagegalleryplugin - Displays image gallery with auto-generated thumbnails from attachments.
twiki-imageplugin - Control the display and alignment of images using an easy syntax
twiki-imgplugin - Allows TWiki variable-style insertion of images in topics
twiki-immediatenotifyplugin - Allows immediate notification of topic changes through SMTP or Jabber
twiki-interwikiplugin - Link ==ExternalSite:Page== text to external sites based on aliases defined in a rules topic
twiki-interwikipreviewplugin - Display extra information (using AJAX) next to ==ExternalSite:Page== links.
twiki-javadocplugin - Write links to javadoc classes
twiki-jscalendarcontrib - [[http://dynarch.com/mishoo/calendar.epl][Mishoo JSCalendar]], packaged for use by plugins, skins and add-ons.
twiki-jspopupplugin - Creates a dynamic popup window
twiki-jsunitcontrib - JSUnit !JavaScript unit testing framework
twiki-kupucontrib - Integration of the [[http://kupu.oscom.org/][OSCOM Kupu WYSIWYG editor]] with TWiki.
twiki-latexmodeplugin - Enables <nop>LaTeX markup (mathematics and more) in TWiki topics
twiki-ldapcontrib - LDAP services for TWiki
twiki-ldapngplugin - Query and display data from an LDAP directory
twiki-ldapplugin - This plugin retrieves data from an LDAP directory and displays it on the current topic.
twiki-lightboxplugin - TWiki hooks to the Lightbox Javascript package for better thumbnail clickthrough
twiki-linkoptionsplugin - Extends the _"Forced Specific Links"_ syntax ==[<nop>[URL or <nop>TopicName][Link Text][Options]]==
twiki-localcitytimeplugin - Shows the local time of a city embedded in a %WIKITOOLNAME% topic.
twiki-localtimeplugin - A plugin to give the current date and time of a particular city/timezone.
twiki-mailercontrib - Supports e-mail notification of changes.
twiki-mailincontrib - Supports submissions to TWiki via e-mail
twiki-mailpageaddon - .
twiki-markupeditorcontrib - .
twiki-masonplugin - Allows to embed calls to Mason components within topics.
twiki-mathmodeplugin - Include <nop>LaTeX formatted math in your TWiki pages
twiki-mediawikitableplugin - Format tables the <nop>MediaWiki way
twiki-mostpopularplugin - Show most popular topics across webs
twiki-moveabletypeskin - a TWiki skin based on the HTML used by [[http://www.thestylecontest.com][The Style Archive]] and [[http://www.sixapart.com/movabletype/styles/library][The Six Apart style library]]
twiki-multieditplugin - This plugin allows arbitrary section of a topic to be edited individually
twiki-nateditcontrib - A Wikiwyg Editor
twiki-natskinplugin - Supplements the bare bones NatSkin theme for TWiki
twiki-newsplugin - %<nop>NEWS% generates a short headlines topic from a list of news
twiki-newuserplugin - Create a user topic if it does not exist yet
twiki-objectplugin - Embed arbitrary content into twiki pages with not much work ...
twiki-orphansplugin - Locate orphaned topics in TWiki webs
twiki-parsetopictablesplugin - .
twiki-patternskin - .
twiki-perldocplugin - Extract the Perl documentation (POD) from a Perl module and display it in a topic.
twiki-photoarchiveplugin - PhotoarchivePlugin creates nice image galleries
twiki-ploticusplugin - Allows users to plot data and functions using <nop>Ploticus
twiki-postgresqlautodocplugin - Automatical documentation plugin for postgreSQL database
twiki-postgresqlpsqlplugin - PSQL command CGI plugin for postgreSQL database
twiki-preferencesplugin - Allows editing of preferences using fields predefined in a form
twiki-projectplannerplugin - This plugin is used for project planning
twiki-publishcontrib - Generate static output (HTML, PDF) for a TWiki Web and optionally upload (FTP) the output to a publishing site.
twiki-publishwebplugin - Maintain a static website collaboratively in a TWiki web
twiki-quickcalendarplugin - An anchor linkified, internally generated, minimal calender.
twiki-quickmenuskin - .
twiki-quizplugin - Small Quiz generator
twiki-rackplannerplugin - Render a rack overview (e.g. of 19'' computer racks) with HTML tables
twiki-randomquoteplugin - _display a random quote_
twiki-recentchangesplugin - Show most recently updated topics across webs
twiki-reddotplugin - Renders edit-links as little red dots
twiki-redirectplugin - Create a redirect to another topic or website
twiki-renderlistplugin - Render bullet lists in a variety of formats
twiki-revcommentplugin - Allows a short summary of changes to be entered for a new revision.
twiki-revisionlinkplugin - This plugin enables linking to specific topic revisions.
twiki-searchenginepluceneaddon - .
twiki-sectionaleditplugin - Allows the user to break a topic into sections for individual editing.
twiki-signatureplugin - Supports electronic signatures
twiki-slideshowplugin - Create web based presentations based on topics with headings.
twiki-slidyplugin - Create web based presentations based on topics with headings; operate presentation like an ordinary <nop>PowerPoint presentation.
twiki-smarteditaddon - Toolbar to help edit TWiki content
twiki-smarteditplugin - Provide SmartEditAddOn
twiki-smiliesplugin - Render smilies as icons, like :-) for =&nbsp;:-)= or :eek: for =&nbsp;:eek:=
twiki-soapclientplugin - Provides a TWiki Topic interface to SOAP::Lite calls
twiki-sourcehighlightplugin - Highlights and formats code fragments using GNU source-highlight.
twiki-spreadsheetplugin - Add spreadsheet calculation like ="$SUM( $ABOVE() )"= to TWiki tables and other topic text
twiki-stopwikiwordlinkplugin - Prevents automatic linking of selected <nop>WikiWords
twiki-styleplugin - A TWiki notation for adding css style class references with span and div tags
twiki-subscribeaddon - .
twiki-svnplugin - Improves tracibility of task and comits with suversion repository
twiki-tableplugin - Control attributes of tables and sorting of table columns
twiki-tagcloudplugin - Renders a tag cloud given a list of terms
twiki-tagmeplugin - Tag wiki content collectively to find content by keywords
twiki-timelineplugin - Show a scrolling Timeline from a TWiki SEARCH
twiki-timetableplugin - Render a weekly timetable
twiki-tinymcecontrib - Integration of the TinyMCE Wysiwym Editor
twiki-tipscontrib - Displays rotating list of "TWiki Tip-of-the-day"
twiki-topicclassificationaddon - Provides framework for organizing  content within a web according to different _types_ of topics (discussion, weblog, reference, etc) and hierarchical "categories". Includes sample topic types and categories. Provides basic framework to design and manage simple TWiki:Codev.TWikiApplications.
twiki-topiccreateplugin - Automatically create a set of topics and attachments at topic save time
twiki-treebrowserplugin - Renders a list as a collapsable/expandable tree.
twiki-treeplugin - Dynamic generation of TWiki topic trees
twiki-twikiajaxcontrib - javascript wrapper class around Yahoo's Connection Manager connection.js (AJAX) class
twiki-twikidrawplugin - Java Applet based drawing editor
twiki-twistycontrib - Twisty section javascript library to open/close content dynamically
twiki-twistyplugin - Twisty section !JavaScript library to open/close content dynamically
twiki-uploadtotwikiaddon - Script to programmatically attach a file to any TWiki topic
twiki-voteplugin - Simple way to count votes
twiki-wikiwygcontrib - Add Wikiwyg editor to Wysiwyg
twiki-workflowplugin - .
twiki-wysiwygplugin - Translator framework for Wysiwyg editors
twiki-yahoouserinterfacecontrib - Yahoo User Interface AJAX library packaged as a contrib for plugins and TWiki application
twiki-yetanotherdbcachecontrib - .
twiki-yetanotherxptrackerplugin - .
debian:~#

-- SvenDowideit - 22 Apr 2007

 
Topic attachments
I Attachment Action Size Date Who Comment
elseEXT twikiplugin2deb manage 4.4 K 02 Feb 2005 - 17:08 ChristopherHuhn twiki plugin debianizer script
Edit | WYSIWYG | Attach | Printable | Raw View | Backlinks: Web, All Webs | History: r21 < r20 < r19 < r18 < r17 | More topic actions
 
Powered by TWiki
This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback SourceForge.net Logo