Compare commits

..

616 commits

Author SHA1 Message Date
Manuel Thalmann 3140843098 Chain all commands 2024-09-13 15:10:29 +02:00
Manuel Thalmann 620687c1f3 Configure git using PowerShell script 2024-09-13 15:08:18 +02:00
Manuel Thalmann 6a5f7f4d85 Install global bash profiles globally 2024-09-13 15:07:49 +02:00
Manuel Thalmann 66bc662e54 Fix eval-flake for paths containing spaces 2024-09-13 15:07:22 +02:00
Manuel Thalmann ad22040fbb Remove redundant script call 2024-09-13 15:05:51 +02:00
Manuel Thalmann 5410109d2d Forcibly remove setup user 2024-09-13 15:05:17 +02:00
Manuel Thalmann ea90b326ae Fix installation of threema-desktop 2024-09-13 14:55:50 +02:00
Manuel Thalmann d129267047 Ignore tidal-dl install errors 2024-09-13 14:55:29 +02:00
Manuel Thalmann 0e7e66ce12 Make module installation compatible with Linux 2024-09-13 14:54:47 +02:00
Manuel Thalmann 262eb20474 Install display manager first 2024-09-13 14:54:30 +02:00
Manuel Thalmann 9b522725d6 Remove obsolete packages 2024-09-13 14:53:46 +02:00
Manuel Thalmann 0a41dcb7f3 Refactor the software install workflow 2024-09-13 14:47:07 +02:00
Manuel Thalmann 1a4f832c39 Remove the installDrivers step from OS installations 2024-09-13 00:30:30 +02:00
Manuel Thalmann 48e7eb0880 Create a dedicated script for deploying software actions 2024-09-12 23:17:04 +02:00
Manuel Thalmann b5d94fea09 Replace discord with vesktop 2024-09-12 23:11:16 +02:00
Manuel Thalmann 69f7e42524 Reorder the package installation logically 2024-09-12 23:11:04 +02:00
Manuel Thalmann c4bfccf85c Clarify the use of propertree 2024-09-12 23:09:25 +02:00
Manuel Thalmann bcb7da8ebd Read config from linux key 2024-09-12 21:48:05 +02:00
Manuel Thalmann 698d706aa0 Add groups to users properly 2024-09-12 21:47:50 +02:00
Manuel Thalmann dc9f21805e Redirect CONFIG_NAME variable properly 2024-09-12 21:47:29 +02:00
Manuel Thalmann e5723181a3 Ensure git repository can be read properly 2024-09-12 21:47:13 +02:00
Manuel Thalmann e8421152fb Fix incorrect message 2024-09-12 21:46:57 +02:00
Manuel Thalmann 5475b60078 Add git for installation 2024-09-12 21:46:47 +02:00
Manuel Thalmann acd4c58692 Use common script for Arch installation 2024-09-12 21:44:14 +02:00
Manuel Thalmann 0d7178aa6b Mount ntfs disks using ntfs3 2024-09-12 20:18:57 +02:00
Manuel Thalmann 93ceb7d9f4 Reboot before creating users 2024-09-12 19:04:48 +02:00
Manuel Thalmann ad4e6e45a1 Pause before reboot when debugging 2024-09-12 19:04:37 +02:00
Manuel Thalmann 29cbba1138 Improve layout of oh-my-posh prompt 2024-09-12 19:02:56 +02:00
Manuel Thalmann ce2d8ad3e7 Ensure partition script exits early on error 2024-09-12 19:02:33 +02:00
Manuel Thalmann 5a30b42737 Fix creation of multiple users 2024-09-12 19:00:00 +02:00
Manuel Thalmann ba93ad277d Ensure fish scripts exit early 2024-09-12 18:52:03 +02:00
Manuel Thalmann e69b016be4 Allow removing setup options 2024-09-12 18:44:58 +02:00
Manuel Thalmann 12979f006a Fix execution of OS scripts 2024-09-12 18:44:40 +02:00
Manuel Thalmann 1fda16b331 Execute partition script using shebang 2024-09-12 18:44:14 +02:00
Manuel Thalmann 353a69efdb Clarify that partition script edits partitions 2024-09-12 18:43:33 +02:00
Manuel Thalmann 48908e33e9 Prevent use of glob 2024-09-12 18:39:50 +02:00
Manuel Thalmann aa795d8ac4 Ensure partition presence using partprobe 2024-09-12 18:39:18 +02:00
Manuel Thalmann 2c0a1f5ca0 Exclude unnecessary files from backup 2024-09-10 02:39:37 +02:00
Manuel Thalmann 4aec05b7d7 Add a word of warning after backup 2024-09-10 00:38:35 +02:00
Manuel Thalmann e5252cd9af Add a script for creating backups 2024-09-10 00:37:13 +02:00
Manuel Thalmann 5bafb8057e Force profile selection for Windows installation actions 2024-09-09 00:04:06 +02:00
Manuel Thalmann 337f87ed3f Force line endings of Unix scripts 2024-09-09 00:00:49 +02:00
Manuel Thalmann 5225a62a3b Start setup automatically 2024-09-08 17:48:10 +02:00
Manuel Thalmann 1efe4bb432 Show profile selection during setup 2024-09-08 17:48:02 +02:00
Manuel Thalmann 60025040e9 Add a function for selecting the profile 2024-09-08 17:47:49 +02:00
Manuel Thalmann 96888c97df Use same installer script for all profiles 2024-09-08 17:47:28 +02:00
Manuel Thalmann 761bcd3213 Fix non-functioning WSL installation 2024-09-08 17:42:31 +02:00
Manuel Thalmann cfd3cfc12f Make Oh-My-Posh theme location dynamic 2024-09-08 17:42:11 +02:00
Manuel Thalmann ca2da30384 Improve performance 2024-09-08 17:41:30 +02:00
Manuel Thalmann a1d45730ab Update Selenium to the newest version 2024-09-08 17:12:01 +02:00
Manuel Thalmann 9f7bd40ed5 Switch to named flakes 2024-09-08 17:09:01 +02:00
Manuel Thalmann c3ccc92910 Store user related options properly 2024-09-03 23:11:28 +02:00
Manuel Thalmann fcabb8a4d6 Refactor the directory structure 2024-09-03 23:10:35 +02:00
Manuel Thalmann 750a27af69 Add code for cleaning up after installations 2024-09-03 22:15:15 +02:00
Manuel Thalmann 0e36efda0f Add functions for uninstalling packages 2024-09-03 22:14:21 +02:00
Manuel Thalmann ef991cdf78 Improve assignments of groups 2024-09-03 20:32:01 +02:00
Manuel Thalmann 26f39d4a64 Remove unnecessary policy change 2024-09-03 16:31:12 +02:00
Manuel Thalmann 5248e5d0b7 Migrate winiso script to fish 2024-09-03 12:08:47 +02:00
Manuel Thalmann cb3e16005d Ask for live scripts only once 2024-09-03 12:08:35 +02:00
Manuel Thalmann 86a3f87f70 Install Ubuntu automatically 2024-09-03 12:08:14 +02:00
Manuel Thalmann 4f5c39df66 Add a backup script for reWASD 2024-09-03 12:02:48 +02:00
Manuel Thalmann 3c26cd7c02 Add a backup script for Visual Studio 2024-09-03 12:02:32 +02:00
Manuel Thalmann e75f0cfaf0 Allow backing up TrackMania Forever 2024-09-03 12:02:09 +02:00
Manuel Thalmann ab33b56ca3 Allow testing winget packages with specific scope 2024-09-03 01:16:42 +02:00
Manuel Thalmann a0a1816a76 Allow backing up RetroArch 2024-08-28 13:07:58 +02:00
Manuel Thalmann c2d1487dd9 Add scripts for backing up PuTTY 2024-08-28 13:00:37 +02:00
Manuel Thalmann 9a304e50a9 Add scripts for backing up osu! 2024-08-28 12:47:07 +02:00
Manuel Thalmann 3ef4f0a811 Install osu!lazer per user 2024-08-28 12:37:20 +02:00
Manuel Thalmann 57138db12c Add backup support for ManiaPlanet 2024-08-28 05:18:52 +02:00
Manuel Thalmann dbd9cc24c9 Add scripts for backing up and restoring LGHub 2024-08-28 05:05:55 +02:00
Manuel Thalmann a9155c6567 Allow users to restore a backup 2024-08-28 04:40:32 +02:00
Manuel Thalmann 3e82230fd3 Add scripts for backing up and restoring personal files 2024-08-28 04:40:00 +02:00
Manuel Thalmann 68caf78c27 Fix non-functioning profile script 2024-08-28 04:39:15 +02:00
Manuel Thalmann 6e818ea9f6 Ensure 7z is installed for backups 2024-08-28 04:38:56 +02:00
Manuel Thalmann 8898e30eae Streamline restoration of directories 2024-08-28 04:38:30 +02:00
Manuel Thalmann 490bf8b31f Set a default path for backup artifacts 2024-08-28 00:38:20 +02:00
Manuel Thalmann f52bf04c96 Add capabilities to back up apps 2024-08-28 00:37:04 +02:00
Manuel Thalmann f6aeee7605 Allow specifying a backup action 2024-08-28 00:29:33 +02:00
Manuel Thalmann f8748a2ec9 Ignore unspecified backup archives 2024-08-28 00:22:38 +02:00
Manuel Thalmann ec4cbf6348 Ignore inexistent backup artifacts 2024-08-28 00:21:06 +02:00
Manuel Thalmann 43b590f8b6 Make the install script action agnostic 2024-08-28 00:03:28 +02:00
Manuel Thalmann e8b51e5b08 Rename the Windows installer script 2024-08-27 23:35:56 +02:00
Manuel Thalmann cc2deaed77 Rename outdated script 2024-08-27 23:08:41 +02:00
Manuel Thalmann f563dee72e Silence errors concerning empty aliae configurations 2024-08-27 22:35:31 +02:00
Manuel Thalmann f2139b1667 Make Operations script cross platform 2024-08-27 22:27:44 +02:00
Manuel Thalmann 6361b03bb8 Handle OneShot tasks only on Windows 2024-08-27 21:32:49 +02:00
Manuel Thalmann 4061bb56c5 Add a script for managing backups 2024-08-27 21:05:51 +02:00
Manuel Thalmann e0854b90f6 Add tools for managing aliae 2024-08-27 18:58:33 +02:00
Manuel Thalmann 4c9d3a78d3 Fix non-functioning aliae installation 2024-08-27 18:55:12 +02:00
Manuel Thalmann 90db794e42 Create dedicated script for creating users 2024-08-27 17:04:17 +02:00
Manuel Thalmann 6ea42ba180 Create dedicated script for installing software 2024-08-27 16:41:08 +02:00
Manuel Thalmann 0b1998d335 Prevent reading nix config multiple times 2024-08-27 14:35:04 +02:00
Manuel Thalmann c6a677b9ff Ensure only one user is enabled at once 2024-08-27 14:11:31 +02:00
Manuel Thalmann f23efeb0ca Prevent unnecessary file creation 2024-08-27 14:06:56 +02:00
Manuel Thalmann eb40f0ebdf Execute OneShot tasks in any operation 2024-08-27 14:05:16 +02:00
Manuel Thalmann 72687afa9d Use /mnt as mount directory 2024-08-27 04:30:12 +02:00
Manuel Thalmann 38085572f2 Force the use of the managed distribution 2024-08-27 04:26:25 +02:00
Manuel Thalmann 0e435f9c9a Initialize operation for all users 2024-08-27 04:24:29 +02:00
Manuel Thalmann acf938cc96 Handle initialization in operation code 2024-08-27 04:15:37 +02:00
Manuel Thalmann 5217107999 Execute script non-interactive during OneShot tasks 2024-08-27 03:50:08 +02:00
Manuel Thalmann b2fc26185d Exit script after running OneShot task 2024-08-27 03:45:44 +02:00
Manuel Thalmann 4f8df6b406 Modify user after first login 2024-08-27 03:27:54 +02:00
Manuel Thalmann df06202c5f Rearm Windows Activation before creating MSAcc 2024-08-27 03:25:19 +02:00
Manuel Thalmann 33e28e7ca9 Register MSAcc logon script early 2024-08-27 03:24:37 +02:00
Manuel Thalmann 481dbde675 Allow rebooting without registering setup 2024-08-27 03:11:35 +02:00
Manuel Thalmann 89d37fa714 Fix non-functioning NoProfile argument 2024-08-27 02:09:04 +02:00
Manuel Thalmann 8a43c0bc5b Prevent unnecessary installation actions 2024-08-27 01:57:46 +02:00
Manuel Thalmann 7e619be1a9 Only install PowerShell module if necessary 2024-08-27 01:25:32 +02:00
Manuel Thalmann 6ba44e524b Streamline PowerShell installation 2024-08-27 00:45:46 +02:00
Manuel Thalmann 2abe8a5dd0 Add further functionality to the WSL script 2024-08-27 00:38:46 +02:00
Manuel Thalmann f2996a6b94 Create a separate script for WSL interaction 2024-08-26 23:33:46 +02:00
Manuel Thalmann a79b178854 Fix recursive configuration 2024-08-25 03:58:28 +02:00
Manuel Thalmann 057d242124 Fix malformed module 2024-08-24 18:35:43 +02:00
Manuel Thalmann a61ef921bd Keep Windows fixes separate 2024-08-24 16:56:29 +02:00
Manuel Thalmann de60bf5795 Remove WSL after operation 2024-08-24 16:52:41 +02:00
Manuel Thalmann 14f348722e Make distribution name unique 2024-08-24 16:41:05 +02:00
Manuel Thalmann 341a828c43 Streamline WSL distribution name 2024-08-24 16:27:34 +02:00
Manuel Thalmann 9362c0d1c3 Remove unused resources after user setup 2024-08-24 16:15:10 +02:00
Manuel Thalmann 5a38d19ae6 Print update logs properly 2024-08-24 14:47:51 +02:00
Manuel Thalmann 6775e59366 Allow overriding Windows settings 2024-08-24 14:20:22 +02:00
Manuel Thalmann 6dea884c9b Update incorrect path 2024-08-24 14:11:38 +02:00
Manuel Thalmann 3de2384f8e Simplify osu!lazer installation 2024-08-24 14:10:02 +02:00
Manuel Thalmann 13f46f285f Determine name of setup user properly 2024-08-24 14:01:05 +02:00
Manuel Thalmann 0e5319f454 Make OMP configuration platform independent 2024-08-24 13:27:48 +02:00
Manuel Thalmann 324fa9a0e6 Fix incorrect character in OMP theme 2024-08-24 13:27:35 +02:00
Manuel Thalmann 03fab82de4 Remove unnecessary code 2024-08-24 04:25:07 +02:00
Manuel Thalmann 2c88b03fc6 Remove unnecessary loop 2024-08-24 04:24:55 +02:00
Manuel Thalmann 8502d4a59b Add missing module 2024-08-24 04:24:37 +02:00
Manuel Thalmann 41f7f06125 Add nextcloud to the module list 2024-08-24 04:18:57 +02:00
Manuel Thalmann cf3971890d Add a function for creating shortcuts 2024-08-24 04:18:33 +02:00
Manuel Thalmann 14c509d7a8 Configure nextcloud syncs 2024-08-24 04:07:47 +02:00
Manuel Thalmann 4548f5bf53 Allow configuring nextcloud syncs 2024-08-24 04:07:35 +02:00
Manuel Thalmann c9e30bf3de Create separate option holding win users 2024-08-24 03:25:28 +02:00
Manuel Thalmann 7b4126667a Rename Nextcloud installer 2024-08-24 01:50:07 +02:00
Manuel Thalmann 9a3a7fe950 Add file system driver for dual boot 2024-08-24 01:41:09 +02:00
Manuel Thalmann b451f52f04 Prevent unnecessary config evaluation 2024-08-24 01:31:39 +02:00
Manuel Thalmann 3c6dc16b8f Fix non-functioning installer 2024-08-24 01:27:26 +02:00
Manuel Thalmann bf61ea0c1a Install vscode extensions by default 2024-08-24 01:16:56 +02:00
Manuel Thalmann 2c2e858974 Load theme file from WSL properly 2024-08-24 00:59:59 +02:00
Manuel Thalmann 335804d384 Update aliae configuration script 2024-08-24 00:42:57 +02:00
Manuel Thalmann 8ada6c8d4a Strip duplicate variables and aliases 2024-08-24 00:08:58 +02:00
Manuel Thalmann 50078286b3 Install posh theme automatically 2024-08-23 23:53:48 +02:00
Manuel Thalmann a8976e49f4 Export missing function 2024-08-23 23:50:13 +02:00
Manuel Thalmann 02822687e2 Install aliae by default 2024-08-23 23:46:23 +02:00
Manuel Thalmann bef29e8a75 Add scripts for changing aliae config 2024-08-23 23:44:51 +02:00
Manuel Thalmann 63701a6c81 Fix compatibility with mixed new line characters 2024-08-23 23:44:23 +02:00
Manuel Thalmann 5cc5dac24b Add a script for installing aliae 2024-08-23 22:38:28 +02:00
Manuel Thalmann 6b46b3f53c Add desired posh theme 2024-08-23 19:43:06 +02:00
Manuel Thalmann db8380750a Make option names more clear 2024-08-23 19:42:27 +02:00
Manuel Thalmann 0021245415 Allow configuring oh-my-posh 2024-08-23 19:39:18 +02:00
Manuel Thalmann cf60f5f88e Fetch config from proper section 2024-08-23 19:24:49 +02:00
Manuel Thalmann 677e8d34ab Adjust configuration accordingly 2024-08-23 19:14:09 +02:00
Manuel Thalmann f9b937032e Refactor option descriptions 2024-08-23 19:02:06 +02:00
Manuel Thalmann 32c7be700a Clean up the Windows configuration 2024-08-23 18:59:49 +02:00
Manuel Thalmann 7b04566b80 Clean up the users.nix file 2024-08-23 18:51:54 +02:00
Manuel Thalmann aff634ab8b Create dedicated rclone module 2024-08-23 18:48:30 +02:00
Manuel Thalmann 884f7467b8 Move git module to separate directory 2024-08-23 18:42:16 +02:00
Manuel Thalmann 55e48613a3 Move git options to separate module 2024-08-23 18:40:24 +02:00
Manuel Thalmann 8749d9c230 Fix inheritance of user config 2024-08-23 18:28:20 +02:00
Manuel Thalmann 655d44a1dc Allow OS specific settings 2024-08-23 18:11:48 +02:00
Manuel Thalmann 8d239ff26e Update archiso 2024-08-23 14:19:56 +02:00
Manuel Thalmann 0d53ba8b01 Set user info during git setup 2024-08-23 02:01:16 +02:00
Manuel Thalmann ea9a5408d2 Make all config scripts platform independent 2024-08-23 01:57:53 +02:00
Manuel Thalmann f893911bc0 Allow leaving aliases unspecified 2024-08-23 01:52:25 +02:00
Manuel Thalmann de9404f0a9 Make scripts platform independent 2024-08-23 01:52:04 +02:00
Manuel Thalmann 055eb1d2cd Add scripts for configuring git 2024-08-23 01:43:26 +02:00
Manuel Thalmann 138c6ac33d Configure software implicitly 2024-08-23 01:41:32 +02:00
Manuel Thalmann 70a14ff012 Skip profile creation for PinnedItem 2024-08-22 23:55:41 +02:00
Manuel Thalmann 9308a24cae Allow skipping powershell module registration 2024-08-22 23:55:00 +02:00
Manuel Thalmann c7cec608cb Add profiles to the flake 2024-08-22 23:37:53 +02:00
Manuel Thalmann 24426d42f5 Remove user profile of OneShot user 2024-08-22 23:12:11 +02:00
Manuel Thalmann e604edfd9c Add missing OneShotTask declaration 2024-08-22 20:41:30 +02:00
Manuel Thalmann a2bb546935 Fix infinite loop 2024-08-22 20:41:17 +02:00
Manuel Thalmann 6796263a7f Fix handling empty error messages 2024-08-22 20:12:18 +02:00
Manuel Thalmann 4cfaf27888 Add choco to the profile of the setup user 2024-08-22 13:46:55 +02:00
Manuel Thalmann 9c7307d293 Fix incorrect typings 2024-08-22 11:11:12 +02:00
Manuel Thalmann fb29aa6efa Fix permission issues when enabling Win hack 2024-08-22 11:11:00 +02:00
Manuel Thalmann dbaccc0648 Register setup script as admin 2024-08-22 11:10:39 +02:00
Manuel Thalmann 372ff26ded Execute the entire installer using live scripts 2024-08-21 23:21:32 +02:00
Manuel Thalmann f567fbe4d3 Streamline the creation of users 2024-08-21 18:34:18 +02:00
Manuel Thalmann 1bf8de27b4 Replace osk with cmd during debugging 2024-08-21 18:33:41 +02:00
Manuel Thalmann ca2f3753c9 Prevent pauses in OneShot tasks 2024-08-21 18:28:50 +02:00
Manuel Thalmann 01a62a705d Print commands in debug mode 2024-08-21 18:28:08 +02:00
Manuel Thalmann 51f33c072f Run OneShot tasks with dedicated user 2024-08-21 18:27:47 +02:00
Manuel Thalmann 1a887a51b2 Add function for generating startup command 2024-08-21 18:26:58 +02:00
Manuel Thalmann b6bd865b6e Allow registering startup script for the default user 2024-08-21 18:20:11 +02:00
Manuel Thalmann 8812b00b2e Prevent unnecessary errors during WSL execution 2024-08-21 14:08:26 +02:00
Manuel Thalmann 23d25111ea Register WSL before running OneShot tasks 2024-08-21 03:37:44 +02:00
Manuel Thalmann d87636175a Overwrite broken module 2024-08-21 03:20:37 +02:00
Manuel Thalmann 6525181781 Prevent initialization of nested operations 2024-08-21 03:18:31 +02:00
Manuel Thalmann 1eb6142d37 Improve log messages of OneShot tasks 2024-08-21 02:02:30 +02:00
Manuel Thalmann 8629ed08fa Retry Linux path conversion for errors 2024-08-20 00:20:33 +02:00
Manuel Thalmann dfaac9ff98 Fix typo 2024-08-20 00:20:07 +02:00
Manuel Thalmann 0da67dca87 Fix broken signature of Restart-Intermediate 2024-08-19 12:07:26 +02:00
Manuel Thalmann 44a01ffef1 Report unexpected path conversions 2024-08-19 02:50:41 +02:00
Manuel Thalmann 1bbd8e53e6 Load missing path 2024-08-19 02:50:19 +02:00
Manuel Thalmann 3a713ef1fe Ensure error file can be read from 2024-08-19 02:24:45 +02:00
Manuel Thalmann c7ab490e27 Streamline OneShot task handler 2024-08-19 02:24:30 +02:00
Manuel Thalmann a2f91c2287 Simplify script registration 2024-08-19 02:24:13 +02:00
Manuel Thalmann 3f1eeba9dc Fix broken regedit paths 2024-08-19 01:38:25 +02:00
Manuel Thalmann 0345ae5a72 Allow registering reboots for users 2024-08-19 01:37:14 +02:00
Manuel Thalmann 00eff57e5b Prevent users from being excluded 2024-08-19 01:10:29 +02:00
Manuel Thalmann a61c8c92b4 Force copying of Linux users to Windows 2024-08-19 00:54:13 +02:00
Manuel Thalmann c2a8a5e8ef Improve log messages of updates 2024-08-18 12:20:21 +02:00
Manuel Thalmann 9c36c70150 Remove unnecessary command 2024-08-18 10:24:15 +02:00
Manuel Thalmann 2720bb4361 Fix time for QEMU VMs 2024-08-18 09:35:16 +02:00
Manuel Thalmann 72c595b0e0 Remove unnecessary desktop icons 2024-08-18 09:25:23 +02:00
Manuel Thalmann ccf31fcd08 Add a timeout for the reWASD downloader 2024-08-18 09:05:04 +02:00
Manuel Thalmann be1126444b Allow setting a timeout for clicking download buttons 2024-08-18 09:04:42 +02:00
Manuel Thalmann c7f1b94654 Emit errors concerning WSL commands 2024-08-17 13:51:10 +02:00
Manuel Thalmann 8ba7e2b210 Emit errors using Write-Error 2024-08-17 13:49:21 +02:00
Manuel Thalmann 9cf18d32bc Convert Argument to string explicitly 2024-08-16 23:03:19 +02:00
Manuel Thalmann c29cff4c78 Ignore unfinished browser downloads 2024-08-16 17:57:22 +02:00
Manuel Thalmann 73d427b305 Install powershell modules for all users 2024-08-16 16:43:30 +02:00
Manuel Thalmann 9dd831b084 Fix typos 2024-08-16 16:10:09 +02:00
Manuel Thalmann fbb6b008ac Install AutoHotkey as preparation 2024-08-16 15:22:09 +02:00
Manuel Thalmann ab490a401d Allow running live scripts in debug mode 2024-08-16 15:21:41 +02:00
Manuel Thalmann 5d37181875 Generate env variables using shorthand scripts 2024-08-16 15:16:56 +02:00
Manuel Thalmann d910b7f66f Allow running installation in debug mode 2024-08-16 15:16:28 +02:00
Manuel Thalmann 11e993f78a Redirect winiso exit code properly 2024-08-16 15:13:53 +02:00
Manuel Thalmann 63935d1ff3 Allow specifying winiso build type 2024-08-16 15:13:33 +02:00
Manuel Thalmann 20508973c5 Refactor winget check for rare issue 2024-08-16 15:04:37 +02:00
Manuel Thalmann a5ab376624 Disable Windows Update reboot only as admin 2024-08-16 14:35:35 +02:00
Manuel Thalmann 5d34ea69da Add a function for queueing startup commands 2024-08-15 18:34:48 +02:00
Manuel Thalmann f7ced22e9d Hide output of DISM commands 2024-08-15 13:57:15 +02:00
Manuel Thalmann 5e7d97c21f Ensure website is loaded before download 2024-08-15 02:42:00 +02:00
Manuel Thalmann f082b219ec Prevent Jellyfin from rebooting 2024-08-15 02:22:07 +02:00
Manuel Thalmann dd4925c16a Improve handling of slow websites 2024-08-14 18:47:29 +02:00
Manuel Thalmann 9e77d57b8c Fix potential CRC errors 2024-08-14 18:46:42 +02:00
Manuel Thalmann 1925a79c5b Ensure auto reboot is disabled properly 2024-08-12 21:32:53 +02:00
Manuel Thalmann 3e36dc8876 Disable auto reboot by default 2024-08-12 01:27:50 +02:00
Manuel Thalmann dbb16df8e1 Add methods for managing auto restart feature 2024-08-12 01:23:42 +02:00
Manuel Thalmann 871eafe5db Install Wave Link first 2024-08-11 18:27:16 +02:00
Manuel Thalmann 9c2ebaf858 Throw an error when failing to load config 2024-08-11 18:27:06 +02:00
Manuel Thalmann 515a256bd4 Fix incorrect script path 2024-08-10 20:37:10 +02:00
Manuel Thalmann 74fb20d6b1 Allow leaving install action unspecified 2024-08-10 19:27:56 +02:00
Manuel Thalmann 49a133e76a Retrieve registry value properly 2024-08-10 19:26:53 +02:00
Manuel Thalmann 0f048cbb9e Add scripts for installing git 2024-08-10 15:28:10 +02:00
Manuel Thalmann 6aab5d5d64 Remove unnecessary code 2024-08-10 15:24:15 +02:00
Manuel Thalmann 6bce599029 Add a function for removing the RunOnce key 2024-08-10 15:24:04 +02:00
Manuel Thalmann df363ce38c Set user groups properly 2024-08-10 15:23:38 +02:00
Manuel Thalmann 3b662e76e0 Configure MS accounts properly 2024-08-10 15:21:13 +02:00
Manuel Thalmann 725f01a572 Queue next user after configuration finished 2024-08-10 15:20:36 +02:00
Manuel Thalmann a89ef2b8a7 Disable UAC after logging in MS account 2024-08-10 15:19:14 +02:00
Manuel Thalmann a43a4890f3 Enable OneShot listener for MS accounts 2024-08-10 15:18:10 +02:00
Manuel Thalmann 9daaf4cee8 Set timezone automatically 2024-08-10 15:17:21 +02:00
Manuel Thalmann a42865a480 Prevent variable overwrite 2024-08-10 15:16:57 +02:00
Manuel Thalmann 93bad7fc73 Register installer script after disabling UAG 2024-08-10 15:16:27 +02:00
Manuel Thalmann b630f3da24 Redirect user for configuration properly 2024-08-10 15:16:00 +02:00
Manuel Thalmann 9de3de5bb2 Fix broken redirection of arguments 2024-08-10 15:15:40 +02:00
Manuel Thalmann 89abeada06 Determine installer action properly 2024-08-10 15:15:21 +02:00
Manuel Thalmann adff725fbd Redirect arguments to chocolatey properly 2024-08-10 15:13:46 +02:00
Manuel Thalmann e743af0944 Fix non-functioning OneShot script 2024-08-10 15:13:20 +02:00
Manuel Thalmann ad01cd2470 Fix oneshot task execution 2024-08-10 06:11:55 +02:00
Manuel Thalmann b8582e6432 Allow removing the OneShot listener 2024-08-10 05:19:24 +02:00
Manuel Thalmann 1452871873 Remove duplicate code 2024-08-10 05:17:08 +02:00
Manuel Thalmann 4f52273757 Fix typo 2024-08-10 03:57:37 +02:00
Manuel Thalmann 4a7b3ef411 Fix copy paste error 2024-08-10 03:57:26 +02:00
Manuel Thalmann 2b8a386f79 Allow skipping the User parameter 2024-08-10 03:40:37 +02:00
Manuel Thalmann ff9a3eeedc Fix incorrect script path 2024-08-10 03:13:13 +02:00
Manuel Thalmann 9aaefb2cf0 Fix broken scripts 2024-08-10 01:50:52 +02:00
Manuel Thalmann ca1d4be8fc Remove unnecessary confirmation dialogue 2024-08-10 00:23:47 +02:00
Manuel Thalmann e83e501fe5 Add a task for disabling UAC 2024-08-10 00:23:37 +02:00
Manuel Thalmann 9c47271f95 Force creation of sudo alias 2024-08-10 00:22:46 +02:00
Manuel Thalmann 4eb61d8604 Allow execution of OneShot tasks 2024-08-10 00:22:30 +02:00
Manuel Thalmann 29a52b02de Ensure CONFIG_MODULE is resolved 2024-08-09 23:23:55 +02:00
Manuel Thalmann 171dee2216 Add dedicated functions for creating startup scripts 2024-08-09 23:23:29 +02:00
Manuel Thalmann d758864fdc Change login message 2024-08-09 22:11:12 +02:00
Manuel Thalmann 026b236783 Set up shared WSL 2024-08-09 16:02:33 +02:00
Manuel Thalmann e4883badcc Install updates only as admin 2024-08-09 16:02:24 +02:00
Manuel Thalmann 14055fcca3 Disable boot message only as admin 2024-08-09 16:02:00 +02:00
Manuel Thalmann b1b06bb152 Add a function for allowing user access 2024-08-09 15:56:16 +02:00
Manuel Thalmann 17b8a79adf Fix broken reboot registration 2024-08-09 15:49:36 +02:00
Manuel Thalmann 3c0771e96b Ensure the script path is detected properly 2024-08-09 14:45:50 +02:00
Manuel Thalmann 3accbc7bfb Allow automatic script execution for MS accounts 2024-08-09 14:45:29 +02:00
Manuel Thalmann e42341151d Reorder winget arguments 2024-08-09 14:45:05 +02:00
Manuel Thalmann f93032a6e4 Allow registering reboot for the default user 2024-08-09 14:44:57 +02:00
Manuel Thalmann 1a5dbd7b2d Add a dedicated function for disabling boot message 2024-08-09 13:35:12 +02:00
Manuel Thalmann 8562946aff Implement root install loop using a switch 2024-08-09 13:34:46 +02:00
Manuel Thalmann 950e6dc761 Force computer reboots 2024-08-09 04:42:55 +02:00
Manuel Thalmann c58cc3bbc5 Add scripts for controlling UAC 2024-08-09 04:29:26 +02:00
Manuel Thalmann 12ea3e0a51 Set displayname of all users 2024-08-09 04:20:00 +02:00
Manuel Thalmann 9acbee077c Login to users for configuration 2024-08-09 04:19:49 +02:00
Manuel Thalmann 93cdf65779 Skip PWSH_PATH if undefined 2024-08-09 04:08:22 +02:00
Manuel Thalmann 135cd8e218 Fix typo 2024-08-09 03:38:10 +02:00
Manuel Thalmann e55e6a5a5a Add missing setup stage 2024-08-09 03:02:25 +02:00
Manuel Thalmann de7ac289fb Make Get-Users output explicit 2024-08-09 03:02:17 +02:00
Manuel Thalmann db0f62541e Allow displaying a boot message 2024-08-09 02:59:06 +02:00
Manuel Thalmann 3d85667773 Disable users by default 2024-08-09 02:58:01 +02:00
Manuel Thalmann 98d1ddb4d3 Add a stage for configuring users 2024-08-09 02:27:24 +02:00
Manuel Thalmann 9dbed50916 Detect installation properly 2024-08-09 02:24:59 +02:00
Manuel Thalmann fbeeb6532e Remove unnecessary icon 2024-08-09 02:23:56 +02:00
Manuel Thalmann ef6c2b4a1b Add Predator Z301C to the hardware list 2024-08-09 02:23:41 +02:00
Manuel Thalmann 2f63463912 Add support for the sudo command 2024-08-09 02:22:45 +02:00
Manuel Thalmann a0ddf0c8aa Fix renaming user 2024-08-09 02:20:27 +02:00
Manuel Thalmann 845072bff9 Make specifying PWSH_PATH optional 2024-08-09 02:12:27 +02:00
Manuel Thalmann faee0ec687 Show error properly 2024-08-09 02:00:18 +02:00
Manuel Thalmann f4babf06d6 Fix typo 2024-08-09 01:53:59 +02:00
Manuel Thalmann 92a7b89523 Remove code duplication 2024-08-09 01:33:04 +02:00
Manuel Thalmann 9e19daced2 Remove unnecessary console output 2024-08-09 01:22:51 +02:00
Manuel Thalmann 2ed68c6c30 Fix incorrect file paths 2024-08-09 00:17:05 +02:00
Manuel Thalmann b0cc36559c Fix incorrect hardware name 2024-08-09 00:03:45 +02:00
Manuel Thalmann 6db73090bd Reorder installation steps 2024-08-08 23:03:10 +02:00
Manuel Thalmann cc84c185af Suppress unnecessary output 2024-08-08 22:24:41 +02:00
Manuel Thalmann f217f8bd49 Refactor the wsl installation check 2024-08-08 22:21:49 +02:00
Manuel Thalmann 03e41982a4 Ensure WSL Ubuntu is installed 2024-08-08 22:08:13 +02:00
Manuel Thalmann 9dc4380a2c Make config script platform independent 2024-08-08 18:21:16 +02:00
Manuel Thalmann 084058c266 Leave groups unspecified 2024-08-08 17:50:32 +02:00
Manuel Thalmann ee2a745308 Add users during installation 2024-08-08 17:49:43 +02:00
Manuel Thalmann 1a0ecce652 Fix incorrect user conversion 2024-08-08 17:16:51 +02:00
Manuel Thalmann 951700b298 Keep Windows groups separate 2024-08-08 15:33:55 +02:00
Manuel Thalmann 4d31b476cb Remove unnecessary options from Win users 2024-08-08 15:32:05 +02:00
Manuel Thalmann dd1bc94d75 Inherit Windows users from linux 2024-08-08 15:28:29 +02:00
Manuel Thalmann 976fec72ad Add functions for retrieving attributes 2024-08-08 14:45:34 +02:00
Manuel Thalmann 99aae05304 Install Oh My Posh system wide 2024-08-08 14:23:15 +02:00
Manuel Thalmann 8916c3b544 Fix typo 2024-08-08 14:22:22 +02:00
Manuel Thalmann 0297a7d8d5 Skip scope argument by default 2024-08-08 14:22:13 +02:00
Manuel Thalmann c1ae5de780 Fix incorrect file paths 2024-08-08 14:21:55 +02:00
Manuel Thalmann d3c5810149 Configure NVS after installation 2024-08-08 14:09:20 +02:00
Manuel Thalmann 99e9542053 Refactor app association script 2024-08-08 14:09:07 +02:00
Manuel Thalmann 049f7771d2 Fix typo 2024-08-08 14:08:48 +02:00
Manuel Thalmann 6111236dc0 Apply the error action globally 2024-08-08 14:08:38 +02:00
Manuel Thalmann de30c36dd5 Move PinnedItem script to proper location 2024-08-08 14:04:51 +02:00
Manuel Thalmann 85c9436eec Add notes to installation script 2024-08-08 14:03:15 +02:00
Manuel Thalmann 20267c21ac Add a script for installing LGHub 2024-08-08 13:25:21 +02:00
Manuel Thalmann 2584798683 Reorder installation steps 2024-08-08 13:17:14 +02:00
Manuel Thalmann 2abec73f45 Reload env after installing git 2024-08-08 12:18:04 +02:00
Manuel Thalmann c8c3b03773 Enure features for PinnedItem are installed 2024-08-08 05:21:21 +02:00
Manuel Thalmann 940e63376c Install features using chocolatey 2024-08-08 05:20:58 +02:00
Manuel Thalmann b45f27adf6 Ensure git is installed 2024-08-08 05:14:31 +02:00
Manuel Thalmann b7ff8f8cac Fix broken XML document creation 2024-08-08 05:04:59 +02:00
Manuel Thalmann 92df913e97 Fix incorrect parameter access 2024-08-08 05:03:24 +02:00
Manuel Thalmann a172b50077 Fix incorrect path 2024-08-08 05:01:45 +02:00
Manuel Thalmann 9a0ccd4064 Add a dedicated user option for windows 2024-08-08 04:45:27 +02:00
Manuel Thalmann 425b364df2 Add a stage for creating users 2024-08-08 04:38:40 +02:00
Manuel Thalmann 97a2826f9a Add scripts for all remaining apps 2024-08-08 04:36:35 +02:00
Manuel Thalmann db7d4cd4fd Allow custom winget arguments 2024-08-08 04:29:00 +02:00
Manuel Thalmann 1d0523dd4e Improve winget function 2024-08-08 04:28:21 +02:00
Manuel Thalmann 6216f8ec9d Add missing function 2024-08-08 04:20:11 +02:00
Manuel Thalmann e63c3251d8 Refactor browser scripts 2024-08-08 03:32:03 +02:00
Manuel Thalmann d9a4ad03dd Ensure Selenium is imported 2024-08-08 02:59:02 +02:00
Manuel Thalmann 5656d97f13 Allow skipping the Action argument 2024-08-08 02:56:28 +02:00
Manuel Thalmann 21e0ff7c1a Rename all old installation scripts 2024-08-08 02:56:13 +02:00
Manuel Thalmann beecfde14b Add options for enabling LG Hub 2024-08-08 02:29:51 +02:00
Manuel Thalmann f8f9d82f01 Remove Firefox taskbar icon 2024-08-08 02:29:09 +02:00
Manuel Thalmann 673d7f980c Allow removing task bar icons 2024-08-08 02:28:40 +02:00
Manuel Thalmann a7e56d8a5d Allow installing modules native only 2024-08-08 02:28:23 +02:00
Manuel Thalmann eefeb87743 Rename old LGHub script 2024-08-08 02:27:39 +02:00
Manuel Thalmann 99ccd9b481 Add missing config 2024-08-08 01:51:21 +02:00
Manuel Thalmann 5da514091d Rename PuTTY script 2024-08-08 00:51:45 +02:00
Manuel Thalmann e53fc96437 Fix permission issue 2024-08-08 00:48:18 +02:00
Manuel Thalmann 01350c4305 Add scripts for installing Tobii apps 2024-08-08 00:06:49 +02:00
Manuel Thalmann d594f78cb2 Copy keyboard layout to welcome screen 2024-08-07 23:53:26 +02:00
Manuel Thalmann dafb161cbe Add scripts for desktop apps 2024-08-07 23:53:12 +02:00
Manuel Thalmann c004ffd3fa Rename old Nextcloud script 2024-08-07 23:45:56 +02:00
Manuel Thalmann 687c47fc99 Configure user only outside of setup 2024-08-07 23:30:29 +02:00
Manuel Thalmann ddb25b43b5 Add a script for installing Oh My Posh 2024-08-07 23:22:04 +02:00
Manuel Thalmann 87cfe2b54e Fix incorrect installation filter 2024-08-07 23:20:28 +02:00
Manuel Thalmann 734cd48f9b Fix profile script for individual profiles 2024-08-07 23:18:44 +02:00
Manuel Thalmann b9a7f4cffd Show messages if packages are installed 2024-08-07 23:18:23 +02:00
Manuel Thalmann f2dc82e2b7 Fix incorrect package check 2024-08-07 23:17:07 +02:00
Manuel Thalmann 80e5c435a3 Refactor default winget parameters 2024-08-07 22:56:42 +02:00
Manuel Thalmann 5ceb3c205b Add scripts for installing PS modules 2024-08-07 22:55:25 +02:00
Manuel Thalmann a25783a44a Allow skipping PowerShell profile files 2024-08-07 22:25:42 +02:00
Manuel Thalmann c500883386 Resolve dependency loop 2024-08-07 21:54:58 +02:00
Manuel Thalmann c15b72d5b1 Remove unnecessary statement 2024-08-07 21:53:26 +02:00
Manuel Thalmann 3598a10216 Refactor chocolatey script 2024-08-07 21:50:21 +02:00
Manuel Thalmann bb3a37c3ec Pass arguments to software script 2024-08-07 21:37:33 +02:00
Manuel Thalmann 63aa399f91 Use internal OS detection 2024-08-07 21:35:03 +02:00
Manuel Thalmann f7aec5253e Refactor PowerShell profile script 2024-08-07 21:34:40 +02:00
Manuel Thalmann fb4f30018c Move scripts properly 2024-08-07 21:05:32 +02:00
Manuel Thalmann 82a28e1323 Add scripts for installing PowerShell 2024-08-07 20:30:12 +02:00
Manuel Thalmann 77afa05acd Rename PowerShell script directory 2024-08-07 19:08:13 +02:00
Manuel Thalmann fbf3c049b1 Add script for installing Thunderbird 2024-08-07 18:57:27 +02:00
Manuel Thalmann ae8b9ac43f Install drivers in proper phase 2024-08-07 18:54:07 +02:00
Manuel Thalmann a1a6909a12 Add a script for installing WinSCP 2024-08-07 18:30:14 +02:00
Manuel Thalmann e10241c12c Refactor app association script 2024-08-07 18:29:20 +02:00
Manuel Thalmann 89fa04aab6 Prevent reboot during WaveLink installation 2024-08-07 18:01:17 +02:00
Manuel Thalmann 39608e51ea Add scripts for installing drivers 2024-08-07 16:17:49 +02:00
Manuel Thalmann 68691e38e1 Add script for installing AMD packages 2024-08-07 15:25:12 +02:00
Manuel Thalmann 57a44a42a7 Add missing package for selenium 2024-08-07 15:24:56 +02:00
Manuel Thalmann 3694eca1c8 Ensure correct types for setting download dir 2024-08-07 15:24:37 +02:00
Manuel Thalmann 7b38c7bc37 Add a script for installing ASUS packages 2024-08-07 14:40:24 +02:00
Manuel Thalmann 1eeb391454 Refactor browser automation scripts 2024-08-07 14:28:26 +02:00
Manuel Thalmann c9fc08dfd6 Execute winget script in a module 2024-08-07 13:36:47 +02:00
Manuel Thalmann d96408a32e Install components for browser automation 2024-08-07 13:36:31 +02:00
Manuel Thalmann 00e5ecba1f Add functions for installing choco and winget packages 2024-08-07 13:22:12 +02:00
Manuel Thalmann d34e074d57 Add a function for checking winget packages 2024-08-07 13:18:29 +02:00
Manuel Thalmann 3d9db2c5c3 Enhance the winget install check 2024-08-07 03:34:12 +02:00
Manuel Thalmann 3876ca99e0 Add a function for checking NuGet packages 2024-08-07 03:23:59 +02:00
Manuel Thalmann 6900cf65e2 Fix non-functioning script 2024-08-07 03:23:21 +02:00
Manuel Thalmann 25e0a560ba Install PowerShell modules after removing old copy 2024-08-06 18:19:33 +02:00
Manuel Thalmann df7798fb26 Add config for declaring hardware 2024-08-06 17:23:20 +02:00
Manuel Thalmann 49c83dd364 Silence unnecessary output 2024-08-06 17:07:57 +02:00
Manuel Thalmann 4e4d273cc7 Add a separate function for executing software actions 2024-08-06 16:54:11 +02:00
Manuel Thalmann f4f568dafe Add a function for checking whether a setup is being run 2024-08-06 14:32:37 +02:00
Manuel Thalmann e9751cafa9 Determine software script name properly 2024-08-06 12:21:48 +02:00
Manuel Thalmann 2fd4d5a726 Fix incorrect path 2024-08-06 12:21:00 +02:00
Manuel Thalmann e7f6540815 Fix incorrectly imported modules 2024-08-06 11:39:57 +02:00
Manuel Thalmann 1f4e7a7720 Fix incorrect XPaths 2024-08-06 11:39:48 +02:00
Manuel Thalmann b11dc31403 Create Windows image as normal user 2024-08-06 11:39:34 +02:00
Manuel Thalmann 9f71d9f644 Make the name of the setup user look more Windows like 2024-08-06 11:39:05 +02:00
Manuel Thalmann 58c8b7b542 Set the name of the setup user properly 2024-08-06 10:22:50 +02:00
Manuel Thalmann 13b430bf79 Add scripts for installing essential software 2024-08-06 00:04:02 +02:00
Manuel Thalmann fd000aa78b Add a function for removing desktop icons 2024-08-06 00:02:07 +02:00
Manuel Thalmann 3fecc04ed0 Add an option for showing file extensions 2024-08-05 23:22:22 +02:00
Manuel Thalmann 6a25230444 Ensure the environment variables are always set properly 2024-08-05 23:09:58 +02:00
Manuel Thalmann 7d13434496 Fix incorrect argument initialization 2024-08-05 23:08:36 +02:00
Manuel Thalmann e05cf27941 Ensure Arguments contains an object 2024-08-05 22:51:29 +02:00
Manuel Thalmann f6d81c14b5 Fix argument redirection 2024-08-05 22:49:44 +02:00
Manuel Thalmann 6cf83d1a70 Fix non-functioning script 2024-08-05 22:45:17 +02:00
Manuel Thalmann 129b79d33c Allow running further installer actions within an installer 2024-08-05 22:29:20 +02:00
Manuel Thalmann 06297fd9eb Refactor windows configuration script 2024-08-05 20:07:39 +02:00
Manuel Thalmann e722160669 Add settings for customizing windows 2024-08-05 19:12:59 +02:00
Manuel Thalmann 8b0471d049 Refactor software script environment 2024-08-05 00:07:41 +02:00
Manuel Thalmann b25b760f7d Set CONFIG_MODULE to full path by default 2024-08-02 01:57:31 +02:00
Manuel Thalmann 7f0e9df340 Enter next stage after configuration 2024-08-02 01:44:56 +02:00
Manuel Thalmann cc2cbcaecb Make config module persist in WSL 2024-08-02 00:47:33 +02:00
Manuel Thalmann 05820920a0 Ensure arguments are passed to fish 2024-08-01 23:36:03 +02:00
Manuel Thalmann c3f79fe92b Fix installer script structure 2024-08-01 23:34:35 +02:00
Manuel Thalmann 329458caa7 Declare InstallerAction in a separate file 2024-08-01 22:52:51 +02:00
Manuel Thalmann e7c6c8106c Ensure necessary modules are imported 2024-08-01 21:49:46 +02:00
Manuel Thalmann 775e88ad82 Import SetupStage enum into installation module 2024-08-01 21:32:33 +02:00
Manuel Thalmann ea94c6fa10 Pause on error by default 2024-08-01 21:08:31 +02:00
Manuel Thalmann edd9168b10 Display the software name during installation 2024-08-01 21:06:03 +02:00
Manuel Thalmann 1fcf4ef21e Fix non-functioning command 2024-08-01 20:34:55 +02:00
Manuel Thalmann 9b59ae9c5a Remove non-existent script 2024-08-01 19:10:10 +02:00
Manuel Thalmann 379970e3f6 Nest installation functions in a module 2024-08-01 19:02:12 +02:00
Manuel Thalmann 7ae59c021a Install winget if nonexistent 2024-08-01 18:58:33 +02:00
Manuel Thalmann 066b9b8b7e Use the new commands 2024-08-01 18:36:47 +02:00
Manuel Thalmann c1ac5d2669 Add dedicated commands for checking software 2024-08-01 18:35:45 +02:00
Manuel Thalmann e8b7977d2a Add a script for managing software 2024-08-01 18:24:26 +02:00
Manuel Thalmann fa67e12fa3 Fix nix installation check 2024-08-01 18:05:10 +02:00
Manuel Thalmann 4807c6f8e8 Make nix visible to WSL 2024-08-01 18:03:48 +02:00
Manuel Thalmann 15acc53389 Add a function for getting the users to create 2024-08-01 17:56:42 +02:00
Manuel Thalmann f8fe78936c Rename the file containing software functions 2024-08-01 17:38:59 +02:00
Manuel Thalmann c952b1701d Configure clock for dualboot systems 2024-08-01 16:32:03 +02:00
Manuel Thalmann 1a4e294750 Enter configuration stage if nix exists 2024-08-01 16:28:48 +02:00
Manuel Thalmann 3602cbbf83 Reboot WSL to pick up nix 2024-08-01 16:25:18 +02:00
Manuel Thalmann 600ad30a55 Add a function for retrieving nix options 2024-08-01 16:12:58 +02:00
Manuel Thalmann 33297747b8 Make CONFIG_MODULE available in WSL 2024-08-01 14:39:44 +02:00
Manuel Thalmann bd6964a37b Install WSL and nix by default 2024-08-01 14:06:40 +02:00
Manuel Thalmann bdf5254f66 Rename config module file 2024-08-01 12:39:27 +02:00
Manuel Thalmann d48d4a08df Reword log messages 2024-08-01 12:32:43 +02:00
Manuel Thalmann 9921890e4d Fix syntax error 2024-08-01 12:31:25 +02:00
Manuel Thalmann b97ccd863c Import scripting module inside the PowerManagement module 2024-08-01 12:24:28 +02:00
Manuel Thalmann 0adace7d6e Add scripts for updating windows 2024-08-01 02:59:32 +02:00
Manuel Thalmann 6793736c3a Fix errors in the PowerManagement module 2024-08-01 02:19:05 +02:00
Manuel Thalmann e67122b20b Fix syntax error 2024-08-01 01:22:23 +02:00
Manuel Thalmann 54b8d227ff Fix incorrect documentation comment 2024-07-31 23:10:21 +02:00
Manuel Thalmann 2ead5ea7ad Fix handling of setup stages 2024-07-31 22:33:37 +02:00
Manuel Thalmann 7fcb36dd1c Set registry values properly 2024-07-31 22:33:16 +02:00
Manuel Thalmann f0f43a30bd Display console output of hooks 2024-07-31 22:18:47 +02:00
Manuel Thalmann 76cb8e5125 Store stages using their name 2024-07-31 16:52:49 +02:00
Manuel Thalmann a4b88c183d Refactor the installation loop architecture 2024-07-31 16:25:32 +02:00
Manuel Thalmann d6919a2c98 Implement install loop properly 2024-07-31 16:15:09 +02:00
Manuel Thalmann 5de8554b13 Implement the windows installation in a loop 2024-07-31 16:09:50 +02:00
Manuel Thalmann ed3455ffb1 Recreate script to first install pwsh 2024-07-31 15:52:41 +02:00
Manuel Thalmann 3f6700b98e Normalize script formatting 2024-07-31 15:52:23 +02:00
Manuel Thalmann add008c791 Add a script for managing setup options 2024-07-31 15:42:02 +02:00
Manuel Thalmann c0b215bcce Add a script for rebooting the computer 2024-07-31 15:41:45 +02:00
Manuel Thalmann 73dbb502ba Add a separate script for injecting values into scripts 2024-07-31 14:55:00 +02:00
Manuel Thalmann 3f24abdb89 Add a script for checking for installed choco packages 2024-07-31 14:53:21 +02:00
Manuel Thalmann 08a8ef4b96 Copy pwsh to newly setup windows systems 2024-07-31 14:47:42 +02:00
Manuel Thalmann 3be5bd7535 Rename old windows installation script 2024-07-30 18:47:01 +02:00
Manuel Thalmann 9a2a78fb76 Add a function for executing hooks 2024-07-30 18:34:19 +02:00
Manuel Thalmann 87ef1167fe Enable rclone services properly 2024-07-30 17:42:29 +02:00
Manuel Thalmann aa958b2656 Disable root bash login during installation 2024-07-30 00:54:43 +02:00
Manuel Thalmann 01ae7ce2d0 Silence unnecessary output 2024-07-30 00:53:20 +02:00
Manuel Thalmann 069c8a3330 Install vscode extensions for each user 2024-07-30 00:53:10 +02:00
Manuel Thalmann 882aac5c30 Fix installation of brave extensions 2024-07-30 00:52:55 +02:00
Manuel Thalmann 0da7130de1 Fix non-functioning installation scripts 2024-07-30 00:52:35 +02:00
Manuel Thalmann 87c5c5d140 Fix missing variables 2024-07-30 00:51:50 +02:00
Manuel Thalmann a2b8c2b395 Fix non-functioning command 2024-07-29 23:46:14 +02:00
Manuel Thalmann 4c9aca739d Load dualboot sizes from nix 2024-07-29 01:44:12 +02:00
Manuel Thalmann 40fefb9f36 Improve handling of wmic output 2024-07-29 01:22:42 +02:00
Manuel Thalmann a7595096ba Save unnecessary space 2024-07-29 00:10:07 +02:00
Manuel Thalmann 4101a6105f Allow overwriting packages 2024-07-28 23:45:30 +02:00
Manuel Thalmann f6671515dd Generate locales in proper system 2024-07-28 23:45:09 +02:00
Manuel Thalmann 4326044af9 Execute userConfig for current user only once 2024-07-28 23:44:58 +02:00
Manuel Thalmann 69ac0b990c Prevent userConfig from execute multiple times 2024-07-28 23:43:11 +02:00
Manuel Thalmann 4daf222ec3 Nest Windows setup in a function 2024-07-28 20:52:07 +02:00
Manuel Thalmann 1a0b63a181 Configure Windows on DerGeret 2024-07-28 17:14:38 +02:00
Manuel Thalmann b5e798564b Inherit missing variable 2024-07-28 17:01:24 +02:00
Manuel Thalmann 566a3f025b Fix aliae configuration 2024-07-28 16:57:47 +02:00
Manuel Thalmann 18b4405441 Fix broken profile creation 2024-07-28 16:57:36 +02:00
Manuel Thalmann a790f16c7f Inherit missing variables 2024-07-28 15:25:03 +02:00
Manuel Thalmann 0b21d0af7c Run setup of der-geret using fish 2024-07-28 12:45:05 +02:00
Manuel Thalmann 07ba5dfeb6 Mark all fish scripts as executable 2024-07-28 12:32:08 +02:00
Manuel Thalmann 58e97cb051 Make nix config accessible in scripts 2024-07-28 12:16:01 +02:00
Manuel Thalmann 712980ed67 Dump windows config for use during setup 2024-07-28 11:26:13 +02:00
Manuel Thalmann b7a6131732 Add options for setting up windows 2024-07-28 01:56:41 +02:00
Manuel Thalmann 60931884a0 Fix confusing filename 2024-07-28 00:28:10 +02:00
Manuel Thalmann dc0f8e08f1 Remove redundant script 2024-07-28 00:27:25 +02:00
Manuel Thalmann 6fef809d62 Run installer script after initialization 2024-07-27 23:18:04 +02:00
Manuel Thalmann c8a3969f02 Ensure iso directory exists 2024-07-27 22:04:40 +02:00
Manuel Thalmann 0b6dc6415a Prevent unnecessary variables 2024-07-27 22:04:08 +02:00
Manuel Thalmann 6147037a97 Pass boot script path via env variable 2024-07-27 18:59:47 +02:00
Manuel Thalmann dae62d599a Pass label of setup disk as variable 2024-07-26 14:46:58 +02:00
Manuel Thalmann 4865c35a92 Store installer drive as env variable 2024-07-26 14:43:12 +02:00
Manuel Thalmann 5b6db497e4 Copy repository settings 2024-07-26 14:43:02 +02:00
Manuel Thalmann 25fc71c379 Pass the project path in to the installation script 2024-07-26 14:29:45 +02:00
Manuel Thalmann 198679d8d5 Store PortValhalla in installation disk 2024-07-26 13:32:37 +02:00
Manuel Thalmann fd259f11cb Ensure to always remove all leftovers 2024-07-25 20:02:47 +02:00
Manuel Thalmann e47c516928 Migrate the winiso project 2024-07-25 00:03:35 +02:00
Manuel Thalmann 3a937d84ed Remove unnecessary config 2024-07-20 16:26:38 +02:00
Manuel Thalmann 5653cea25a Configure for current user if none is specified 2024-07-20 14:06:25 +02:00
Manuel Thalmann 61865cd615 Remove unnecessary statement 2024-07-20 14:04:09 +02:00
Manuel Thalmann 96e1bde7a0 Add a function for checking whether a configuration is applied 2024-07-20 14:03:35 +02:00
Manuel Thalmann 4418e99219 Remove default value of CONFIG_MODULE 2024-07-20 14:02:36 +02:00
Manuel Thalmann 2d90b90114 Remove necessity of nix config 2024-07-20 13:54:04 +02:00
Manuel Thalmann 02e4c18f6c Create rclone syncs during setup 2024-07-20 13:47:07 +02:00
Manuel Thalmann 0fba56a299 Preserve environment while running dbus session 2024-07-20 05:14:09 +02:00
Manuel Thalmann f267b9d023 Fix typo 2024-07-20 05:09:42 +02:00
Manuel Thalmann 2354dcf412 Force json output appropriately 2024-07-20 05:09:13 +02:00
Manuel Thalmann 913daa8b6d Add a script draft for configuring rclone 2024-07-20 05:08:23 +02:00
Manuel Thalmann 42263d82dd Format config file 2024-07-20 04:35:58 +02:00
Manuel Thalmann 9ebbca3b3c Load the default shell from the user config 2024-07-20 04:35:41 +02:00
Manuel Thalmann a72fd9d045 Split nix configuration properly 2024-07-20 04:31:09 +02:00
Manuel Thalmann 62a9c1e577 Fix typo 2024-07-20 04:23:51 +02:00
Manuel Thalmann 1e3d8d8338 Prevent changing the working directory 2024-07-20 04:17:42 +02:00
Manuel Thalmann 7c10903947 Add separate method for configuring git 2024-07-20 04:06:41 +02:00
Manuel Thalmann 6274ec1012 Add function for configuring user settings 2024-07-20 03:50:38 +02:00
Manuel Thalmann 566f0d711f Stop keeping track of installed software 2024-07-20 03:32:53 +02:00
Manuel Thalmann dfdc053acf Call software scripts using individual fish commands 2024-07-20 03:27:36 +02:00
Manuel Thalmann f56c6ec7a6 Remove unnecessary statement 2024-07-20 03:27:20 +02:00
Manuel Thalmann 4143dbff02 Add users before installing software 2024-07-20 03:13:17 +02:00
Manuel Thalmann 0579819444 Read config keys properly 2024-07-20 01:59:33 +02:00
Manuel Thalmann bf50ee7d59 Fix string formatting 2024-07-20 01:57:06 +02:00
Manuel Thalmann df3ba81e12 Fix malformed installer script 2024-07-20 01:51:14 +02:00
Manuel Thalmann 68703e2353 Fix variable inheritance 2024-07-20 01:46:11 +02:00
Manuel Thalmann 75f1839275 Fix configuration target 2024-07-20 01:43:53 +02:00
Manuel Thalmann e8a752eb4c Fix use of incorrect config keys 2024-07-20 01:38:53 +02:00
Manuel Thalmann ffa8c19358 Fix variable visibility 2024-07-20 01:36:22 +02:00
Manuel Thalmann c073db286f Ignore installation status by default 2024-07-20 01:32:42 +02:00
Manuel Thalmann d79edb4127 Allow user-defined git config 2024-07-20 01:31:04 +02:00
Manuel Thalmann 34523d0ae3 Allow flagging git as installed 2024-07-20 01:23:08 +02:00
Manuel Thalmann a2848a3965 Allow marking software as installed 2024-07-20 01:21:25 +02:00
Manuel Thalmann 501aa51876 Fix string formatting 2024-07-20 01:03:20 +02:00
Manuel Thalmann 074784fec2 Fix permission issues 2024-07-20 00:59:11 +02:00
Manuel Thalmann 527aa8c43b Remove test code 2024-07-20 00:47:48 +02:00
Manuel Thalmann 6bd2844efb Add users from configuration 2024-07-20 00:46:02 +02:00
Manuel Thalmann af53a09b17 Add configurations for specifying users 2024-07-20 00:45:20 +02:00
Manuel Thalmann d90db841e8 Allow applying custom functions during evaluation 2024-07-20 00:36:19 +02:00
Manuel Thalmann 069d72d081 Generate locales during setup 2024-07-19 21:18:20 +02:00
Manuel Thalmann d6839aa6c4 Silence unnecessary console output 2024-07-17 16:41:42 +02:00
Manuel Thalmann 34d55d376d Fix creation of vscode config files 2024-07-17 16:39:03 +02:00
Manuel Thalmann 67f28b5b79 Load missing variable 2024-07-17 16:33:59 +02:00
Manuel Thalmann 3567eee45f Force installing iptables-nft 2024-07-17 16:18:31 +02:00
Manuel Thalmann 9d50d587c8 Load missing variable 2024-07-17 16:04:57 +02:00
Manuel Thalmann 902fc64993 Remove unnecessary statement 2024-07-17 15:59:09 +02:00
Manuel Thalmann 61258ef835 Install logo-ls only if not present 2024-07-17 15:54:53 +02:00
Manuel Thalmann 05f96a97d3 Normalize casing of firefox directory 2024-07-17 15:54:09 +02:00
Manuel Thalmann 2a6f3ea5f8 Add missing packages 2024-07-17 15:49:30 +02:00
Manuel Thalmann 303082fcc4 Fix permission error 2024-07-17 15:22:41 +02:00
Manuel Thalmann 4b37950bc8 Install bb at the end 2024-07-17 15:08:27 +02:00
Manuel Thalmann 4d0c64a8da Fix typo 2024-07-17 15:00:26 +02:00
Manuel Thalmann 35e77dd7e6 Fix incorrect paths 2024-07-17 15:00:01 +02:00
Manuel Thalmann d26786c576 Fix typo 2024-07-17 14:55:30 +02:00
Manuel Thalmann 60af9361c8 Add scripts for installing school software 2024-07-17 14:26:01 +02:00
Manuel Thalmann e2e5b9a02d Streamline installation of all further software 2024-07-17 14:18:27 +02:00
Manuel Thalmann 7461c19802 Silence unnecessary console output 2024-07-17 10:25:41 +02:00
Manuel Thalmann 1aaebb4743 Fix syntax error 2024-07-17 01:07:27 +02:00
Manuel Thalmann 18dc5894a8 Enable minegrub theme by default 2024-07-16 23:35:12 +02:00
Manuel Thalmann 2a997ab16e Change label of the Arch boot entry properly 2024-07-16 23:33:02 +02:00
Manuel Thalmann a4099a6639 Silence unnecessary output 2024-07-16 23:32:46 +02:00
Manuel Thalmann 8cd8ccf4b5 Fix permission error 2024-07-16 23:13:41 +02:00
Manuel Thalmann a2cf20b9ff Streamline minegrub-theme installation 2024-07-16 23:11:27 +02:00
Manuel Thalmann 49502a7055 Streamline GRUB installation 2024-07-16 22:18:39 +02:00
Manuel Thalmann 8199394711 Allow configuring GRUB in the nix config 2024-07-16 22:17:55 +02:00
Manuel Thalmann a3fea2f5cc Configure nix during setup 2024-07-16 22:17:07 +02:00
Manuel Thalmann 2674c93f68 Add a hook for installing dependencies 2024-07-16 22:16:21 +02:00
Manuel Thalmann 5aa296ca7c Reorder installation steps 2024-07-16 22:15:37 +02:00
Manuel Thalmann 2846db7056 Include missing script file 2024-07-16 22:12:19 +02:00
Manuel Thalmann 3981a49810 Fix broken sddm configuration 2024-07-16 22:12:07 +02:00
Manuel Thalmann 122fe67a85 Allow specifying custom chroot command 2024-07-16 22:10:42 +02:00
Manuel Thalmann f570c554f5 Handle partition loading time 2024-07-16 18:50:24 +02:00
Manuel Thalmann e0d41f96cf Allow executing scripts while installing OS 2024-07-16 16:13:34 +02:00
Manuel Thalmann cd5f68d0ef Implement os setup using a function 2024-07-16 15:22:15 +02:00
Manuel Thalmann f4f74a6aaa Streamline GUI app installation 2024-07-16 14:56:49 +02:00
Manuel Thalmann d6f7816840 Create a "desktop experience" software category 2024-07-16 14:36:53 +02:00
Manuel Thalmann 33d6077b9c Create separate module for controlling software 2024-07-16 14:34:32 +02:00
Manuel Thalmann 6f3ed5b63a Streamline zoxide installation 2024-07-16 14:28:32 +02:00
Manuel Thalmann 19f06da930 Fix incomplete installation 2024-07-16 14:28:06 +02:00
Manuel Thalmann 802e8c6ff5 Set profile title by default 2024-07-16 14:15:05 +02:00
Manuel Thalmann 01e19d03e4 Relocate powershell profile script 2024-07-16 14:06:19 +02:00
Manuel Thalmann ecb925a6fd Replace aliae config with default bash profile 2024-07-16 03:36:51 +02:00
Manuel Thalmann 864a920ba7 Add aliae to the skel 2024-07-16 03:30:25 +02:00
Manuel Thalmann 0d909f5a5a Streamline aliae installation 2024-07-16 03:30:14 +02:00
Manuel Thalmann a27d43bc7a Copy repo using rsync 2024-07-16 01:33:08 +02:00
Manuel Thalmann 447d09fa7e Remove non-functioning symbols 2024-07-16 01:05:29 +02:00
Manuel Thalmann 7eccacc078 Automatically reboot the machine 2024-07-16 01:05:06 +02:00
Manuel Thalmann ebb96129f0 Add further initialization packages 2024-07-15 20:51:20 +02:00
Manuel Thalmann 24b9c7a0a9 Specify default git settings 2024-07-15 20:24:59 +02:00
Manuel Thalmann 75c29a7b86 Load git config from nix 2024-07-15 20:24:47 +02:00
Manuel Thalmann 2427b82411 Add jq to fresh Arch installations 2024-07-15 20:20:44 +02:00
Manuel Thalmann 8822cee673 Fix syntax error 2024-07-15 20:19:52 +02:00
Manuel Thalmann e1c01175df Fix incorrect rsync command 2024-07-15 20:19:06 +02:00
Manuel Thalmann c8e133fedc Fix permission issue 2024-07-15 19:58:56 +02:00
Manuel Thalmann 0ff3a74378 Fix empty diff sections 2024-07-15 19:30:27 +02:00
Manuel Thalmann 95daef9ac9 Set git config system wide 2024-07-15 14:58:54 +02:00
Manuel Thalmann dc2f8ef3c3 Set git config system wide 2024-07-15 14:47:06 +02:00
Manuel Thalmann a3d2bed4cf Add a function to check whether a config is set 2024-07-15 14:14:07 +02:00
Manuel Thalmann 474ac2d94b Allow configuring git 2024-07-15 14:11:44 +02:00
Manuel Thalmann 8979ad11e4 Pass arguments to software scripts 2024-07-15 13:56:27 +02:00
Manuel Thalmann 26c219a520 Fix typo 2024-07-15 13:27:14 +02:00
Manuel Thalmann b9081b9af4 Enable nix before setup 2024-07-15 13:26:40 +02:00
Manuel Thalmann b75bcb3e1a Fix permission issues 2024-07-15 13:23:00 +02:00
Manuel Thalmann e6beab8438 Fix syntax error 2024-07-15 13:17:00 +02:00
Manuel Thalmann d3ea49dba5 Fix typos 2024-07-15 13:15:57 +02:00
Manuel Thalmann f993f4da5e Make setup-user able to use nix 2024-07-15 13:15:07 +02:00
Manuel Thalmann 4b63af36ca Ensure nix works during setup 2024-07-15 13:13:15 +02:00
Manuel Thalmann 2edd854b44 Fix typo 2024-07-15 13:12:46 +02:00
Manuel Thalmann 77abdd244c Force network connection for installation 2024-07-15 12:45:49 +02:00
Manuel Thalmann 3a84881981 Allow package install scripts to be chained properly 2024-07-15 12:43:18 +02:00
Manuel Thalmann 36030e6eed Package essential software 2024-07-15 12:10:06 +02:00
32 changed files with 124 additions and 220 deletions

View file

@ -2,25 +2,25 @@
begin
set -l dir (status dirname)
function getDeploymentScript -V dir
echo "$dir/../Scripts/deploy.fish";
end
function initialize -V dir
source "$dir/../../Common/Scripts/wait-network.fish"
waitNetwork
or exit
sudo systemctl enable --now nix-daemon
source "$dir/../Scripts/software.fish"
source "$dir/../Software/base-devel/main.fish"
source "$dir/../Software/pacman/main.fish"
source "$dir/../Software/yay/main.fish"
and source "$dir/../Scripts/software.fish"
and source "$dir/../Software/base-devel/main.fish"
and source "$dir/../Software/pacman/main.fish"
and source "$dir/../Software/yay/main.fish"
yayinst \
and yayinst \
pacman-contrib \
powershell-bin
end
function getDeploymentScript -V dir
echo "$dir/../Scripts/deploy.fish";
end
source "$dir/../../Common/OS/install.fish"
end

View file

@ -7,7 +7,7 @@ function deploySoftware -d "Deploys a the specified software action" -a action
end
set -l isInstall (
if [ "$action" -eq "install" ]
if [ "$action" = "install" ]
echo true
else
echo false
@ -32,21 +32,21 @@ function deploySoftware -d "Deploys a the specified software action" -a action
sl \
rar
sudo pkgfile --update
and sudo pkgfile --update
end
source "$dir/../../Common/Software/bash/main.fish" $action
source "$dir/../Software/openssh/main.fish" $action
source "$dir/../Software/vim/main.fish" $action
source "$dir/../Software/git/main.fish" $action
source "$dir/../Software/zoxide/main.fish" $action
source "$dir/../Software/logo-ls/main.fish" $action
and source "$dir/../../Common/Software/bash/main.fish" $action
and source "$dir/../Software/openssh/main.fish" $action
and source "$dir/../Software/vim/main.fish" $action
and source "$dir/../Software/git/main.fish" $action
and source "$dir/../Software/zoxide/main.fish" $action
and source "$dir/../Software/logo-ls/main.fish" $action
# GRUB Shenanigans - if that's not essential I don't know what is!
source "$dir/../Software/minegrub-theme/main.fish" $action
and source "$dir/../Software/minegrub-theme/main.fish" $action
end
if collectionActive common
and if collectionActive common
if $isInstall
yayinst \
tldr \
@ -54,11 +54,14 @@ function deploySoftware -d "Deploys a the specified software action" -a action
terminal-parrot
end
source "$dir/../Software/aliae/main.fish" $action
and source "$dir/../Software/aliae/main.fish" $action
end
if collectionActive desktopExperience
if $isInstall
and if collectionActive desktopExperience
source "$dir/../Software/KDE/main.fish" $action
and source "$dir/../Software/sddm/main.fish" $action
and if $isInstall
yayinst \
maliit-keyboard \
dconf-editor \
@ -67,20 +70,20 @@ function deploySoftware -d "Deploys a the specified software action" -a action
) xdg-desktop-portal-gtk
# Fonts
yayinst \
and yayinst \
ttf-cascadia-code-nerd \
ttf-ms-win11-auto \
otf-cascadia-code \
ttf-droid
# Password Management
yayinst \
and yayinst \
bitwarden \
keepass \
keepasscx
keepassxc
# Tools
yayinst \
and yayinst \
android-tools \
blackbox-terminal \
cpu-x \
@ -90,32 +93,32 @@ function deploySoftware -d "Deploys a the specified software action" -a action
linux-wifi-hotspot
# Remote Access
yayinst \
and yayinst \
remmina (
# RDP support for Remmina
) freerdp
# Creativity
yayinst \
and yayinst \
gimp \
inkscape
# Office stuff
yayinst \
and yayinst \
libreoffice-fresh \
naps2-bin \
pdfarranger \
protonmail-bridge \
thunderbird
yayinst \
and yayinst \
texlive \
texlive-langgerman
# Virtualization
yayinst propertree-git # mac .plist config file editor
and yayinst propertree-git # mac .plist config file editor
if collectionActive school
and if collectionActive school
yayinst \
teams-for-linux \
xournalpp-git \
@ -123,46 +126,44 @@ function deploySoftware -d "Deploys a the specified software action" -a action
end
end
source "$dir/../Software/KDE/main.fish" $action
source "$dir/../Software/sddm/main.fish" $action
# Internet Access
source "$dir/../Software/Firefox/main.fish" $action
source "$dir/../Software/brave/main.fish" $action
source "$dir/../Software/Pennywise/main.fish" $action
and source "$dir/../Software/Firefox/main.fish" $action
and source "$dir/../Software/brave/main.fish" $action
and source "$dir/../Software/Pennywise/main.fish" $action
# Virtualization
source "$dir/../Software/waydroid/main.fish" $action
source "$dir/../Software/Virtual Machine Manager/main.fish" $action
and source "$dir/../Software/waydroid/main.fish" $action
and source "$dir/../Software/Virtual Machine Manager/main.fish" $action
if collectionActive coding
and if collectionActive coding
if $isInstall
yayinst \
devdocs-desktop \
godot-mono-bin
godot-mono
end
source "$dir/../Software/vscode/main.fish" $action
and source "$dir/../Software/vscode/main.fish" $action
end
end
if collectionActive server
and if collectionActive server
else
if $isInstall
# Energy Saving
yayinst power-profiles-daemon
sudo systemctl enable --now power-profiles-daemon
and sudo systemctl enable --now power-profiles-daemon
# Networking
yayinst \
network-manager-openvpn \
network-manager-openconnect \
protonvpn
and yayinst \
networkmanager-openvpn \
networkmanager-openconnect \
proton-vpn-gtk-app \
protonvpn-cli-community
end
if collectionActive common
and if collectionActive common
if $isInstall
yayinst \
and yayinst \
img2pdf \
numbat-bin \
nvtop \
@ -170,52 +171,56 @@ function deploySoftware -d "Deploys a the specified software action" -a action
tnef
end
source "$dir/../Software/IcedTea/main.fish" $action
and source "$dir/../Software/IcedTea/main.fish" $action
end
end
if collectionActive media && $isInstall
and if collectionActive media && $isInstall
yayinst \
ytmdesktop-bin \
netflix \
spotube-bin \
stremio \
tidal-dl \
tidal-hifi-bin \
nuclear-player-bin \
audius-client-bin
and yayinst tidal-dl || true
end
if collectionActive fileSync
and if collectionActive fileSync
if $isInstall
yayinst nextcloud-client
end
source "$dir/../Software/rclone/main.fish" $action
and source "$dir/../Software/rclone/main.fish" $action
end
if collectionActive socialMedia
and if collectionActive socialMedia && $isInstall
yayinst \
signal-desktop \
threema-desktop \
vesktop-bin
yes y | yayinst threema-desktop
yes y | yayinst nodejs
end
if collectionActive productivity && $isInstall
and if collectionActive productivity && $isInstall
yayinst \
anki-bin
end
if collectionActive school && $isInstall
and if collectionActive school && $isInstall
yayinst \
jdk17-temurin \
gradle \
jetbrains-toolbox
source "$dir/../../Common/Software/udev/ct-board.fish"
and source "$dir/../../Common/Software/udev/ct-board.fish"
end
if collectionActive coding
and if collectionActive coding
if $isInstall
yayinst \
archiso \
@ -230,10 +235,10 @@ function deploySoftware -d "Deploys a the specified software action" -a action
) esbonio
end
source "$dir/../Software/n/main.fish" $action
and source "$dir/../Software/n/main.fish" $action
end
if collectionActive python
and if collectionActive python
if $isInstall
yayinst \
python \
@ -241,10 +246,10 @@ function deploySoftware -d "Deploys a the specified software action" -a action
python-pipenv
end
source "$dir/../Software/pyenv/main.fish" $action
and source "$dir/../Software/pyenv/main.fish" $action
end
if collectionActive gaming
and if collectionActive gaming
if $isInstall
yayinst \
steam \
@ -254,13 +259,13 @@ function deploySoftware -d "Deploys a the specified software action" -a action
supertux \
gamepad-tool-bin
flatpak install -y flathub com.usebottels.bottles
and flatpak install -y flathub com.usebottels.bottles
end
source "$dir/../Software/Lutris/main.fish" $action
and source "$dir/../Software/Lutris/main.fish" $action
end
if collectionActive essential && $isInstall
and if collectionActive essential && $isInstall
yayinst bb
end
end

View file

@ -5,6 +5,9 @@ begin
function installSW -V dir
yayinst firefox
end
function configureSW -V dir
fish "$dir/../../../Common/Software/Firefox/main.fish" configure
end

View file

@ -9,8 +9,6 @@ begin
yayinst \
icedtea-web
configureSW
end
function configureSW

View file

@ -19,8 +19,6 @@ begin
# File Exchange Support for KDE Connect: https://wiki.archlinux.org/title/KDE#KDE_Connect
) sshfs \
fwupd
configureSW
end
function configureSW

View file

@ -6,8 +6,6 @@ begin
function installSW
yayinst \
pennywise-bin
configureSW
end
function configureSW

View file

@ -14,8 +14,6 @@ begin
swtpm \
lxc \
virt-bootstrap-git
configureSW
end
function configureSW -V dir

View file

@ -3,10 +3,12 @@ begin
set -l dir (status dirname)
source "$dir/../../Scripts/software.fish"
function installSW -V dir
function installSW
yayinst \
aliae-bin
end
function configureSW -V dir
fish "$dir/../../../Common/Software/aliae/main.fish" configure
end

View file

@ -2,14 +2,15 @@
begin
set -l dir (status dirname)
source "$dir/../../Scripts/software.fish"
source "$dir/../../../Common/Software/brave/main.fish"
function installSW -V dir
function installSW
yayinst brave-bin (
# brave-beta-bin
# brave-nightly-bin
)
end
function configureSW -V dir
fish "$dir/../../../Common/Software/brave/main.fish" configure
end

View file

@ -2,9 +2,8 @@
begin
set -l dir (status dirname)
source "$dir/../../Scripts/software.fish"
source "$dir/../../../Common/Software/git/main.fish"
function installSW -V dir
function installSW
yayinst \
git \
git-lfs \
@ -12,8 +11,10 @@ begin
gitflow-bashcompletion-avh \
gitflow-fishcompletion-avh \
gitflow-zshcompletion-avh
end
and fish "$dir/../../../Common/Software/git/main.fish" configure
function configureSW -V dir
fish "$dir/../../../Common/Software/git/main.fish" configure
end
runInstaller $argv

View file

@ -32,12 +32,9 @@ begin
rm -rf "$contextRoot"
end
configureSW
end
function configureSW -V dir
sudo systemctl enable --now nix-daemon
fish "$dir/../../../Common/Software/logo-ls/main.fish" configure
end

View file

@ -3,8 +3,11 @@ begin
set -l dir (status dirname)
source "$dir/../../Scripts/software.fish"
function installSW -V dir
function installSW
yayinst grub-theme-minegrub-git
end
function configureSW -V dir
fish "$dir/../../../Common/Software/minegrub-theme/main.fish" configure
end

View file

@ -3,8 +3,11 @@ begin
set -l dir (status dirname)
source "$dir/../../Scripts/software.fish"
function installSW -V dir
function installSW
yayinst nodejs-n
end
function configureSW -V dir
sudo --preserve-env --set-home fish "$dir/../../../Common/Software/n/main.fish" configure
end

View file

@ -7,8 +7,6 @@ begin
yayinst \
openssh \
libfido2
source (status filename) configure
end
function configureSW

View file

@ -3,8 +3,11 @@ begin
set -l dir (status dirname)
source "$dir/../../Scripts/software.fish"
function installSW -V dir
function installSW
yayinst pyenv
end
function configureSW -V dir
fish "$dir/../../../Common/Software/pyenv/main.fish" configure
end

View file

@ -4,10 +4,12 @@ begin
source "$dir/../../Scripts/software.fish"
source "$dir/../../../Common/Software/rclone/main.fish"
function installSW -V dir
function installSW
yayinst \
rclone
end
function configureSW -V dir
fish "$dir/../../../Common/Software/rclone/main.fish" configure
end

View file

@ -8,7 +8,6 @@ begin
# yes | yayinst sddm-git
# stable version
yayinst sddm
configureSW
end
function configureSW -V dir

View file

@ -4,7 +4,7 @@ begin
source "$dir/../../Scripts/software.fish"
source "$dir/../../../Common/Software/vim/main.fish"
function installSW -V dir
function installSW
yayinst (
# Necessary for accessing clipboard in terminal: https://wiki.archlinux.org/title/Vim
) gvim \
@ -12,8 +12,11 @@ begin
# Add clipboard support for wayland: https://www.reddit.com/r/Fedora/comments/ax9p9t/comment/jjb4p7b/
) vim-wayland-clipboard-git \
wl-clipboard
end
and fish "$dir/../../../Common/Software/vim/main.fish" configure
function configureSW -V dir
fish "$dir/../../../Common/Software/vim/main.fish" configure
end
runInstaller $argv

View file

@ -9,8 +9,6 @@ begin
visual-studio-code-bin (
# Trash functionality
) gvfs
configureSW
end
function configureSW -V dir

View file

@ -3,10 +3,12 @@ begin
set -l dir (status dirname)
source "$dir/../../Scripts/software.fish"
function installSW -V dir
function installSW
yayinst \
zoxide
end
function configureSW -V dir
fish "$dir/../../../Common/Software/zoxide/main.fish" configure
end

View file

@ -26,10 +26,8 @@ if [ (id -u) -eq 0 ]
and sudo --preserve-env="CONFIG_NAME" --user "$name" "$INSTALLER_SCRIPT"
rm "$sudoConfig"
userdel -r "$name"
userdel -rf "$name"
else
source "$dir/../Software/bash/main.fish"
if not type -q getDeploymentScript
function getDeploymentScript
echo "No deployment script specified! No software will be installed." 1>&2
@ -38,9 +36,9 @@ else
end
runHook initialize || true
runHook installOS || true
and runHook installOS || true
runHook addUsers || begin
and runHook addUsers || begin
source "$dir/users.fish"
end

View file

@ -248,13 +248,11 @@ $null = New-Module {
}
if ($module[1]) {
$parameters = @{
allowPrerelease = $true;
};
$parameters = @("-AllowPrerelease");
}
if (-not (Test-PSModule $module[0])) {
Install-Module -Scope AllUsers -AcceptLicense -Force -AllowClobber $module[0] @parameters;
sudo pwsh -Command Install-Module -Scope AllUsers -AcceptLicense -Force -AllowClobber $module[0] @parameters;
Import-Module $module[0];
}
}

View file

@ -1,6 +1,6 @@
#!/bin/env fish
function isConfigured -S
set -q "$CONFIG_NAME"
set -q CONFIG_NAME
end
function getProfiles -S

View file

@ -15,7 +15,7 @@ function evalFlake --argument-names config property
if [ -n "$config" ]
set config ".$config"
set _flag_apply "_: ($_flag_apply) ((import $(status dirname)/../../../lib/eval-attribute.nix) _)"
set _flag_apply "_: ($_flag_apply) ((import $(realpath --relative-to (pwd) "$(status dirname)/../../../lib/eval-attribute.nix")) _)"
end
PROPERTY="$property" \

View file

@ -12,23 +12,17 @@ begin
end
function runInstaller -V dir -a action
source "$dir/config.fish"
if [ -z "$action" ] || [ "$action" = "install" ]
installSW $argv[2..]
else if [ "$action" = "configure" ]
configureSW $argv[2..]
source "$dir/config.fish"
set -l users (getUsers)
runInstaller "configure"
if not isConfigured || [ "$USER" != (getConfig "valhalla.setupUser.name") ]
runInstaller userConfig
end
for name in (echo "$users" | jq '.[]' --raw-output0 | string split0)
if [ "$name" != "$USER" ]
runInstaller userConfig "$name"
end
end
else if [ "$action" = "configure" ]
configureSW $argv[2..]
else if [ "$action" = "userConfig" ]
set -l name $argv[2]

View file

@ -3,9 +3,6 @@ begin
set -l dir (status dirname)
source "$dir/../../Scripts/software.fish"
function installSW
end
function configureSW
sudo virsh net-autostart default

View file

@ -3,10 +3,6 @@ begin
set -l dir (status dirname)
source "$dir/../../Scripts/software.fish"
function installSW
configureSW
end
function configureSW -V dir
source "$dir/../bash/profile.fish"
source "$dir/../fish/profile.fish"

View file

@ -3,10 +3,6 @@ begin
set -l dir (status dirname)
source "$dir/../../Scripts/software.fish"
function installSW
configureSW
end
function configureSW -V dir
begin
printf %s\n \
@ -16,7 +12,7 @@ begin
"do" \
'source "$file";' \
'done < <(find {/etc,~/.config}/bash/conf.d/* -print0 2> /dev/null);'
end | sudo tee -a /etc/skel/.bashrc &> /dev/null
end | sudo tee -a /etc/bash.bashrc &> /dev/null
end
runInstaller $argv

View file

@ -3,84 +3,8 @@ begin
set -l dir (status dirname)
source "$(status dirname)/../../Scripts/software.fish"
function configureGit -S -V dir -a name
source "$dir/../../Scripts/config.fish"
set -l root "valhalla"
set -l user
set -l configArgs
function setConfig -S
sudo -u "$user" git config $configArgs $argv
end
if [ -z "$name" ]
set user "root"
set configArgs "--system"
else
set root "$root.users.$name"
set user "$name"
set configArgs "--global"
set -l displayName "$root.displayName"
set -l mailAddress "$root.mailAddress"
if isSet "$displayName"
setConfig user.name (getConfig "$displayName")
end
if isSet "$mailAddress"
setConfig user.email (getConfig "$mailAddress")
end
end
set -l branch "$root.git.defaultBranch"
if isSet "$branch"
setConfig init.defaultBranch (getConfig "$branch")
end
begin # Git Flow
set -l dir (mktemp -d)
begin
set -l key "$root.git.flow"
set -l mainKey "$key.mainBranch"
set -l devKey "$key.devBranch"
git -C "$dir" init
git -C "$dir" commit --allow-empty -m "Initial commit" > /dev/null
git -C "$dir" branch master || true &> /dev/null
git -C "$dir" branch main || true &> /dev/null
git -C "$dir" branch dev || true &> /dev/null
yes "" | git -C "$dir" flow init &> /dev/null
if isSet "$mainKey"
sudo git -C "$dir" flow config set $configArgs master (getConfig "$mainKey") > /dev/null
else
true
end
if isSet "$devKey"
sudo git -C "$dir" flow config set $configArgs develop (getConfig "$devKey") > /dev/null
else
true
end
end
rm -rf "$dir"
end
begin # Aliases
set -l key "$root.git.aliases"
set -l aliases (getConfig "$key" --json)
for name in (echo "$aliases" | jq 'keys[]' --raw-output0 | string split0)
setConfig "alias.$name" (getConfig "$key.$name")
end
end
end
function configureSW -S -V dir
configureGit
pwsh "$dir/Manage.ps1" Configure
end
function userConfig -S -V dir -a name

View file

@ -5,7 +5,6 @@ begin
function installSW
npm install --global n
configureSW
end
function configureSW

View file

@ -3,10 +3,6 @@ begin
set -l dir (status dirname)
source "$dir/../../Scripts/software.fish"
function installSW
configureSW
end
function configureSW
set -l configFile /etc/vimrc
set -l indicator "set clipboard"
@ -14,8 +10,6 @@ begin
if not grep "\b$indicator\b" "$configFile" > /dev/null
# As described in https://wiki.archlinux.org/title/Vim#Clipboard
echo "$indicator+=unnamed,unnamedplus" | sudo tee "$configFile" > /dev/null;
else
true
end
end

View file

@ -3,10 +3,6 @@ begin
set -l dir (status dirname)
source "$dir/../../Scripts/software.fish"
function installSW
configureSW
end
function configureSW -V dir
source "$dir/../bash/profile.fish"
source "$dir/../fish/profile.fish"