60 lines
1.4 KiB
Markdown
60 lines
1.4 KiB
Markdown
# Daily Stormer Search
|
|
|
|
A Search Engine for the Daily Stormer
|
|
|
|
## Installation
|
|
|
|
In the root of the project, do the following.
|
|
|
|
```sh
|
|
# Install node modules
|
|
npm i
|
|
|
|
# Initialize database from scratch
|
|
sqlite3 main.db < sql/ds.sql
|
|
sqlite3 main.db < sql/ds.001.sql
|
|
sqlite3 main.db < sql/ds.002.sql
|
|
|
|
# Alternatively, download a database snapshot.
|
|
wget http://dss.coincidencedetector.com/archive/dss-latest.db.gz
|
|
gzcat dss-latest.db.gz > main.db
|
|
|
|
# Run the server
|
|
micro-dev -p 1984 site.js
|
|
```
|
|
|
|
## Downloading Articles
|
|
|
|
```sh
|
|
# Download all articles from scratch:
|
|
# This takes a few days and may need babysitting in case of crashes.
|
|
bin/download-all
|
|
|
|
# Dowloading the last 140 articles per category:
|
|
# If you have a recent snapshot, running this once is how you should get it up to date.
|
|
P=1 bin/download-all
|
|
```
|
|
|
|
## Cron
|
|
|
|
To periodically update the database with new articles, replace the value of
|
|
`DSS_ROOT` with the path to where DSS is on your system, and place the
|
|
following in your crontab.
|
|
|
|
```sh
|
|
DSS_ROOT=/path/to/dss
|
|
55 * * * * cd $DSS_ROOT && bin/articles-update
|
|
```
|
|
|
|
## Environment Variables
|
|
|
|
### PATH
|
|
|
|
Make sure your `PATH` includes `node_modules/.bin`. Running `micro-dev` probably won't work otherwise.
|
|
|
|
### DSS\_DB
|
|
|
|
By default, this code assumes the database is at `./main.db` in the root
|
|
of the project directory. If you want to use another database, you may
|
|
specify its full path in `DSS_DB`.
|