This commit is contained in:
mjallen18
2024-07-26 11:04:46 -05:00
parent 1fc8f0217d
commit bf7671871e
12 changed files with 58 additions and 231 deletions

View File

@@ -6,7 +6,7 @@
}:
with lib;
let
cfg = config.nas-apps.puter;
cfg = config.nas-apps.beszel-agent;
in
{
imports = [ ./options.nix ];
@@ -15,12 +15,14 @@ in
virtualisation.oci-containers.containers."${cfg.name}" = {
autoStart = cfg.autoStart;
image = cfg.image;
ports = [ "${cfg.httpPort}:4100" ];
ports = [ "${cfg.port}:45876" ];
volumes = [
"${cfg.configPath}:/etc/puter"
"${cfg.dataPath}:/var/puter"
"${cfg.podmanSock}:/var/run/docker.sock:ro"
];
environment = {
PORT = cfg.port;
KEY = cfg.key;
FILESYSTEM = cfg.fileSystem;
PUID = cfg.puid;
PGID = cfg.pgid;
TZ = cfg.timeZone;

View File

@@ -1,37 +1,42 @@
{ lib, ... }:
with lib;
{
options.nas-apps.puter = {
enable = mkEnableOption "puter docker service";
options.nas-apps.beszel-agent = {
enable = mkEnableOption "beszel agent docker service";
autoStart = mkOption {
type = types.bool;
default = true;
};
httpPort = mkOption {
port = mkOption {
type = types.str;
default = "4100";
default = "45876";
};
name = mkOption {
type = types.str;
default = "puter";
default = "beszel-agent";
};
image = mkOption {
type = types.str;
default = "ghcr.io/heyputer/puter";
default = "henrygd/beszel-agent";
};
configPath = mkOption {
podmanSock = mkOption {
type = types.str;
default = "/media/nas/ssd/ssd_app_data/puter/config";
default = "/var/run/podman/podman.sock";
};
dataPath = mkOption {
key = mkOption {
type = types.str;
default = "/media/nas/ssd/ssd_app_data/puter/data";
default = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBIxbgq3dHkhhmmydqgT1DQCAEEUdZ2V0RjzmxtyJo9w";
};
fileSystem = mkOption {
type = types.str;
default = "/dev/mapper/hdd1";
};
puid = mkOption {
@@ -49,4 +54,4 @@ with lib;
default = "America/Chicago";
};
};
}
}

View File

@@ -6,7 +6,7 @@
}:
with lib;
let
cfg = config.nas-apps.onlyoffice;
cfg = config.nas-apps.beszel;
in
{
imports = [ ./options.nix ];
@@ -15,15 +15,14 @@ in
virtualisation.oci-containers.containers."${cfg.name}" = {
autoStart = cfg.autoStart;
image = cfg.image;
ports = [ "${cfg.port}:80" ];
ports = [ "${cfg.httpPort}:8090" ];
volumes = [
# ...
"${cfg.configPath}:/beszel_data"
];
environment = {
PUID = cfg.puid;
PGID = cfg.pgid;
TZ = cfg.timeZone;
JWT_SECRET = cfg.jwtSecret;
};
};
};

View File

@@ -1,8 +1,8 @@
{ lib, ... }:
with lib;
{
options.nas-apps.homarr = {
enable = mkEnableOption "homarr docker service";
options.nas-apps.beszel = {
enable = mkEnableOption "beszel docker service";
autoStart = mkOption {
type = types.bool;
@@ -11,22 +11,22 @@ with lib;
httpPort = mkOption {
type = types.str;
default = "7575";
default = "8090";
};
name = mkOption {
type = types.str;
default = "homarr";
default = "beszel";
};
image = mkOption {
type = types.str;
default = "ghcr.io/ajnart/homarr";
default = "henrygd/beszel";
};
configPath = mkOption {
type = types.str;
default = "/media/nas/ssd/ssd_app_data/homarr";
default = "/media/nas/ssd/nix-app-data/beszel";
};
puid = mkOption {

View File

@@ -1,17 +0,0 @@
# { config, pkgs, ... }:
# {
# # dashy
# virtualisation.oci-containers.containers."dashy" = {
# autoStart = true;
# image = " lissy93/dashy:latest";
# ports = [ "8888:80" ];
# volumes = [
# "/media/nas/ssd/nix-app-data/dashy/conf.yaml:/app/public/conf.yaml"
# ];
# environment = {
# PUID = "911";
# PGID = "1000";
# TZ = "America/Chicago";
# };
# };
# }

View File

@@ -1,33 +0,0 @@
{
lib,
pkgs,
config,
...
}:
with lib;
let
cfg = config.nas-apps.homarr;
in
{
imports = [ ./options.nix ];
config = mkIf cfg.enable {
virtualisation.oci-containers.containers."${cfg.name}" = {
autoStart = cfg.autoStart;
image = cfg.image;
ports = [ "${cfg.httpPort}:7575" ];
volumes = [
"${cfg.configPath}/configs:/app/data/configs"
"${cfg.configPath}/icons:/app/public/icons"
"${cfg.configPath}/data:/data"
"/var/run/docker.sock:/var/run/docker.sock"
"/var/run/podman/podman.sock:/var/run/podman.sock"
];
environment = {
# PUID = cfg.puid;
# PGID = cfg.pgid;
TZ = cfg.timeZone;
};
};
};
}

View File

@@ -1,31 +0,0 @@
{
lib,
pkgs,
config,
...
}:
with lib;
let
cfg = config.nas-apps.homepage;
in
{
imports = [ ./options.nix ];
config = mkIf cfg.enable {
virtualisation.oci-containers.containers."${cfg.name}" = {
autoStart = cfg.autoStart;
image = cfg.image;
ports = [ "${cfg.httpPort}:3000" ];
volumes = [
"${cfg.configPath}:/app/config"
"/var/run/docker.sock:/var/run/docker.sock"
"/var/run/podman/podman.sock:/var/run/podman.sock"
];
environment = {
# PUID = cfg.puid;
# PGID = cfg.pgid;
TZ = cfg.timeZone;
};
};
};
}

View File

@@ -1,47 +0,0 @@
{ lib, ... }:
with lib;
{
options.nas-apps.homepage = {
enable = mkEnableOption "homepage docker service";
autoStart = mkOption {
type = types.bool;
default = true;
};
httpPort = mkOption {
type = types.str;
default = "3030";
};
name = mkOption {
type = types.str;
default = "homepage";
};
image = mkOption {
type = types.str;
default = " ghcr.io/gethomepage/homepage";
};
configPath = mkOption {
type = types.str;
default = "/media/nas/ssd/ssd_app_data/homepage";
};
puid = mkOption {
type = types.str;
default = "911";
};
pgid = mkOption {
type = types.str;
default = "1000";
};
timeZone = mkOption {
type = types.str;
default = "America/Chicago";
};
};
}

View File

@@ -1,47 +0,0 @@
{ lib, ... }:
with lib;
{
options.nas-apps.onlyoffice = {
enable = mkEnableOption "onlyoffice docker service";
autoStart = mkOption {
type = types.bool;
default = true;
};
port = mkOption {
type = types.str;
default = "9980";
};
name = mkOption {
type = types.str;
default = "onlyoffice";
};
image = mkOption {
type = types.str;
default = "onlyoffice/documentserver";
};
puid = mkOption {
type = types.str;
default = "911";
};
pgid = mkOption {
type = types.str;
default = "1000";
};
timeZone = mkOption {
type = types.str;
default = "America/Chicago";
};
jwtSecret = mkOption {
type = types.str;
default = "BogieDudie1";
};
};
}

View File

@@ -2,11 +2,11 @@
{
imports = [
./samba
./apps/beszel
./apps/beszel-agent
./apps/collabora
./apps/deluge
./apps/discover-wrapped
./apps/homarr
./apps/homepage
./apps/jackett
./apps/jellyfin
./apps/jellyseerr
@@ -14,10 +14,8 @@
./apps/mealie
./apps/nextcloud
./apps/ollama
./apps/onlyoffice
./apps/open-webui
./apps/orca-slicer
./apps/puter
./apps/radarr
./apps/redis
./apps/sabnzbd