Satellite is a distributed wiki client. One or more Satellite clients can synchronize with the same master Satellite repository. The client(s) store content locally and mirror with the server when a network connection is available. So you can edit your Satellite wiki when offline, and your changes will be reflected in other Satellite clients when you re-connect to the internet.
Satellite uses Git (git.or.cz/) as its storage engine, and the master Satellite repository is nothing more then a regular Git repository. Satellite clients are written in Ruby (www.ruby-lang.org/) and utilize the Mongrel (mongrel.rubyforge.org/) web server, so each machine running a Satellite client requires Ruby and Mongrel to be installed, as well as a password-less method of committing to the master repository.
-
Usual wiki features such as creating, updating, renaming, deleting pages
-
Textile page formatting with a few bonuses
-
Automated synchronization & merging between Satellite clients
-
Hotkeys
-
File uploads
-
Code syntax higlighting
Any old git repository will function nicely as the master Satellite repository.
IMPORTANT: It the master git repository and this application will not be running on the same computer, then you will need to set up a method of password-less git synchronization between the two boxes. Public & private SSH keys are probably the easiest way to do this. There are many articles detailing how to set up SSH keys. “OpenSSH key management” on IBM DeveloperWorks (www.ibm.com/developerworks/linux/library/l-keyc.html) is a good one.
-
Install Git! (and Ruby)
-
Get Satellite source code
$ git clone git://github.com/kenpratt/satellite.git satellite
-
Install required Ruby libraries
$ sudo gem install rack mongrel metaid erubis RedCloth coderay $ cd path/to/satellite $ git submodule init $ git submodule update
-
Configure application
$ cd path/to/satellite edit conf/production.rb
-
Start local server
$ bin/start_satellite