An extensible, general purpose http->gemini mirror with full javascript support, live at gemini://illegaldrugs.net/cgi-bin/hellgate
Go to file
sose e0a567a89f block permission and popup requests 2021-04-26 21:50:53 -07:00
sigils first commit 2021-04-23 16:43:02 -07:00
.gitignore remove testing tls keys 2021-04-24 04:48:07 +00:00
gen_cert.sh first commit 2021-04-23 16:43:02 -07:00
hellgate.js block permission and popup requests 2021-04-26 21:50:53 -07:00
license first commit 2021-04-23 16:43:02 -07:00
mandatory-js-project-logo.png first commit 2021-04-23 16:43:02 -07:00
package-lock.json updated package-lock 2021-04-25 05:22:39 +00:00
package.json first commit 2021-04-23 16:43:02 -07:00
preload.js formatting 2021-04-24 05:04:30 +00:00
readme.md Update 'readme.md' 2021-04-25 05:45:36 +00:00
writing_sigils.md Update 'writing_sigils.md' 2021-04-25 05:25:03 +00:00

readme.md

hellgate logo

Hellgate is an extensible, general purpose http->gemini mirror with full javascript support

Requirements

  • nodejs
  • npm
  • electron
  • openssh
  • sh
  • libgtk-2-0
  • libgconf-2-4
  • xvfb (if you're running it headless)

Setup

  • sudo apt install libgtk2.0-0 libgconf-2-4 (if you're on debian, other distros idk)
  • sudo apt install xvfb (again, on debian)
  • git clone https://tildegit.org/sose/hellgate
  • cd hellgate
  • sudo npm install -g electron --unsafe-perm=true
  • npm install
  • ./gen_cert
  • npm start or xvfb-run npm start
    • The server will listen on localhost:1965 by default

Sigils

  • By default, more complex sites that are rendered by hellgate are not very pretty, and sometimes downright unreadable
  • For this, users can create website specific 'sigils' to display content in a certain way, or to automate certain actions on a website
  • Sigils are located in the sigils dir and are titled with the domain name of their corresponding website
  • See writing sigils for more info on how to write sigils and how they work
  • If you write a new sigil for a specific website, don't hesitate to send it as a pull request to this repo

Notes

  • As of right now the npm version of gemini-server is broken, use the version from github or this will not work