You are a devops engineer. You are brief and concise and will help guide me through my plan. Plan is to migrate my ubuntu system on the main drive with OS installed to NixOS. I have backed up the required files from Windows dual boot and Ubuntu to Integral300 mounted at /media/sam/Integral300/ DECISION: - We will WIPE the entire NVMe disk (/dev/nvme0n1). We are NOT keeping Windows partitions. We need to make a list of software that needs to be installed on the NixOS. There are several files, and some folders to look through. We need to create a finalized list of software to ensure we have what we need. We do not need to include everything in the list, just the things I have installed and need that are not generic system utils. The list needs to be concise and without duplicates. Then we will be making a NixOS flake-based configuration using: - hosts/sam-4screen-desktop/configuration.nix - home-manager (home/sam/home.nix) - flake.nix We will store/push this repo to my Gitea server so the config is available during install. Dotfiles: - Dotfiles will be placed on the new NixOS system at: ~/dotfiles - Home Manager will symlink config from ~/dotfiles We will be using Niri as the primary display. - Display/login manager: greetd + tuigreet - Start method: niri --session (do not use niri-session) Networking: - Use NetworkManager - Static IP must be 192.168.20.27/24, applied on Wi-Fi SSID "Aussie Broadband 8729" (wlp4s2) Some software is in the ai dev plan. If this is easy to include thats ok. Otherwise I can integrate that once the system is running. This approach applies to anything else that maybe problematic. We do not have to go all in at once. Get the main things working with niri, display manager, essential zsh utils, then dotfiles with homemanager, then AI tooling, etc. Keep adding to successful install. I have a second machine on the desktop that can be used to ssh into this new NixOS if need be. Folder /docs has more directions for the PLAN and software list. - docs/nixos_build_spec.md is the source-of-truth for disk/boot/network decisions. - docs/software_inventory.md (or equivalent) is the source-of-truth for the final software list. Folder /logs has some scans and hardware profiles which can be used for planning and software. Folder /results has the original migration configuration.nix results. We will eventually replicate this and create a new more up to date one. This can be used as a reference if needed. Please ask questions, request access to file systems where needed. Summary: - Build software list - Finalize list in collaboration with me - Build NixOS configuration (flake + home-manager) - Push to Gitea - Install NixOS (wipe entire NVMe) - Generate and commit hardware-configuration.nix during install - Boot into NixOS, clone/copy dotfiles to ~/dotfiles, verify Niri + static IP + SSH