Paigaldasin endale oma blogi — eelkõige selleks, et #NixOS-i paremini tundma õppida. Üllataval kombel sujus see kõik üsna lihtsalt.
WriteFreely sobib selleks väga hästi: minimalistlik, kiiresti seadistatav ja ilma liigse pagasita. Ideaalne, et lihtsalt alustada ja samal ajal midagi juurde õppida. Konfiguratsioon on meeldivalt selge. Mõned valikud paika pandud, kataloog ette valmistatud, pöördproksi (reverse proxy) ette — valmis.
Selline näeb välja minu praegune NixOS-i konfiguratsioon:
{ config, pkgs, ... }:
{
services.writefreely = {
enable = true;
host = "blog.burningboard.org";
settings = {
server = {
port = 8080;
min_log_level = "debug";
};
app = {
host = "https://blog.burningboard.org";
single_user = true;
landing = "/read";
wf_modesty = true;
federation = true;
public_stats = true;
theme = "write";
};
};
stateDir = "/opt/writefreely";
};
# ActivityPubi võtmete genereerimise parandus: föderatsioon nõuab openssl-i
systemd.services.writefreely.path = [ pkgs.openssl ];
# Andmekataloogi automaatne loomine korrektsete õigustega
systemd.tmpfiles.rules = [
"d /opt/writefreely 0700 writefreely writefreely -"
];
services.caddy.virtualHosts."blog.burningboard.org".extraConfig = ''
reverse_proxy 127.0.0.1:8080 {
header_up Host {host}
header_up X-Real-IP {remote_host}
header_up X-Forwarded-For {remote_host}
header_up X-Forwarded-Proto {scheme}
}
'';
}
See ongi sisuliselt kõik. NixOS teeb selliste teenuste puhta seadistamise ja reprodutseeritavuse hoidmise tõesti lihtsaks.