finally fixing the ups, plus tons of formatting
This commit is contained in:
@@ -1,11 +1,4 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
inputs,
|
||||
globals,
|
||||
...
|
||||
}:
|
||||
{ lib, pkgs, ... }:
|
||||
let
|
||||
timezone = "America/Chicago";
|
||||
in
|
||||
@@ -99,7 +92,10 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [ pinentry-curses ];
|
||||
environment.systemPackages = with pkgs; [
|
||||
nixd
|
||||
pinentry-curses
|
||||
];
|
||||
|
||||
# users.mutableUsers = lib.mkDefault false;
|
||||
|
||||
|
||||
@@ -43,7 +43,10 @@ in
|
||||
|
||||
apps.discover-wrapped.enable = lib.mkDefault false;
|
||||
|
||||
nix.settings.trusted-users = lib.mkDefault [ "root" user ];
|
||||
nix.settings.trusted-users = lib.mkDefault [
|
||||
"root"
|
||||
user
|
||||
];
|
||||
|
||||
services = {
|
||||
# Enable Desktop Environment.
|
||||
@@ -132,7 +135,10 @@ in
|
||||
user.services = {
|
||||
rclone-home-proton = {
|
||||
enable = lib.mkDefault true;
|
||||
path = [ pkgs.bash pkgs.rclone ];
|
||||
path = [
|
||||
pkgs.bash
|
||||
pkgs.rclone
|
||||
];
|
||||
script = ''
|
||||
rclone sync /home/matt proton-drive:backup-nix --exclude '/home/matt/Games/**' --exclude '/home/matt/1TB/**' --exclude '/home/matt/Downloads/**'
|
||||
'';
|
||||
@@ -140,7 +146,11 @@ in
|
||||
|
||||
rsync-home = {
|
||||
enable = lib.mkDefault true;
|
||||
path = [ pkgs.bash pkgs.rsync pkgs.openssh ];
|
||||
path = [
|
||||
pkgs.bash
|
||||
pkgs.rsync
|
||||
pkgs.openssh
|
||||
];
|
||||
script = ''
|
||||
rsync -rtpogvPlHzs --ignore-existing --exclude={'/home/matt/Games', '/home/matt/1TB', '/home/matt/Downloads/*', '/home/matt/.cache'} -e ssh /home/matt admin@10.0.1.18:/media/nas/main/backup/desktop-nix/home
|
||||
'';
|
||||
@@ -207,9 +217,7 @@ in
|
||||
wineWowPackages.waylandFull
|
||||
];
|
||||
|
||||
sessionVariables = lib.mkDefault {
|
||||
STEAM_FORCE_DESKTOPUI_SCALING = "1";
|
||||
};
|
||||
sessionVariables = lib.mkDefault { STEAM_FORCE_DESKTOPUI_SCALING = "1"; };
|
||||
|
||||
};
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ pkgs, ... }:
|
||||
{ ... }:
|
||||
{
|
||||
specialisation.cosmic.configuration = {
|
||||
services = {
|
||||
@@ -10,4 +10,4 @@
|
||||
desktopManager.plasma6.enable = false;
|
||||
};
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,10 +1,4 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
outputs,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
{ ... }:
|
||||
{
|
||||
fileSystems."/media/nas/backup" = {
|
||||
device = "//10.0.1.18/Backup";
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
specialisation.gnome.configuration = {
|
||||
|
||||
home-manager.users.matt = import ./home.nix;
|
||||
|
||||
|
||||
services = {
|
||||
xserver = {
|
||||
desktopManager.gnome.enable = true;
|
||||
@@ -37,4 +37,4 @@
|
||||
|
||||
# xdg.portal.extraPortals = [ pkgs.xdg-desktop-portal-gtk ];
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,4 +29,4 @@
|
||||
"org/gtk/settings/file-chooser".clock-format = "12h";
|
||||
};
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,11 +4,9 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
modulesPath,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ pkgs, lib, ... }:
|
||||
{ pkgs, ... }:
|
||||
let
|
||||
shellAliases = {
|
||||
ll = "ls -alh";
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
truecolor = true;
|
||||
force_tty = false;
|
||||
presets = "cpu:1:default,proc:0:default cpu:0:default,mem:0:default,net:0:default cpu:0:block,net:0:tty";
|
||||
vim_keys = true;
|
||||
vim_keys = true;
|
||||
rounded_corners = true;
|
||||
graph_symbol = "braille";
|
||||
graph_symbol_cpu = "default";
|
||||
@@ -68,4 +68,4 @@
|
||||
log_level = "WARNING";
|
||||
};
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -35,8 +35,8 @@
|
||||
"$mod, E, exec, nautilus"
|
||||
"$mod, V, togglefloating, "
|
||||
"$mod, D, exec, nwg-drawer -fm nautilus -term kitty"
|
||||
"$mod, P, pseudo, "# dwindle
|
||||
"$mod, S, togglesplit, "# dwindle
|
||||
"$mod, P, pseudo, " # dwindle
|
||||
"$mod, S, togglesplit, " # dwindle
|
||||
"$mod SHIFT, Q, exec, hyprlock"
|
||||
", PRINT, exec, hyprshot -m region --clipboard-only"
|
||||
"$mod,F,exec,hyprctl dispatch fullscreen active"
|
||||
@@ -93,7 +93,7 @@
|
||||
", mouse:274, movewindow"
|
||||
];
|
||||
|
||||
bindel =[
|
||||
bindel = [
|
||||
", XF86AudioRaiseVolume, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%+"
|
||||
", XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-"
|
||||
];
|
||||
@@ -123,11 +123,11 @@
|
||||
decoration = {
|
||||
rounding = 10;
|
||||
blur = {
|
||||
enabled = true;
|
||||
size = 2;
|
||||
passes = 2;
|
||||
new_optimizations = true;
|
||||
xray = false;
|
||||
enabled = true;
|
||||
size = 2;
|
||||
passes = 2;
|
||||
new_optimizations = true;
|
||||
xray = false;
|
||||
};
|
||||
drop_shadow = "yes";
|
||||
shadow_range = 4;
|
||||
@@ -154,16 +154,16 @@
|
||||
};
|
||||
|
||||
dwindle = {
|
||||
pseudotile = "yes";
|
||||
preserve_split = "yes";
|
||||
pseudotile = "yes";
|
||||
preserve_split = "yes";
|
||||
};
|
||||
|
||||
gestures = {
|
||||
workspace_swipe = "off";
|
||||
workspace_swipe = "off";
|
||||
};
|
||||
|
||||
misc = {
|
||||
force_default_wallpaper = 0;
|
||||
force_default_wallpaper = 0;
|
||||
};
|
||||
|
||||
workspace = [
|
||||
@@ -203,7 +203,8 @@
|
||||
"nodim, class:Remote Desktop Connection"
|
||||
"nomaxsize, class:Remote Desktop Connection"
|
||||
"minsize 3840 2160, class:Remote Desktop Connection"
|
||||
];
|
||||
];
|
||||
|
||||
windowrulev2 = [
|
||||
"float, class:Vmware-view,title:VMware Horizon Client"
|
||||
"size 3840 2160, class:Remote Desktop Connection"
|
||||
@@ -250,7 +251,7 @@
|
||||
follow_mouse = 1;
|
||||
|
||||
touchpad = {
|
||||
natural_scroll = "no";
|
||||
natural_scroll = "no";
|
||||
};
|
||||
|
||||
sensitivity = 0; # -1.0 - 1.0, 0 means no modification.
|
||||
@@ -268,4 +269,4 @@
|
||||
exec-once = [silent] steam
|
||||
'';
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,4 +18,4 @@
|
||||
borderColor = "#8aadf4";
|
||||
progressColor = "over #363a4f";
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
{
|
||||
# https://github.com/Alexays/Waybar/wiki/Module:-Hyprland
|
||||
|
||||
|
||||
programs.waybar = {
|
||||
enable = true;
|
||||
enable = true;
|
||||
systemd.enable = true;
|
||||
settings = {
|
||||
mainBar = {
|
||||
@@ -13,94 +13,94 @@
|
||||
passthrough = false;
|
||||
gtk-layer-shell = true;
|
||||
height = 0;
|
||||
modules-left = [
|
||||
"hyprland/workspaces"
|
||||
];
|
||||
modules-left = [ "hyprland/workspaces" ];
|
||||
|
||||
modules-center = [
|
||||
"hyprland/window"
|
||||
];
|
||||
modules-center = [ "hyprland/window" ];
|
||||
|
||||
modules-right = [
|
||||
"tray"
|
||||
"custom/updates"
|
||||
"keyboard-state#capslock"
|
||||
"keyboard-state#numlock"
|
||||
"pulseaudio"
|
||||
"pulseaudio#microphone"
|
||||
"network"
|
||||
"clock"
|
||||
"custom/weather"
|
||||
"tray"
|
||||
"custom/updates"
|
||||
"keyboard-state#capslock"
|
||||
"keyboard-state#numlock"
|
||||
"pulseaudio"
|
||||
"pulseaudio#microphone"
|
||||
"network"
|
||||
"clock"
|
||||
"custom/weather"
|
||||
];
|
||||
|
||||
"hyprland/window" = {
|
||||
format = {};
|
||||
format = { };
|
||||
};
|
||||
|
||||
"hyprland/workspaces" = {
|
||||
disable-scroll = true;
|
||||
all-outputs = true;
|
||||
on-click = "activate";
|
||||
persistent_workspaces = {
|
||||
"1" = [];
|
||||
};
|
||||
disable-scroll = true;
|
||||
all-outputs = true;
|
||||
on-click = "activate";
|
||||
persistent_workspaces = {
|
||||
"1" = [ ];
|
||||
};
|
||||
};
|
||||
|
||||
"custom/weather" = {
|
||||
tooltip = true;
|
||||
format = {};
|
||||
interval = 30;
|
||||
exec = "sudo waybar-weather";
|
||||
return-type = "json";
|
||||
tooltip = true;
|
||||
format = { };
|
||||
interval = 30;
|
||||
exec = "sudo waybar-weather";
|
||||
return-type = "json";
|
||||
};
|
||||
|
||||
"custom/updates" = {
|
||||
tooltip = true;
|
||||
format = {};
|
||||
interval = 60;
|
||||
exec = "sudo waybar-updates";
|
||||
return-type = "json";
|
||||
tooltip = true;
|
||||
format = { };
|
||||
interval = 60;
|
||||
exec = "sudo waybar-updates";
|
||||
return-type = "json";
|
||||
};
|
||||
|
||||
tray = {
|
||||
icon-size = 16;
|
||||
spacing = 10;
|
||||
icon-size = 16;
|
||||
spacing = 10;
|
||||
};
|
||||
|
||||
clock = {
|
||||
format = "{:%I:%M %p}";
|
||||
tooltip-format = "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>";
|
||||
format = "{:%I:%M %p}";
|
||||
tooltip-format = "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>";
|
||||
};
|
||||
|
||||
pulseaudio = {
|
||||
format = "{icon} {volume}%";
|
||||
tooltip = false;
|
||||
format-muted = " Muted";
|
||||
on-click = "pamixer -t";
|
||||
on-click-right = "pavucontrol -t 1";
|
||||
on-scroll-up = "pamixer -i 5";
|
||||
on-scroll-down = "pamixer -d 5";
|
||||
scroll-step = 5;
|
||||
format-icons = {
|
||||
headphone = "";
|
||||
hands-free = "";
|
||||
headset = "";
|
||||
phone = "";
|
||||
portable = "";
|
||||
car = "";
|
||||
default = ["" "" ""];
|
||||
};
|
||||
format = "{icon} {volume}%";
|
||||
tooltip = false;
|
||||
format-muted = " Muted";
|
||||
on-click = "pamixer -t";
|
||||
on-click-right = "pavucontrol -t 1";
|
||||
on-scroll-up = "pamixer -i 5";
|
||||
on-scroll-down = "pamixer -d 5";
|
||||
scroll-step = 5;
|
||||
format-icons = {
|
||||
headphone = "";
|
||||
hands-free = "";
|
||||
headset = "";
|
||||
phone = "";
|
||||
portable = "";
|
||||
car = "";
|
||||
default = [
|
||||
""
|
||||
""
|
||||
""
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
"pulseaudio#microphone" = {
|
||||
format = "{format_source}";
|
||||
format-source = "🎙{volume}%";
|
||||
format-source-muted = "🎙Muted";
|
||||
on-click = "pamixer --default-source -t";
|
||||
on-click-right = "pavucontrol -t 2";
|
||||
on-scroll-up = "pamixer --default-source -i 5";
|
||||
on-scroll-down = "pamixer --default-source -d 5";
|
||||
scroll-step = 5;
|
||||
format = "{format_source}";
|
||||
format-source = "🎙{volume}%";
|
||||
format-source-muted = "🎙Muted";
|
||||
on-click = "pamixer --default-source -t";
|
||||
on-click-right = "pavucontrol -t 2";
|
||||
on-scroll-up = "pamixer --default-source -i 5";
|
||||
on-scroll-down = "pamixer --default-source -d 5";
|
||||
scroll-step = 5;
|
||||
};
|
||||
|
||||
network = {
|
||||
@@ -299,4 +299,4 @@
|
||||
}
|
||||
'';
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -142,4 +142,4 @@
|
||||
}
|
||||
'';
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
{
|
||||
...
|
||||
}:
|
||||
{ ... }:
|
||||
{
|
||||
sops.defaultSopsFile = ../../secrets/secrets.yaml;
|
||||
sops.age.sshKeyPaths = [ "/etc/ssh/ssh_host_ed25519_key" ];
|
||||
|
||||
sops.secrets."desktop/matt_password" = {};
|
||||
sops.secrets."desktop/matt_password" = { };
|
||||
sops.secrets."desktop/matt_password".neededForUsers = true;
|
||||
|
||||
sops.secrets."wifi" = {};
|
||||
}
|
||||
sops.secrets."wifi" = { };
|
||||
}
|
||||
|
||||
@@ -2,13 +2,7 @@
|
||||
# your system. Help is available in the configuration.nix(5) man page, on
|
||||
# https://search.nixos.org/options and in the NixOS manual (`nixos-help`).
|
||||
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
imports = [
|
||||
# Include the results of the hardware scan.
|
||||
@@ -91,7 +85,7 @@
|
||||
wget
|
||||
];
|
||||
|
||||
environment.sessionVariables = rec {
|
||||
environment.sessionVariables = {
|
||||
DBX_CONTAINER_MANAGER = "podman";
|
||||
};
|
||||
|
||||
|
||||
@@ -1,13 +1,7 @@
|
||||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
modulesPath,
|
||||
...
|
||||
}:
|
||||
{ lib, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||
|
||||
@@ -1,9 +1,4 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
inputs,
|
||||
...
|
||||
}:
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
imports = [ ./trampoline-apps ];
|
||||
|
||||
@@ -1,17 +1,10 @@
|
||||
{
|
||||
inputs,
|
||||
outputs,
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
{ config, ... }:
|
||||
{
|
||||
nas-apps = {
|
||||
beszel.enable = true;
|
||||
|
||||
beszel-agent.enable = true;
|
||||
|
||||
|
||||
collabora = {
|
||||
enable = true;
|
||||
environmentFiles = [ config.sops.secrets."jallen-nas/collabora".path ];
|
||||
@@ -27,10 +20,10 @@
|
||||
|
||||
mariadb = {
|
||||
enable = true;
|
||||
environmentFiles = [
|
||||
environmentFiles = [
|
||||
config.sops.secrets."jallen-nas/mariadb/db_pass".path
|
||||
config.sops.secrets."jallen-nas/mariadb/root_pass".path
|
||||
];
|
||||
];
|
||||
};
|
||||
|
||||
mealie = {
|
||||
|
||||
@@ -1,11 +1,4 @@
|
||||
{
|
||||
inputs,
|
||||
outputs,
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
{ pkgs, ... }:
|
||||
let
|
||||
configLimit = 5;
|
||||
kernel = pkgs.linuxPackages_latest;
|
||||
|
||||
@@ -3,10 +3,8 @@
|
||||
# https://search.nixos.org/options and in the NixOS manual (`nixos-help`).
|
||||
|
||||
{
|
||||
inputs,
|
||||
outputs,
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
@@ -62,10 +60,6 @@ in
|
||||
|
||||
# Configure environment
|
||||
environment = {
|
||||
# etc."nut/upsd.conf".source = /home/matt/upsd.conf;
|
||||
# etc."nut/upsd.users".source = /home/matt/upsd.users;
|
||||
# etc."nut/upsmon.conf".source = /home/matt/upsmon.conf;
|
||||
|
||||
etc.crypttab.text = ''
|
||||
ssd1 UUID=eff4b19c-aba7-41ab-b452-a8c6654d8754 none tpm2-device=auto
|
||||
ssd2 UUID=c8640e19-6cd9-49d0-a355-bac09d17ea0d none tpm2-device=auto
|
||||
@@ -79,7 +73,7 @@ in
|
||||
# List packages installed in system profile. To search, run:
|
||||
# $ nix search wget
|
||||
|
||||
sessionVariables = rec {
|
||||
sessionVariables = {
|
||||
CACHIX_AGENT_TOKEN = "eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiJlY2RjYjJiNi05YWQ4LTRiYmMtYWEwYS1mNGU5Yzk1ODM2OTMiLCJzY29wZXMiOiJhZ2VudCJ9.8SENqsNZ-UIFV4atm-cZnMT6LR08Iz_raAZi5QVsppo";
|
||||
};
|
||||
|
||||
|
||||
@@ -1,159 +1,102 @@
|
||||
{
|
||||
inputs,
|
||||
config,
|
||||
lib,
|
||||
outputs,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
{ ... }:
|
||||
let
|
||||
defaultOptions = [
|
||||
"compress=zstd"
|
||||
];
|
||||
defaultOptions = [ "compress=zstd" ];
|
||||
in
|
||||
{
|
||||
fileSystems."/media/nas/ssd/nix-app-data" = {
|
||||
device = "/dev/disk/by-uuid/09ac8b6b-e553-4cd8-ae62-8d8c17fe8b0c";
|
||||
fsType = "btrfs";
|
||||
options = [
|
||||
"subvol=nix-app-data"
|
||||
]
|
||||
++ defaultOptions;
|
||||
options = [ "subvol=nix-app-data" ] ++ defaultOptions;
|
||||
};
|
||||
|
||||
fileSystems."/media/nas/ssd/ssd_app_data" = {
|
||||
device = "/dev/disk/by-uuid/09ac8b6b-e553-4cd8-ae62-8d8c17fe8b0c";
|
||||
fsType = "btrfs";
|
||||
options = [
|
||||
"subvol=ssd_app_data"
|
||||
]
|
||||
++ defaultOptions;
|
||||
options = [ "subvol=ssd_app_data" ] ++ defaultOptions;
|
||||
};
|
||||
|
||||
fileSystems."/media/nas/ssd/mariadb" = {
|
||||
device = "/dev/disk/by-uuid/09ac8b6b-e553-4cd8-ae62-8d8c17fe8b0c";
|
||||
fsType = "btrfs";
|
||||
options = [
|
||||
"subvol=mariadb"
|
||||
]
|
||||
++ defaultOptions;
|
||||
options = [ "subvol=mariadb" ] ++ defaultOptions;
|
||||
};
|
||||
|
||||
fileSystems."/media/nas/ssd/VMs" = {
|
||||
device = "/dev/disk/by-uuid/09ac8b6b-e553-4cd8-ae62-8d8c17fe8b0c";
|
||||
fsType = "btrfs";
|
||||
options = [
|
||||
"subvol=VMs"
|
||||
]
|
||||
++ defaultOptions;
|
||||
options = [ "subvol=VMs" ] ++ defaultOptions;
|
||||
};
|
||||
|
||||
fileSystems."/media/nas/main/3d_printer" = {
|
||||
device = "/dev/disk/by-uuid/76e7cd98-3145-4cff-b78d-bab0206aae28";
|
||||
fsType = "btrfs";
|
||||
options = [
|
||||
"subvol=3d_printer"
|
||||
]
|
||||
++ defaultOptions;
|
||||
options = [ "subvol=3d_printer" ] ++ defaultOptions;
|
||||
};
|
||||
|
||||
fileSystems."/media/nas/main/backup" = {
|
||||
device = "/dev/disk/by-uuid/76e7cd98-3145-4cff-b78d-bab0206aae28";
|
||||
fsType = "btrfs";
|
||||
options = [
|
||||
"subvol=backup"
|
||||
]
|
||||
++ defaultOptions;
|
||||
options = [ "subvol=backup" ] ++ defaultOptions;
|
||||
};
|
||||
|
||||
fileSystems."/media/nas/main/books" = {
|
||||
device = "/dev/disk/by-uuid/76e7cd98-3145-4cff-b78d-bab0206aae28";
|
||||
fsType = "btrfs";
|
||||
options = [
|
||||
"subvol=books"
|
||||
]
|
||||
++ defaultOptions;
|
||||
options = [ "subvol=books" ] ++ defaultOptions;
|
||||
};
|
||||
|
||||
fileSystems."/media/nas/main/documents" = {
|
||||
device = "/dev/disk/by-uuid/76e7cd98-3145-4cff-b78d-bab0206aae28";
|
||||
fsType = "btrfs";
|
||||
options = [
|
||||
"subvol=documents"
|
||||
]
|
||||
++ defaultOptions;
|
||||
options = [ "subvol=documents" ] ++ defaultOptions;
|
||||
};
|
||||
|
||||
fileSystems."/media/nas/main/homeassistant" = {
|
||||
device = "/dev/disk/by-uuid/76e7cd98-3145-4cff-b78d-bab0206aae28";
|
||||
fsType = "btrfs";
|
||||
options = [
|
||||
"subvol=homeassistant"
|
||||
]
|
||||
++ defaultOptions;
|
||||
options = [ "subvol=homeassistant" ] ++ defaultOptions;
|
||||
};
|
||||
|
||||
fileSystems."/media/nas/main/isos" = {
|
||||
device = "/dev/disk/by-uuid/76e7cd98-3145-4cff-b78d-bab0206aae28";
|
||||
fsType = "btrfs";
|
||||
options = [
|
||||
"subvol=isos"
|
||||
]
|
||||
++ defaultOptions;
|
||||
options = [ "subvol=isos" ] ++ defaultOptions;
|
||||
};
|
||||
|
||||
fileSystems."/media/nas/main/movies" = {
|
||||
device = "/dev/disk/by-uuid/76e7cd98-3145-4cff-b78d-bab0206aae28";
|
||||
fsType = "btrfs";
|
||||
options = [
|
||||
"subvol=movies"
|
||||
]
|
||||
++ defaultOptions;
|
||||
options = [ "subvol=movies" ] ++ defaultOptions;
|
||||
};
|
||||
|
||||
fileSystems."/media/nas/main/nextcloud" = {
|
||||
device = "/dev/disk/by-uuid/76e7cd98-3145-4cff-b78d-bab0206aae28";
|
||||
fsType = "btrfs";
|
||||
options = [
|
||||
"subvol=nextcloud"
|
||||
]
|
||||
++ defaultOptions;
|
||||
options = [ "subvol=nextcloud" ] ++ defaultOptions;
|
||||
};
|
||||
|
||||
fileSystems."/media/nas/main/photos" = {
|
||||
device = "/dev/disk/by-uuid/76e7cd98-3145-4cff-b78d-bab0206aae28";
|
||||
fsType = "btrfs";
|
||||
options = [
|
||||
"subvol=photos"
|
||||
]
|
||||
++ defaultOptions;
|
||||
options = [ "subvol=photos" ] ++ defaultOptions;
|
||||
};
|
||||
|
||||
fileSystems."/media/nas/main/switch" = {
|
||||
device = "/dev/disk/by-uuid/76e7cd98-3145-4cff-b78d-bab0206aae28";
|
||||
fsType = "btrfs";
|
||||
options = [
|
||||
"subvol=switch"
|
||||
]
|
||||
++ defaultOptions;
|
||||
options = [ "subvol=switch" ] ++ defaultOptions;
|
||||
};
|
||||
|
||||
fileSystems."/media/nas/main/tv" = {
|
||||
device = "/dev/disk/by-uuid/76e7cd98-3145-4cff-b78d-bab0206aae28";
|
||||
fsType = "btrfs";
|
||||
options = [
|
||||
"subvol=tv"
|
||||
]
|
||||
++ defaultOptions;
|
||||
options = [ "subvol=tv" ] ++ defaultOptions;
|
||||
};
|
||||
|
||||
fileSystems."/media/nas/main/timemachine" = {
|
||||
device = "/dev/disk/by-uuid/76e7cd98-3145-4cff-b78d-bab0206aae28";
|
||||
fsType = "btrfs";
|
||||
options = [
|
||||
"subvol=timemachine"
|
||||
]
|
||||
++ defaultOptions;
|
||||
options = [ "subvol=timemachine" ] ++ defaultOptions;
|
||||
};
|
||||
|
||||
# fileSystems."/media/nas/junk/nextcloud-backup" = {
|
||||
|
||||
@@ -4,7 +4,6 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
modulesPath,
|
||||
...
|
||||
}:
|
||||
@@ -88,15 +87,15 @@
|
||||
];
|
||||
};
|
||||
|
||||
swapDevices = [
|
||||
{
|
||||
device = "/dev/disk/by-id/ata-Samsung_SSD_860_EVO_500GB_S3Z1NW0KA10457X-part2";
|
||||
swapDevices = [
|
||||
{
|
||||
device = "/dev/disk/by-id/ata-Samsung_SSD_860_EVO_500GB_S3Z1NW0KA10457X-part2";
|
||||
randomEncryption.enable = true;
|
||||
}
|
||||
{
|
||||
device = "/dev/disk/by-id/ata-SSD2SC240G1SA754D117-820_PNY29140000558890457";
|
||||
{
|
||||
device = "/dev/disk/by-id/ata-SSD2SC240G1SA754D117-820_PNY29140000558890457";
|
||||
randomEncryption.enable = true;
|
||||
}
|
||||
}
|
||||
];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ pkgs, ... }:
|
||||
{ ... }:
|
||||
{
|
||||
|
||||
home.username = "admin";
|
||||
@@ -46,33 +46,4 @@
|
||||
};
|
||||
|
||||
programs.command-not-found.enable = true;
|
||||
|
||||
home.packages = with pkgs; [
|
||||
# homepage-dashboard
|
||||
];
|
||||
|
||||
# # Configure homepage-dashboard
|
||||
# home.file.".homepage-dashboard/config.json".text = ''
|
||||
# {
|
||||
# "modules": [
|
||||
# {
|
||||
# "type": "greeting",
|
||||
# "config": {
|
||||
# "greetings": [
|
||||
# "Welcome to My Dashboard!"
|
||||
# ]
|
||||
# }
|
||||
# },
|
||||
# {
|
||||
# "type": "clock"
|
||||
# },
|
||||
# {
|
||||
# "type": "weather",
|
||||
# "config": {
|
||||
# "location": "St. Paul, MN"
|
||||
# }
|
||||
# }
|
||||
# ]
|
||||
# }
|
||||
# '';
|
||||
}
|
||||
|
||||
@@ -1,12 +1,4 @@
|
||||
{
|
||||
pkgs,
|
||||
lib,
|
||||
LT,
|
||||
config,
|
||||
utils,
|
||||
inputs,
|
||||
...
|
||||
}@args:
|
||||
{ ... }@args:
|
||||
{
|
||||
# Set up impernance configuration for things like bluetooth
|
||||
# In this configuration with /etc and /var/log being persistent, only directories outside of that need to be done here. See hardware configuration for all mountpoints.
|
||||
|
||||
@@ -1,11 +1,4 @@
|
||||
{
|
||||
inputs,
|
||||
outputs,
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
{ config, ... }:
|
||||
let
|
||||
hostname = "jallen-nas";
|
||||
ipAddress = "10.0.1.18";
|
||||
@@ -65,7 +58,7 @@ in
|
||||
enable = true;
|
||||
environmentFile = config.sops.secrets."wifi".path;
|
||||
networks = {
|
||||
"Joey's Jungle 5G" = {
|
||||
"Joey's Jungle 5G" = {
|
||||
psk = "@PSK@";
|
||||
};
|
||||
};
|
||||
|
||||
@@ -1,11 +1,4 @@
|
||||
{
|
||||
inputs,
|
||||
outputs,
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
{ ... }:
|
||||
{
|
||||
nas-samba = {
|
||||
enable = true;
|
||||
|
||||
@@ -1,11 +1,4 @@
|
||||
{
|
||||
inputs,
|
||||
outputs,
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
{ config, pkgs, ... }:
|
||||
let
|
||||
enableDisplayManager = false;
|
||||
hostname = "jallen-nas";
|
||||
@@ -195,7 +188,10 @@ in
|
||||
description = "Protonmail Bridge";
|
||||
enable = true;
|
||||
script = "${pkgs.protonmail-bridge}/bin/protonmail-bridge --noninteractive";
|
||||
path = [ pkgs.pass pkgs.protonmail-bridge ];
|
||||
path = [
|
||||
pkgs.pass
|
||||
pkgs.protonmail-bridge
|
||||
];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
partOf = [ "multi-user.target" ];
|
||||
};
|
||||
@@ -204,7 +200,10 @@ in
|
||||
systemd.services = {
|
||||
|
||||
rsync-ssd = {
|
||||
path = [ pkgs.bash pkgs.rsync ];
|
||||
path = [
|
||||
pkgs.bash
|
||||
pkgs.rsync
|
||||
];
|
||||
script = ''
|
||||
rsync -rtpogvPlHzs --ignore-existing /media/nas/ssd /media/nas/main/backup/ssd
|
||||
'';
|
||||
|
||||
@@ -1,14 +1,16 @@
|
||||
{
|
||||
config, ...
|
||||
}:
|
||||
{ config, ... }:
|
||||
{
|
||||
sops.defaultSopsFile = ../../secrets/secrets.yaml;
|
||||
sops.age.sshKeyPaths = [ "/etc/ssh/ssh_host_ed25519_key" ];
|
||||
|
||||
sops.secrets."jallen-nas/admin_password" = {};
|
||||
sops.secrets."jallen-nas/admin_password" = { };
|
||||
sops.secrets."jallen-nas/admin_password".neededForUsers = true;
|
||||
|
||||
sops.secrets."wifi" = {};
|
||||
sops.secrets."wifi" = { };
|
||||
|
||||
sops.secrets."jallen-nas/ups_password" = {
|
||||
# restartUnits = [ "ups stuff lol" ];
|
||||
};
|
||||
|
||||
sops.secrets."jallen-nas/collabora" = {
|
||||
restartUnits = [ "podman-collabora.service" ];
|
||||
@@ -60,4 +62,4 @@
|
||||
sops.secrets."jallen-nas/nextcloud/smtppassword".mode = "0777";
|
||||
# sops.secrets."jallen-nas/nextcloud/smtppassword".owner = config.users.users.nix-apps.name;
|
||||
# sops.secrets."jallen-nas/nextcloud/smtppassword".group = config.users.users.jallen-nas.group;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,59 +1,46 @@
|
||||
{
|
||||
inputs,
|
||||
outputs,
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
{ config, ... }:
|
||||
let
|
||||
enableUps = true;
|
||||
upsmonCmd = "nasups@localhost 1 upsuser BogieDudie1 primary";
|
||||
upsName = "nasups";
|
||||
upsName = "nas-ups";
|
||||
upsUser = "nas-admin";
|
||||
in
|
||||
{
|
||||
power.ups = {
|
||||
enable = enableUps;
|
||||
openFirewall = enableUps;
|
||||
mode = "netserver";
|
||||
|
||||
ups = {
|
||||
enable = enableUps;
|
||||
mode = "netserver";
|
||||
ups.upsName = {
|
||||
"${upsName}" = {
|
||||
description = "NAS UPS";
|
||||
driver = "usbhid-ups";
|
||||
port = "auto";
|
||||
description = "NAS UPS";
|
||||
};
|
||||
upsmon = {
|
||||
monitor = upsmonCmd;
|
||||
};
|
||||
upsd = {
|
||||
enable = enableUps;
|
||||
listen = {
|
||||
address = 0.0 0.0 0.0;
|
||||
port = 3493;
|
||||
};
|
||||
};
|
||||
# users = {
|
||||
# actions = [ "SET" ];
|
||||
# instcmds = [ "ALL" ];
|
||||
##* upsmon = "primary";
|
||||
# passwordFile = "/home/matt/ups.conf";
|
||||
# };
|
||||
};
|
||||
|
||||
# Add UPS monitoring service
|
||||
users."${upsUser}" = {
|
||||
passwordFile = config.sops.secrets."jallen-nas/ups_password".path;
|
||||
actions = [ "ALL" ];
|
||||
instcmds = [ "ALL" ];
|
||||
upsmon = "primary";
|
||||
};
|
||||
|
||||
upsmon = {
|
||||
enable = true;
|
||||
# Configure UPS device
|
||||
device = "/dev/usb/hiddev1"; # Change this to your UPS device
|
||||
driver = "usbhid-ups"; # Change this if your UPS uses a different driver
|
||||
# Set UPS monitoring options
|
||||
options = {
|
||||
# NOTIFYCMD = "/path/to/notify-script.sh"; # Path to your notification script
|
||||
POLLFREQ = 5;
|
||||
POLLFREQALERT = 5;
|
||||
HOSTSYNC = "on";
|
||||
DEADTIME = 15;
|
||||
FINALDELAY = 5;
|
||||
enable = enableUps;
|
||||
monitor."${upsName}" = {
|
||||
passwordFile = config.sops.secrets."jallen-nas/ups_password".path;
|
||||
user = upsUser;
|
||||
};
|
||||
};
|
||||
|
||||
upsd = {
|
||||
enable = enableUps;
|
||||
listen = [
|
||||
{
|
||||
address = "0.0.0.0";
|
||||
port = 3493;
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -2,17 +2,12 @@
|
||||
# your system. Help is available in the configuration.nix(5) man page, on
|
||||
# https://search.nixos.org/options and in the NixOS manual (`nixos-help`).
|
||||
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
{ lib, pkgs, ... }:
|
||||
|
||||
let
|
||||
user = "matt";
|
||||
password = "$y$j9T$EkPXmsmIMFFZ.WRrBYCxS1$P0kwo6e4.WM5DsqUcEqWC3MrZp5KfCjxffraMFZWu06";
|
||||
SSID = "Joey’s Jungle";
|
||||
SSID = "Joey's Jungle 5G";
|
||||
SSIDpassword = "kR8v&3Qd";
|
||||
interface = "wlan0";
|
||||
timezone = "America/Chicago";
|
||||
|
||||
@@ -1,35 +0,0 @@
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
|
||||
# Portainer
|
||||
virtualisation.oci-containers.containers."portainer" = {
|
||||
autoStart = true;
|
||||
image = "portainer/portainer-ce";
|
||||
ports = [
|
||||
"8000:8000"
|
||||
"9443:9443"
|
||||
];
|
||||
volumes = [
|
||||
"/var/run/docker.sock:/var/run/docker.sock"
|
||||
"/media/T5/docker/config/portainer:/data"
|
||||
];
|
||||
};
|
||||
|
||||
# Jellyfin
|
||||
virtualisation.oci-containers.containers."jellyfin" = {
|
||||
autoStart = true;
|
||||
image = "jellyfin/jellyfin";
|
||||
volumes = [
|
||||
"/media/T5/containers/jellyfin/config:/config"
|
||||
"/media/T5/containers/jellyfin/cache:/cache"
|
||||
"/media/T5/containers/jellyfin/log:/log"
|
||||
"/media/T5/movies:/movies"
|
||||
"/media/T5/tv:/tv"
|
||||
];
|
||||
ports = [ "8096:8096" ];
|
||||
environment = {
|
||||
JELLYFIN_LOG_DIR = "/log";
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -1,13 +1,7 @@
|
||||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
modulesPath,
|
||||
...
|
||||
}:
|
||||
{ lib, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||
|
||||
@@ -1,7 +1,4 @@
|
||||
{ pkgs, ... }:
|
||||
# let
|
||||
# gnome = false;
|
||||
# in
|
||||
{ ... }:
|
||||
{
|
||||
|
||||
home.username = "matt";
|
||||
|
||||
@@ -1,9 +1,4 @@
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
{ lib, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.nas-apps.beszel-agent;
|
||||
@@ -16,9 +11,7 @@ in
|
||||
autoStart = cfg.autoStart;
|
||||
image = cfg.image;
|
||||
ports = [ "${cfg.port}:45876" ];
|
||||
volumes = [
|
||||
"${cfg.podmanSock}:/var/run/docker.sock:ro"
|
||||
];
|
||||
volumes = [ "${cfg.podmanSock}:/var/run/docker.sock:ro" ];
|
||||
environment = {
|
||||
PORT = cfg.port;
|
||||
KEY = cfg.key;
|
||||
|
||||
@@ -54,4 +54,4 @@ with lib;
|
||||
default = "America/Chicago";
|
||||
};
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,9 +1,4 @@
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
{ lib, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.nas-apps.beszel;
|
||||
@@ -16,9 +11,7 @@ in
|
||||
autoStart = cfg.autoStart;
|
||||
image = cfg.image;
|
||||
ports = [ "${cfg.httpPort}:8090" ];
|
||||
volumes = [
|
||||
"${cfg.configPath}:/beszel_data"
|
||||
];
|
||||
volumes = [ "${cfg.configPath}:/beszel_data" ];
|
||||
environment = {
|
||||
PUID = cfg.puid;
|
||||
PGID = cfg.pgid;
|
||||
|
||||
@@ -1,9 +1,4 @@
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
{ lib, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.nas-apps.collabora;
|
||||
|
||||
@@ -46,7 +46,7 @@ with lib;
|
||||
|
||||
environmentFiles = mkOption {
|
||||
type = with types; listOf path;
|
||||
default = [];
|
||||
default = [ ];
|
||||
};
|
||||
|
||||
dontGenSslCert = mkOption {
|
||||
|
||||
@@ -1,9 +1,4 @@
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
{ lib, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.nas-apps.deluge;
|
||||
@@ -22,15 +17,13 @@ in
|
||||
"${toString cfg.port3}:58846"
|
||||
"${toString cfg.port4}:58966"
|
||||
];
|
||||
extraOptions = [
|
||||
"--cap-add=NET_ADMIN"
|
||||
];
|
||||
volumes = [
|
||||
extraOptions = [ "--cap-add=NET_ADMIN" ];
|
||||
volumes = [
|
||||
"${cfg.configPath}:/config"
|
||||
"${cfg.moviesPath}:/data/downloads"
|
||||
"${cfg.tvPath}:/data/downloads-icomplete"
|
||||
"/etc/localtime:/etc/localtime:ro"
|
||||
];
|
||||
];
|
||||
environment = {
|
||||
PUID = cfg.puid;
|
||||
PGID = cfg.pgid;
|
||||
|
||||
@@ -1,9 +1,4 @@
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
{ lib, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.nas-apps.jackett;
|
||||
|
||||
@@ -1,9 +1,4 @@
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
{ lib, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.nas-apps.jellyfin;
|
||||
|
||||
@@ -1,9 +1,4 @@
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
{ lib, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.nas-apps.jellyseerr;
|
||||
|
||||
@@ -1,9 +1,4 @@
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
{ lib, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.nas-apps.mariadb;
|
||||
|
||||
@@ -56,7 +56,7 @@ with lib;
|
||||
|
||||
environmentFiles = mkOption {
|
||||
type = with types; listOf path;
|
||||
default = [];
|
||||
default = [ ];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,9 +1,4 @@
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
{ lib, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.nas-apps.mealie;
|
||||
|
||||
@@ -35,89 +35,94 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
config = { config, pkgs, lib, ... }: {
|
||||
services = {
|
||||
nextcloud = {
|
||||
enable = true;
|
||||
package = pkgs.nextcloud29;
|
||||
datadir = "/data";
|
||||
hostName = "localhost";
|
||||
appstoreEnable = true;
|
||||
caching.redis = true;
|
||||
configureRedis = true;
|
||||
config = {
|
||||
adminuser = "mjallen";
|
||||
adminpassFile = adminpass;
|
||||
dbhost = "10.0.1.18:3306";
|
||||
dbtype = "mysql";
|
||||
dbname = "jallen_nextcloud";
|
||||
dbuser = "nextcloud";
|
||||
dbpassFile = dbpass;
|
||||
config =
|
||||
{ pkgs, lib, ... }:
|
||||
{
|
||||
services = {
|
||||
nextcloud = {
|
||||
enable = true;
|
||||
package = pkgs.nextcloud29;
|
||||
datadir = "/data";
|
||||
hostName = "localhost";
|
||||
appstoreEnable = true;
|
||||
caching.redis = true;
|
||||
configureRedis = true;
|
||||
config = {
|
||||
adminuser = "mjallen";
|
||||
adminpassFile = adminpass;
|
||||
dbhost = "10.0.1.18:3306";
|
||||
dbtype = "mysql";
|
||||
dbname = "jallen_nextcloud";
|
||||
dbuser = "nextcloud";
|
||||
dbpassFile = dbpass;
|
||||
};
|
||||
settings = {
|
||||
trusted_domains = [
|
||||
"10.0.1.18:9980"
|
||||
"10.0.1.18:9943"
|
||||
"cloud.mjallen.dev"
|
||||
];
|
||||
trusted_proxies = [ "10.0.1.18" ];
|
||||
maintenance_window_start = 6;
|
||||
default_phone_region = "US";
|
||||
mail_from_address = "matt.l.jallen";
|
||||
mail_smtpmode = "smtp";
|
||||
mail_sendmailmode = "smtp";
|
||||
mail_domain = "gmail.com";
|
||||
mail_smtpauth = 1;
|
||||
mail_smtpname = "matt.l.jallen";
|
||||
mail_smtppassword = smtppassword;
|
||||
mail_smtpsecure = "ssl";
|
||||
mail_smtphost = "smtp.gmail.com";
|
||||
mail_smtpport = 465;
|
||||
enable_previews = true;
|
||||
enabledPreviewProviders = [
|
||||
"OC\\\\Preview\\\\PNG"
|
||||
"OC\\\\Preview\\\\JPEG"
|
||||
"OC\\\\Preview\\\\GIF"
|
||||
"OC\\\\Preview\\\\BMP"
|
||||
"OC\\\\Preview\\\\XBitmap"
|
||||
"OC\\\\Preview\\\\MP3"
|
||||
"OC\\\\Preview\\\\TXT"
|
||||
"OC\\\\Preview\\\\MarkDown"
|
||||
"OC\\\\Preview\\\\OpenDocument"
|
||||
"OC\\\\Preview\\\\Krita"
|
||||
"OC\\\\Preview\\\\HEIC"
|
||||
];
|
||||
};
|
||||
};
|
||||
settings = {
|
||||
trusted_domains = [
|
||||
"10.0.1.18:9980"
|
||||
"10.0.1.18:9943"
|
||||
"cloud.mjallen.dev"
|
||||
];
|
||||
trusted_proxies = [
|
||||
"10.0.1.18"
|
||||
];
|
||||
maintenance_window_start = 6;
|
||||
default_phone_region = "US";
|
||||
mail_from_address = "matt.l.jallen";
|
||||
mail_smtpmode = "smtp";
|
||||
mail_sendmailmode = "smtp";
|
||||
mail_domain = "gmail.com";
|
||||
mail_smtpauth = 1;
|
||||
mail_smtpname = "matt.l.jallen";
|
||||
mail_smtppassword = smtppassword;
|
||||
mail_smtpsecure = "ssl";
|
||||
mail_smtphost = "smtp.gmail.com";
|
||||
mail_smtpport = 465;
|
||||
enable_previews = true;
|
||||
enabledPreviewProviders = [
|
||||
"OC\\\\Preview\\\\PNG"
|
||||
"OC\\\\Preview\\\\JPEG"
|
||||
"OC\\\\Preview\\\\GIF"
|
||||
"OC\\\\Preview\\\\BMP"
|
||||
"OC\\\\Preview\\\\XBitmap"
|
||||
"OC\\\\Preview\\\\MP3"
|
||||
"OC\\\\Preview\\\\TXT"
|
||||
"OC\\\\Preview\\\\MarkDown"
|
||||
"OC\\\\Preview\\\\OpenDocument"
|
||||
"OC\\\\Preview\\\\Krita"
|
||||
"OC\\\\Preview\\\\HEIC"
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
nginx = {
|
||||
enable = true;
|
||||
virtualHosts = {
|
||||
"nextcloud-container.local" = {
|
||||
# Change this to the desired port number
|
||||
listen = [{ addr = "0.0.0.0"; port = 9943; }];
|
||||
|
||||
root = "/var/www/nextcloud";
|
||||
|
||||
# You may need to adjust other options for your specific setup
|
||||
nginx = {
|
||||
enable = true;
|
||||
virtualHosts = {
|
||||
"nextcloud-container.local" = {
|
||||
# Change this to the desired port number
|
||||
listen = [
|
||||
{
|
||||
addr = "0.0.0.0";
|
||||
port = 9943;
|
||||
}
|
||||
];
|
||||
|
||||
root = "/var/www/nextcloud";
|
||||
|
||||
# You may need to adjust other options for your specific setup
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
system.stateVersion = "23.11";
|
||||
networking = {
|
||||
firewall = {
|
||||
enable = true;
|
||||
allowedTCPPorts = [ 9943 ];
|
||||
system.stateVersion = "23.11";
|
||||
networking = {
|
||||
firewall = {
|
||||
enable = true;
|
||||
allowedTCPPorts = [ 9943 ];
|
||||
};
|
||||
# Use systemd-resolved inside the container
|
||||
# Workaround for bug https://github.com/NixOS/nixpkgs/issues/162686
|
||||
useHostResolvConf = lib.mkForce false;
|
||||
};
|
||||
# Use systemd-resolved inside the container
|
||||
# Workaround for bug https://github.com/NixOS/nixpkgs/issues/162686
|
||||
useHostResolvConf = lib.mkForce false;
|
||||
};
|
||||
services.resolved.enable = true;
|
||||
services.resolved.enable = true;
|
||||
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,8 +1,4 @@
|
||||
{
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
{ lib, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.nas-apps.nextcloud;
|
||||
|
||||
@@ -1,9 +1,4 @@
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
{ lib, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.nas-apps.ollama;
|
||||
|
||||
@@ -1,9 +1,4 @@
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
{ lib, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.nas-apps.open-webui;
|
||||
|
||||
@@ -1,9 +1,4 @@
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
{ lib, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.nas-apps.orca-slicer;
|
||||
|
||||
@@ -1,9 +1,4 @@
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
{ lib, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.nas-apps.radarr;
|
||||
|
||||
@@ -1,9 +1,4 @@
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
{ lib, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.nas-apps.sabnzbd;
|
||||
|
||||
@@ -1,9 +1,4 @@
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
{ lib, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.nas-apps.sonarr;
|
||||
|
||||
@@ -1,9 +1,4 @@
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
{ lib, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.nas-apps.swag;
|
||||
@@ -34,9 +29,7 @@ in
|
||||
"${toString cfg.httpsPort}:443"
|
||||
"81:81"
|
||||
];
|
||||
extraOptions = [
|
||||
"--cap-add=NET_ADMIN"
|
||||
];
|
||||
extraOptions = [ "--cap-add=NET_ADMIN" ];
|
||||
volumes = [ "${cfg.configPath}:/config" ];
|
||||
environment = {
|
||||
PUID = cfg.puid;
|
||||
|
||||
@@ -1,9 +1,4 @@
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
{ lib, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.nas-apps.tdarr;
|
||||
|
||||
@@ -1,9 +1,4 @@
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
{ lib, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.nas-apps.vscode;
|
||||
|
||||
@@ -1,9 +1,4 @@
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
{ lib, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.nas-apps.wireguard;
|
||||
@@ -20,9 +15,7 @@ in
|
||||
"--cap-add=NET_ADMIN"
|
||||
"--sysctl=\"net.ipv4.conf.all.src_valid_mark=1\""
|
||||
];
|
||||
volumes = [
|
||||
"${cfg.configPath}:/config"
|
||||
];
|
||||
volumes = [ "${cfg.configPath}:/config" ];
|
||||
environment = {
|
||||
PUID = cfg.puid;
|
||||
PGID = cfg.pgid;
|
||||
|
||||
@@ -1,9 +1,4 @@
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
{ lib, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.nas-samba;
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
wifi: ENC[AES256_GCM,data:Rs+4Km4DogO7XatA,iv:JUv9HkNWsv/l4Fli5sFeUeYuWG1Yju95G59FJ/Q5W50=,tag:gRFCG4d5OBMRx1QayRV8Zg==,type:str]
|
||||
jallen-nas:
|
||||
admin_password: ENC[AES256_GCM,data:RGb0UQkLhqfBWflIc5r8yWgYvc0EZuM49uhnXH1r6o9d7Ya7eAoTn2DHdWmYnd9/LpTXPmLF07Nf8s1+/odYx8RBmaji56yWbQ==,iv:dGlvZtZFB8jsI33Qkmmb3iHTXqpVWfbd0EfNK0uX3i4=,tag:z6THeY0UmG64VwOdwnL/AA==,type:str]
|
||||
ups_password: ENC[AES256_GCM,data:yHCwM7XbbhQZwxE=,iv:m4dD6VlrplHbZB5hnV1fk5N8IOsc+fA5qhTcrqiTxDM=,tag:41EaB9z2jlNTfPw5wlWQ3g==,type:str]
|
||||
collabora: ENC[AES256_GCM,data:A01H7FzgSplAEn0dsENgllyWza4=,iv:L9bPHKdeIHn7caYn78XOkdmuSk1RIuSVcIW5HFQL8PY=,tag:h0kiClGAwGB6iP327flWew==,type:str]
|
||||
mariadb:
|
||||
root_pass: ENC[AES256_GCM,data:YLPfEG4/6FeCnrKdfXv9z4hHwtpM/KtBCYqlm4IUvA==,iv:pc9Ljasy76bfkmFRJ4M+wfEtjXBUD7Kb0S0WQZhCmOs=,tag:Wk/7gpKidirhRqw4+Pu96g==,type:str]
|
||||
@@ -46,8 +47,8 @@ sops:
|
||||
UGhsN2N0Mjl3UEJvUVlGRlJiN05WaUkKW37lU4G4CLTo6JoHC2OyhKsG/FuO+BiN
|
||||
pzlVJwzRnmAqwklRbc6RMbQLl2EQrp6KQcgYsUxCMH9OQ/9WJ98dxQ==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2024-08-08T02:00:25Z"
|
||||
mac: ENC[AES256_GCM,data:IVfBgo6DeJ4WPwF5Uzol1F/ORaWehP6Ax5NvBInQAelHV3wLWIwj+BnPqtJfWIHdUxNqPZCOmEjZ4DskYRAvxWvF+GyOJZ34tkxBMkASl76l9OmCf2KZtGERyUI+JmDh3qJ1K6KP6Mc/3p0xketrndm1mz42lc42VsL6Id2NUcY=,iv:+XiyBL5slouhfK4iOhS51IoWthdsEZ6HYJd8nHlCLT4=,tag:jZ2ISWYE/aA0OF6IORgVZQ==,type:str]
|
||||
lastmodified: "2024-08-23T16:35:44Z"
|
||||
mac: ENC[AES256_GCM,data:gVu0zOwEB/Mup8fXdlFxg8qRMHULMmQeDAsoFw8dlZpFe2IOAHOdemiV1T4oVhhZ78Or+c4PHO0a0M1piscLoHeAVnwPURe5t8tu+8BlwmKRu0+B618ekMXnDs8OYeNvRkA0DcsBr7lF08dbVSLdjfOqrT72XIuCm8XWnPnLPyE=,iv:MoThEq02i+G4BFbHzi6B2QgF7o0TlX3Ew1pB9SUaBRc=,tag:11/5WaAfx9731mo07Vi/ZQ==,type:str]
|
||||
pgp: []
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.9.0
|
||||
|
||||
Reference in New Issue
Block a user