You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

50 lines
3.0 KiB
Org Mode

#+TITLE: Trackers
* About
The scripts in this repository take information from a structured set of =.org= files and use them to build static webpages that track various activities (so far, gaming and travelling). These pages can be used as a replacement for third-party services e.g. Backloggery.
* Dependencies
- =python3=
- =orgparse= (install via pip)
- =rclone= (for syncing to the server)
* General setup
** Structure of the .org files
See =demo.org= for an example.
** Setting the variables
Rename =variables-template.py= to =variables.py= and edit:
- =orgpath=: absolute path to the root directory in which =.org= files are stored, including trailing slash
- =localpath=: absolute path to this directory, including trailing slash
- =domain=: =https://yourdomain.tld= without trailing slash
- =rclonesiteroot=: path =rclone= uses to access your webserver
* Tracking games with a backloggery clone
** Setup
*** Fonts
Upload the fonts Lato, Titillium Web, and Material Icons to the directory =/fonts= on your server (I recommend [[https://gwfh.mranftl.com/fonts][google-webfonts-helper]]). Check the filenames are consistent with those in =gamebuild/backloggery.css=. Alternatively, you can load the fonts remotely and adjust the page head HTML generated by =gameskel.py=.
*** Setting the variables
In =variables.py=, edit:
- =trackgames=: set to =True=
- =gameserverpath=: path to directory on the server where files will be uploaded, including trailing slash
- =endlessgames=: a list of “endless” games in the format =title (console)=
- =description=: content for the “about” section (can include HTML tags)
- =gamestartyear=: year from which to begin tracking (an integer)
- =gamehue=: theme colour expressed as a hue from 0 to 360
- =consoles=: add or remove consoles following the format provided (=.png= images must be added to the build directory with a filename corresponding with the value of ="img"= for each console)
** Testing
- Run =python3 generategames.py local= to build in =gamebuild=.
* Tracking places visited using Leaflet
** Setup
Upload a CSS file to the server if necessary. Most CSS is set by Leaflet.
*** Setting the variables
In =variables.py=, edit:
- =trackplaces=: set to =True=
- =placeserverpath=: path to directory on the server where files will be uploaded, including trailing slash
- =placestartyear=: year from which to begin tracking (an integer)
- =placecss=: location of the CSS file you wish to apply, relative to the site root
** Testing
- Run =python3 generateplaces.py local= to build in =placebuild=.
- If new places have been added since the last build, they will be added to =places.py= and the terminal will signal this. Add the latitude and longitude for these places in =places.py= before building again.
* First run (or if adding any new trackers)
- Run =python3 init.py= and then =chmod +x build.sh=.
- Create directories on the server corresponding to any =*serverpath= variables you have set.
* Building
- Run =./build.sh= to build and upload to the server.