podman permissions + tranga
This commit is contained in:
parent
f0dde95f74
commit
c2c66e5d0b
5
base.nix
5
base.nix
@ -67,7 +67,10 @@
|
||||
};
|
||||
users = {
|
||||
mutableUsers = false;
|
||||
groups.piracy.gid = 985;
|
||||
groups = {
|
||||
users.gid = 100;
|
||||
piracy.gid = 985;
|
||||
};
|
||||
};
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
nix =
|
||||
|
||||
@ -40,6 +40,7 @@
|
||||
qbittorrent.enable = true;
|
||||
sabnzbd.enable = true;
|
||||
unpackerr.enable = true;
|
||||
tranga.enable = true;
|
||||
jellyfin = {
|
||||
enable = true;
|
||||
enableCron = true;
|
||||
|
||||
1
jawz.nix
1
jawz.nix
@ -50,6 +50,7 @@ in
|
||||
};
|
||||
};
|
||||
users.users.jawz = {
|
||||
uid = 1000;
|
||||
linger = true;
|
||||
isNormalUser = true;
|
||||
hashedPasswordFile = config.sops.secrets.jawz-password.path;
|
||||
|
||||
@ -11,6 +11,7 @@ let
|
||||
config.my.servers.flameSecret.enable
|
||||
config.my.servers.metube.enable
|
||||
config.my.servers.go-vod.enable
|
||||
config.my.servers.tranga.enable
|
||||
];
|
||||
in
|
||||
{
|
||||
@ -176,6 +177,7 @@ in
|
||||
enableProxy = lib.mkDefault false;
|
||||
};
|
||||
firefly-iii.enable = lib.mkDefault false;
|
||||
tranga.enable = lib.mkDefault false;
|
||||
};
|
||||
};
|
||||
virtualisation = {
|
||||
|
||||
@ -28,8 +28,8 @@ in
|
||||
environmentFiles = [ config.sops.secrets.flame.path ];
|
||||
environment = {
|
||||
TZ = config.my.timeZone;
|
||||
PUID = "1000";
|
||||
PGID = "100";
|
||||
PUID = toString config.users.users.jawz.uid;
|
||||
PGID = toString config.users.groups.users.gid;
|
||||
};
|
||||
};
|
||||
flame-nsfw = lib.mkIf cfgS.enable {
|
||||
@ -40,8 +40,8 @@ in
|
||||
environmentFiles = [ config.sops.secrets.flame.path ];
|
||||
environment = {
|
||||
TZ = config.my.timeZone;
|
||||
PUID = "1000";
|
||||
PGID = "100";
|
||||
PUID = toString config.users.users.jawz.uid;
|
||||
PGID = toString config.users.groups.users.gid;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@ -13,8 +13,8 @@ in
|
||||
ports = [ "${toString cfg.port}:${toString cfg.port}" ];
|
||||
environment = {
|
||||
TZ = config.my.timeZone;
|
||||
PUID = "1000";
|
||||
PGID = "100";
|
||||
PUID = toString config.users.users.jawz.uid;
|
||||
PGID = toString config.users.groups.piracy.gid;
|
||||
};
|
||||
volumes = [
|
||||
"/srv/pool/multimedia:/data"
|
||||
|
||||
@ -15,8 +15,8 @@ in
|
||||
environment = {
|
||||
TZ = config.my.timeZone;
|
||||
MALOJA_TIMEZONE = "-6";
|
||||
PUID = "1000";
|
||||
PGID = "100";
|
||||
PUID = toString config.users.users.jawz.uid;
|
||||
PGID = toString config.users.groups.users.gid;
|
||||
MALOJA_DATA_DIRECTORY = "/mljdata";
|
||||
MALOJA_SKIP_SETUP = "true";
|
||||
};
|
||||
|
||||
@ -17,6 +17,8 @@ in
|
||||
environment = {
|
||||
TZ = config.my.timeZone;
|
||||
YTDL_OPTIONS = ''{"cookiefile":"/cookies.txt"}'';
|
||||
PUID = toString config.users.users.jawz.uid;
|
||||
PGID = toString config.users.groups.piracy.gid;
|
||||
};
|
||||
};
|
||||
services.nginx.virtualHosts."${cfg.host}" = lib.mkIf cfg.enableProxy (
|
||||
|
||||
@ -14,8 +14,8 @@ in
|
||||
environmentFiles = [ config.sops.secrets.multi-scrobbler.path ];
|
||||
environment = {
|
||||
TZ = config.my.timeZone;
|
||||
PUID = "1000";
|
||||
PGID = "100";
|
||||
PUID = toString config.users.users.jawz.uid;
|
||||
PGID = toString config.users.groups.users.gid;
|
||||
BASE_URL = cfg.url;
|
||||
DEEZER_REDIRECT_URI = "http://${config.my.ips.${cfg.hostName}}:${toString cfg.port}/deezer/callback";
|
||||
MALOJA_URL = config.my.servers.maloja.url;
|
||||
|
||||
33
modules/servers/tranga.nix
Normal file
33
modules/servers/tranga.nix
Normal file
@ -0,0 +1,33 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
let
|
||||
setup = import ./setup.nix { inherit lib config; };
|
||||
cfg = config.my.servers.tranga;
|
||||
in
|
||||
{
|
||||
options.my.servers.tranga = setup.mkOptions "tranga" "tranga" 9555;
|
||||
config = {
|
||||
networking.firewall.allowedTCPPorts = [ cfg.port ];
|
||||
virtualisation.oci-containers.containers = lib.mkIf cfg.enable {
|
||||
tranga-api = {
|
||||
image = "glax/tranga-api:latest";
|
||||
user = "${toString config.users.users.jawz.uid}:${toString config.users.groups.kavita.gid}";
|
||||
environment.TZ = config.my.timeZone;
|
||||
ports = [ "6531:6531" ];
|
||||
volumes = [
|
||||
"/srv/pool/multimedia/media/Library/Manga:/Manga"
|
||||
"${config.my.containerData}/tranga-api:/usr/share/tranga-api"
|
||||
];
|
||||
};
|
||||
tranga-website = {
|
||||
image = "glax/tranga-website:latest";
|
||||
ports = [ "${toString cfg.port}:80" ];
|
||||
dependsOn = [ "tranga-api" ];
|
||||
environment.TZ = config.my.timeZone;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user