An extensible, general purpose http->gemini mirror with full javascript support, live at gemini://illegaldrugs.net/cgi-bin/hellgate
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
sose e0a567a89f block permission and popup requests 5 months ago
sigils first commit 5 months ago
.gitignore remove testing tls keys 5 months ago
gen_cert.sh first commit 5 months ago
hellgate.js block permission and popup requests 5 months ago
license first commit 5 months ago
mandatory-js-project-logo.png first commit 5 months ago
package-lock.json updated package-lock 5 months ago
package.json first commit 5 months ago
preload.js formatting 5 months ago
readme.md Update 'readme.md' 5 months ago
writing_sigils.md Update 'writing_sigils.md' 5 months ago

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