Fix typo and enable btrfs scrubbing
This commit is contained in:
parent
54855a0d33
commit
6f09998656
|
@ -1,25 +1,18 @@
|
||||||
{ ... }:
|
{ ... }:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
|
./disko
|
||||||
|
./firewall
|
||||||
./hardware
|
./hardware
|
||||||
|
../../modules/system
|
||||||
# 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
|
|
||||||
];
|
];
|
||||||
|
|
||||||
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";
|
||||||
}
|
}
|
||||||
|
|
|
@ -217,7 +217,7 @@
|
||||||
"${primeMod}+shift+a" = ''focus child'';
|
"${primeMod}+shift+a" = ''focus child'';
|
||||||
|
|
||||||
# Scratchpads
|
# 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+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+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'';
|
"${primeMod}+Shift+Backslash" = ''[app_id="com.github.wwmm.easyeffects"] scratchpad show, move position center, resize set 1000 800'';
|
||||||
|
|
4
modules/system/devices/disks/btrfs/default.nix
Normal file
4
modules/system/devices/disks/btrfs/default.nix
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
{ ... }:
|
||||||
|
{
|
||||||
|
services.btrfs.autoScrub.enable = true;
|
||||||
|
}
|
|
@ -1,6 +1,7 @@
|
||||||
{ ... }:
|
{ ... }:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
|
./btrfs
|
||||||
./filesystems
|
./filesystems
|
||||||
./impermanence
|
./impermanence
|
||||||
./snapper
|
./snapper
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
{ ... }:
|
{ lib, ... }:
|
||||||
{
|
{
|
||||||
boot.supportedFilesystems = {
|
boot.supportedFilesystems = {
|
||||||
ntfs = true;
|
ntfs = true;
|
||||||
|
zfs = lib.mkForce false;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,13 +5,12 @@ with lib; {
|
||||||
desktop.enable = mkOption {
|
desktop.enable = mkOption {
|
||||||
type = types.bool;
|
type = types.bool;
|
||||||
default = true;
|
default = true;
|
||||||
description = "Enable desktop apps and services?";
|
description = "Enable desktop apps and services";
|
||||||
};
|
};
|
||||||
|
|
||||||
server.enable = mkOption {
|
server.enable = mkOption {
|
||||||
type = types.bool;
|
type = types.bool;
|
||||||
default = false;
|
default = false;
|
||||||
description = "Enable server services?";
|
description = "Enable server services";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{ pkgs, config, ... }:
|
{ pkgs, config, ... }:
|
||||||
{
|
{
|
||||||
services.ddclient = {
|
services.ddclient = {
|
||||||
enable = true;
|
enable = config.system.server.enable;
|
||||||
protocol = "cloudflare";
|
protocol = "cloudflare";
|
||||||
use = "web, web=https://ipinfo.io/ip";
|
use = "web, web=https://ipinfo.io/ip";
|
||||||
zone = "${config.domains.jim1}";
|
zone = "${config.domains.jim1}";
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{ ... }:
|
{ ... }:
|
||||||
{
|
{
|
||||||
services.nfs.server = {
|
services.nfs.server = {
|
||||||
enable = true;
|
enable = config.system.server.enable;
|
||||||
exports = ''
|
exports = ''
|
||||||
/export/JimboNFS/Files *(rw,sync,no_subtree_check)
|
/export/JimboNFS/Files *(rw,sync,no_subtree_check)
|
||||||
/export/JimboNFS/Media *(rw,sync,no_subtree_check)
|
/export/JimboNFS/Media *(rw,sync,no_subtree_check)
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
{
|
{
|
||||||
services = {
|
services = {
|
||||||
samba = {
|
samba = {
|
||||||
enable = true;
|
enable = config.system.server.enable;
|
||||||
securityType = "user";
|
securityType = "user";
|
||||||
openFirewall = true;
|
openFirewall = true;
|
||||||
settings = {
|
settings = {
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
imports = [ ./nginx ];
|
imports = [ ./nginx ];
|
||||||
|
|
||||||
services.nextcloud = {
|
services.nextcloud = {
|
||||||
enable = true;
|
enable = config.system.server.enable;
|
||||||
package = pkgs.nextcloud30;
|
package = pkgs.nextcloud30;
|
||||||
hostName = "cloud.${config.domains.jim1}";
|
hostName = "cloud.${config.domains.jim1}";
|
||||||
datadir = "/mnt/nextcloud";
|
datadir = "/mnt/nextcloud";
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
services.nginx.virtualHosts."cloud.${config.domains.jim1}" = {
|
services.nginx.virtualHosts."cloud.${config.domains.jim1}" = {
|
||||||
enableACME = true;
|
enableACME = true;
|
||||||
addSSL = true;
|
addSSL = true;
|
||||||
|
onlySSL = true;
|
||||||
locations."/" = {
|
locations."/" = {
|
||||||
proxyWebsockets = true;
|
proxyWebsockets = true;
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
imports = [ ./nginx ];
|
imports = [ ./nginx ];
|
||||||
|
|
||||||
services.photoprism = {
|
services.photoprism = {
|
||||||
enable = true;
|
enable = config.system.server.enable;
|
||||||
port = 2342;
|
port = 2342;
|
||||||
originalsPath = "/var/lib/private/photoprism/originals";
|
originalsPath = "/var/lib/private/photoprism/originals";
|
||||||
address = "0.0.0.0";
|
address = "0.0.0.0";
|
||||||
|
|
|
@ -2,32 +2,30 @@
|
||||||
{
|
{
|
||||||
imports = [ ./nginx ];
|
imports = [ ./nginx ];
|
||||||
|
|
||||||
services = {
|
services.forgejo = {
|
||||||
forgejo = {
|
enable = config.system.server.enable;
|
||||||
enable = true;
|
settings = {
|
||||||
settings = {
|
server = {
|
||||||
server = {
|
DOMAIN = "git.${config.domains.jim1}";
|
||||||
DOMAIN = "git.${config.domains.jim1}";
|
ROOT_URL = "https://git.${config.domains.jim1}:443";
|
||||||
ROOT_URL = "https://git.${config.domains.jim1}:443";
|
HTTP_PORT = 3110;
|
||||||
HTTP_PORT = 3110;
|
SSH_PORT = 2299;
|
||||||
SSH_PORT = 2299;
|
START_SSH_SERVER = true;
|
||||||
START_SSH_SERVER = true;
|
};
|
||||||
};
|
ui = {
|
||||||
ui = {
|
DEFAULT_THEME = "forgejo-dark";
|
||||||
DEFAULT_THEME = "forgejo-dark";
|
};
|
||||||
};
|
mailer = {
|
||||||
mailer = {
|
ENABLED = true;
|
||||||
ENABLED = true;
|
SMTP_ADDR = "mx.${config.domains.jim1}";
|
||||||
SMTP_ADDR = "mx.${config.domains.jim1}";
|
FROM = "Jimbo's Git <noreply@${config.domains.jim1}>";
|
||||||
FROM = "Jimbo's Git <noreply@${config.domains.jim1}>";
|
USER = "noreply@${config.domains.jim1}";
|
||||||
USER = "noreply@${config.domains.jim1}";
|
PASSWD = config.secrets.noreplyPassword;
|
||||||
PASSWD = config.secrets.noreplyPassword;
|
PROTOCOL = "smtps";
|
||||||
PROTOCOL = "smtps";
|
};
|
||||||
};
|
service = {
|
||||||
service = {
|
REGISTER_EMAIL_CONFIRM = true;
|
||||||
REGISTER_EMAIL_CONFIRM = true;
|
DISABLE_REGISTRATION = true;
|
||||||
DISABLE_REGISTRATION = true;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
];
|
];
|
||||||
|
|
||||||
services.icecast = {
|
services.icecast = {
|
||||||
enable = true;
|
enable = config.system.server.enable;
|
||||||
listen.port = 265;
|
listen.port = 265;
|
||||||
hostname = "icecast.${config.domains.jim1}";
|
hostname = "icecast.${config.domains.jim1}";
|
||||||
admin = {
|
admin = {
|
||||||
|
|
|
@ -1,5 +1,13 @@
|
||||||
{ ... }:
|
{ ... }:
|
||||||
{
|
{
|
||||||
|
options.system.mailserver = {
|
||||||
|
enable = lib.mkOption {
|
||||||
|
type = lib.types.bool;
|
||||||
|
default = false;
|
||||||
|
description = "Enable mail host and services";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
./simplenix
|
./simplenix
|
||||||
./roundcube
|
./roundcube
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{ pkgs, config, ... }:
|
{ pkgs, config, ... }:
|
||||||
{
|
{
|
||||||
services.roundcube = {
|
services.roundcube = {
|
||||||
enable = true;
|
enable = config.system.mailserver.enable;
|
||||||
hostName = "mail.${config.domains.jim1}";
|
hostName = "mail.${config.domains.jim1}";
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
$config['smtp_server'] = "tls://mx.${config.domains.jim1}";
|
$config['smtp_server'] = "tls://mx.${config.domains.jim1}";
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
];
|
];
|
||||||
|
|
||||||
mailserver = rec {
|
mailserver = rec {
|
||||||
enable = true;
|
enable = config.system.mailserver.enable;
|
||||||
domains = [
|
domains = [
|
||||||
"${config.domains.jim1}"
|
"${config.domains.jim1}"
|
||||||
"${config.domains.jim2}"
|
"${config.domains.jim2}"
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
nixpkgs.overlays = [ minecraft.overlay ];
|
nixpkgs.overlays = [ minecraft.overlay ];
|
||||||
|
|
||||||
services.minecraft-servers = {
|
services.minecraft-servers = {
|
||||||
enable = true;
|
enable = config.system.server.enable;
|
||||||
eula = true;
|
eula = true;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{ pkgs, ... }:
|
{ pkgs, ... }:
|
||||||
{
|
{
|
||||||
services.mysql = {
|
services.mysql = {
|
||||||
enable = true;
|
enable = config.system.server.enable;
|
||||||
package = pkgs.mariadb;
|
package = pkgs.mariadb;
|
||||||
dataDir = "/var/lib/mysql";
|
dataDir = "/var/lib/mysql";
|
||||||
ensureDatabases = [
|
ensureDatabases = [
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
];
|
];
|
||||||
|
|
||||||
services.nginx = {
|
services.nginx = {
|
||||||
enable = true;
|
enable = config.system.server.enable;
|
||||||
recommendedTlsSettings = true;
|
recommendedTlsSettings = true;
|
||||||
recommendedOptimisation = true;
|
recommendedOptimisation = true;
|
||||||
recommendedGzipSettings = true;
|
recommendedGzipSettings = true;
|
||||||
|
|
Loading…
Reference in a new issue