Tags:
stale_content1Add my vote for this tag create new tag
, view all tags

TWiki Installer FAQ

See also TWikiUnixInstaller

This FAQ currently deals with the unix based installer. (The only installer AFAIK)

Is there a Windows Installer ?

Not a working one at present. See TWikiInstallerWindows for more info/ideas.

-- MichaelSparks - 18 Jul 2003

Are you going to write an installer for Windows?

Me? No. If you want one, feel free to write and contribute one. Windows is a consumer OS and not suitable as a server OS in my personal opinion.

-- MichaelSparks - 18 Jul 2003

It would also be nice if it didn't make a new directory for a new installation.

This isn't going to change.

This is a deliberate decision to make it so that people do not accidentally clobber their current install. (This is also why it goes down to a granularity of minutes when naming the directory, given an install can be <30s in headless mode - and is potentially insufficient granularity as a result.)

The Installer has quirks under Cygwin, can you fix them?

The Unix installer is designed for running under a Unix environment. People have reported success with modifications to the installer using Cygwin & Apache. As people who use this system roll back fixes/patches, these things will get fixed. I don't use Windows/Cygwin, so I can't fix them directly. (So that's a "no", but with a caveat of "maybe wink )

-- MichaelSparks - 18 Jul 2003

Update: the Installer has been tested should work without quirks/modifications under cygwin under CYGWIN_NT-5.10 (XP?) and CYGWIN_ME-4.90.

-- MichaelSparks - 21 Jul 2003

The Unix Installer Removes the *,v files - Can I keep them?

(I was porting a system between servers and did not want to lose my history).
The sole reason for removing the lock files is to avoid this problem: (output is from testenv, light reformatted) User: wwwrun
  • Note: Your CGI scripts are executing as this user.
    Warning: Since your CGI script is not running as user nobody, you need to change the locks in the *,v RCS files of the TWiki distribution from nobody to wwwrun . Otherwise, changes to topics will not be logged by RCS.

IF you are installing a new server and that server uses the same user to execute TWiki as the user in the *,v files (eg you're installing a second identically configured server)...
THEN removing the distribution ,v files is not a problem *and massively simplifies dealing with the above problem. Why? You would perform an upgrade/second install as follows:

  • On original machine: cd `cat /etc/twiki`; tar zcvf /tmp/webs.tar.gz webs/
  • Copy those to the new machine (to say /tmp)
  • Perform a standard installation using the TWikiUnixInstaller
  • cd `cat /etc/twiki`; tar zxvf /tmp/webs.tar.gz=
  • ./system/lib/adm/legacyfyNewStyleWebs.sh
  • In this scenario all your histories are preserved - with no changes to the code.

If however you wish to keep the version histories from the source distribution rather than just your own webs this is non-trivial. You have to change all the ,v files so they are locked by the appropriate user. Simply searching & replacing all occurances of (say) nobody with (say) wwwrun can result in changing the topic text (eg also in past revisions). I would welcome a patch that does this without this side effect.

Interaction between the Unix installer & package managers - .rpm, .deb ?

How does the Unix installer interact with the .rpm and .deb package mechanisms? How does it deal with upgrades to a working Twiki?

-- HendrikBoom - 05 Jan 2002

The focus of the Unix installer has been on getting a system that can work on generic unix systems - whilst my dev system may be SuSE based, the target systems are Solaris 7, 8 & Linux, all of which are installed differently. Upgrades to a working DistributedTwiki? are designed to take the following approach in our environment (see DistributedTwiki? for info on our environment) :

How can I use this for Incremental upgrades ?

  • Upgrade one machine with an exportable code tree (cf data and code separation )
  • Test on this system that things are still working as desired.
  • The production sites would then rsync the code tree from this central location. (This step could just as easily be replaced by distributing a new code tar ball)
  • The contents of $TWIKIHOME/etc/ isn't exported so local config settings don't get clobbered, though re-running the installer (which reads the local settings) would be wise since it can then add in any extra necessary values.

ie drop on a new code base (either via rsync or tar ball) designed to work with the twiki installer

This is more complex than a .rpm or .deb approach - but then I'm looking to perform this on non .rpm & .deb systems as a primary design factor. (eg this will work nicely on Slackware & BSD systems as well)

Incidentally I'm already doing this now since my dev system is a SuSE based laptop which I sync the code base to a desktop based machine for dev testing, which if that works as desired I sync the code base to a desktop system that's part of our DistributedTWiki for greater load testing. End users don't notice anything, except for transparent improvements to the system.

How can I use this for Flip over upgrades ?

For a flip over - ie two alternate code trees - upgrade you would have two $TWIKIHOMEs - flipped between by changing /etc/twiki to point at the "current" twiki, perhaps copy over the old etc/twiki.system-config as the new one & rerun the installer and restart apache. To take the old content with you, you have two options - copy $TWIKIHOME/webs into your new heirarchy, or have a symbolic link from $TWIKIHOME/webs to where the webs are held.

In this situation if you experience problems, you can simply change /etc/twiki to point at the old code base. (Unlike .rpm/.deb based approaches)

Finally, how does this interact with .rpm & .deb based systems? Simple - neither "knows" about the installation. If apache is upgraded, and Redhat decides to clobber your httpd.config, then you need to re-run the installer (safe to do on a running system).

Bottom line - if .rpm/.deb modifies stuff which this installer relies upon, it can re-integrate itself cleanly and this installer works completely independently of the .rpm/.deb approach, leaving your system unaffected.

  • If you have any requests for a SuSE .rpm based version, please let me know smile
  • If you have any requests for a Redhat .rpm based version, see comments for .deb smile
  • If you just want a simple rpm based install, look at: InstallationScripts - I haven't tried those.
  • If you have any requests for a .deb based version, let me know, but also provide me with a of doing this and some docs on how to create a .deb! wink
  • If you have any requests for a .tgz slackware package based version, see comments for .deb!

-- MichaelSparks - 05 Jan 2002

Topic revision: r6 - 24 Nov 2006 - 11:47:06 - ArthurClemens
 
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