OOKNET [ / search the index ]
──────────────────────────────────────────────────────────────────────────────────────
[ KB ] [ GIT ] [ PROJECTS ] [ ABOUT ]
══════════════════════════════════════════════════════════════════════════════════════
OOKNET [ / search ]
────────────────────────────────────────────────
[ KB ] [ GIT ] [ PROJECTS ] [ ABOUT ]
════════════════════════════════════════════════
main @ 36 LINES
[ HISTORY ] [ UP ]
{
config,
lib,
ook,
self,
...
}: let
ookflixLib = import ../lib.nix {inherit self lib config;};
inherit (ookflixLib) mkServiceUser;
inherit (lib) mkIf;
inherit (ook.lib.container) mkContainerEnvironment;
inherit (config.ooknet.server.ookflix.services) qbittorrent gluetun;
in {
config = mkIf gluetun.enable {
users = mkServiceUser gluetun.user.name;
virtualisation.oci-containers.containers = {
# vpn container
gluetun = mkIf gluetun.enable {
image = "qmcgaw/gluetun:latest";
# should make this an option.
environmentFiles = [config.age.secrets.vpn_env.path];
ports = [
"${toString qbittorrent.exposedPort}:${toString qbittorrent.port}"
];
environment = mkContainerEnvironment gluetun.user.id gluetun.group.id;
extraOptions = [
# give network admin permissions
"--cap-add=NET_ADMIN"
# pass the network tunnel device
"--device=/dev/net/tun"
];
};
};
};
}
{
config,
lib,
ook,
self,
...
}: let
ookflixLib = import ../lib.nix {inherit se
lf lib config;};
inherit (ookflixLib) mkServiceUser;
inherit (lib) mkIf;
inherit (ook.lib.container) mkContainerEnv
ironment;
inherit (config.ooknet.server.ookflix.serv
ices) qbittorrent gluetun;
in {
config = mkIf gluetun.enable {
users = mkServiceUser gluetun.user.name;
virtualisation.oci-containers.containers
= {
# vpn container
gluetun = mkIf gluetun.enable {
image = "qmcgaw/gluetun:latest";
# should make this an option.
environmentFiles = [config.age.secre
ts.vpn_env.path];
ports = [
"${toString qbittorrent.exposedPor
t}:${toString qbittorrent.port}"
];
environment = mkContainerEnvironment
gluetun.user.id gluetun.group.id;
extraOptions = [
# give network admin permissions
"--cap-add=NET_ADMIN"
# pass the network tunnel device
"--device=/dev/net/tun"
];
};
};
};
}
────────────────────────────────────────────────────────────────────────────────────── OOKNET
──────────────────────────────────────────────── OOKNET