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
14 changed files with 95 additions and 8 deletions

View file

@ -8,6 +8,7 @@
./services/http/index.nix
./services/monitoring.nix
./services/forgejo.nix
./services/navidrome.nix
];
# 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";
networking.hostName = "bert";
# Enable networking
networking.networkmanager.enable = true;
fileSystems."/mnt/bigbird-public" = {
device = "//bigbird/public";
fsType = "cifs";
options = [ "guest" ];
};
time.timeZone = "America/Chicago";
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
file_server
root * /srv/www/files.chandlerswift.com
handle_errors {
respond "{err.status_code} {err.status_text}"
}
'';
systemd.tmpfiles.settings."10-files-chandlerswift-com" = {
"/srv/www/files.chandlerswift.com" = {

View file

@ -6,14 +6,18 @@
encode zstd gzip
file_server
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" = {
"/srv/www/harborpaperco.com" = {
d = {};

View file

@ -6,6 +6,20 @@
root * /srv/www/home.chandlerswift.com
reverse_proxy /grafana/* localhost:3000
# 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" = {
"/srv/www/home.chandlerswift.com" = {

View file

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

View file

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

View file

@ -5,6 +5,10 @@
file_server
root * /srv/www/maps.chandlerswift.com
# hide .git # ???
handle_errors {
respond "{err.status_code} {err.status_text}"
}
'';
systemd.tmpfiles.settings."10-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
file_server
root * /srv/www/swiftgang.net
handle_errors {
respond "{err.status_code} {err.status_text}"
}
'';
systemd.tmpfiles.settings."10-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;
};
};
}

9
bigbird/README.md Normal file
View file

@ -0,0 +1,9 @@
# `bigbird`: ODROID HC4 NAS
## SD card notes
Many SD cards I attempted would boot fine but then fail to reset on reboot.
Some preliminary research suggests that this may be a kernel issue, but I'm not
entirely sure at this point. For now, I took the easy way out: Just keep trying
SD cards until one works! Thankfully, it seems to be reliable that an SD card
works either 100% or 0% of the time. Currently using a 32GB Microcenter cheapo,
in place of the nicer 128GB ones I was planning on instead.

View file

@ -21,6 +21,8 @@
boot.zfs.forceImportRoot = false;
boot.zfs.extraPools = [ "nas" ];
services.zfs.autoScrub.enable = true; # Current scan takes ~12h, runs monthly (I spend 2% of the time doing scans? lol)
networking.hostId = "66abd088"; # `openssl rand -hex 4`
time.timeZone = "America/Chicago";

View file

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