1
0
mirror of https://github.com/gophernicus/gophernicus.git synced 2024-09-22 04:35:56 -04:00

update various documentation for 3.0

This commit is contained in:
fosslinux 2019-07-09 17:59:10 +10:00
commit c2da2d70b6
8 changed files with 127 additions and 6 deletions

View File

@ -5,13 +5,17 @@ from standard LIBC ones. Care has been taken to use only
standard POSIX syscalls so that it should work pretty much on standard POSIX syscalls so that it should work pretty much on
any \*nix system. any \*nix system.
Please make sure that you checkout to the correct version you want.
Currently, you most likely want version 3.0.
To compile and install run: To compile and install run:
``` ```
$ git clone https://github.com/gophernicus/gophernicus.git $ git clone https://github.com/gophernicus/gophernicus.git
$ cd gophernicus $ cd gophernicus
$ git checkout 3.0
$ make $ make
$ sudo make install # make install
``` ```
after having set the correct public hostname in the `gophernicus.env` after having set the correct public hostname in the `gophernicus.env`
@ -35,7 +39,10 @@ the gopher root and make sure you have at least the primary
hostname (the one set with `-h <hostname>`) directory available hostname (the one set with `-h <hostname>`) directory available
(`mkdir /var/gopher/$HOSTNAME`). (`mkdir /var/gopher/$HOSTNAME`).
<<<<<<< HEAD
=======
>>>>>>> docs
## Dependencies ## Dependencies
These were obtained from a base docker installation, what we These were obtained from a base docker installation, what we
@ -72,14 +79,17 @@ These were obtained from a base docker installation, what we
### Alpine Linux ### Alpine Linux
- alpine-sdk. once again, less is probably required.. blah blah. - alpine-sdk. once again, less is probably required.. blah blah.
<<<<<<< HEAD
### Other installation targets ### Other installation targets
=======
## Other installation targets
>>>>>>> docs
Suppose your server runs systemd, but you'd rather have Gophernicus Suppose your server runs systemd, but you'd rather have Gophernicus
started with inetd or xinetd. To do that, do `make install-inetd` started with inetd or xinetd. To do that, do `make install-inetd`
or `make install-xinetd`. Likewise use `make uninstall-inetd` or or `make install-xinetd`. Likewise use `make uninstall-inetd` or
`make uninstall-xinetd` to uninstall Gophernicus. `make uninstall-xinetd` to uninstall Gophernicus.
## Compiling with TCP wrappers ## Compiling with TCP wrappers
Gophernicus uses no extra libraries... well... except libwrap Gophernicus uses no extra libraries... well... except libwrap
@ -92,10 +102,13 @@ just run 'make withwrap'.
For configuring IP access lists with TCP wrappers, take a look For configuring IP access lists with TCP wrappers, take a look
at the files `/etc/hosts.allow` and `/etc/hosts.deny` (because the at the files `/etc/hosts.allow` and `/etc/hosts.deny` (because the
<<<<<<< HEAD
manual pages suck). Use the daemon name "gophernicus" to manual pages suck). Use the daemon name "gophernicus" to
=======
manual pages suck). Use the daemon name 'gophernicus' to
>>>>>>> docs
make your access lists. make your access lists.
## Running with traditional inetd superserver ## Running with traditional inetd superserver
If you want to run Gophernicus under the traditional Unix inetd, the If you want to run Gophernicus under the traditional Unix inetd, the
@ -109,7 +122,6 @@ gopher stream tcp nowait nobody /usr/sbin/gophernicus gophernicus -h <host
The Makefile will automatically do this for you and remove it when The Makefile will automatically do this for you and remove it when
uninstalling. uninstalling.
## Compiling on Debian Linux (and Ubuntu) ## Compiling on Debian Linux (and Ubuntu)
The above commands work on Debian just fine, but if you prefer The above commands work on Debian just fine, but if you prefer
@ -124,7 +136,6 @@ Work(tm).
If you need TCP wrappers support on Debian/Ubuntu, please If you need TCP wrappers support on Debian/Ubuntu, please
install libwrap0-dev before compiling. install libwrap0-dev before compiling.
## Cross-compiling ## Cross-compiling
Cross-compiling to a different target architecture can be done Cross-compiling to a different target architecture can be done
@ -153,7 +164,6 @@ let Gophernicus recreate it - no harm done:
$ sudo make clean-shm $ sudo make clean-shm
``` ```
## Porting to different platforms ## Porting to different platforms
If you need to port Gophernicus to a new platform, please take a look at If you need to port Gophernicus to a new platform, please take a look at
@ -164,7 +174,11 @@ the patches to <gophernicus at gophernicus dot org> so we can include
them into the next release -- or even better, commit them to your fork them into the next release -- or even better, commit them to your fork
on Github and make a pull request! on Github and make a pull request!
<<<<<<< HEAD
## Supported Platforms ## Supported Platforms
=======
# Supported Platforms
>>>>>>> docs
| Platform | Versions | | Platform | Versions |
| ------------ | ---------------------------- | | ------------ | ---------------------------- |
@ -176,4 +190,7 @@ on Github and make a pull request!
| Arch Linux | up to date | | Arch Linux | up to date |
| Gentoo | up to date | | Gentoo | up to date |
| Alpine Linux | Edge, 3.9 | | Alpine Linux | Edge, 3.9 |
<<<<<<< HEAD
| FreeBSD | 12.0 | | FreeBSD | 12.0 |
=======
>>>>>>> docs

View File

@ -8,7 +8,11 @@
NAME = gophernicus NAME = gophernicus
PACKAGE = $(NAME) PACKAGE = $(NAME)
BINARY = $(NAME) BINARY = $(NAME)
<<<<<<< HEAD
VERSION = 3.0 VERSION = 3.0
=======
VERSION = 3.0
>>>>>>> docs
CODENAME = Dungeon Edition CODENAME = Dungeon Edition
AUTHOR = h9bnks and fosslinux AUTHOR = h9bnks and fosslinux
EMAIL = gophernicus@gophernicus.org EMAIL = gophernicus@gophernicus.org

View File

@ -1,12 +1,22 @@
# Gophernicus # Gophernicus
<<<<<<< HEAD
Version 3.0 Version 3.0
=======
Development! DO NOT USE unless you want fiery dragons!
(you probably want to `git checkout 3.0`)
>>>>>>> docs
*Copyright (c) 2009-2019 Kim Holviala and others* *Copyright (c) 2009-2019 Kim Holviala and others*
Gophernicus is a modern full-featured (and hopefully) secure gopher Gophernicus is a modern full-featured (and hopefully) secure gopher
daemon. It is licensed under the BSD license. daemon. It is licensed under the BSD license.
<<<<<<< HEAD
=======
(If you are looking for installation documentation, please see INSTALL.md).
>>>>>>> docs
## Support/Contact ## Support/Contact
Developers can be reached at <gophernicus AT gophernicus DOT org>. Developers can be reached at <gophernicus AT gophernicus DOT org>.
@ -141,6 +151,7 @@ gopher root which are named after your domain names. The primary vhost
directory (set with the `-h HOSTNAME` option) must exist or virtual directory (set with the `-h HOSTNAME` option) must exist or virtual
hosting will be disabled. Then simply add content to the hostname hosting will be disabled. Then simply add content to the hostname
directories and you're (kind of) up and running. directories and you're (kind of) up and running.
<<<<<<< HEAD
There is a serious issue with virtual hosting. There is a serious issue with virtual hosting.
@ -155,6 +166,22 @@ way to fix this.
It is recommended to add '%' on a line by itself to the bottom of your root It is recommended to add '%' on a line by itself to the bottom of your root
gophermaps. This will add "special" links of the format example.com/;example.com gophermaps. This will add "special" links of the format example.com/;example.com
which forces the correct vhost. which forces the correct vhost.
=======
There is a serious issue with virtual hosting.
As stated previously, RFC1436 dosen't support virtual hosting. Clients won't
like it.
How the virtual hosting works, is that it loops through the vhosts looking for
the selector. As you might think, the root gophermap exists on all of the
vhosts, meaning it might not use the correct vhost. There is currently no easy
way to fix this.
It is recommended to add '%' on a line by itself to the bottom of your root
gophermaps. This will add "special" links of the format example.com/;example.com
which forces the correct vhost.
>>>>>>> docs
## CGI support ## CGI support

View File

@ -2,6 +2,7 @@
## Latest version ## Latest version
<<<<<<< HEAD
3.0 3.0
## Changelog ## Changelog
@ -17,6 +18,25 @@
#### Other changes: #### Other changes:
=======
3.0.1
## Changelog
<!--- this should be mirrored from Changelog -->
### 3.0.1
* update documentation to `git checkout` before install
* fix typo in docs for debian packaging
### 3.0 (from 101):
**N.B. this version has two important changes that may make it backwards-incompatible:**
* binary changed from in.gophernicus to gophernicus
* virtual hosting NEVER WORKED and does not work in the way previously
described
Other changes:
>>>>>>> docs
* prevent leak of executable gophermap contents * prevent leak of executable gophermap contents
* make sure {x,}inetd works when systemd is on the system * make sure {x,}inetd works when systemd is on the system
* allow -j flag to work * allow -j flag to work
@ -34,10 +54,17 @@
* add travis ci * add travis ci
* add documentation about CI * add documentation about CI
<<<<<<< HEAD
#### Upgrade guide: #### Upgrade guide:
If you are running gophernicus on a **production** system, **do not** upgrade to 3.0. If you are running gophernicus on a **production** system, **do not** upgrade to 3.0.
Wait for 3.1. Wait for 3.1.
=======
Upgrade guide:
If you are running gophernicus on a **production** system, **do not** upgrade
to 3.0. Wait for 3.1.
>>>>>>> docs
As a general guide: As a general guide:
@ -53,6 +80,10 @@ Gophernicus has had a rough versioning history.
Versions progressed through to 2.6. Then it changed to a rolling-release scheme. Versions progressed through to 2.6. Then it changed to a rolling-release scheme.
This dosen't work very well, hence the decision was made to revert to a numbered This dosen't work very well, hence the decision was made to revert to a numbered
versioning scheme. In some places, it was referred to 101 (the git commit versioning scheme. In some places, it was referred to 101 (the git commit
<<<<<<< HEAD
number) or 2.99.101 (2.99.gitcommitnumber). number) or 2.99.101 (2.99.gitcommitnumber).
=======
number) or 2.99.101 (2.99.gitcommitnumber).
>>>>>>> docs
These days (June 2019), the vast majority of gophernicus servers are on 101. These days (June 2019), the vast majority of gophernicus servers are on 101.

View File

@ -1,3 +1,4 @@
<<<<<<< HEAD
3.0 (from 101) 3.0 (from 101)
============== ==============
@ -8,6 +9,24 @@ N.B. this version has two important changes that may make it backwards-incompati
Other changes: Other changes:
=======
3.0.1
=====
* add installation notes to git checkout before installing
* fix typo in debian packaging
3.0 (from 101)
==============
N.B. this version has two important changes that may make it
backwards-incompatible:
* binary changed from in.gophernicus to gophernicus
* virtual hosting NEVER WORKED and does not work in the way previously
described
Other changes:
>>>>>>> docs
* prevent leak of executable gophermap contents * prevent leak of executable gophermap contents
* make sure {x,}inetd works when systemd is on the system * make sure {x,}inetd works when systemd is on the system
* allow -j flag to work * allow -j flag to work
@ -27,10 +46,17 @@ Other changes:
Upgrade guide: Upgrade guide:
<<<<<<< HEAD
If you are running gophernicus on a **production** system, **do not** upgrade to 3.0. If you are running gophernicus on a **production** system, **do not** upgrade to 3.0.
Wait for 3.1. Wait for 3.1.
As a general guide: As a general guide:
=======
If you are running gophernicus on a **production** system, **do not** upgrade
to 3.0. Wait for 3.1.
As a general guide,
>>>>>>> docs
If you are running 101 and haven't upgraded to newer versions **because** of If you are running 101 and haven't upgraded to newer versions **because** of
instability worries, **wait for 3.1**. instability worries, **wait for 3.1**.

8
debian/changelog vendored
View File

@ -1,3 +1,11 @@
<<<<<<< HEAD
=======
gophernicus (3.0.1-1) unstable; urgency=medium
* add installation notes to git checkout before installing
* fix typo in debian packaging
>>>>>>> docs
gophernicus (3.0-1.1) unstable; urgency=medium gophernicus (3.0-1.1) unstable; urgency=medium
* N.B. this version has two important changes that may make it * N.B. this version has two important changes that may make it

4
debian/control vendored
View File

@ -1,7 +1,11 @@
Source: gophernicus Source: gophernicus
Section: net Section: net
Priority: extra Priority: extra
<<<<<<< HEAD
Maintainer: gophernicus developers <gophernicus@gophernicus.org> Maintainer: gophernicus developers <gophernicus@gophernicus.org>
=======
Maintainer: gophernicus developers <gophernicus@gophernicus.org>
>>>>>>> docs
Build-Depends: debhelper (>= 5), libwrap0-dev Build-Depends: debhelper (>= 5), libwrap0-dev
Standards-Version: 3.7.3 Standards-Version: 3.7.3
Homepage: https://github.com/gophernicus/gophernicus Homepage: https://github.com/gophernicus/gophernicus

4
debian/docs vendored
View File

@ -2,6 +2,10 @@ README.md
README.Gophermap README.Gophermap
TODO TODO
INSTALL.md INSTALL.md
<<<<<<< HEAD
VERSONING.md VERSONING.md
=======
VERSIONING.md
>>>>>>> docs
changelog changelog
gophertag gophertag