Merge branch 'main' of ssh://gitea.xeovalyte.dev:2222/xeovalyte/nix
This commit is contained in:
commit
22f69febf9
@ -53,7 +53,12 @@
|
||||
|
||||
# Enable host
|
||||
networking.hosts = {
|
||||
"127.0.0.1" = [ "adguard.timo.bmrs.nl" "git.timo.bmrs.nl" "auth.timo.bmrs.nl" "ldap.timo.bmrs.nl" "dozzle.timo.bmrs.nl" "home.timo.bmrs.nl" "immich.timo.bmrs.nl" "paperless.timo.bmrs.nl" "search.timo.bmrs.nl" ];
|
||||
"127.0.0.1" = [
|
||||
"tbmrs.nl"
|
||||
"auth.tbmrs.nl"
|
||||
"forgejo.tbmrs.nl"
|
||||
"immich.tbmrs.nl"
|
||||
];
|
||||
};
|
||||
|
||||
# Bootloader.
|
||||
@ -69,7 +74,7 @@
|
||||
|
||||
networking.firewall = {
|
||||
enable = true;
|
||||
allowedTCPPorts = [ 80 443 53 ];
|
||||
allowedTCPPorts = [ 22 80 443 53 ];
|
||||
allowedUDPPorts = [ 80 443 53 ];
|
||||
};
|
||||
|
||||
|
@ -25,6 +25,7 @@
|
||||
applications.yazi.enable = true;
|
||||
applications.zellij.enable = true;
|
||||
applications.wezterm.enable = true;
|
||||
applications.nushell.enable = true;
|
||||
|
||||
services.nextcloud-sync.enable = true;
|
||||
|
||||
|
@ -51,6 +51,8 @@
|
||||
vaultwarden.enable = true;
|
||||
paperless-ngx.enable = true;
|
||||
beszel.enable = true;
|
||||
storage.enable = true;
|
||||
homeassistant.enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
|
37
modules/home/applications/nushell.nix
Normal file
37
modules/home/applications/nushell.nix
Normal file
@ -0,0 +1,37 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.settings.applications.nushell;
|
||||
in {
|
||||
options = {
|
||||
settings.applications.nushell.enable = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
description = ''
|
||||
Enable nushell shell
|
||||
'';
|
||||
default = false;
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
home.packages = with pkgs; [
|
||||
eza
|
||||
bat
|
||||
];
|
||||
|
||||
programs.bash = {
|
||||
enable = false;
|
||||
};
|
||||
|
||||
programs.nushell = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
programs.starship = {
|
||||
enable = true;
|
||||
enableNushellIntegration = true;
|
||||
};
|
||||
};
|
||||
}
|
@ -71,6 +71,11 @@ in {
|
||||
handle @pingvin-share {
|
||||
reverse_proxy pingvin-share:3000
|
||||
}
|
||||
|
||||
@dufs host files.tbmrs.nl
|
||||
handle @dufs {
|
||||
reverse_proxy dufs:5000
|
||||
}
|
||||
}
|
||||
|
||||
*.local.tbmrs.nl {
|
||||
@ -93,6 +98,16 @@ in {
|
||||
handle @beszel {
|
||||
reverse_proxy beszel:8090
|
||||
}
|
||||
|
||||
@syncthing host syncthing.local.tbmrs.nl
|
||||
handle @syncthing {
|
||||
reverse_proxy syncthing:8384
|
||||
}
|
||||
|
||||
@homeassistant host home-assistant.local.tbmrs.nl
|
||||
handle @homeassistant {
|
||||
reverse_proxy homeassistant:8123
|
||||
}
|
||||
}
|
||||
'';
|
||||
};
|
||||
|
31
modules/home/containers/homeassistant.nix
Normal file
31
modules/home/containers/homeassistant.nix
Normal file
@ -0,0 +1,31 @@
|
||||
{ config, lib, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.settings.containers.homeassistant;
|
||||
in {
|
||||
options = {
|
||||
settings.containers.homeassistant.enable = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Enable storage configuration
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
services.podman.containers.homeassistant = {
|
||||
image = "ghcr.io/home-assistant/home-assistant:stable";
|
||||
network = "proxy";
|
||||
volumes = [
|
||||
"%h/containers/homeassistant/config:/config"
|
||||
];
|
||||
userNS = "keep-id";
|
||||
environment = {
|
||||
TZ = "Europe/Amsterdam";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
@ -26,6 +26,7 @@ in {
|
||||
"%h/containers/homepage/config/docker.yaml:/app/config/docker.yaml"
|
||||
"/run/user/1000/podman/podman.sock:/var/run/podman.sock:ro"
|
||||
];
|
||||
userNS = "keep-id";
|
||||
environment = {
|
||||
HOMEPAGE_ALLOWED_HOSTS = "home.tbmrs.nl";
|
||||
};
|
||||
|
47
modules/home/containers/storage.nix
Normal file
47
modules/home/containers/storage.nix
Normal file
@ -0,0 +1,47 @@
|
||||
{ config, lib, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.settings.containers.storage;
|
||||
in {
|
||||
options = {
|
||||
settings.containers.storage.enable = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Enable storage configuration
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
services.podman.containers.dufs = {
|
||||
image = "sigoden/dufs";
|
||||
network = "proxy";
|
||||
volumes = [
|
||||
"%h/storage:/data"
|
||||
];
|
||||
userNS = "keep-id";
|
||||
environment = {
|
||||
DUFS_SERVE_PATH = "data";
|
||||
DUFS_AUTH = "@/tboomers/public:ro|tboomers:password@/tboomers:rw";
|
||||
DUFS_ALLOW_ALL = true;
|
||||
};
|
||||
};
|
||||
|
||||
services.podman.containers.syncthing = {
|
||||
image = "syncthing/syncthing";
|
||||
network = "proxy";
|
||||
volumes = [
|
||||
"%h/storage:/storage"
|
||||
"%h/containers/syncthing/data:/var/syncthing"
|
||||
];
|
||||
userNS = "keep-id";
|
||||
ports = [
|
||||
"22000:22000/tcp"
|
||||
"22000:22000/udp"
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
@ -14,6 +14,7 @@
|
||||
./applications/yazi.nix
|
||||
./applications/zellij.nix
|
||||
./applications/wezterm.nix
|
||||
./applications/nushell.nix
|
||||
|
||||
./services/nextcloud.nix
|
||||
./services/podman.nix
|
||||
@ -37,5 +38,7 @@
|
||||
./containers/vaultwarden.nix
|
||||
./containers/paperless-ngx.nix
|
||||
./containers/beszel.nix
|
||||
./containers/storage.nix
|
||||
./containers/homeassistant.nix
|
||||
];
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user