mirror of
https://git.feal.no/felixalb/nixos-config.git
synced 2025-01-05 01:57:29 +01:00
Compare commits
2 Commits
6b5c3b6266
...
0920617a72
Author | SHA1 | Date | |
---|---|---|---|
0920617a72 | |||
c6124b551b |
@ -15,7 +15,8 @@
|
|||||||
./services/flame.nix
|
./services/flame.nix
|
||||||
./services/gitea.nix
|
./services/gitea.nix
|
||||||
./services/hedgedoc.nix
|
./services/hedgedoc.nix
|
||||||
./services/matrix-synapse.nix
|
./services/home-assistant.nix
|
||||||
|
./services/matrix
|
||||||
./services/metrics
|
./services/metrics
|
||||||
./services/minecraft.nix
|
./services/minecraft.nix
|
||||||
./services/vaultwarden.nix
|
./services/vaultwarden.nix
|
||||||
|
40
hosts/defiant/services/home-assistant.nix
Normal file
40
hosts/defiant/services/home-assistant.nix
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
{ config, pkgs, lib, ... }:
|
||||||
|
let
|
||||||
|
domain = "ha.home.feal.no";
|
||||||
|
in {
|
||||||
|
# Home-assistant - Smart Home Controller
|
||||||
|
# https://www.home-assistant.io/installation/linux#install-home-assistant-container
|
||||||
|
# The container is supposed to run as "privileged", but I believe this is only to allow device access (dongles/radios/etc.)
|
||||||
|
|
||||||
|
virtualisation.oci-containers.containers = {
|
||||||
|
homeassistant = {
|
||||||
|
image = "ghcr.io/home-assistant/home-assistant:2024.1";
|
||||||
|
extraOptions = [
|
||||||
|
"--network=host"
|
||||||
|
];
|
||||||
|
volumes = [
|
||||||
|
"/tank/services/homeassistant/config:/config"
|
||||||
|
];
|
||||||
|
environment = {
|
||||||
|
TZ = "Europe/Oslo";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Requires addition to configuration.yaml:
|
||||||
|
# http:
|
||||||
|
# server_host: 127.0.0.1
|
||||||
|
# use_x_forwarded_for: true
|
||||||
|
# trusted_proxies: 127.0.0.1
|
||||||
|
services.nginx.virtualHosts."${domain}" = {
|
||||||
|
locations."/" = {
|
||||||
|
proxyPass = "http://127.0.0.1:8123";
|
||||||
|
proxyWebsockets = true;
|
||||||
|
};
|
||||||
|
listen = [
|
||||||
|
{ addr = "192.168.10.175"; port = 80; ssl = false; }
|
||||||
|
{ addr = "192.168.10.175"; port = 8123; ssl = false; }
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
13
hosts/defiant/services/matrix/admin.nix
Normal file
13
hosts/defiant/services/matrix/admin.nix
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
{ config, pkgs, lib, ... }:
|
||||||
|
let
|
||||||
|
domain = "matrix-admin.home.feal.no";
|
||||||
|
backend = "http://127.0.0.1:8008";
|
||||||
|
synapse-admin = pkgs.callPackage ./adminPkg.nix { };
|
||||||
|
in {
|
||||||
|
services.nginx.virtualHosts."${domain}" = {
|
||||||
|
locations."/".root = "${synapse-admin}";
|
||||||
|
locations."/_synapse".proxyPass = "${backend}";
|
||||||
|
locations."/_matrix".proxyPass = "${backend}";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
14
hosts/defiant/services/matrix/adminPkg.nix
Normal file
14
hosts/defiant/services/matrix/adminPkg.nix
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
{ lib, stdenvNoCC, fetchzip }:
|
||||||
|
|
||||||
|
stdenvNoCC.mkDerivation rec {
|
||||||
|
name = "synapse-admin";
|
||||||
|
version = "0.8.7";
|
||||||
|
src = fetchzip {
|
||||||
|
url = "https://github.com/Awesome-Technologies/synapse-admin/releases/download/${version}/synapse-admin-${version}-dirty.tar.gz";
|
||||||
|
hash = "sha256-maaiU9ilmzE5lV9Ofjpli4g08/UcgZ82FaIMRrfOy7s=";
|
||||||
|
};
|
||||||
|
phases = [ "installPhase" ];
|
||||||
|
installPhase = ''
|
||||||
|
cp -r $src $out
|
||||||
|
'';
|
||||||
|
}
|
8
hosts/defiant/services/matrix/default.nix
Normal file
8
hosts/defiant/services/matrix/default.nix
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
{ ... }:
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./synapse.nix
|
||||||
|
./admin.nix
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user