⚠️ This post is archived from my phlog in Gopherspace. Please read my post on the Gopher Protocol to get started!
gopherden is forum software for the Gopher Protocol. View the official gopherden server via the web or via the Gopher Protocol (as intended) (you may want to read my post about the Gopher Protocol).
I’m thinking about renaming it to “phorum.”
- Features (Users/Visitors)
- News
- Known issues
- Feedback
- Who’s using, in the news
- Documentation and tutorials
- See also
- Post on the official server!
- Want your own gopherden or want to develop?
Features (Users/Visitors)
Features for the people who use a gopherden:
- Transient content. Old threads are deleted. There’s max thread count, when reached and a new post is made, the oldest one gets erased.
- Anonymous, except IPs are associated with posts for banning and legal purposes
- View threads as gopher maps or as text files (ASCII art, kind of)
- Prevents some accidental reposting by refreshing
- Prevents new threads being created where the message/content is the same as another in the DB
- “Secret codes” which allow you to use codes like
<jgsBagOfMoney>
to potentially show an ASCII art picture - Rate-limiting (how fast you can make new threads or posts)
- Handles/parses Gopher and HTTP(S) URIs into menu/map items
News
[news from my blog about gopherden]
Known issues
- No real bot prevention. A captcha-like system could be implemented.
Feedback
- Contact me using a method mentioned on my about page
- Create an issue on the gopherden GitHub repo
Who’s using, in the news
Some other instances, notable users…
Documentation and tutorials
See also
Post on the official server!
This feels kind of redundant.
Official gopherden server at gopher://gopher.someodd.zip:7070. You may want to read my article on the Gopher Protocol for help on browsing gopherspace.
You can use my Gopher Protocol client, “waffle” to visit the forum!
You can use gopher
(sudo apt-get install gopher
) and then use gopher -p "/" gopher.someodd.zip 7070
.
You could also use Lagrange, which has a client for Linux, MacOS, Windows, Android, and iOS.
Below is a photo of me using Lagrange to visit the forum on my phone:
.
Want your own gopherden or want to develop?
Developer and Server Features
Features for those who host or develop (a) gopherden:
- Written in Haskell
- TOML configuration spec. First time I implemented a TOML config and I find it decent.
- Uses Spacecookie, a wonderful Gopher Protocol library. I’ve worked with the author before.
- CLI for banning
I’m leveraging nixpkgs
to:
- Make it very easy on me to build and deploy, particularly on my server
- Have a development environment that sets up/takes down postgresql for me, which also helps with deploying a little demo server I’m hosting now. It also wipes the database on exit, too.
Setting up a server
As of the time I’m writing this I don’t have a systemd
integration or Debian
package, so a set up I like and think is simple/easy:
- clone the repo and
cd
into it - make sure
nixpkgs
is installed on your system withexperimental-features = flakes nix-command
in your~/.config/nix/nix.conf
- start a GNU Screen session
screen -S services
nix develop
nix run .#gopherden -- launch
There you go! Keep in mind if you send the exit signal (I think) inside of nix
develop
the database gets wiped.
Original content in gopherspace: gopher://gopher.someodd.zip:70/0/phlog/gopherden.gopher.txt