RSS aggregator for different protocols
See also alternative branch to generate static gemtext
-
src/crawler.php- scan configured RSS feeds and dump results to SQLite -
src/cleaner.php- auto clean deprecated records -
src/server.php- server launcher for different protocols:
nex://[301:23b4:991a:634d::feed]- Yggdrasil instance by YGGverse
apt install git composer php-fpm php-sqlite3 php-pdo php-mbstring- install system dependenciesgit clone https://github.com/YGGverse/Pulsar.git- get latest Pulsar versioncd Pulsar- navigate project foldercomposer update- install application dependenciescp config/example.json config/name.json- setup your feed
php src/crawler.php config=name.json- crawl feeds configured byname.json- manually or using crontabconfig- relative (toconfigfolder) or absolute path to configuration file
Launch as many servers as wanted, for different protocols and configurations (provided as the arguments)
php src/server.php protocol=nex config=name.json- launchnexprotocol server withname.jsonconfigconfig- relative (configfolder) or absolute path to configuration fileprotocol- server protocol, supported options:nex- NEX Protocol
Launch server as the systemd service
Following example mean application installed into the home directory of pulsar user (useradd -m pulsar)
# /etc/systemd/system/pulsar.service
[Unit]
After=network.target
[Service]
Type=simple
User=pulsar
Group=pulsar
ExecStart=/usr/bin/php /home/pulsar/Pulsar/src/server.php protocol=nex config=name.json
StandardOutput=file:/home/pulsar/debug.log
StandardError=file:/home/pulsar/error.log
Restart=on-failure
[Install]
WantedBy=multi-user.targetsudo systemctl daemon-reload- reload systemd configurationsudo systemctl enable pulsar- enable service on system startupsudo systemctl start pulsar- start server