Fossil SCM
Added the Hacker How-To page with a link on the home page. Other documentation enhancements and typo fixes.
Commit
04af93e6198ce7f2604ffec60373cfc052d474b5
Parent
b91754ab851581f…
7 files changed
+1
-1
+13
+3
-3
+1
+2
+4
-3
+21
-8
+1
-1
| --- www/adding_code.wiki | ||
| +++ www/adding_code.wiki | ||
| @@ -156,11 +156,11 @@ | ||
| 156 | 156 | |
| 157 | 157 | Once you have the command running, you can then start adding code to |
| 158 | 158 | make it do useful things. There are lots of utility functions in |
| 159 | 159 | Fossil for parsing command-line options and for |
| 160 | 160 | opening and accessing and manipulating the repository and |
| 161 | -the working check-out. Study at the implementations of existing commands | |
| 161 | +the working check-out. Study implementations of existing commands | |
| 162 | 162 | to get an idea of how things are done. You can easily find the implementations |
| 163 | 163 | of existing commands by searching for "COMMAND: <i>name</i>" in the |
| 164 | 164 | files of the "src/" directory. |
| 165 | 165 | |
| 166 | 166 | <h2>5.0 Creating A New Web Page</h2> |
| 167 | 167 | |
| 168 | 168 | ADDED www/hacker-howto.wiki |
| --- www/adding_code.wiki | |
| +++ www/adding_code.wiki | |
| @@ -156,11 +156,11 @@ | |
| 156 | |
| 157 | Once you have the command running, you can then start adding code to |
| 158 | make it do useful things. There are lots of utility functions in |
| 159 | Fossil for parsing command-line options and for |
| 160 | opening and accessing and manipulating the repository and |
| 161 | the working check-out. Study at the implementations of existing commands |
| 162 | to get an idea of how things are done. You can easily find the implementations |
| 163 | of existing commands by searching for "COMMAND: <i>name</i>" in the |
| 164 | files of the "src/" directory. |
| 165 | |
| 166 | <h2>5.0 Creating A New Web Page</h2> |
| 167 | |
| 168 | DDED www/hacker-howto.wiki |
| --- www/adding_code.wiki | |
| +++ www/adding_code.wiki | |
| @@ -156,11 +156,11 @@ | |
| 156 | |
| 157 | Once you have the command running, you can then start adding code to |
| 158 | make it do useful things. There are lots of utility functions in |
| 159 | Fossil for parsing command-line options and for |
| 160 | opening and accessing and manipulating the repository and |
| 161 | the working check-out. Study implementations of existing commands |
| 162 | to get an idea of how things are done. You can easily find the implementations |
| 163 | of existing commands by searching for "COMMAND: <i>name</i>" in the |
| 164 | files of the "src/" directory. |
| 165 | |
| 166 | <h2>5.0 Creating A New Web Page</h2> |
| 167 | |
| 168 | DDED www/hacker-howto.wiki |
+13
| --- a/www/hacker-howto.wiki | ||
| +++ b/www/hacker-howto.wiki | ||
| @@ -0,0 +1,13 @@ | ||
| 1 | +<title>Fossil Hackers How-To</title> | |
| 2 | + | |
| 3 | +The following links are of interest to programmers who want . Ordinary users can safely ignore this information. | |
| 4 | + | |
| 5 | + * [./build.wiki | How To Compile And Install Fossil] | |
| 6 | + * [./d_in_ide.md | Using] | |
| 7 | + * [./tech_overview.wiki | ts To The Fossil Project] | |
| 8 | + * [./fileformat.wiki|Fossil Artifact File Format] | |
| 9 | + * [./sync.wiki|The Sync Protocol] | |
| 10 | + * [./style.wiki | Coding Style Guidelines] | |
| 11 | + * [./checkin.wiki | Pre-checkinlease Checklist] | |
| 12 | + * [./backoffice.md | Tadding_cod Fossil] | |
| 13 | + * [./contribute.wiki|Contributing Code Or Enhancements To The Fossil Project] |
| --- a/www/hacker-howto.wiki | |
| +++ b/www/hacker-howto.wiki | |
| @@ -0,0 +1,13 @@ | |
| --- a/www/hacker-howto.wiki | |
| +++ b/www/hacker-howto.wiki | |
| @@ -0,0 +1,13 @@ | |
| 1 | <title>Fossil Hackers How-To</title> |
| 2 | |
| 3 | The following links are of interest to programmers who want . Ordinary users can safely ignore this information. |
| 4 | |
| 5 | * [./build.wiki | How To Compile And Install Fossil] |
| 6 | * [./d_in_ide.md | Using] |
| 7 | * [./tech_overview.wiki | ts To The Fossil Project] |
| 8 | * [./fileformat.wiki|Fossil Artifact File Format] |
| 9 | * [./sync.wiki|The Sync Protocol] |
| 10 | * [./style.wiki | Coding Style Guidelines] |
| 11 | * [./checkin.wiki | Pre-checkinlease Checklist] |
| 12 | * [./backoffice.md | Tadding_cod Fossil] |
| 13 | * [./contribute.wiki|Contributing Code Or Enhancements To The Fossil Project] |
+3
-3
| --- www/index.wiki | ||
| +++ www/index.wiki | ||
| @@ -20,11 +20,11 @@ | ||
| 20 | 20 | <li> [./quickstart.wiki | Quick Start] |
| 21 | 21 | <li> [./build.wiki | Install] |
| 22 | 22 | <li> [../COPYRIGHT-BSD2.txt | License] |
| 23 | 23 | <li> [/timeline | Recent changes] |
| 24 | 24 | <li> [./faq.wiki | FAQ] |
| 25 | -<li> [./contribute.wiki | Contributing] | |
| 25 | +<li> [./hacker-howto.wiki | Hacker How-To] | |
| 26 | 26 | <li> [./changes.wiki | Change Log] |
| 27 | 27 | <li> [./hints.wiki | Tip & Hints] |
| 28 | 28 | <li> [./permutedindex.wiki#pindex | Documentation Index] |
| 29 | 29 | <li> [http://www.fossil-scm.org/schimpf-book/home | Jim Schimpf's book] |
| 30 | 30 | <li> Mailing list |
| @@ -81,11 +81,11 @@ | ||
| 81 | 81 | Installation is trivial: simply download a |
| 82 | 82 | <a href="http://www.fossil-scm.org/download.html">precompiled binary</a> |
| 83 | 83 | for Linux, Mac, or Windows and put it on your $PATH. |
| 84 | 84 | [./build.wiki | Easy-to-compile source code] is available for |
| 85 | 85 | users on other platforms. Fossil sources are also mostly self-contained, |
| 86 | - requiring only the "zlib" library and the standard C library to build. | |
| 86 | + requiring only the standard C library to build. | |
| 87 | 87 | |
| 88 | 88 | 5. <b>Simple Networking</b> - |
| 89 | 89 | Fossil uses plain old HTTP (with |
| 90 | 90 | [./quickstart.wiki#proxy | proxy support]) |
| 91 | 91 | for all network communications, meaning that it works fine from behind |
| @@ -103,11 +103,11 @@ | ||
| 103 | 103 | 7. <b>Robust & Reliable</b> - |
| 104 | 104 | Fossil stores content using an [./fileformat.wiki | enduring file format] |
| 105 | 105 | in an SQLite database so that transactions are |
| 106 | 106 | atomic even if interrupted by a power loss or system crash. Furthermore, |
| 107 | 107 | automatic [./selfcheck.wiki | self-checks] verify that all aspects of |
| 108 | - the repository are consistent prior to each commit. In over three years | |
| 108 | + the repository are consistent prior to each commit. In over six years | |
| 109 | 109 | of operation, no work has ever been lost after having been committed to |
| 110 | 110 | a Fossil repository. |
| 111 | 111 | |
| 112 | 112 | <hr> |
| 113 | 113 | <h3>Links For Fossil Users:</h3> |
| 114 | 114 |
| --- www/index.wiki | |
| +++ www/index.wiki | |
| @@ -20,11 +20,11 @@ | |
| 20 | <li> [./quickstart.wiki | Quick Start] |
| 21 | <li> [./build.wiki | Install] |
| 22 | <li> [../COPYRIGHT-BSD2.txt | License] |
| 23 | <li> [/timeline | Recent changes] |
| 24 | <li> [./faq.wiki | FAQ] |
| 25 | <li> [./contribute.wiki | Contributing] |
| 26 | <li> [./changes.wiki | Change Log] |
| 27 | <li> [./hints.wiki | Tip & Hints] |
| 28 | <li> [./permutedindex.wiki#pindex | Documentation Index] |
| 29 | <li> [http://www.fossil-scm.org/schimpf-book/home | Jim Schimpf's book] |
| 30 | <li> Mailing list |
| @@ -81,11 +81,11 @@ | |
| 81 | Installation is trivial: simply download a |
| 82 | <a href="http://www.fossil-scm.org/download.html">precompiled binary</a> |
| 83 | for Linux, Mac, or Windows and put it on your $PATH. |
| 84 | [./build.wiki | Easy-to-compile source code] is available for |
| 85 | users on other platforms. Fossil sources are also mostly self-contained, |
| 86 | requiring only the "zlib" library and the standard C library to build. |
| 87 | |
| 88 | 5. <b>Simple Networking</b> - |
| 89 | Fossil uses plain old HTTP (with |
| 90 | [./quickstart.wiki#proxy | proxy support]) |
| 91 | for all network communications, meaning that it works fine from behind |
| @@ -103,11 +103,11 @@ | |
| 103 | 7. <b>Robust & Reliable</b> - |
| 104 | Fossil stores content using an [./fileformat.wiki | enduring file format] |
| 105 | in an SQLite database so that transactions are |
| 106 | atomic even if interrupted by a power loss or system crash. Furthermore, |
| 107 | automatic [./selfcheck.wiki | self-checks] verify that all aspects of |
| 108 | the repository are consistent prior to each commit. In over three years |
| 109 | of operation, no work has ever been lost after having been committed to |
| 110 | a Fossil repository. |
| 111 | |
| 112 | <hr> |
| 113 | <h3>Links For Fossil Users:</h3> |
| 114 |
| --- www/index.wiki | |
| +++ www/index.wiki | |
| @@ -20,11 +20,11 @@ | |
| 20 | <li> [./quickstart.wiki | Quick Start] |
| 21 | <li> [./build.wiki | Install] |
| 22 | <li> [../COPYRIGHT-BSD2.txt | License] |
| 23 | <li> [/timeline | Recent changes] |
| 24 | <li> [./faq.wiki | FAQ] |
| 25 | <li> [./hacker-howto.wiki | Hacker How-To] |
| 26 | <li> [./changes.wiki | Change Log] |
| 27 | <li> [./hints.wiki | Tip & Hints] |
| 28 | <li> [./permutedindex.wiki#pindex | Documentation Index] |
| 29 | <li> [http://www.fossil-scm.org/schimpf-book/home | Jim Schimpf's book] |
| 30 | <li> Mailing list |
| @@ -81,11 +81,11 @@ | |
| 81 | Installation is trivial: simply download a |
| 82 | <a href="http://www.fossil-scm.org/download.html">precompiled binary</a> |
| 83 | for Linux, Mac, or Windows and put it on your $PATH. |
| 84 | [./build.wiki | Easy-to-compile source code] is available for |
| 85 | users on other platforms. Fossil sources are also mostly self-contained, |
| 86 | requiring only the standard C library to build. |
| 87 | |
| 88 | 5. <b>Simple Networking</b> - |
| 89 | Fossil uses plain old HTTP (with |
| 90 | [./quickstart.wiki#proxy | proxy support]) |
| 91 | for all network communications, meaning that it works fine from behind |
| @@ -103,11 +103,11 @@ | |
| 103 | 7. <b>Robust & Reliable</b> - |
| 104 | Fossil stores content using an [./fileformat.wiki | enduring file format] |
| 105 | in an SQLite database so that transactions are |
| 106 | atomic even if interrupted by a power loss or system crash. Furthermore, |
| 107 | automatic [./selfcheck.wiki | self-checks] verify that all aspects of |
| 108 | the repository are consistent prior to each commit. In over six years |
| 109 | of operation, no work has ever been lost after having been committed to |
| 110 | a Fossil repository. |
| 111 | |
| 112 | <hr> |
| 113 | <h3>Links For Fossil Users:</h3> |
| 114 |
+1
| --- www/mkindex.tcl | ||
| +++ www/mkindex.tcl | ||
| @@ -28,10 +28,11 @@ | ||
| 28 | 28 | fileformat.wiki {Fossil File Format} |
| 29 | 29 | fiveminutes.wiki {Update and Running in 5 Minutes as a Single User} |
| 30 | 30 | foss-cklist.wiki {Checklist For Successful Open-Source Projects} |
| 31 | 31 | fossil-from-msvc.wiki {Integrating Fossil in the Microsoft Express 2010 IDE} |
| 32 | 32 | fossil-v-git.wiki {Fossil Versus Git} |
| 33 | + hacker-howto.wiki {Hacker How-To} | |
| 33 | 34 | hints.wiki {Fossil Tips And Usage Hints} |
| 34 | 35 | index.wiki {Home Page} |
| 35 | 36 | inout.wiki {Import And Export To And From Git} |
| 36 | 37 | makefile.wiki {The Fossil Build Process} |
| 37 | 38 | newrepo.wiki {How To Create A New Fossil Repository} |
| 38 | 39 |
| --- www/mkindex.tcl | |
| +++ www/mkindex.tcl | |
| @@ -28,10 +28,11 @@ | |
| 28 | fileformat.wiki {Fossil File Format} |
| 29 | fiveminutes.wiki {Update and Running in 5 Minutes as a Single User} |
| 30 | foss-cklist.wiki {Checklist For Successful Open-Source Projects} |
| 31 | fossil-from-msvc.wiki {Integrating Fossil in the Microsoft Express 2010 IDE} |
| 32 | fossil-v-git.wiki {Fossil Versus Git} |
| 33 | hints.wiki {Fossil Tips And Usage Hints} |
| 34 | index.wiki {Home Page} |
| 35 | inout.wiki {Import And Export To And From Git} |
| 36 | makefile.wiki {The Fossil Build Process} |
| 37 | newrepo.wiki {How To Create A New Fossil Repository} |
| 38 |
| --- www/mkindex.tcl | |
| +++ www/mkindex.tcl | |
| @@ -28,10 +28,11 @@ | |
| 28 | fileformat.wiki {Fossil File Format} |
| 29 | fiveminutes.wiki {Update and Running in 5 Minutes as a Single User} |
| 30 | foss-cklist.wiki {Checklist For Successful Open-Source Projects} |
| 31 | fossil-from-msvc.wiki {Integrating Fossil in the Microsoft Express 2010 IDE} |
| 32 | fossil-v-git.wiki {Fossil Versus Git} |
| 33 | hacker-howto.wiki {Hacker How-To} |
| 34 | hints.wiki {Fossil Tips And Usage Hints} |
| 35 | index.wiki {Home Page} |
| 36 | inout.wiki {Import And Export To And From Git} |
| 37 | makefile.wiki {The Fossil Build Process} |
| 38 | newrepo.wiki {How To Create A New Fossil Repository} |
| 39 |
| --- www/permutedindex.wiki | ||
| +++ www/permutedindex.wiki | ||
| @@ -88,16 +88,18 @@ | ||
| 88 | 88 | <li><a href="fossil-v-git.wiki">Git — Fossil Versus</a></li> |
| 89 | 89 | <li><a href="inout.wiki">Git — Import And Export To And From</a></li> |
| 90 | 90 | <li><a href="quotes.wiki">Git, and DVCSes in General — Quotes: What People Are Saying About Fossil,</a></li> |
| 91 | 91 | <li><a href="quickstart.wiki">Guide — Fossil Quick Start</a></li> |
| 92 | 92 | <li><a href="style.wiki">Guidelines — Source Code Style</a></li> |
| 93 | +<li><a href="hacker-howto.wiki">Hacker How-To</a></li> | |
| 93 | 94 | <li><a href="adding_code.wiki">Hacking Fossil</a></li> |
| 94 | 95 | <li><a href="hints.wiki">Hints — Fossil Tips And Usage</a></li> |
| 95 | 96 | <li><a href="index.wiki">Home Page</a></li> |
| 96 | 97 | <li><a href="selfhost.wiki">Hosting Repositories — Fossil Self</a></li> |
| 97 | 98 | <li><a href="server.wiki">How To Configure A Fossil Server</a></li> |
| 98 | 99 | <li><a href="newrepo.wiki">How To Create A New Fossil Repository</a></li> |
| 100 | +<li><a href="hacker-howto.wiki">How-To — Hacker</a></li> | |
| 99 | 101 | <li><a href="fossil-from-msvc.wiki">IDE — Integrating Fossil in the Microsoft Express 2010</a></li> |
| 100 | 102 | <li><a href="tech_overview.wiki">Implementation Of Fossil — A Technical Overview Of The Design And</a></li> |
| 101 | 103 | <li><a href="inout.wiki">Import And Export To And From Git</a></li> |
| 102 | 104 | <li><a href="build.wiki">Installing Fossil — Compiling and</a></li> |
| 103 | 105 | <li><a href="fossil-from-msvc.wiki">Integrating Fossil in the Microsoft Express 2010 IDE</a></li> |
| 104 | 106 |
| --- www/permutedindex.wiki | |
| +++ www/permutedindex.wiki | |
| @@ -88,16 +88,18 @@ | |
| 88 | <li><a href="fossil-v-git.wiki">Git — Fossil Versus</a></li> |
| 89 | <li><a href="inout.wiki">Git — Import And Export To And From</a></li> |
| 90 | <li><a href="quotes.wiki">Git, and DVCSes in General — Quotes: What People Are Saying About Fossil,</a></li> |
| 91 | <li><a href="quickstart.wiki">Guide — Fossil Quick Start</a></li> |
| 92 | <li><a href="style.wiki">Guidelines — Source Code Style</a></li> |
| 93 | <li><a href="adding_code.wiki">Hacking Fossil</a></li> |
| 94 | <li><a href="hints.wiki">Hints — Fossil Tips And Usage</a></li> |
| 95 | <li><a href="index.wiki">Home Page</a></li> |
| 96 | <li><a href="selfhost.wiki">Hosting Repositories — Fossil Self</a></li> |
| 97 | <li><a href="server.wiki">How To Configure A Fossil Server</a></li> |
| 98 | <li><a href="newrepo.wiki">How To Create A New Fossil Repository</a></li> |
| 99 | <li><a href="fossil-from-msvc.wiki">IDE — Integrating Fossil in the Microsoft Express 2010</a></li> |
| 100 | <li><a href="tech_overview.wiki">Implementation Of Fossil — A Technical Overview Of The Design And</a></li> |
| 101 | <li><a href="inout.wiki">Import And Export To And From Git</a></li> |
| 102 | <li><a href="build.wiki">Installing Fossil — Compiling and</a></li> |
| 103 | <li><a href="fossil-from-msvc.wiki">Integrating Fossil in the Microsoft Express 2010 IDE</a></li> |
| 104 |
| --- www/permutedindex.wiki | |
| +++ www/permutedindex.wiki | |
| @@ -88,16 +88,18 @@ | |
| 88 | <li><a href="fossil-v-git.wiki">Git — Fossil Versus</a></li> |
| 89 | <li><a href="inout.wiki">Git — Import And Export To And From</a></li> |
| 90 | <li><a href="quotes.wiki">Git, and DVCSes in General — Quotes: What People Are Saying About Fossil,</a></li> |
| 91 | <li><a href="quickstart.wiki">Guide — Fossil Quick Start</a></li> |
| 92 | <li><a href="style.wiki">Guidelines — Source Code Style</a></li> |
| 93 | <li><a href="hacker-howto.wiki">Hacker How-To</a></li> |
| 94 | <li><a href="adding_code.wiki">Hacking Fossil</a></li> |
| 95 | <li><a href="hints.wiki">Hints — Fossil Tips And Usage</a></li> |
| 96 | <li><a href="index.wiki">Home Page</a></li> |
| 97 | <li><a href="selfhost.wiki">Hosting Repositories — Fossil Self</a></li> |
| 98 | <li><a href="server.wiki">How To Configure A Fossil Server</a></li> |
| 99 | <li><a href="newrepo.wiki">How To Create A New Fossil Repository</a></li> |
| 100 | <li><a href="hacker-howto.wiki">How-To — Hacker</a></li> |
| 101 | <li><a href="fossil-from-msvc.wiki">IDE — Integrating Fossil in the Microsoft Express 2010</a></li> |
| 102 | <li><a href="tech_overview.wiki">Implementation Of Fossil — A Technical Overview Of The Design And</a></li> |
| 103 | <li><a href="inout.wiki">Import And Export To And From Git</a></li> |
| 104 | <li><a href="build.wiki">Installing Fossil — Compiling and</a></li> |
| 105 | <li><a href="fossil-from-msvc.wiki">Integrating Fossil in the Microsoft Express 2010 IDE</a></li> |
| 106 |
+4
-3
| --- www/selfhost.wiki | ||
| +++ www/selfhost.wiki | ||
| @@ -21,12 +21,12 @@ | ||
| 21 | 21 | |
| 22 | 22 | Server (1) runs as a CGI script on a |
| 23 | 23 | <a href="http://www.linode.com/">Linode 1024</a> located in Dallas, TX |
| 24 | 24 | - on the same virtual machine that |
| 25 | 25 | hosts <a href="http://www.sqlite.org/">SQLite</a> and over a |
| 26 | -dozen other smaller projects. This demonstrates that Fossil does not | |
| 27 | -require much server power. | |
| 26 | +dozen other smaller projects. This demonstrates that Fossil can run on | |
| 27 | +a low-power host processor. | |
| 28 | 28 | Multiple fossil-based projects can easily be hosted on the same machine, |
| 29 | 29 | even if that machine is itself one of several dozen virtual machines on |
| 30 | 30 | single physical box. The CGI script that runs the canonical Fossil |
| 31 | 31 | self-hosting repository is as follows: |
| 32 | 32 | |
| @@ -38,11 +38,12 @@ | ||
| 38 | 38 | Server (3) runs as a CGI script on a shared hosting account at |
| 39 | 39 | <a href="http://www.he.net/">Hurricane Electric</a> in Fremont, CA. |
| 40 | 40 | This server demonstrates the ability of |
| 41 | 41 | Fossil to run on an economical shared-host web account with no |
| 42 | 42 | privileges beyond port 80 HTTP access and CGI. It is not necessary |
| 43 | -to have a dedicated server to run Fossil. As far as we are aware, | |
| 43 | +to have a dedicated computer with administrator to run Fossil. | |
| 44 | +As far as we are aware, | |
| 44 | 45 | Fossil is the only full-featured configuration management system |
| 45 | 46 | that can run in |
| 46 | 47 | such a restricted environment. The CGI script that runs on the |
| 47 | 48 | Hurricane Electric server is the same as the CGI script shown above, |
| 48 | 49 | except that the pathnames are modified to suit the environment: |
| 49 | 50 |
| --- www/selfhost.wiki | |
| +++ www/selfhost.wiki | |
| @@ -21,12 +21,12 @@ | |
| 21 | |
| 22 | Server (1) runs as a CGI script on a |
| 23 | <a href="http://www.linode.com/">Linode 1024</a> located in Dallas, TX |
| 24 | - on the same virtual machine that |
| 25 | hosts <a href="http://www.sqlite.org/">SQLite</a> and over a |
| 26 | dozen other smaller projects. This demonstrates that Fossil does not |
| 27 | require much server power. |
| 28 | Multiple fossil-based projects can easily be hosted on the same machine, |
| 29 | even if that machine is itself one of several dozen virtual machines on |
| 30 | single physical box. The CGI script that runs the canonical Fossil |
| 31 | self-hosting repository is as follows: |
| 32 | |
| @@ -38,11 +38,12 @@ | |
| 38 | Server (3) runs as a CGI script on a shared hosting account at |
| 39 | <a href="http://www.he.net/">Hurricane Electric</a> in Fremont, CA. |
| 40 | This server demonstrates the ability of |
| 41 | Fossil to run on an economical shared-host web account with no |
| 42 | privileges beyond port 80 HTTP access and CGI. It is not necessary |
| 43 | to have a dedicated server to run Fossil. As far as we are aware, |
| 44 | Fossil is the only full-featured configuration management system |
| 45 | that can run in |
| 46 | such a restricted environment. The CGI script that runs on the |
| 47 | Hurricane Electric server is the same as the CGI script shown above, |
| 48 | except that the pathnames are modified to suit the environment: |
| 49 |
| --- www/selfhost.wiki | |
| +++ www/selfhost.wiki | |
| @@ -21,12 +21,12 @@ | |
| 21 | |
| 22 | Server (1) runs as a CGI script on a |
| 23 | <a href="http://www.linode.com/">Linode 1024</a> located in Dallas, TX |
| 24 | - on the same virtual machine that |
| 25 | hosts <a href="http://www.sqlite.org/">SQLite</a> and over a |
| 26 | dozen other smaller projects. This demonstrates that Fossil can run on |
| 27 | a low-power host processor. |
| 28 | Multiple fossil-based projects can easily be hosted on the same machine, |
| 29 | even if that machine is itself one of several dozen virtual machines on |
| 30 | single physical box. The CGI script that runs the canonical Fossil |
| 31 | self-hosting repository is as follows: |
| 32 | |
| @@ -38,11 +38,12 @@ | |
| 38 | Server (3) runs as a CGI script on a shared hosting account at |
| 39 | <a href="http://www.he.net/">Hurricane Electric</a> in Fremont, CA. |
| 40 | This server demonstrates the ability of |
| 41 | Fossil to run on an economical shared-host web account with no |
| 42 | privileges beyond port 80 HTTP access and CGI. It is not necessary |
| 43 | to have a dedicated computer with administrator to run Fossil. |
| 44 | As far as we are aware, |
| 45 | Fossil is the only full-featured configuration management system |
| 46 | that can run in |
| 47 | such a restricted environment. The CGI script that runs on the |
| 48 | Hurricane Electric server is the same as the CGI script shown above, |
| 49 | except that the pathnames are modified to suit the environment: |
| 50 |
+21
-8
| --- www/server.wiki | ||
| +++ www/server.wiki | ||
| @@ -1,15 +1,21 @@ | ||
| 1 | 1 | <title>How To Configure A Fossil Server</title> |
| 2 | -<p>A server is not necessary to use Fossil, but it does help in collaborating with | |
| 3 | -peers. This article is a guide for setting up a Fossil server.</p> | |
| 2 | +<h2>Introduction</h2><blockquote> | |
| 3 | +<p>A server is not necessary to use Fossil, but a server does help in collaborating with | |
| 4 | +peers. A Fossil server also works well as a complete website for a project. | |
| 5 | +For example, the complete <b>http://www.fossil-scm.org/</b> website, including the | |
| 6 | +page you are now reading (but excepting the download page), | |
| 7 | +is just a Fossil server displaying the content of the | |
| 8 | +self-hosting repository for Fossil.</p> | |
| 9 | +<p>This article is a guide for setting up your own Fossil server.</p></blockquote> | |
| 4 | 10 | <h2>Overview</h2><blockquote> |
| 5 | 11 | There are basically four ways to set up a Fossil server: |
| 6 | 12 | <ol> |
| 7 | 13 | <li>A stand-alone server |
| 8 | -<li>Using inetd or xinetd | |
| 9 | -<li>[https://en.wikipedia.org/wiki/Common_Gateway_Interface|CGI] | |
| 10 | -<li>[http://en.wikipedia.org/wiki/Simple_Common_Gateway_Interface|SCGI] | |
| 14 | +<li>Using inetd or xinetd or stunnel | |
| 15 | +<li>CGI | |
| 16 | +<li>SCGI (a.k.a. SimpleCGI) | |
| 11 | 17 | </ol> |
| 12 | 18 | Each of these can serve either a single repository, or a directory hierarchy |
| 13 | 19 | containing many repositories with names ending in ".fossil". |
| 14 | 20 | </blockquote> |
| 15 | 21 | <a name="standalone"></a> |
| @@ -44,11 +50,11 @@ | ||
| 44 | 50 | Both commands have additional command-line options that can be used to refine |
| 45 | 51 | their behavior. See the [/help/server|online documentation] for an overview. |
| 46 | 52 | </p> |
| 47 | 53 | </blockquote> |
| 48 | 54 | <a name="inetd"></a> |
| 49 | -<h2>Fossil as an inetd/xinetd service</h2><blockquote> | |
| 55 | +<h2>Fossil as an inetd/xinetd or stunnel service</h2><blockquote> | |
| 50 | 56 | <p> |
| 51 | 57 | A Fossil server can be launched on-demand by inetd or xinetd using |
| 52 | 58 | the [/help/http|fossil http] command. To launch Fossil from inetd, modify |
| 53 | 59 | your inetd configuration file (typically "/etc/inetd.conf") to contain a |
| 54 | 60 | line something like this: |
| @@ -91,11 +97,18 @@ | ||
| 91 | 97 | but if it is done, then Fossil will automatically put itself into a chroot |
| 92 | 98 | jail for the user who owns the fossil repository before reading any information |
| 93 | 99 | off of the wire. |
| 94 | 100 | </p> |
| 95 | 101 | <p> |
| 96 | -Using inetd or xinetd is a more complex setup | |
| 102 | +[http://www.stunnel.org/ | Stunnel version 4] is an inetd-like process that | |
| 103 | +accepts and decodes SSL-encrypted connections. Fossil can be run directly from | |
| 104 | +stunnel in a mannar similar to inetd and xinetd. This can be used to provide | |
| 105 | +a secure link to a Fossil project. The configure needed to get stunnel4 | |
| 106 | +to invoke Fossil is very similar to the inetd and xinetd examples shown above. | |
| 107 | +See the stunnel4 documentation for details. | |
| 108 | +<p> | |
| 109 | +Using inetd or xinetd or stunnel is a more complex setup | |
| 97 | 110 | than the "standalone" server, but it has the |
| 98 | 111 | advantage of only using system resources when an actual connection is |
| 99 | 112 | attempted. If no-one ever connects to that port, a Fossil server will |
| 100 | 113 | not (automatically) run. It has the disadvantage of requiring "root" access |
| 101 | 114 | and therefore may not normally be available to lower-priced "shared" servers |
| @@ -164,11 +177,11 @@ | ||
| 164 | 177 | scgi_param SCRIPT_NAME "/demo_project"; |
| 165 | 178 | } |
| 166 | 179 | </pre></blockquote> |
| 167 | 180 | <p> |
| 168 | 181 | Note that Fossil requires the SCRIPT_NAME variable |
| 169 | -in order to function properly, but Nginx provides does not provide this | |
| 182 | +in order to function properly, but Nginx does not provide this | |
| 170 | 183 | variable by default. |
| 171 | 184 | So it is necessary to provide the SCRIPT_NAME parameter in the configuration. |
| 172 | 185 | Failure to do this will cause Fossil to return an error. |
| 173 | 186 | </p> |
| 174 | 187 | <p> |
| 175 | 188 |
| --- www/server.wiki | |
| +++ www/server.wiki | |
| @@ -1,15 +1,21 @@ | |
| 1 | <title>How To Configure A Fossil Server</title> |
| 2 | <p>A server is not necessary to use Fossil, but it does help in collaborating with |
| 3 | peers. This article is a guide for setting up a Fossil server.</p> |
| 4 | <h2>Overview</h2><blockquote> |
| 5 | There are basically four ways to set up a Fossil server: |
| 6 | <ol> |
| 7 | <li>A stand-alone server |
| 8 | <li>Using inetd or xinetd |
| 9 | <li>[https://en.wikipedia.org/wiki/Common_Gateway_Interface|CGI] |
| 10 | <li>[http://en.wikipedia.org/wiki/Simple_Common_Gateway_Interface|SCGI] |
| 11 | </ol> |
| 12 | Each of these can serve either a single repository, or a directory hierarchy |
| 13 | containing many repositories with names ending in ".fossil". |
| 14 | </blockquote> |
| 15 | <a name="standalone"></a> |
| @@ -44,11 +50,11 @@ | |
| 44 | Both commands have additional command-line options that can be used to refine |
| 45 | their behavior. See the [/help/server|online documentation] for an overview. |
| 46 | </p> |
| 47 | </blockquote> |
| 48 | <a name="inetd"></a> |
| 49 | <h2>Fossil as an inetd/xinetd service</h2><blockquote> |
| 50 | <p> |
| 51 | A Fossil server can be launched on-demand by inetd or xinetd using |
| 52 | the [/help/http|fossil http] command. To launch Fossil from inetd, modify |
| 53 | your inetd configuration file (typically "/etc/inetd.conf") to contain a |
| 54 | line something like this: |
| @@ -91,11 +97,18 @@ | |
| 91 | but if it is done, then Fossil will automatically put itself into a chroot |
| 92 | jail for the user who owns the fossil repository before reading any information |
| 93 | off of the wire. |
| 94 | </p> |
| 95 | <p> |
| 96 | Using inetd or xinetd is a more complex setup |
| 97 | than the "standalone" server, but it has the |
| 98 | advantage of only using system resources when an actual connection is |
| 99 | attempted. If no-one ever connects to that port, a Fossil server will |
| 100 | not (automatically) run. It has the disadvantage of requiring "root" access |
| 101 | and therefore may not normally be available to lower-priced "shared" servers |
| @@ -164,11 +177,11 @@ | |
| 164 | scgi_param SCRIPT_NAME "/demo_project"; |
| 165 | } |
| 166 | </pre></blockquote> |
| 167 | <p> |
| 168 | Note that Fossil requires the SCRIPT_NAME variable |
| 169 | in order to function properly, but Nginx provides does not provide this |
| 170 | variable by default. |
| 171 | So it is necessary to provide the SCRIPT_NAME parameter in the configuration. |
| 172 | Failure to do this will cause Fossil to return an error. |
| 173 | </p> |
| 174 | <p> |
| 175 |
| --- www/server.wiki | |
| +++ www/server.wiki | |
| @@ -1,15 +1,21 @@ | |
| 1 | <title>How To Configure A Fossil Server</title> |
| 2 | <h2>Introduction</h2><blockquote> |
| 3 | <p>A server is not necessary to use Fossil, but a server does help in collaborating with |
| 4 | peers. A Fossil server also works well as a complete website for a project. |
| 5 | For example, the complete <b>http://www.fossil-scm.org/</b> website, including the |
| 6 | page you are now reading (but excepting the download page), |
| 7 | is just a Fossil server displaying the content of the |
| 8 | self-hosting repository for Fossil.</p> |
| 9 | <p>This article is a guide for setting up your own Fossil server.</p></blockquote> |
| 10 | <h2>Overview</h2><blockquote> |
| 11 | There are basically four ways to set up a Fossil server: |
| 12 | <ol> |
| 13 | <li>A stand-alone server |
| 14 | <li>Using inetd or xinetd or stunnel |
| 15 | <li>CGI |
| 16 | <li>SCGI (a.k.a. SimpleCGI) |
| 17 | </ol> |
| 18 | Each of these can serve either a single repository, or a directory hierarchy |
| 19 | containing many repositories with names ending in ".fossil". |
| 20 | </blockquote> |
| 21 | <a name="standalone"></a> |
| @@ -44,11 +50,11 @@ | |
| 50 | Both commands have additional command-line options that can be used to refine |
| 51 | their behavior. See the [/help/server|online documentation] for an overview. |
| 52 | </p> |
| 53 | </blockquote> |
| 54 | <a name="inetd"></a> |
| 55 | <h2>Fossil as an inetd/xinetd or stunnel service</h2><blockquote> |
| 56 | <p> |
| 57 | A Fossil server can be launched on-demand by inetd or xinetd using |
| 58 | the [/help/http|fossil http] command. To launch Fossil from inetd, modify |
| 59 | your inetd configuration file (typically "/etc/inetd.conf") to contain a |
| 60 | line something like this: |
| @@ -91,11 +97,18 @@ | |
| 97 | but if it is done, then Fossil will automatically put itself into a chroot |
| 98 | jail for the user who owns the fossil repository before reading any information |
| 99 | off of the wire. |
| 100 | </p> |
| 101 | <p> |
| 102 | [http://www.stunnel.org/ | Stunnel version 4] is an inetd-like process that |
| 103 | accepts and decodes SSL-encrypted connections. Fossil can be run directly from |
| 104 | stunnel in a mannar similar to inetd and xinetd. This can be used to provide |
| 105 | a secure link to a Fossil project. The configure needed to get stunnel4 |
| 106 | to invoke Fossil is very similar to the inetd and xinetd examples shown above. |
| 107 | See the stunnel4 documentation for details. |
| 108 | <p> |
| 109 | Using inetd or xinetd or stunnel is a more complex setup |
| 110 | than the "standalone" server, but it has the |
| 111 | advantage of only using system resources when an actual connection is |
| 112 | attempted. If no-one ever connects to that port, a Fossil server will |
| 113 | not (automatically) run. It has the disadvantage of requiring "root" access |
| 114 | and therefore may not normally be available to lower-priced "shared" servers |
| @@ -164,11 +177,11 @@ | |
| 177 | scgi_param SCRIPT_NAME "/demo_project"; |
| 178 | } |
| 179 | </pre></blockquote> |
| 180 | <p> |
| 181 | Note that Fossil requires the SCRIPT_NAME variable |
| 182 | in order to function properly, but Nginx does not provide this |
| 183 | variable by default. |
| 184 | So it is necessary to provide the SCRIPT_NAME parameter in the configuration. |
| 185 | Failure to do this will cause Fossil to return an error. |
| 186 | </p> |
| 187 | <p> |
| 188 |