archive
This commit is contained in:
parent
ced68275e7
commit
a30ff16bc2
4 changed files with 113 additions and 68 deletions
|
|
@ -64,8 +64,8 @@ in
|
||||||
}
|
}
|
||||||
$env.EDITOR = "hx"
|
$env.EDITOR = "hx"
|
||||||
$env.VISUAL = "hx"
|
$env.VISUAL = "hx"
|
||||||
alias no = open
|
# alias no = open
|
||||||
alias open = ^open
|
# alias open = ^open
|
||||||
alias l = ls -al
|
alias l = ls -al
|
||||||
alias ll = ls -l
|
alias ll = ls -l
|
||||||
alias ga = git add
|
alias ga = git add
|
||||||
|
|
|
||||||
|
|
@ -29,25 +29,25 @@ in
|
||||||
fsType = "zfs";
|
fsType = "zfs";
|
||||||
};
|
};
|
||||||
# plex
|
# plex
|
||||||
networking.firewall = {
|
# networking.firewall = {
|
||||||
allowedTCPPorts = [ 32400 3005 8324 32469 ];
|
# allowedTCPPorts = [ 32400 3005 8324 32469 ];
|
||||||
allowedUDPPorts = [ 1900 5353 32410 32412 32413 32414 ];
|
# allowedUDPPorts = [ 1900 5353 32410 32412 32413 32414 ];
|
||||||
};
|
# };
|
||||||
virtualisation.oci-containers.containers.plex = {
|
# virtualisation.oci-containers.containers.plex = {
|
||||||
image = "docker.io/plexinc/pms-docker";
|
# image = "docker.io/plexinc/pms-docker";
|
||||||
extraOptions = [ "--network=host" ];
|
# extraOptions = [ "--network=host" ];
|
||||||
environment = {
|
# environment = {
|
||||||
TZ = "Europe/Berlin";
|
# TZ = "Europe/Berlin";
|
||||||
PLEX_UID = "1000";
|
# PLEX_UID = "1000";
|
||||||
PLEX_GID = "100";
|
# PLEX_GID = "100";
|
||||||
};
|
# };
|
||||||
|
|
||||||
volumes = [
|
# volumes = [
|
||||||
"/data/media:/data/media"
|
# "/data/media:/data/media"
|
||||||
"plex-transcode:/transcode"
|
# "plex-transcode:/transcode"
|
||||||
"plex-db:/config"
|
# "plex-db:/config"
|
||||||
];
|
# ];
|
||||||
};
|
# };
|
||||||
# postgres
|
# postgres
|
||||||
ragon.agenix.secrets.ds9PostgresEnv = { };
|
ragon.agenix.secrets.ds9PostgresEnv = { };
|
||||||
systemd.services."podman-db-network" = {
|
systemd.services."podman-db-network" = {
|
||||||
|
|
@ -125,32 +125,32 @@ in
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
# navidrome
|
# navidrome
|
||||||
virtualisation.oci-containers.containers.lms = {
|
# virtualisation.oci-containers.containers.lms = {
|
||||||
# don't tell mom
|
# # don't tell mom
|
||||||
# user = "1000:100";
|
# # user = "1000:100";
|
||||||
image = "epoupon/lms:latest";
|
# image = "epoupon/lms:latest";
|
||||||
cmd = [ "/lms.conf" ];
|
# cmd = [ "/lms.conf" ];
|
||||||
extraOptions = [ "--network=podman" ];
|
# extraOptions = [ "--network=podman" ];
|
||||||
volumes =
|
# volumes =
|
||||||
let
|
# let
|
||||||
lmsConfig = pkgs.writeText "lms-config" ''
|
# lmsConfig = pkgs.writeText "lms-config" ''
|
||||||
original-ip-header = "X-Forwarded-For";
|
# original-ip-header = "X-Forwarded-For";
|
||||||
behind-reverse-proxy = true;
|
# behind-reverse-proxy = true;
|
||||||
trusted-proxies =
|
# trusted-proxies =
|
||||||
(
|
# (
|
||||||
"10.88.0.1"
|
# "10.88.0.1"
|
||||||
);
|
# );
|
||||||
authentication-backend = "http-headers";
|
# authentication-backend = "http-headers";
|
||||||
http-headers-login-field = "X-Webauth-User";
|
# http-headers-login-field = "X-Webauth-User";
|
||||||
'';
|
# '';
|
||||||
in
|
# in
|
||||||
[
|
# [
|
||||||
"lightweight-music-server-data:/var/lms:rw"
|
# "lightweight-music-server-data:/var/lms:rw"
|
||||||
"${lmsConfig}:/lms.conf"
|
# "${lmsConfig}:/lms.conf"
|
||||||
"/data/media/beets/music:/music:ro"
|
# "/data/media/beets/music:/music:ro"
|
||||||
];
|
# ];
|
||||||
environment = { };
|
# environment = { };
|
||||||
};
|
# };
|
||||||
|
|
||||||
# changedetection
|
# changedetection
|
||||||
systemd.services."podman-cd-network" = {
|
systemd.services."podman-cd-network" = {
|
||||||
|
|
@ -196,6 +196,60 @@ in
|
||||||
"jellyfin-cache:/cache"
|
"jellyfin-cache:/cache"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
# archivebox
|
||||||
|
systemd.services."podman-archivebox-network" = {
|
||||||
|
script = ''
|
||||||
|
${pkgs.podman}/bin/podman network create archivebox-net --internal --ipv6 --ignore
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
virtualisation.oci-containers.containers.archivebox = {
|
||||||
|
image = "archivebox/archivebox:latest";
|
||||||
|
environment = {
|
||||||
|
ALLOWED_HOSTS = "*"; # set this to the hostname(s) you're going to serve the site from!
|
||||||
|
CSRF_TRUSTED_ORIGINS = "https://archive.hailsatan.eu"; # you MUST set this to the server's URL for admin login and the REST API to work
|
||||||
|
PUBLIC_INDEX = "True"; # set to False to prevent anonymous users from viewing snapshot list
|
||||||
|
PUBLIC_SNAPSHOTS = "True"; # set to False to prevent anonymous users from viewing snapshot content
|
||||||
|
PUBLIC_ADD_VIEW = "False"; # set to True to allow anonymous users to submit new URLs to archive
|
||||||
|
SEARCH_BACKEND_ENGINE = "sonic"; # tells ArchiveBox to use sonic container below for fast full-text search
|
||||||
|
SEARCH_BACKEND_HOST_NAME = "archivebox_sonic";
|
||||||
|
SEARCH_BACKEND_PASSWORD = "SomeSecretPassword";
|
||||||
|
};
|
||||||
|
extraOptions = [ "--network=archivebox-net" "--network=podman"];
|
||||||
|
volumes = [
|
||||||
|
"/data/media/archivebox:/data"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
virtualisation.oci-containers.containers.archivebox_scheduler = {
|
||||||
|
image = "archivebox/archivebox:latest";
|
||||||
|
cmd = ["schedule" "--foreground" "--update" "--every=day"];
|
||||||
|
environment = {
|
||||||
|
TIMEOUT = "120";
|
||||||
|
ALLOWED_HOSTS = "*"; # set this to the hostname(s) you're going to serve the site from!
|
||||||
|
CSRF_TRUSTED_ORIGINS = "https://archive.hailsatan.eu"; # you MUST set this to the server's URL for admin login and the REST API to work
|
||||||
|
PUBLIC_INDEX = "True"; # set to False to prevent anonymous users from viewing snapshot list
|
||||||
|
PUBLIC_SNAPSHOTS = "True"; # set to False to prevent anonymous users from viewing snapshot content
|
||||||
|
PUBLIC_ADD_VIEW = "False"; # set to True to allow anonymous users to submit new URLs to archive
|
||||||
|
SEARCH_BACKEND_ENGINE = "sonic"; # tells ArchiveBox to use sonic container below for fast full-text search
|
||||||
|
SEARCH_BACKEND_HOST_NAME = "archivebox_sonic";
|
||||||
|
SEARCH_BACKEND_PASSWORD = "SomeSecretPassword";
|
||||||
|
};
|
||||||
|
extraOptions = [ "--network=archivebox-net" "--network=podman"];
|
||||||
|
volumes = [
|
||||||
|
"/data/media/archivebox:/data"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
virtualisation.oci-containers.containers.archivebox_sonic = {
|
||||||
|
image = "archivebox/sonic:latest";
|
||||||
|
environment = {
|
||||||
|
SEARCH_BACKEND_PASSWORD = "SomeSecretPassword";
|
||||||
|
};
|
||||||
|
extraOptions = [ "--network=archivebox-net"];
|
||||||
|
volumes = [
|
||||||
|
"archivebox-sonic:/data"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -156,28 +156,6 @@ in
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@lms host lms.hailsatan.eu
|
|
||||||
handle @lms {
|
|
||||||
forward_auth unix//run/tailscale-nginx-auth/tailscale-nginx-auth.sock {
|
|
||||||
uri /auth
|
|
||||||
header_up Remote-Addr {remote_host}
|
|
||||||
header_up Remote-Port {remote_port}
|
|
||||||
header_up Original-URI {uri}
|
|
||||||
copy_headers {
|
|
||||||
Tailscale-User>X-Webauth-User
|
|
||||||
Tailscale-Name>X-Webauth-Name
|
|
||||||
Tailscale-Login>X-Webauth-Login
|
|
||||||
Tailscale-Tailnet>X-Webauth-Tailnet
|
|
||||||
Tailscale-Profile-Picture>X-Webauth-Profile-Picture
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
reverse_proxy http://lms:5082 {
|
|
||||||
transport http {
|
|
||||||
resolvers 10.88.0.1 # podman dns
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@cd host cd.hailsatan.eu
|
@cd host cd.hailsatan.eu
|
||||||
handle @cd {
|
handle @cd {
|
||||||
reverse_proxy http://changedetection:5000 {
|
reverse_proxy http://changedetection:5000 {
|
||||||
|
|
@ -214,6 +192,14 @@ in
|
||||||
handle @bzzt {
|
handle @bzzt {
|
||||||
reverse_proxy http://127.0.0.1:5002
|
reverse_proxy http://127.0.0.1:5002
|
||||||
}
|
}
|
||||||
|
@archivebox host archivebox.hailsatan.eu
|
||||||
|
handle @archivebox {
|
||||||
|
reverse_proxy http://archivebox:8000 {
|
||||||
|
transport http {
|
||||||
|
resolvers 10.88.0.1 # podman dns
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@jellyfin host j.hailsatan.eu
|
@jellyfin host j.hailsatan.eu
|
||||||
handle @jellyfin {
|
handle @jellyfin {
|
||||||
reverse_proxy http://jellyfin:8096 {
|
reverse_proxy http://jellyfin:8096 {
|
||||||
|
|
|
||||||
|
|
@ -21,6 +21,11 @@
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
users.extraGroups.plugdev = { };
|
||||||
|
services.udev.packages = [ pkgs.openocd pkgs.probe-rs-tools ];
|
||||||
|
|
||||||
|
|
||||||
hardware.keyboard.zsa.enable = true;
|
hardware.keyboard.zsa.enable = true;
|
||||||
|
|
||||||
xdg.portal = {
|
xdg.portal = {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue