iOverview of some salient issues when publishing via Gophernicus, mention VF-1 client. - gopher-tutorials - The gopher tutorials project. Err bitreich.org 70 hgit clone git://bitreich.org/gopher-tutorials/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/gopher-tutorials/ URL:git://bitreich.org/gopher-tutorials/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/gopher-tutorials/ bitreich.org 70 1Log /scm/gopher-tutorials/log.gph bitreich.org 70 1Files /scm/gopher-tutorials/files.gph bitreich.org 70 1Refs /scm/gopher-tutorials/refs.gph bitreich.org 70 1Tags /scm/gopher-tutorials/tag bitreich.org 70 i--- Err bitreich.org 70 1commit 75389aa48308eb655d152456986e43c4b3ad94a2 /scm/gopher-tutorials/commit/75389aa48308eb655d152456986e43c4b3ad94a2.gph bitreich.org 70 1parent 389858fe316692d3f34db820c55a547157356d8f /scm/gopher-tutorials/commit/389858fe316692d3f34db820c55a547157356d8f.gph bitreich.org 70 hAuthor: solderpunk URL:mailto:solderpunk@sdf.org bitreich.org 70 iDate: Sat, 31 Mar 2018 12:06:24 +0000 Err bitreich.org 70 i Err bitreich.org 70 iOverview of some salient issues when publishing via Gophernicus, mention VF-1 client. Err bitreich.org 70 i Err bitreich.org 70 iSigned-off-by: Christoph Lohmann <20h@r-36.net> Err bitreich.org 70 i Err bitreich.org 70 iDiffstat: Err bitreich.org 70 i M clients.txt | 18 ++++++++++++++++++ Err bitreich.org 70 i A publish-gophernicus.txt | 54 +++++++++++++++++++++++++++++++ Err bitreich.org 70 i Err bitreich.org 70 i2 files changed, 72 insertions(+), 0 deletions(-) Err bitreich.org 70 i--- Err bitreich.org 70 1diff --git a/clients.txt b/clients.txt /scm/gopher-tutorials/file/clients.txt.gph bitreich.org 70 i@@ -49,3 +49,21 @@ RuGopher is an open-source graphical gopher client written in Ruby. Err bitreich.org 70 i You can fetch the sources at the following GIT repository : Err bitreich.org 70 i Err bitreich.org 70 i https://github.com/Val6789/RuGopher.git Err bitreich.org 70 i+ Err bitreich.org 70 i+VF-1 Err bitreich.org 70 i+==== Err bitreich.org 70 i+ Err bitreich.org 70 i+VF-1 is an open source text-based gopher client written in Python 3, Err bitreich.org 70 i+which uses external programs to handle different item types. It also Err bitreich.org 70 i+sports some advanced navigation features, such as link extraction from Err bitreich.org 70 i+type 0 items, jumping to next/previous item in a menu without Err bitreich.org 70 i+returning to the menu, marking items with a single character (cf vim Err bitreich.org 70 i+marks) and queuing up items to visit in a FIFO list called a "tour". Err bitreich.org 70 i+ Err bitreich.org 70 i+Souce is at: Err bitreich.org 70 i+ Err bitreich.org 70 i+ https://github.com/solderpunk/VF-1 Err bitreich.org 70 i+ Err bitreich.org 70 i+VF-1 is also on PyPi so it can be installed with: Err bitreich.org 70 i+ Err bitreich.org 70 i+ pip3 install VF-1 Err bitreich.org 70 1diff --git a/publish-gophernicus.txt b/publish-gophernicus.txt /scm/gopher-tutorials/file/publish-gophernicus.txt.gph bitreich.org 70 i@@ -0,0 +1,54 @@ Err bitreich.org 70 i+Gophernicus is quite fussy about permissions, to minimise the risk of Err bitreich.org 70 i+accidentally serving files not intended for public consumptions. Only Err bitreich.org 70 i+world accessible content will be served, so chmod files o+r and Err bitreich.org 70 i+directories o+rw. This is a common cause of confusion and frustration Err bitreich.org 70 i+for beginners. Err bitreich.org 70 i+ Err bitreich.org 70 i+Gophernicus supports so-called "personal gopherspaces". If a user Err bitreich.org 70 i+"bob" has a directory named "public_gopher" in their home directory, Err bitreich.org 70 i+then the file /home/bob/public_gopher/foo/bar/baz.ext will be Err bitreich.org 70 i+accessible via the selector ~bob/foo/bar/baz.ext (if permissions Err bitreich.org 70 i+allow). The name of the "public_gopher" directory can be changed via Err bitreich.org 70 i+the -u option. This is a convenient feature for those who want to Err bitreich.org 70 i+host multiple users, although it can of course be emulated with Err bitreich.org 70 i+symlinks for other server software. Err bitreich.org 70 i+ Err bitreich.org 70 i+Automatically generated directory listings list files in alphabetical Err bitreich.org 70 i+order. This is less than ideal for phloggers who usually want the Err bitreich.org 70 i+most recent entry to appear at the top. The conventional workaround Err bitreich.org 70 i+for this seems to be to prefix filenames with some kind of timestamp Err bitreich.org 70 i+that sorts nicely alphabetically. YYYYMMDD timestamps obviously work Err bitreich.org 70 i+nicely, but a three-character alphanumeric code also sees some use, Err bitreich.org 70 i+see e.g. gopher://grex.org:70/0/~tfurrows/phlog_filename.txt. Err bitreich.org 70 i+ Err bitreich.org 70 i+Automatically generated menus can be overridden by creating a file Err bitreich.org 70 i+named "gophermap" in any directory. Menu items are specified with Err bitreich.org 70 i+lines of the type: Err bitreich.org 70 i+ Err bitreich.org 70 i+Xnameselectorhostport Err bitreich.org 70 i+ Err bitreich.org 70 i+where X is the gopher item type. The host and port may be omitted, Err bitreich.org 70 i+in which case they will be set to the same host and port that the Err bitreich.org 70 i+server is running on (the server's idea of its own hostname can be Err bitreich.org 70 i+forced with the -h option). The selector may also be omitted, in Err bitreich.org 70 i+which case it will be set equal to the name. Lines not beginning Err bitreich.org 70 i+with a valid item type or with one of Gophernicus' own non-standard Err bitreich.org 70 i+control characters are treated as information lines (type i). Err bitreich.org 70 i+ Err bitreich.org 70 i+It is important to note that selectors which do not begin with a / Err bitreich.org 70 i+will be interpreted as *relative* links, e.g. a selector of "bar" Err bitreich.org 70 i+specified in "foo/gophermap" will point to "foo/bar". Selectors Err bitreich.org 70 i+beginning with / are treated as absolute links. Some other gopher Err bitreich.org 70 i+servers with seemingly compatible gophermap syntax (e.g. PyGopherd) Err bitreich.org 70 i+treat all selectors as absolute and this can cause headaches when Err bitreich.org 70 i+attempting to port gophermaps from one server to another. Err bitreich.org 70 i+ Err bitreich.org 70 i+Dynamically generated menus are possible by making the "gophermap" Err bitreich.org 70 i+file a world-executable script which produces output on stdout of Err bitreich.org 70 i+exactly the same format as a static gophermap. Err bitreich.org 70 i+ Err bitreich.org 70 i+As a lightweight alternative to gophermaps, a file named "gophertag" Err bitreich.org 70 i+may be placed in any directory containing a "user friendly" name for Err bitreich.org 70 i+that directory to be used in automatically generated listings (e.g. Err bitreich.org 70 i+you could placed a gophertag file containing the text Err bitreich.org 70 i+"Miscellaneous photographs" in the directory "misc_photos"). Err bitreich.org 70 .