secrets for mediawiki and formatting

This commit is contained in:
revol-xut 2022-09-06 17:16:31 +02:00
parent 7131ba8691
commit 87bd442eed
No known key found for this signature in database
GPG key ID: 4F56FF7759627D07
18 changed files with 255 additions and 234 deletions

View file

@ -33,7 +33,7 @@
system = "aarch64-linux";
modules = [
{
nixpkgs.overlays = [ fsr-infoscreen.overlay."aarch64-linux"];
nixpkgs.overlays = [ fsr-infoscreen.overlay."aarch64-linux" ];
nixpkgs.config.allowBroken = true;
sdImage.compressImage = false;
}
@ -60,6 +60,7 @@
./modules/keycloak.nix
./modules/nginx.nix
./modules/hedgedoc.nix
./modules/wiki.nix
{
sops.defaultSopsFile = ./secrets/durian.yaml;
}

View file

@ -5,7 +5,8 @@
{ config, pkgs, ... }:
{
imports =[ # Include the results of the hardware scan.
imports = [
# Include the results of the hardware scan.
./hardware-configuration.nix
];
@ -27,7 +28,7 @@
users.users.printer = {
isNormalUser = true;
password = "printer";
extraGroups = [];
extraGroups = [ ];
};
environment.systemPackages = with pkgs; [

View file

@ -5,7 +5,8 @@
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
[
(modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "ohci_pci" "ehci_pci" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ];
@ -14,18 +15,19 @@
boot.extraModulePackages = [ config.boot.kernelPackages.broadcom_sta ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/9799b183-a191-484e-b9a4-05e29412af25";
{
device = "/dev/disk/by-uuid/9799b183-a191-484e-b9a4-05e29412af25";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/CF58-EB12";
{
device = "/dev/disk/by-uuid/CF58-EB12";
fsType = "vfat";
};
swapDevices =
[ { device = "/dev/disk/by-uuid/94622e8e-8b58-4b3b-9494-d144ccaeb486"; }
];
[{ device = "/dev/disk/by-uuid/94622e8e-8b58-4b3b-9494-d144ccaeb486"; }];
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View file

@ -6,7 +6,8 @@
{
imports =
[ # Include the results of the hardware scan.
[
# Include the results of the hardware scan.
./hardware-configuration.nix
];

View file

@ -5,7 +5,8 @@
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
[
(modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "megaraid_sas" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" "sr_mod" ];
@ -14,36 +15,42 @@
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "rpool/nixos/root";
{
device = "rpool/nixos/root";
fsType = "zfs";
options = [ "zfsutil" ];
};
fileSystems."/home" =
{ device = "rpool/nixos/home";
{
device = "rpool/nixos/home";
fsType = "zfs";
options = [ "zfsutil" ];
};
fileSystems."/var/lib" =
{ device = "rpool/nixos/var/lib";
{
device = "rpool/nixos/var/lib";
fsType = "zfs";
options = [ "zfsutil" ];
};
fileSystems."/var/log" =
{ device = "rpool/nixos/var/log";
{
device = "rpool/nixos/var/log";
fsType = "zfs";
options = [ "zfsutil" ];
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/7FE6-F583";
{
device = "/dev/disk/by-uuid/7FE6-F583";
fsType = "vfat";
};
fileSystems."/nix" =
{ device = "rpool/nixos/nix";
{
device = "rpool/nixos/nix";
fsType = "zfs";
options = [ "zfsutil" ];
};

View file

@ -2,15 +2,16 @@
let
extra_office_packages = (lib.ifEnable config.fsr.enable_office_bloat (with pkgs; [
extra_office_packages = (lib.ifEnable config.fsr.enable_office_bloat (with pkgs; [
vlc
libreoffice-fresh
okular
texlive.combined.scheme-full
]));
]));
in {
in
{
# enable XFCE as lightweight desktop environment
services = {
xserver.enable = true;

View file

@ -1,7 +1,8 @@
{ config, pkgs, lib, ... }:
let
domain = "pad.quitte.tassilo-tanneberger.de";
in {
in
{
services = {
postgresql = {
enable = true;

View file

@ -1,8 +1,9 @@
{ pkgs, lib, config, ...}:
{ pkgs, lib, config, ... }:
let
fsr-infoscreen = pkgs.fsr-infoscreen;
in {
in
{
systemd = {
services."fsr-infoscreen" = {

View file

@ -1,4 +1,4 @@
{pkgs, config, lib, ...}: {
{ pkgs, config, lib, ... }: {
sops.secrets.postgres_keycloak = {
owner = config.systemd.services.keycloak.serviceConfig.User;
@ -52,7 +52,8 @@
"/" =
let
cfg = config.services.keycloak.settings;
in {
in
{
proxyPass = "http://${cfg.http-host}:${toString cfg.http-port}";
};
};

View file

@ -1,4 +1,4 @@
{config, lib, ...}: with lib; {
{ config, lib, ... }: with lib; {
options.fsr.enable_office_bloat = mkOption {
type = types.bool;
default = false;

View file

@ -2,7 +2,7 @@
{
# Enable CUPS to print documents.
services= {
services = {
printing.enable = true;
printing.drivers = with pkgs; [
gutenprint

View file

@ -6,7 +6,8 @@
{ pkgs, config, ... }:
let
password = "$(${pkgs.coreutils}/bin/cat /run/secrets/fsr_wifi_psk)";
in {
in
{
networking = {
wireless = {
enable = true;

View file

@ -1,10 +1,12 @@
{ config, pkgs, lib, ... }:
{
sops.secrets.postgres_mediawiki.owner = config.systemd.services.mediawiki.serviceConfig.User;
sops.secrets.mediawiki_initial_admin.owner = config.systemd.services.mediawiki.serviceConfig.User;
services = {
mediawiki = {
enable = true;
name = "FSR Wiki";
passwordFile = config.sops.secrets.mediawiki_initial_admin.path;
database = {
user = "mediawiki";
type = "postgres";
@ -13,7 +15,7 @@
name = "mediawiki";
host = "localhost";
passwordFile = config.sops.secrets.postgres_mediawiki.path;
createLocally = true;
createLocally = false;
};
virtualHost = {
hostName = "wiki.quitte.tassilo-tanneberger.de";
@ -22,7 +24,7 @@
enableACME = true;
};
};
postgres = {
postgresql = {
enable = true;
};
};

View file

@ -1,13 +1,13 @@
{ lib
,pkgs
#, buildpythonApplication
#, buildPythonPackage
, pkgs
#, buildpythonApplication
#, buildPythonPackage
, fetchFromGitHub
#, fetchPypi
#, fetchPypi
}:
let
dvb = pkgs.python39Packages.buildPythonPackage rec {
dvb = pkgs.python39Packages.buildPythonPackage rec {
pname = "dvb";
version = "1.2.0";
@ -20,9 +20,9 @@ dvb = pkgs.python39Packages.buildPythonPackage rec {
doCheck = false;
propagatedBuildInputs = with pkgs.python39Packages; [ pyproj numpy requests ];
};
};
flask-misaka = pkgs.python39Packages.buildPythonPackage rec {
flask-misaka = pkgs.python39Packages.buildPythonPackage rec {
pname = "flask-misaka";
version = "1.0.0";
@ -35,15 +35,16 @@ flask-misaka = pkgs.python39Packages.buildPythonPackage rec {
doCheck = false;
propagatedBuildInputs = with pkgs.python39Packages; [ flask misaka ];
};
};
in pkgs.python39Packages.buildPythonApplication rec {
in
pkgs.python39Packages.buildPythonApplication rec {
pname = "fsr-infoscreen";
version = "2.1.0";
src = fetchFromGitHub{
src = fetchFromGitHub {
owner = "fsr";
repo = "infoscreen";
rev = "43fb1fdc9dd15ccf40ef28b448ac6cfd51f32bc4";
@ -52,7 +53,7 @@ in pkgs.python39Packages.buildPythonApplication rec {
nativeBuildInputs = with pkgs; [ pkg-config python3Packages.wrapPython ];
propagatedBuildInputs = with pkgs.python39Packages; [ flask python-forecastio flask-misaka dvb ];
buildInputs = with pkgs.python39Packages; [ flask python-forecastio flask-misaka dvb ];
pythonPath = with pkgs.python39Packages; [ flask python-forecastio flask-misaka dvb];
pythonPath = with pkgs.python39Packages; [ flask python-forecastio flask-misaka dvb ];
installPhase = ''
mkdir -p $out/build/middleware

View file

@ -2,6 +2,7 @@ postgres_keycloak: ENC[AES256_GCM,data:Vi0NLjpYDvFGIYYL/VPdgOqAS51KXQynBFlBjK64e
postgres_hedgedoc: ENC[AES256_GCM,data:VCoWXZbNGWfmorTNZRFWkDUp0B5JMmsA+bJFVrUREj0=,iv:fnSs3FOgmFn5/BqKTODpwIq023ZRMF8s/JiDyf2ZqkE=,tag:oit5sHf6QffhYYi/WJk5SQ==,type:str]
hedgedoc_session_secret: ENC[AES256_GCM,data:uz7KggZqeZ2eqiCnOcnYh2I1p5BBXTQbC8PUhB2kM2U=,iv:aJDHKCPkccCT/OF6AGZMfRESNmoV9muGHbuCUfLQhH8=,tag:uEVXylpE8MSebqRr+4mQOw==,type:str]
postgres_mediawiki: ENC[AES256_GCM,data:abxT4VB9c0YwqHI8OLvfLFjpJoLAoDNNE9ml58BpD2A=,iv:jn7e3oDWtADuK3o8x26uRbwruQ07zglMyXpThBV6uG0=,tag:9NF49KqdXoAgz8U/VWIKsg==,type:str]
mediawiki_initial_admin: ENC[AES256_GCM,data:V62NRMkQaXqHl4Jj69BNsprafEqszeoHiLWurexLuvs=,iv:aSZJLviR0Tt2RCeb22pPP4i/B4APNFvU1l8ipeNvER8=,tag:mWv8fN1RZwJHUqIxQonO8Q==,type:str]
sops:
kms: []
gcp_kms: []
@ -17,8 +18,8 @@ sops:
bzNnbFZnZnZiY0xsbVlvUStBblBMWGcK7HSz9iFQiH0BJ3etF09opJreBoBtiBZ0
L74EBGuEV4+dNWqY3QwAASmDYJJ8ocQMuAgctjsgstKBKUeOrkhDRg==
-----END AGE ENCRYPTED FILE-----
lastmodified: "2022-09-06T15:00:39Z"
mac: ENC[AES256_GCM,data:Arjto/Cl6wcF99jUOWGZB28NME4t68oYL0yGdjUMTUCU+CKz2Y2sX82ncb6JpRPrSEzzhFAiEqK0QuXvxrgPnBp7MH0+fS8rNa87LEVOoesDnv0pcCZQXxDsJypNMkzEz1aZVEr9U212vulbShyz8HKcGioy5fLSx98fTCpaK/c=,iv:Bng+AlN0rnkXwMNiOKR8dIa3cf1sT8xpC8CFV0/xods=,tag:cKfI0BVDCKtV1W8j9riP/w==,type:str]
lastmodified: "2022-09-06T15:14:55Z"
mac: ENC[AES256_GCM,data:jd8op8K6jIyzUwiCX/6I716EI903rVZIMIRvxM/8w+oxqNVwaKGgY8IwQ3psg9SsGg+Sq+CNrm0Rf58Urz9hUywk2z70k/u/+5qWO7qUUuHNpYDLCLsOQ/BjYN+ZDATVFaD2hC+xYfwNKQXPPRTnnZ8oQ4AgybkSmrnjC13GCyM=,iv:VWKZITb/6wZe5lkru93AL27Pf/o1OCOPC0neNRRY79U=,tag:W3SBWD4ypcJx3mgRdWSNug==,type:str]
pgp:
- created_at: "2022-08-16T13:01:34Z"
enc: |