Stuff We Use
We use a number of open-source technologies for running this project. For the curious, here is a curated list:
- Debian and Ubuntu Server as server operating systems
- FluxBB forum software
- GnuPG for signing packages and ISO images
- LXC, LXD, Docker for application and system containers
- OpenSSH and rsync for shuffling data around
- git for our VCS, gitea as a repository browser
- netdata as an UNIX-y, awesome monitoring dashboard
- nginx is what we use for our webserver and web-facing load balancer. It also blocks spammers using a blocklist provided by the Stop-Forum-Spam project: We regularly fetch the list as a CSV file from a cronjob, transform it using sed and then pass it on to nginx as a configuration file which nginx just includes from its main configuration.
- opentracker is our bittorrent tracker; the torrent files are generated using buildtorrent. opentracker is a bit weird in that it needs to be compiled once for IPv4, and once for IPv6 – otherwise a very neat tool.
- pandoc generates our static main web site, supported by scripts using ImageMagick for bitmap and Inkscape for vector graphics processing as well as text processing scripts using GNU sed and the GNU coreutils (of course there’s some stray Python too). The build system is GNU make, which also makes for a surprisingly simple but flexible templating system.
- pbuilder builds our packages for i386, amd64 and ARM architectures
- reprepro manages our Debian package repository
- terraform and saltstack for infrastructure management and system provisioning
- vnstat is a network traffic monitor with database functionality. We put up graphs generated by
vnstation our interal dashboard.