Commit graph

93 commits

Author SHA1 Message Date
dad759c4b3 Add minio module for S3-compatible object storage
Label Studio _really_ prefers using a direct object storage model. Can't
say I blame them, it makes sense given they are running Python.

I had to bump Authentik to not use its default port so that minio could
use its own default port. That seemed safest given that Authentik is
always proxied but minio/S3 may _not_ be. I'm just not sure.
2025-10-03 15:01:36 +00:00
dbbed7117a Set up reverse proxy, configure hostname
It was rather rediculously hard to get the CSRF settings correct. I
don't think I can register new users on anything but the commandline at
this point via:

podman exec -it podman-label-studio /bin/bash
label-studio start --username <username> --password <password>

Where <username> should actually be an email.
2025-10-03 15:01:36 +00:00
d246caa613 Connect label-studio to postgres 2025-10-03 15:01:36 +00:00
8790585e6b Add label-studio initial module
To make this work I have to map to the user 1001 inside the container.
I can't figure out how to do that intelligently after a bunch of
experimenting. Instead I'm just creating a new user "label-studio" with
uid 1001 and chowning the data directory to that user.

This is very brittle.

However, it's working, so I'm moving forward.
2025-10-03 15:01:36 +00:00
a30f3321b1 Stop copying the glitchtip directory inside itself
Over and over and over again
2025-10-03 15:01:36 +00:00
443af99364 Enable mosh on all servers
For times when I have to connect over cellular
2025-10-03 15:01:36 +00:00
e3cb729e42 Get fieldseeker-sync database backup working
The previous version only cleaned up previous backups because it was
missing a path or a set of dynamic files which is a feature for doing
cleanup. Instead I backported the unstable version so I could use
stdin-from-commend. Tested now and the upload completed.
2025-10-01 14:48:56 +00:00
a2c37bac70 Move glitchtip to big disk and clean up its temp files 2025-09-30 22:57:19 +00:00
fd032b72cb Stop waiting for completion on export on nixos-rebuild
I'm hoping this won't mess with the timer logic. For now, it drives me
nuts I'm waiting for timeout or completion of the export process, which
is slow.
2025-09-30 17:47:49 +00:00
5bd3003c4a Fix reference to webserver service 2025-09-30 17:47:32 +00:00
24ecd65cf0 Add backup for fieldseeker-sync files.
This required changing the directory of the user files so that I don't
accidentially backup Gleipnir test files.
2025-09-30 17:46:46 +00:00
a728e62a72 Add restic to all servers
Used for backups
2025-09-30 15:51:21 +00:00
9020b3e6d5 Remove old commented-out authentik logic
This has been replaced with a separate authentik flake
2025-09-29 22:48:47 +00:00
7acb0fd016 Switch timers for "startAt" in fieldseeker-sync services
I'm trying to troubleshoot why I always have time out on these services
when I run nixos-rebuild. Simplification is a plus as well.
2025-09-29 21:13:25 +00:00
b0e373932e Release latest fieldseeker-sync 2025-09-29 21:13:25 +00:00
f5ea2676ef Add fieldseeker-sync migrate service
Avoids one of my other services randomly failing because they are racing
to migrate the DB.
2025-09-29 21:13:25 +00:00
40517face6 Add timecard-bot deployment to corp
This currently has the architecture hard-coded. That's bad, but nix is
hard, and there's probably a much better way to integrate this into the
system when I can be bothered to do it.
2025-09-26 19:08:26 +00:00
dcc294e979 Add ghostty terminfo support to all servers 2025-09-26 17:27:46 +00:00
09ba3f4abe Fix up static website hosting on corp 2025-09-26 17:27:46 +00:00
35777dc9cb Enable vikunja search for SSO users when editing teams
See https://vikunja.io/docs/config-options/#1-service-enableopenidteamusersearch
2025-09-26 17:27:46 +00:00
83c4802ff1 Add audio post-processing pipeline to fieldseeker-sync 2025-09-11 19:12:19 +00:00
bb4d7e95a8 Update librechat rag to use locally-built and local DB
I have to do the local build because I no longer have access to the one
at docker.io.
2025-09-09 21:34:09 +00:00
c535915ae0 Move cloudreve to the latest version, and the data to the big disk 2025-09-09 21:33:45 +00:00
2c101e6aaa Get cloudreve working on new corp with local database
This was a huge hassle. I really wanted to see it working under a
non-root user since it writes files, but that ended up being impossible
because of several bugs in podman's rootless integration with NixOS.
I've kept pieces of the logic around and commented out in case I can fix
it in the future as it would be more secure.

I also tried to connect to Postgres over the unix domain socket, but the
problem here is that the container is built to run as root and I'd need
to do some elaborate mapping of the root user inside the container, the
non-root user outside the container, and the Postgres auth scheme.

This would be great stuff to sort out, but I'm out of time now to work
on it.
2025-09-09 19:47:22 +00:00
b652029e73 Remove seafile
I like Cloudreve well enough, and didn't like Seafile much
2025-09-09 15:07:32 +00:00
57843f6b8a Get matrix-synapse up and running on new corp
I move the secrets file to be more consistent with the naming.
I removed parts of the postgres config that is no longer needed now that
the database is running locally.
2025-09-09 15:05:28 +00:00
e025d2dce3 Increase open file limits for building the system
Without this I was hitting issues when building the authentik flake
which apparently is quite large and complex.
2025-09-09 15:03:52 +00:00
4d5de177b5 Get authentik working on the new corp server without podman
The podman integration was pretty janky because it relied on running a
pod and the NixOS integration with pods are essentially non-existent.
This led to issues with the port being improperly forwarded when
partially restarted.

Now instead I use a flake dedicated to running authentik. This allows me
to specify some of the config in the module directly and some in
secrets, which is really nice. I've additionally added some changes to
the listen address so that the service isn't exposed over public IP
addresses.
2025-09-09 15:03:43 +00:00
3fcadf2047 Massively decrease the timeout waiting for the network to come online 2025-08-27 17:52:15 +00:00
c1446b9e51 Make the working directory for Glitchtip configurable 2025-08-27 17:52:15 +00:00
a12f1c409d Copy glitchtip working files to a writeable directory
It's not configurable, but it works, and was able to take my build
system upload.
2025-08-27 17:52:15 +00:00
1f663c3e42 Don't wait until timeout on systemd-networkd-wait-online
I believe this is caused by having a number of virtual interfaces from
OCI containers and the system wants to see them all online before
considering networkd online
2025-08-27 17:52:15 +00:00
2e07572759 Move matrix secrets to central secrets location 2025-08-27 17:52:15 +00:00
ca16db4add Vendor-in the original glitchtip module
I'm going to be making some changes
2025-08-27 17:52:15 +00:00
011d63390a Add sentry integration deployment to fieldseeker-sync 2025-08-26 00:43:15 +00:00
a8b3f92fab Fix bad merge 2025-08-23 18:33:48 +00:00
107db4a325 Add second, test-only fieldseeker config 2025-08-23 18:33:35 +00:00
86637074e8 Don't wait to run export on nixos-rebuild 2025-08-23 17:18:32 +00:00
f8f8bc368a Add glitchtip self-hosted
This doesn't yet do SSO correctly, I'm still trying to figure out how to
configure Django allauth via environment variable.
2025-08-22 22:18:23 +00:00
d5403cc9fb Add binutils to all servers
It gives me access to 'strings' which allows me to debug environment
variables of running programs
2025-08-22 22:18:22 +00:00
3f509cc124 Add fieldseeker webserver 2025-08-20 23:58:18 +00:00
1f0173ab1a Add timer to run fsync export on 15m intervals 2025-08-18 22:01:49 +00:00
b91bb281e0 Remove fieldseeker-sync.toml config file
It's all configured via environment variables now.
2025-08-18 22:01:43 +00:00
f277375075 Get a database created and connected for fieldseeker-sync 2025-08-18 21:44:43 +00:00
ba87117ed3 Reference a built binary in fieldseeker-sync, add initial service
This won't work yet as we don't read from the environment variables
and are missing a complete config file
2025-08-18 20:29:31 +00:00
884c372b17 Fully use networkd
This quiets a warning we get for having networkd not fully enabled.
2025-08-18 19:45:05 +00:00
7af1ff3698 Update to rev that actually builds
Last one has a syntax error.
2025-08-18 19:44:47 +00:00
25739ab71b First inklings of fieldseeker-sync building for our sync host 2025-08-18 19:39:13 +00:00
5e59add85b Enable network on all hosts
I've been using networkd quite a bit in my personal work. Adding this
fixed my DNS resolution issues, so I'm keeping it.
2025-08-18 19:39:13 +00:00
fed9049f4c Add cloud-init and dig to the base system image
I'm having problems with DNS resolution and network routing on the new
sync server, I'm hoping these will help me.
2025-08-18 19:39:13 +00:00