Fix typo and enable btrfs scrubbing

This commit is contained in:
Jimbo 2024-11-13 09:43:47 -05:00
parent 54855a0d33
commit 6f09998656
20 changed files with 65 additions and 60 deletions

View file

@ -1,25 +1,18 @@
{ ... }:
{
imports = [
./disko
./firewall
./hardware
# Apps and programs
../../../modules/system
../../../modules/system/accounts
../../../modules/system/devices/filesystems
../../../modules/system/devices/boot/systemd
../../../modules/system/devices/networking
../../../modules/system/devices/networking/firewall/server
../../../modules/system/devices/networking/wireguard/server
../../../modules/system/programs/git
../../../modules/system/programs/security
../../../modules/system/services/common
../../../modules/system/services/server
# Misc
../../../overlays
../../../variables
../../modules/system
];
networking.hostName = "kitty";
system.desktop.enable = false;
system.server.enable = true;
#system.lanzaboote.enable = true;
system.wireless.enable = false;
environment.sessionVariables.NIXOS_OZONE_WL = "1";
networking.hostName = "tower";
}

View file

@ -217,7 +217,7 @@
"${primeMod}+shift+a" = ''focus child'';
# Scratchpads
"Shift+Ctrl+Backslash" = ''[app_id="gotop"] scratchpad show, move position center resize set 1216 888'';
"Shift+Ctrl+Backslash" = ''[app_id="gotop"] scratchpad show, move position center, resize set 1216 888'';
"${primeMod}+Shift+m" = ''[app_id="music"] scratchpad show, move position center, resize set 1006 657'';
"${primeMod}+Shift+v" = ''[app_id="sound"] scratchpad show, move position center, resize set 1000 800'';
"${primeMod}+Shift+Backslash" = ''[app_id="com.github.wwmm.easyeffects"] scratchpad show, move position center, resize set 1000 800'';

View file

@ -0,0 +1,4 @@
{ ... }:
{
services.btrfs.autoScrub.enable = true;
}

View file

@ -1,6 +1,7 @@
{ ... }:
{
imports = [
./btrfs
./filesystems
./impermanence
./snapper

View file

@ -1,6 +1,7 @@
{ ... }:
{ lib, ... }:
{
boot.supportedFilesystems = {
ntfs = true;
zfs = lib.mkForce false;
};
}

View file

@ -5,13 +5,12 @@ with lib; {
desktop.enable = mkOption {
type = types.bool;
default = true;
description = "Enable desktop apps and services?";
description = "Enable desktop apps and services";
};
server.enable = mkOption {
type = types.bool;
default = false;
description = "Enable server services?";
description = "Enable server services";
};
};
};

View file

@ -1,7 +1,7 @@
{ pkgs, config, ... }:
{
services.ddclient = {
enable = true;
enable = config.system.server.enable;
protocol = "cloudflare";
use = "web, web=https://ipinfo.io/ip";
zone = "${config.domains.jim1}";

View file

@ -1,7 +1,7 @@
{ ... }:
{
services.nfs.server = {
enable = true;
enable = config.system.server.enable;
exports = ''
/export/JimboNFS/Files *(rw,sync,no_subtree_check)
/export/JimboNFS/Media *(rw,sync,no_subtree_check)

View file

@ -2,7 +2,7 @@
{
services = {
samba = {
enable = true;
enable = config.system.server.enable;
securityType = "user";
openFirewall = true;
settings = {

View file

@ -3,7 +3,7 @@
imports = [ ./nginx ];
services.nextcloud = {
enable = true;
enable = config.system.server.enable;
package = pkgs.nextcloud30;
hostName = "cloud.${config.domains.jim1}";
datadir = "/mnt/nextcloud";

View file

@ -3,6 +3,7 @@
services.nginx.virtualHosts."cloud.${config.domains.jim1}" = {
enableACME = true;
addSSL = true;
onlySSL = true;
locations."/" = {
proxyWebsockets = true;
extraConfig = ''

View file

@ -3,7 +3,7 @@
imports = [ ./nginx ];
services.photoprism = {
enable = true;
enable = config.system.server.enable;
port = 2342;
originalsPath = "/var/lib/private/photoprism/originals";
address = "0.0.0.0";

View file

@ -2,32 +2,30 @@
{
imports = [ ./nginx ];
services = {
forgejo = {
enable = true;
settings = {
server = {
DOMAIN = "git.${config.domains.jim1}";
ROOT_URL = "https://git.${config.domains.jim1}:443";
HTTP_PORT = 3110;
SSH_PORT = 2299;
START_SSH_SERVER = true;
};
ui = {
DEFAULT_THEME = "forgejo-dark";
};
mailer = {
ENABLED = true;
SMTP_ADDR = "mx.${config.domains.jim1}";
FROM = "Jimbo's Git <noreply@${config.domains.jim1}>";
USER = "noreply@${config.domains.jim1}";
PASSWD = config.secrets.noreplyPassword;
PROTOCOL = "smtps";
};
service = {
REGISTER_EMAIL_CONFIRM = true;
DISABLE_REGISTRATION = true;
};
services.forgejo = {
enable = config.system.server.enable;
settings = {
server = {
DOMAIN = "git.${config.domains.jim1}";
ROOT_URL = "https://git.${config.domains.jim1}:443";
HTTP_PORT = 3110;
SSH_PORT = 2299;
START_SSH_SERVER = true;
};
ui = {
DEFAULT_THEME = "forgejo-dark";
};
mailer = {
ENABLED = true;
SMTP_ADDR = "mx.${config.domains.jim1}";
FROM = "Jimbo's Git <noreply@${config.domains.jim1}>";
USER = "noreply@${config.domains.jim1}";
PASSWD = config.secrets.noreplyPassword;
PROTOCOL = "smtps";
};
service = {
REGISTER_EMAIL_CONFIRM = true;
DISABLE_REGISTRATION = true;
};
};
};

View file

@ -6,7 +6,7 @@
];
services.icecast = {
enable = true;
enable = config.system.server.enable;
listen.port = 265;
hostname = "icecast.${config.domains.jim1}";
admin = {

View file

@ -1,5 +1,13 @@
{ ... }:
{
options.system.mailserver = {
enable = lib.mkOption {
type = lib.types.bool;
default = false;
description = "Enable mail host and services";
};
};
imports = [
./simplenix
./roundcube

View file

@ -1,7 +1,7 @@
{ pkgs, config, ... }:
{
services.roundcube = {
enable = true;
enable = config.system.mailserver.enable;
hostName = "mail.${config.domains.jim1}";
extraConfig = ''
$config['smtp_server'] = "tls://mx.${config.domains.jim1}";

View file

@ -6,7 +6,7 @@
];
mailserver = rec {
enable = true;
enable = config.system.mailserver.enable;
domains = [
"${config.domains.jim1}"
"${config.domains.jim2}"

View file

@ -13,7 +13,7 @@
nixpkgs.overlays = [ minecraft.overlay ];
services.minecraft-servers = {
enable = true;
enable = config.system.server.enable;
eula = true;
};
}

View file

@ -1,7 +1,7 @@
{ pkgs, ... }:
{
services.mysql = {
enable = true;
enable = config.system.server.enable;
package = pkgs.mariadb;
dataDir = "/var/lib/mysql";
ensureDatabases = [

View file

@ -6,7 +6,7 @@
];
services.nginx = {
enable = true;
enable = config.system.server.enable;
recommendedTlsSettings = true;
recommendedOptimisation = true;
recommendedGzipSettings = true;