Commit graph

46 commits

Author SHA1 Message Date
stuebinm b07e4d08fa
Mattermost: Enable networking for the container.
Otherwise, the login via keycloak will fail, as mattermost cannot verify
the associated token. Since networking.nat only appears to work for ipv4
and I have no idea how to do it with ipv6, this unfortunately implies
downgrading the container's networking to ipv4 only ...
2021-03-17 23:00:44 +01:00
stuebinm f24da2510d
mattermost: change url to mattermost-beta.infra4future.de
I propose we deploy this sometime and see how it goes (as soon as someone
sets up DNS for this).
2021-03-17 23:00:44 +01:00
stuebinm a3a4264b38
Patch mattermost module to allow secrets outside the nix store
This adds a custom mattermost module (`services.mattermost-patched`) which is
identical to the one in nixpkgs except that it also has an option `secretConfig`,
which should point to a file containing all secret parts of the mattermost config
(e.g. mailserver password), and which is merged with the config genereated from
the module at startup time.

This allows us to have a (almost) immutable config without having secrets in the
nix store.

Before deploying this, add a secrets file at /var/lib/mattermost/screts.json
(on the host — there is a bind mount in place so we won't have to enter the
container each time to change something).
2021-03-17 23:00:44 +01:00
stuebinm 3be22b7249
init mattermost on hainich.
This is an initial test config for mattermost on NixOS; the intention is
to perhaps deploy this as soon as it looks reasonable, then have it running
as a "beta instance" in parallel with the current instance on libocedrus
for a while to see if any issues come up before we can make a permament
switch here.

The mattermost module has a somewhat weird approach to database configuration
(per default, it generates an entire postgres config, and if told not to
do that, it generates a /disabled/ postgrs config ...), which I have for
the most part worked around.

Mattermost provides extensive configuration options, which are usually changed
using its web UI. I have instead set the more important ones using Nix, and
made the config immutable --- however, the config of our current instance is
rather long and full of default values; it may well be that I missed some
important settings.

Open questions which we may want to answer before deploying this:
 - is there a reason why we use mysql for our current instance? At least
   during my tests, mattermost appears to work just fine with postgres
 - to access the noreply@infra4future.de mail address, mattermost needs
   a password, which --- as it looks right now --- must be set in the nix
   store. Can we work around that or should we fork / override the module?
 - plugins are apparently broken right now
 - locales are broken as well, for whatever reason — the german locale
   is definitively present, but setting it as the default will break and
   then reverted by mattermost on startup
 - for now, I have set `mutableConfig` to `false`, i.e. any changes done
   in the mattermost web UI will be overwritten on next startup. This is
   great for reproducability, but less so for ease of use (and perhaps for
   secrets as well) --- do we want to keep it this way?
 - as it is right now, using this instead of our current instance would
   represent a version DOWNGRADE (from 5.30.6. to 5.25.3); this may break
   the database schema. We may have to package a more recent version of
   mattermost and use that instead.

Things I was unable to test locally (in a nixos container):
 - authentication using "gitlab" / keycloak
 - mail notifications (including coredns forwarding)
 - more advanced stuff like notifications, anything to do
   with "true" multi-user interaction
2021-03-17 23:00:34 +01:00
stuebinm dbbdde76c7
mumble.hacc.space: move site from gitlab into nix derivation
Since the delivery of mumble.hacc.space/murmur.hacc.space via gitlab pages
broke (for whatever reason), I've packaged the site into an ad-hoc nix
derivation, which is now delivered locally by nginx instead. This has a
couple benefits (mainly that we no longer depend on gitlab pages), but
also the downside that we can't just update the site via gitlab's CI/CD
pipelines anymore.
2021-03-17 22:35:51 +01:00
schweby 32b5958279 security: remove hexchen mail 2021-03-13 00:27:53 +01:00
schweby bab826b1c7 security: remove hexchen 2021-03-12 23:53:51 +01:00
schweby 2d4309fdf4 hainich: init workadventure 2021-03-11 00:11:51 +01:00
hexchen 6f2cc7bf7f hainich: remove obsolete nginx host 2021-03-09 10:10:03 +00:00
hexchen bc58060390 mail: update rinderhacc password and alias 2021-03-09 10:03:18 +00:00
stuebinm d7b70742fe remove old engelsystem config (NOP)
this removes the old (unused) config for an angel system used during the
fridays for future camp 2020. Since it was configured "by hand" and not
in a declarative manner, and since there is now an actual module
`services.engelsystem` that we already use for the divoc it seems unlikely
that we will ever need the old config again.

From Nix's point of view, this commit is equivalent to doing nothing.
2021-02-21 14:58:25 +01:00
Matthias Stübinger 3b42b89bd7 Hasenloch (Engelsystem for divoc)
Seems to work fine, except for the domain — the engelsystem tries
to load its ressources from the IP of the container instead of its
url set in the config.
2021-02-20 23:32:00 +01:00
schweby 1a8842457d restic: added mumur to backup 2021-02-20 21:56:05 +01:00
hexchen 233a4c7cab hainich: init restic backups 2021-02-15 07:23:23 +00:00
hexchen e42376687f hainich/syncthing: add hexchen's server 2021-02-13 19:56:15 +00:00
Schweby mit Hut be90dca334 hainich/syncthing: added raphael-laptop 2021-02-11 22:31:35 +01:00
Schweby mit Hut 442e320be5 hainich/syncthing: Updated id for schweby 2021-02-11 22:17:36 +01:00
hexchen c36eb51ff4 Revert 43d36bb3d7
This is a partial revert, reintroducing hexchen to the project.
As it turns out, I am still quite invested in the project and require
frequent access to the nix-based infrastructure.
2021-02-11 18:59:10 +00:00
hexchen 0ea8daad24 hainich/gitlab-runner: Move registration token
Move it to /etc instead so that it's persisted across reboots
2021-02-10 22:40:03 +00:00
hexchen 0d362a17fc hainich/monitoring: init prometheus 2021-02-06 16:41:02 +00:00
Schweby mit Hut 323b4edf1c hainich/murmur,mumble: let the websites be fixed. 2021-02-03 23:33:08 +01:00
Matthias Stübinger 1ccc8b2b9c Fix mumble sites 2021-02-03 11:12:23 +01:00
Schweby mit Hut 4813284e82 syncthing 2021-01-27 23:27:59 +01:00
hexchen 43d36bb3d7 remove hexchen from the project
I am no longer comfortable with putting resources into this project and
therefore request to be removed from all infrastructure. I am still
happy to help out with software I set up, but I will no longer actively
maintain any services. As far as possible, I will remove myself from all
access groups or other privileged positions related to this project.

Essentially, I'm stepping down as a maintainer. I still reserve the
right to make changes via the established change processes (Merge
Requests as well as Issues in the meta-repositories), but I will no
longer make direct changes to infrastructure without going through those
review processes.
2021-01-25 11:37:34 +00:00
hexchen ee2a3ae0b8 hainich/murmur: fix proxy_pass 2021-01-20 18:38:50 +00:00
schweby 351303f060 made loge appropriate size 2021-01-17 23:37:20 +00:00
Schweby mit Hut c7894cd9d6 updated Logo 2021-01-17 23:31:01 +01:00
waldfunk danni 5006365684 Update lantifa.nix 2021-01-17 22:31:37 +01:00
hexchen 95da394e01 hainich/nat: add docker and container IPs
for some reason, masquerading by interface does not work atm, should fix
itself with a host reboot though.
2021-01-15 23:55:06 +00:00
hexchen 61db3bc33f modules/nftnat: init nftables nat module 2021-01-15 23:55:06 +00:00
hexchen c0efd41e74 nftables: import module and init config 2021-01-15 22:45:34 +00:00
octycs 57334cd690 lantifa: Attempt to configure short URLs (to fix VisualEditor)
Signed-off-by: hexchen <hexchen@lilwit.ch>
2021-01-15 10:56:13 +00:00
octycs 4964ac6817 Add DynamicPageList + PageForms extension
Signed-off-by: hexchen <hexchen@lilwit.ch>
2021-01-15 10:40:55 +00:00
schweby c6b3a895fd added wiki added path to logo 2021-01-14 23:26:13 +00:00
hexchen af89eb2e45 hainich/mail: allow mail for discourse 2021-01-14 00:02:32 +00:00
hexchen 3d4b6e4148 fixup!hainich/mail: discuss@infra4future.de pass 2021-01-13 23:40:14 +00:00
hexchen dbe5cb55fb hainich/mail: update setup for discourse 2021-01-13 23:20:44 +00:00
hexchen 1ccc94b37f hainich/mail: add noreply@infra4future.de 2021-01-13 21:32:22 +00:00
hexchen 2ccb2d3ded hainich/lantifa: fix visualeditor 2021-01-13 18:48:06 +00:00
octycs 410d9fa13d hainich/lantifa: update mediawiki config
Use correct TemplateData version & add plugins: visualeditor, inputbox

Signed-off-by: hexchen <hexchen@lilwit.ch>
2021-01-13 17:24:43 +00:00
hexchen 548188be4d hainich/lantifa: attempt visualeditor fix 2021-01-13 17:18:16 +00:00
hexchen ea80c4fe41 hainich/lantifa: update mediawiki to use unstable 2021-01-12 23:21:19 +00:00
Schweby mit Hut 2d8eeb45ab added Wiki DB & Template Data plugins 2021-01-12 23:14:05 +01:00
hexchen 5006060d68 hainich/mail: add gitlab service account 2021-01-12 18:40:25 +00:00
hexchen d1412f0d3b hainich/lantifa: init mediawiki 2021-01-12 18:20:49 +00:00
hexchen 851052014a complete restructure of haccfiles
here be winkekatzen
2021-01-10 23:53:41 +00:00