Commit graph

29 commits

Author SHA1 Message Date
stuebinm f654b33a56 modules/containers: a hacc-specific containers module
this started with emily pointing out to me that it's possible to
generate IP addresses for containers in Nix (hence no need to worry
about ever having collisions, as we had before), but then I thought,
hey, while I'm at it, I can also write a little container module so we
have a little less repetition in our configs in general (and a more
reasonable place for our custom evalConfig than just keeping it around
in flake.nix).

See the option descriptions in modules/containers.nix for further
details.

Apart from giving all containers a new IP address (and also shiny new
IPv6 addresses), this should be a no-op for the actual built system.
2024-04-19 19:15:22 +02:00
stuebinm 3dc63acf52 modules/buildinfo: simplify implementation
turns out there is a string-slicing function, I just overlooked it when
writing this file (it's even a builtin). So let's use that instead.
2024-04-19 03:38:50 +02:00
stuebinm d20acbfe58 monit: a couple new checks
move the monit config out of mail.nix, and add two checks:
 - has any systemd unit failed?
 - is the currently deployed commit the tip of the main branch of
   haccfiles?
2024-04-07 16:30:57 +02:00
stuebinm 069236027c meta: add build info to motd / system label, remove /etc/haccfiles 2024-04-06 23:15:37 +02:00
stuebinm 0140b7a9fb bundle encboot
this does nothing but move the module & rename the hexchen.* options to hacc.*
2024-02-17 00:04:51 +00:00
stuebinm 39531f1c48 bundle hexchen's nopersist & bindmount moduls
the bind mount module has been tweaked in a couple ways:
 - rename hexchen.* to hacc.*
 - rename bindmount to bindMount to make it consistent with usage in
   the nixpkgs container module
 - add a hacc.bindToPersist option as shorthand for prepending /perist
   to a path via bind mount

the nopersist module has been shortened a little by moving
service-specific things which are used once out into the individual
service files, and removing those which we don't need at all (this also
means we get to loose a mkForce or two in case of mismatches between
hexchen's and our current config).
2024-02-17 00:04:51 +00:00
stuebinm a6d21f4fd9 make working on websites nicer
(since every time we have to change anything on these I get annoyed at
having to remember how to build these. Now you can just use `nix run`!)
2023-02-24 17:33:48 +01:00
stuebinm 72c16d9e1c nicer container configs
today i woke up to the realisation that there's an extremely obvious way
to make these nicer, & then i did exactly that. For some reason I did
not think of this when originally removing the dependency to nix-hexchen's
evalConfig.

unfortunately, this is not /quite/ a no-op. The only actual change is
different whitespace in some of the semantically-equivalent
coredns-configs that got unified.
2023-02-18 14:45:14 +01:00
stuebinm 39a1719188 remove apparently unneeded disabledModules
(i guess there's a historic reason why this was here?)
2022-11-11 16:30:38 +01:00
stuebinm c12ae3231a remove unused modules 2022-11-11 16:30:38 +01:00
stuebinm 55f17ad7c3 get rid of the nextcloud module fork 2022-11-11 16:30:38 +01:00
stuebinm 52f9f2d64c
get rid of mattermost-patched module
this does a couple things:
 - redo mattermost's secret config as an env file passed to systemd
 - get rid of modules/mattermost.nix and use upstream module instead
 - move some of the stuff in secret.json which don't need to be there
   into nix (e.g. smtp port)

Also, I set the log level to ERROR in the env file. Mattermost doesn't
seem to respect it otherwise *shrug*
2022-10-15 20:10:29 +02:00
hexchen 04272968d0 update and fix mattermost 2022-09-24 14:59:52 +00:00
hexchen 27cc65fb14 feat: new SSO!!!! 🎉 2022-04-30 20:43:12 +00:00
stuebinm 4ff0bdf3ec
whoops, apparently some rebase went wrong
(fixing it back into a buildable state)
2022-01-27 20:38:04 +01:00
stuebinm eb07f34672 modules/website.nix init
idea is to have a directory `websites/` which contains all our static
sites, with the name of each subdirectory also being their domain. Then
Nix can just read that directory during build-time and automatically
generate nginx virtualHosts for all of them (note that the
subdirectories have to contain a `default.nix` specifying how to build
the site for that to work).

Thus we could avoid the dependency on gitlab pages.
2022-01-10 22:57:09 +01:00
schweby 34eb8651d8 modules/nextcloud: add option for defaultapp 2021-10-31 08:27:40 +01:00
stuebinm 56cbb7601b services/vaultwarden: init vaultwarden 2021-09-28 11:13:25 +00:00
hexchen 35cd963f8c services/gitlab-runner: init on parsons
also disable ci for hainich
2021-08-23 19:32:02 +00:00
schweby b23582a52f services/mattermost: init on parsons 2021-08-23 19:32:02 +00:00
hexchen da7beff2fe services/nextcloud: init on parsons 2021-08-07 12:05:26 +00:00
hexchen cf5062adfd sources: update nixpkgs to 21.05
this caused various other changes related to nftables, we are now using
hexchen's fork of pbb's module.
2021-08-07 12:05:25 +00:00
stuebinm d5cf2abccc
hainich: init mattermost beta 2021-03-24 22:37:38 +01:00
schweby 9d516c83ae sources: removed immae-nix 2021-02-10 23:48:18 +01:00
hexchen 4c9a200c83 sources: switch to upstream
this involves moving the blackmagic package and module from hexchen's
nixpkgs fork into this repo directly.
2021-01-27 22:06:56 +01:00
hexchen 61db3bc33f modules/nftnat: init nftables nat module 2021-01-15 23:55:06 +00:00
hexchen e876bcc29f modules/peertube: fix reference to immaenix 2021-01-15 00:38:59 +00:00
hexchen 88b4eb461d modules/peertube: init 2020-11-30 18:31:04 +00:00
hexchen 0878012581 Initial Commit 2020-11-27 20:57:19 +00:00