Compare commits

..

10 commits

Author SHA1 Message Date
Chandler Swift f7c5255017
oscar: Allow unfree steam-unwrapped
Apparently this is a new requirement?

https://wiki.nixos.org/w/index.php?title=Steam&diff=prev&oldid=18248
2024-11-12 10:56:04 -06:00
Chandler Swift 0f4b0295c8
bert: add 0hats.com
Future direction: Have a systemd timer that regens this automatically,
and updates the index page accordingly.
2024-11-12 10:56:04 -06:00
Chandler Swift 9e80802351
bert: Enable pureserendipityweddings.com redirect 2024-11-12 10:56:03 -06:00
Chandler Swift 9e3c4ee13e
bert: Add handle_errors clause to all sites
It looks like this was CLOSED WONTFIX: How can we _possibly_ know that
upon an error, the developer might want us to send an indication of that
error??!!1! Snark aside (mine and his): it looks like there's not a
great way to enable sane error behavior globally :/

https://caddy.community/t/handling-errors-globally/17174/2

In the future, I should probably make this a snippet or something.
2024-11-12 10:56:03 -06:00
Chandler Swift 542b9dd68d
bert: Add home.chandlerswift.com/sheets 2024-11-12 10:56:03 -06:00
Chandler Swift 5271fe9965
bert: Add navidrome 2024-11-12 10:56:03 -06:00
Chandler Swift e9e8913fe6
bert: Add public mount from bigbird 2024-11-12 10:56:03 -06:00
Chandler Swift 0b821f6111
bert: Disable networkmanager
I wasn't actually using this anyway? 🤷
2024-11-12 10:56:03 -06:00
Chandler Swift 3e7ead9d5f
bigbird: Add README with SD card note 2024-11-12 10:56:03 -06:00
Chandler Swift 815c1ad671
bigbird: Enable ZFS autoscrub 2024-11-12 10:56:03 -06:00
13 changed files with 85 additions and 14 deletions

View file

@ -5,12 +5,7 @@
3. Deploy updated config with `make` 3. Deploy updated config with `make`
4. Set up [Remote Disk Unlocking](https://nixos.wiki/wiki/Remote_disk_unlocking) 4. Set up [Remote Disk Unlocking](https://nixos.wiki/wiki/Remote_disk_unlocking)
1. mkdir -p /etc/secrets/initrd && ssh-keygen -N "" -f /etc/secrets/initrd/ssh_host_25519_key 1. mkdir -p /etc/secrets/initrd && ssh-keygen -N "" -f /etc/secrets/initrd/ssh_host_25519_key
5. Deploy content: 5. Deploy content to web services
- websites in /srv
- factorio world at /var/lib/factorio/saves/default.zip
- git/forgejo in /var/lib/forgejo
- navidrome
6. Set up Grafana users (log in with default admin/admin; change creds; configure)
# Notes on Caddy # Notes on Caddy
Until 2.8 is released with 24.11, Caddy has a pretty limited sense of what Until 2.8 is released with 24.11, Caddy has a pretty limited sense of what

View file

@ -8,6 +8,7 @@
./services/http/index.nix ./services/http/index.nix
./services/monitoring.nix ./services/monitoring.nix
./services/forgejo.nix ./services/forgejo.nix
./services/navidrome.nix
]; ];
# Bootloader # Bootloader
@ -35,8 +36,11 @@
boot.initrd.luks.devices."luks-48836129-1aa0-45c7-9fd1-6b053fa620b1".device = "/dev/disk/by-uuid/48836129-1aa0-45c7-9fd1-6b053fa620b1"; boot.initrd.luks.devices."luks-48836129-1aa0-45c7-9fd1-6b053fa620b1".device = "/dev/disk/by-uuid/48836129-1aa0-45c7-9fd1-6b053fa620b1";
networking.hostName = "bert"; networking.hostName = "bert";
# Enable networking fileSystems."/mnt/bigbird-public" = {
networking.networkmanager.enable = true; device = "//bigbird/public";
fsType = "cifs";
options = [ "guest" ];
};
time.timeZone = "America/Chicago"; time.timeZone = "America/Chicago";
i18n.defaultLocale = "en_US.UTF-8"; i18n.defaultLocale = "en_US.UTF-8";

View file

@ -0,0 +1,20 @@
{
services.caddy.virtualHosts."0hats.com" = {
serverAliases = ["www.0hats.com"];
extraConfig = ''
encode zstd gzip
file_server
root * /srv/www/0hats.com
handle_errors {
respond "{err.status_code} {err.status_text}"
}
'';
};
systemd.tmpfiles.settings."10-0hats-com" = {
"/srv/www/0hats.com" = {
d = {};
};
};
}

View file

@ -4,6 +4,10 @@
encode zstd gzip encode zstd gzip
file_server file_server
root * /srv/www/files.chandlerswift.com root * /srv/www/files.chandlerswift.com
handle_errors {
respond "{err.status_code} {err.status_text}"
}
''; '';
systemd.tmpfiles.settings."10-files-chandlerswift-com" = { systemd.tmpfiles.settings."10-files-chandlerswift-com" = {
"/srv/www/files.chandlerswift.com" = { "/srv/www/files.chandlerswift.com" = {

View file

@ -6,14 +6,18 @@
encode zstd gzip encode zstd gzip
file_server file_server
root * /srv/www/harborpaperco.com root * /srv/www/harborpaperco.com
handle_errors {
respond "{err.status_code} {err.status_text}"
}
'';
};
services.caddy.virtualHosts."pureserendipityweddings.com" = {
serverAliases = ["www.pureserendipityweddings.com"];
extraConfig = ''
redir https://harborpaperco.com
''; '';
}; };
# services.caddy.virtualHosts."pureserendipityweddings.com" = {
# serverAliases = ["www.pureserendipityweddings.com"];
# extraConfig = ''
# redir https://harborpaperco.com
# '';
# };
systemd.tmpfiles.settings."10-harborpaperco-com" = { systemd.tmpfiles.settings."10-harborpaperco-com" = {
"/srv/www/harborpaperco.com" = { "/srv/www/harborpaperco.com" = {
d = {}; d = {};

View file

@ -6,6 +6,20 @@
root * /srv/www/home.chandlerswift.com root * /srv/www/home.chandlerswift.com
reverse_proxy /grafana/* localhost:3000 reverse_proxy /grafana/* localhost:3000
# hide .git # ??? # hide .git # ???
file_server /sheets/* {
browse ${./caddy-browse-template.html}
# TOOD: is there a better way to strip the prefix here? This shouldn't be
# vulnerable to a directory traversal attack (and it doesn't really
# matter anyway; everything in there is public somewhere or another!) but
# it sorta feels wrong to do this without a `/sheets` suffix.
root /mnt/bigbird-public
}
handle_errors {
respond "{err.status_code} {err.status_text}"
}
''; '';
systemd.tmpfiles.settings."10-home-chandlerswift-com" = { systemd.tmpfiles.settings."10-home-chandlerswift-com" = {
"/srv/www/home.chandlerswift.com" = { "/srv/www/home.chandlerswift.com" = {

View file

@ -1,11 +1,13 @@
{ {
imports = [ imports = [
./0hats.com.nix
./files.chandlerswift.com.nix ./files.chandlerswift.com.nix
./git.chandlerswift.com.nix ./git.chandlerswift.com.nix
./harborpaperco.com.nix ./harborpaperco.com.nix
./home.chandlerswift.com.nix ./home.chandlerswift.com.nix
./katherineandchandler.com.nix ./katherineandchandler.com.nix
./maps.chandlerswift.com.nix ./maps.chandlerswift.com.nix
./music.chandlerswift.com.nix
./stjohnscccc.org.nix ./stjohnscccc.org.nix
./swiftgang.net.nix ./swiftgang.net.nix
]; ];

View file

@ -5,6 +5,10 @@
file_server file_server
root * /srv/www/katherineandchandler.com root * /srv/www/katherineandchandler.com
# hide .git # ??? # hide .git # ???
handle_errors {
respond "{err.status_code} {err.status_text}"
}
''; '';
systemd.tmpfiles.settings."10-katherineandchandler-com" = { systemd.tmpfiles.settings."10-katherineandchandler-com" = {
"/srv/www/katherineandchandler.com" = { "/srv/www/katherineandchandler.com" = {

View file

@ -5,6 +5,10 @@
file_server file_server
root * /srv/www/maps.chandlerswift.com root * /srv/www/maps.chandlerswift.com
# hide .git # ??? # hide .git # ???
handle_errors {
respond "{err.status_code} {err.status_text}"
}
''; '';
systemd.tmpfiles.settings."10-maps-chandlerswift-com" = { systemd.tmpfiles.settings."10-maps-chandlerswift-com" = {
"/srv/www/maps.chandlerswift.com" = { "/srv/www/maps.chandlerswift.com" = {

View file

@ -0,0 +1,5 @@
{config, ...}: {
services.caddy.virtualHosts."music.chandlerswift.com".extraConfig = ''
reverse_proxy localhost:${toString config.services.navidrome.settings.Port}
'';
}

View file

@ -4,6 +4,10 @@
encode zstd gzip encode zstd gzip
file_server file_server
root * /srv/www/swiftgang.net root * /srv/www/swiftgang.net
handle_errors {
respond "{err.status_code} {err.status_text}"
}
''; '';
systemd.tmpfiles.settings."10-swiftgang-net" = { systemd.tmpfiles.settings."10-swiftgang-net" = {
"/srv/www/swiftgang.net" = { "/srv/www/swiftgang.net" = {

View file

@ -0,0 +1,10 @@
{
services.navidrome = {
enable = true;
settings = {
MusicFolder = "/mnt/bigbird-public/media/music";
ScanSchedule = "@every 12h";
EnableSharing = true;
};
};
}

View file

@ -16,6 +16,7 @@
"steam" "steam"
"steam-original" "steam-original"
"steam-run" "steam-run"
"steam-unwrapped"
]; ];
# https://discourse.nixos.org/t/github-strategies-for-configuration-nix/1983/14 # https://discourse.nixos.org/t/github-strategies-for-configuration-nix/1983/14