Compare commits

..

169 commits

Author SHA1 Message Date
ebbd106e0a Enable hsts for nextcloud 2024-12-14 03:53:59 +01:00
660f9561cf Store TrackMania in directory 2024-12-14 03:49:46 +01:00
ae101e2eb2 Fix path of nextcloud service proxy 2024-12-14 03:45:41 +01:00
a0874d9f37 Add jellyseerr by default 2024-12-13 02:43:32 +01:00
7df90179c9 Improve Nextcloud nginx config 2024-12-13 01:51:47 +01:00
99fa900c1a Fix incorrect git ssh script 2024-12-11 04:18:13 +01:00
4161fce8d7 Link gitea to forgejo 2024-12-11 04:18:00 +01:00
896c77559a Set up authentication automatically 2024-12-11 04:17:48 +01:00
ce70e66c70 Make forgejo work under Arch Linux 2024-12-11 03:30:36 +01:00
84818c2bac Refactor jellyfin nginx config 2024-12-11 02:27:49 +01:00
c349a2d5be Name forgejo user properly 2024-12-11 01:30:36 +01:00
56f7f4228b Fix ssh key permission error 2024-12-11 01:17:54 +01:00
cf717d7a50 Inherit profile script title properly 2024-12-11 01:13:02 +01:00
f0fef82fa1 Prevent PowerShell errors 2024-12-11 01:12:52 +01:00
db247315cf Fix malformed yq scripts 2024-12-08 18:04:59 +01:00
93284f2016 Disable auto login after installation 2024-12-08 17:27:03 +01:00
9a911cb93b Reboot system as root 2024-12-08 17:18:59 +01:00
da1870c250 Adjust boot label for server 2024-12-08 16:50:16 +01:00
97e372ae08 Fix permission issues 2024-12-08 06:15:43 +01:00
a8e0f37416 Return exit code properly 2024-12-08 05:48:20 +01:00
c1483d29e1 Fix typo 2024-12-08 05:20:42 +01:00
e435ce8c48 Prevent unnecessary config values 2024-12-08 04:56:41 +01:00
71a301ff0f Remove bash profile during installation script 2024-12-08 04:46:53 +01:00
2e087298a3 Normalize exit code of setup actions 2024-12-08 04:46:13 +01:00
37f3b3980b Fix malformed output 2024-12-08 03:07:54 +01:00
9007570d94 Install systemd-networkd during setup 2024-12-08 02:49:45 +01:00
73734293fd Enable DNS on the server 2024-12-08 02:49:28 +01:00
fad6cbe1d2 Fix incorrect configuration 2024-12-08 01:57:18 +01:00
bcdd7b0d8a Install networkmanager only if necessary 2024-12-08 01:47:04 +01:00
fa295f3b1a Allow configuring networkd 2024-12-08 01:03:06 +01:00
6a5ec8d5de Install NetworkManager only if enabled 2024-12-08 00:05:44 +01:00
19871a2e49 Allow configuriong systemd-networkd 2024-12-07 23:45:31 +01:00
ab8a6f8609 Allow choosing between NetworkManager and systemd-networkd 2024-12-07 23:38:17 +01:00
52fd59c017 Set profiles of btrfs volume 2024-12-07 23:02:03 +01:00
02dd399284 Forcefully write btrfs 2024-12-07 22:40:59 +01:00
7c3297b993 Collect all affected devices 2024-12-07 22:18:10 +01:00
ccbf77ce3f Fix outdated config names 2024-12-07 21:46:53 +01:00
1944356d05 Add support for partitioning btrfs volumes 2024-12-07 21:14:58 +01:00
5e7cfccff6 Add scripts for installing btrfs 2024-12-07 21:14:36 +01:00
a4fe8d78dc Remove trailing slashes properly 2024-12-07 21:09:18 +01:00
605c32e467 Fix incorrect config name 2024-12-07 20:03:58 +01:00
9caedac094 Create mount script in fileSystems module 2024-12-07 19:28:42 +01:00
f1ed876cc1 Add a separate option for mounts 2024-12-07 19:11:41 +01:00
3790fd267e Allow partitions without format 2024-12-07 18:45:44 +01:00
70a02aa8b9 Add btrfs support 2024-12-07 18:41:08 +01:00
0df6d5ece3 Remove unnecessary code 2024-12-07 18:36:54 +01:00
b16e1d420e Rename filesystem directory 2024-12-07 18:36:19 +01:00
5ffe98a56d Remove redundancy 2024-12-07 17:50:10 +01:00
7b5564a632 Store device scripts in scripts option 2024-12-07 17:49:57 +01:00
68e1990c87 Refactor terminology 2024-12-07 17:43:53 +01:00
0ce36394ac Move the script to the fileSystems module 2024-12-07 17:35:31 +01:00
ed4fa1a33d Split up disk script into multiple scripts 2024-12-07 16:12:04 +01:00
7b3b7fcdbc Remove separate os disk declaration 2024-12-07 16:11:19 +01:00
ce13e03ef1 Restructure partition config 2024-12-07 12:24:10 +01:00
77d8c350b7 Remove duplicated code 2024-12-06 16:22:05 +01:00
055955a1bf Pause tmux session on error 2024-12-06 13:52:26 +01:00
569204babe Fix permission issue 2024-12-06 13:51:08 +01:00
f3ff0cb0db Add missing location comment 2024-12-06 13:50:58 +01:00
f8eed79dd6 Disable cloud sync on the server 2024-12-06 13:40:04 +01:00
e527b33d82 Restore permissions in nixpkgs 2024-12-06 00:55:51 +01:00
19e9aecc5b Copy the .git directory to the setup environment 2024-12-05 22:36:14 +01:00
7f60744056 Ensure the nix channel directory exists 2024-12-05 20:31:56 +01:00
f3b6f3be23 Keep .git directory of nixpkgs 2024-12-05 19:40:41 +01:00
1e6bf93191 Install nginx throughout the setup 2024-12-05 18:27:10 +01:00
ad36fe02b3 Update to the most recent nixpkgs-unstable commit 2024-12-05 18:22:54 +01:00
656f21e849 Allow commits as nix versions 2024-12-05 18:19:18 +01:00
d6105a22b8 Fix permission issue 2024-12-05 18:18:57 +01:00
d0f7f6e4f9 Enable grub on the server 2024-12-05 17:08:41 +01:00
1051fe01c1 Ignore exit code of string-split0 2024-12-05 16:34:24 +01:00
6f5d13f07f Prevent unnecessary config fetches 2024-12-05 16:01:41 +01:00
eac4dba453 Update the nixpkgs version 2024-12-05 15:43:54 +01:00
87b032ed70 Add openssh as a dependency 2024-12-05 14:59:28 +01:00
800a6ed542 Install nixpkgs during setup 2024-12-05 14:13:52 +01:00
4ba2c1b1a5 Prompt backup config during install 2024-12-05 10:40:59 +01:00
ee4906cf4d Install valhalla dependencies during setup 2024-12-05 10:33:06 +01:00
8e02826f4b Adjust hook description 2024-12-05 10:25:28 +01:00
20c1f1558f Fetch missing variables 2024-12-05 10:13:35 +01:00
8b2d6a8a6a Add a function for initializing the OS 2024-12-05 10:09:35 +01:00
53c35a5742 Run OS setup first 2024-12-05 09:59:04 +01:00
4f446cc189 Create directories for ssh files 2024-12-05 09:53:31 +01:00
aebc398989 Create ssh key only if necessary 2024-12-05 09:47:32 +01:00
d52ce97c6c Fix missing variable 2024-12-05 09:45:49 +01:00
ff05734cdf Partition drives after action setup 2024-12-05 09:45:08 +01:00
a94a589c77 Create missing script 2024-12-05 09:41:33 +01:00
3758baba8b Remove unnecessary function 2024-12-05 09:41:20 +01:00
406c25b3d3 Get mount dir for preparing nix 2024-12-05 09:38:38 +01:00
45b0ed910c Fix non-existent variable 2024-12-05 09:27:53 +01:00
1c452512ef Create function for bootstrapping dependencies 2024-12-05 09:25:52 +01:00
500ab697f6 Fix incorrect repo path 2024-12-04 19:06:32 +01:00
ca2b623e1a Allow configuring backup during setup 2024-12-04 19:02:05 +01:00
a7b9572165 Make config function name more concise 2024-12-04 18:56:17 +01:00
972de35629 Use pre-existing setup user if existent 2024-12-04 18:35:15 +01:00
562c55b78f Add function for configuring backup server 2024-12-04 18:33:30 +01:00
801e010efb Enable anki-sync on the server 2024-12-04 18:31:35 +01:00
6f68f021a3 Create new ssh key implicitly 2024-12-04 18:26:45 +01:00
c75228380a Add missing docker services 2024-12-04 17:02:54 +01:00
4c23b600f2 Format files 2024-12-04 17:02:11 +01:00
3607765313 Ignore inexistent backup archives 2024-12-04 17:02:01 +01:00
a46ea0cacc Load backup user variable dynamically 2024-12-04 17:00:36 +01:00
5411281d95 Fix collabora service 2024-12-04 16:59:30 +01:00
86576476ba Add default port for terraria 2024-12-04 16:59:01 +01:00
0b2d39ea7c Fix websocket access for wekan 2024-12-04 16:58:51 +01:00
30254ea01c Configure wekan service properly 2024-12-04 16:58:41 +01:00
67ccef8474 Remove custom wekan user 2024-12-04 16:58:18 +01:00
84dc19dd95 Fix overcomplicated location config 2024-12-04 16:57:58 +01:00
2b34819227 Remove unnecessary proxy config 2024-12-04 16:57:40 +01:00
8f09b02fc2 Allow specifying comments for locations 2024-12-04 16:57:25 +01:00
1c93d4b3f4 Allow custom schemes for location settings 2024-12-04 16:55:56 +01:00
9dc93b1b8e Insert comment before location block 2024-12-04 16:54:54 +01:00
e0f4c7e74a Store rtorrent session files in volume 2024-12-04 16:53:24 +01:00
5384b38613 Normalize docker volume paths 2024-12-04 16:52:32 +01:00
0413612bce Update rtorrent and privoxy to proton community cli 2024-12-04 16:50:29 +01:00
f5001a28b7 Remove unnecessary parameter 2024-12-04 16:48:51 +01:00
9634789027 Generate extra server config with full domain 2024-12-04 16:48:35 +01:00
6d221cf07c Update script for new cgroup version 2024-12-04 16:47:11 +01:00
d2522d42a3 Fix typos 2024-12-04 16:46:57 +01:00
ba371f6417 Fix permission issues 2024-12-04 16:44:01 +01:00
7b53d0b506 Enable nix service immediately 2024-12-04 14:41:49 +01:00
351d3070d2 Normalize location of proton data 2024-11-29 02:20:26 +01:00
6abc2240be Format all files 2024-11-29 01:13:58 +01:00
046627eca4 FIx handling users with no docker services 2024-11-28 22:12:44 +01:00
084897f5ee Fix invalid git cli call 2024-11-28 22:12:15 +01:00
86fecfd3e4 Add missing function argument 2024-11-28 22:11:56 +01:00
c533b66c4e Inherit all env variables in the tmux session 2024-11-28 22:11:27 +01:00
8c9c6cd411 Back up teamspeak properly 2024-11-28 20:03:08 +01:00
91fee52e81 Force creation of an ssh key for backups 2024-11-27 05:52:42 +01:00
080cca791f Preserve PATH for setup actions 2024-11-27 05:24:53 +01:00
c9ba881ab2 Add scripts for installing a terraria server 2024-11-27 05:10:42 +01:00
f1f4364c63 Back up extra files using getExtraBackupPatterns 2024-11-27 04:07:14 +01:00
8bcce1c5a1 Remove world mounts for minecraft services 2024-11-27 04:00:20 +01:00
786e422aa6 Simplify xaseco command handling 2024-11-27 03:49:04 +01:00
53d140394a Silence unnecessary output 2024-11-27 03:48:43 +01:00
eb2436c562 Allow specifying xaseco operators and admins 2024-11-27 03:48:31 +01:00
fa98fc8f5b Normalize display name of vaultwarden mailer 2024-11-27 03:48:00 +01:00
a314e502e0 Store all game data of TrackMania service 2024-11-27 03:47:41 +01:00
59f0c8e254 Add declaration of transmission service 2024-11-27 03:47:21 +01:00
f36f26daeb Leave user of wekan container unchanged 2024-11-27 03:47:02 +01:00
c024066139 Store domain names in overrides 2024-11-27 03:41:26 +01:00
9b7f9275c9 Normalize the save path of service data 2024-11-27 03:02:59 +01:00
38d8eeedde Improve the format of the docker files 2024-11-27 02:59:07 +01:00
9a3d7d4f68 Rename secrets files to overrides 2024-11-27 02:54:44 +01:00
df74ac2337 Store Jellyfin domain in secrets 2024-11-26 16:01:38 +01:00
6fabcdc304 Allow specifying overrides for docker services 2024-11-26 15:47:38 +01:00
30c1618318 Allow specifying additional patterns to back up 2024-11-26 15:44:49 +01:00
8101b9e817 Configure forgejo runner by default 2024-11-26 15:42:18 +01:00
6a442f8392 Store all forgejo files in data/ 2024-11-26 15:42:07 +01:00
c5e15c21e4 Set forgejo domain by default 2024-11-26 15:41:51 +01:00
422f36f523 Reduce redundancy of drone setup 2024-11-26 14:54:52 +01:00
b2d6524b0b Fix order of properties in drone templates 2024-11-26 12:43:21 +01:00
d80dbadc7b Load enabled services from machine config 2024-11-25 19:11:14 +01:00
5589b6534b Ensure nix channels are functioning 2024-11-25 15:19:13 +01:00
9ed3aa6fe4 Force running actions as setup-user 2024-11-25 15:19:01 +01:00
a6414a60a2 Skip backup questions if specified 2024-11-23 17:26:12 +01:00
822008f459 Create backup whitelist for docker-compose 2024-11-23 16:57:11 +01:00
84e5a9d7c0 Add a profile for the server 2024-11-22 17:31:18 +01:00
bc914ff88e Add options for enabling docker-compose services 2024-11-22 17:31:08 +01:00
db0b8637ab Add scripts for installing woodpecker 2024-11-22 17:29:45 +01:00
a9f62c3648 Add scripts for installing wekan 2024-11-22 01:54:50 +01:00
d5bc49759b Add scripts for installing TrackMania server 2024-11-20 00:33:09 +01:00
8cd59ae6e9 Replace yq with go-yq 2024-11-20 00:30:08 +01:00
fe99897a2a Add scripts for installing TeamSpeak 2024-11-13 18:18:15 +01:00
5fd56d46fa Add scripts for installing ryot 2024-11-13 17:39:21 +01:00
5c37ec4649 Add scripts for installing nextcloud 2024-11-13 16:25:39 +01:00
941c89e896 Restructure service overrides 2024-11-13 16:22:57 +01:00
e2b08c77db Add scripts for installing Minecraft 2024-11-10 13:00:23 +01:00
83a5e144da Add settings for allowing VPN access in lxc 2024-11-10 12:56:48 +01:00
e6c28188e5 Improve look & feel of lxc config 2024-11-10 12:56:34 +01:00
9507bb1034 Add scripts for installing jellyfin 2024-11-10 12:33:36 +01:00
a538a3d3cf Add a script for installing forgejo 2024-11-07 23:58:06 +01:00
4 changed files with 8 additions and 22 deletions

View file

@ -46,26 +46,6 @@
DerGeret = import ./profiles/machines/manuel/DerGeret/Arch/config.nix;
ManuSurface = import ./profiles/machines/manuel/ManuSurface/Arch/config.nix;
server = import ./profiles/machines/manuel/server.nix;
clean = { ... }: {
imports = [
./lib/modules/valhalla.nix
];
config = {
valhalla = {
hostname = "Falcon";
windows = {
users.LocalAdmin = {
groups = [ "Administrators" ];
programs.oh-my-posh.theme.source = ./profiles/users/manuel/manuel.omp.json;
};
};
software.essential = true;
};
};
};
};
};
}

View file

@ -44,6 +44,12 @@ let
"/dev/${config.name}";
};
deviceScript = mkOption {
type = types.str;
description = "A command for loading the device path into the device variable";
internal = true;
};
deviceVariable = mkOption {
type = types.str;
description = "The name of the variable holding the name of the disk";

View file

@ -14,7 +14,7 @@
components = [ "Logitech G903" ];
};
fileSystems.diskSetup.devices.OS.name = "nvme0n1";
partition.os.deviceName = "nvme0n1";
};
};
}

View file

@ -15,7 +15,7 @@ services:
FORGEJO__server__ROOT_URL: https://%(DOMAIN)s/
FORGEJO__server__DISABLE_SSH: "false"
FORGEJO__server__LFS_START_SERVER: "true"
FORGEJO__service__REGISTER_MANUEL_CONFIRM: "true"
FORGEJO__service__REGISTER_MANUAL_CONFIRM: "true"
FORGEJO__actions__ENABLED: "true"
FORGEJO__openid__ENABLE_OPENID_SIGNUP: "false"
FORGEJO__cron.git_gc_repos__ENABLED: "true"