This commit is contained in:
matthias 2025-07-29 15:11:50 +02:00
commit 12d8fee03d

View file

@ -1,9 +1,11 @@
# GTS-HolMirDas 🚀 # GTS-HolMirDas 🚀
RSS-based content discovery for GoToSocial instances. RSS-based content discovery for **[GoToSocial](https://codeberg.org/superseriousbusiness/gotosocial)** instances.
Automatically discovers and federates content from RSS feeds across the Fediverse, helping small GoToSocial instances populate their federated timeline without relying on traditional relays. Automatically discovers and federates content from RSS feeds across the Fediverse, helping small GoToSocial instances populate their federated timeline without relying on traditional relays.
*Inspired by the original [HolMirDas](https://github.com/aliceif/HolMirDas) for Misskey by [@aliceif](https://github.com/aliceif) ([@aliceif@mkultra.x27.one](https://mkultra.x27.one/@aliceif)), this GoToSocial adaptation extends the RSS-to-ActivityPub concept with enhanced Docker deployment and multi-instance processing.*
## Features ## Features
- 📡 **Multi-Instance RSS Discovery** - Fetches content from configurable RSS feeds across Fediverse instances - 📡 **Multi-Instance RSS Discovery** - Fetches content from configurable RSS feeds across Fediverse instances
@ -15,7 +17,7 @@ Automatically discovers and federates content from RSS feeds across the Fedivers
## How it Works ## How it Works
GTS-HolMirDas reads RSS feeds from various Fediverse instances and uses GoToSocial's search API to federate the discovered content. This approach: **GTS-HolMirDas** reads RSS feeds from various Fediverse instances and uses GoToSocial's search API to federate the discovered content. This approach:
- Maintains proper ActivityPub federation (posts remain interactive) - Maintains proper ActivityPub federation (posts remain interactive)
- Respects rate limits and instance policies - Respects rate limits and instance policies
@ -26,7 +28,7 @@ GTS-HolMirDas reads RSS feeds from various Fediverse instances and uses GoToSoci
```bash ```bash
# Clone the repository # Clone the repository
git clone https://your-forgejo-instance.tld/user/gts-holmirdas git clone https://git.klein.ruhr/user/gts-holmirdas
cd gts-holmirdas cd gts-holmirdas
# Copy configuration templates # Copy configuration templates
@ -38,10 +40,10 @@ nano .env # Add your GTS credentials
nano rss_feeds.txt # Customize RSS feeds nano rss_feeds.txt # Customize RSS feeds
# Deploy # Deploy
docker-compose up -d docker compose up -d
# Monitor # Monitor
docker-compose logs -f docker compose logs -f
``` ```
## Configuration ## Configuration
@ -91,7 +93,7 @@ https://infosec.exchange/tags/selfhosting.rss
``` ```
📊 GTS-HolMirDas Run Statistics: 📊 GTS-HolMirDas Run Statistics:
⏱️ Runtime: 0:04:14 ⏱️ Runtime: 0:04:14
📄 Total posts processed: 45 📄 Total posts processed: 45
🌐 Current known instances: 2519 🌐 Current known instances: 2519
New instances discovered: +3 New instances discovered: +3
@ -110,7 +112,7 @@ https://infosec.exchange/tags/selfhosting.rss
### Docker Compose (Recommended) ### Docker Compose (Recommended)
```bash ```bash
docker-compose up -d docker compose up -d
``` ```
### Standalone Docker ### Standalone Docker
@ -125,7 +127,7 @@ docker run -d --env-file .env \
## Monitoring ## Monitoring
- **Logs**: `docker-compose logs -f` - **Logs**: `docker compose logs -f`
- **Health**: Optional Healthchecks.io integration - **Health**: Optional Healthchecks.io integration
- **Statistics**: Built-in runtime and performance metrics - **Statistics**: Built-in runtime and performance metrics
- **Resource Usage**: Docker stats or container monitoring tools - **Resource Usage**: Docker stats or container monitoring tools
@ -134,20 +136,17 @@ docker run -d --env-file .env \
### Common Issues ### Common Issues
**No posts processed**: Check access token permissions and RSS feed URLs - **No posts processed**: Check access token permissions and RSS feed URLs
- **Rate limiting errors**: Increase `DELAY_BETWEEN_REQUESTS` or reduce feed count
**Rate limiting errors**: Increase `DELAY_BETWEEN_REQUESTS` or reduce feed count - **High memory usage**: Reduce `MAX_POSTS_PER_RUN` or feed frequency
- **Container won't start**: Verify `.env` file format and required variables
**High memory usage**: Reduce `MAX_POSTS_PER_RUN` or feed frequency
**Container won't start**: Verify `.env` file format and required variables
### Debug Mode ### Debug Mode
```bash ```bash
# Enable debug logging # Enable debug logging
echo "LOG_LEVEL=DEBUG" >> .env echo "LOG_LEVEL=DEBUG" >> .env
docker-compose restart gts-holmirdas docker compose restart gts-holmirdas
``` ```
## Contributing ## Contributing
@ -170,6 +169,6 @@ MIT License - see LICENSE file for details.
## Acknowledgments ## Acknowledgments
- Inspired by the [HolMirDas](https://github.com/aliceif/HolMirDas) concept - Inspired by [HolMirDas](https://github.com/aliceif/HolMirDas) by [@aliceif](https://github.com/aliceif) ([@aliceif@mkultra.x27.one](https://mkultra.x27.one/@aliceif)) - the original RSS-to-ActivityPub concept
- Built for the GoToSocial community - Built for the GoToSocial community
- RSS-to-ActivityPub approach inspired by Fediverse discovery challenges - RSS-to-ActivityPub approach inspired by Fediverse discovery challenges