Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- → cat guesthouse.md Wed 30 Jul 2025 12:41:45 PM CDT
- # Guesthouse
- ## Hardware
- Alienware x15 R2
- CPU 12th Gen Intel Core i9-12900H
- RAM 32GB DDR5 5200MHz
- DISK 2x 1TB NVME PCIe x4, RAID 0
- GPU NVIDIA GeForce RTX 3070 Ti, 8GB DDR6
- puchie@guesthouse:~/rokkenjima/city-of-books
- → cat rokkenjima.md Wed 30 Jul 2025 12:41:51 PM CDT
- # Rokkenjima
- ## Homelab Goals
- 1. Fully documented and reproducible.
- 2. Use as much FOSS as possible.
- ## Goals
- - [x] Working NixOS on WSL (Guesthouse)
- - [x] Refactor WSL into separate module
- - [ ] Setup Home Manager module
- puchie@guesthouse:~/rokkenjima/city-of-books
- → cd blog Wed 30 Jul 2025 12:41:54 PM CDT
- puchie@guesthouse:~/rokkenjima/city-of-books/blog
- → ls Wed 30 Jul 2025 12:42:17 PM CDT
- myxuuolyuwlxowtwylkyywktssuwmtox.md poslymnzqqkyrkvxvllmxkotqtptvpwt.md slnwmymkupwlolywqpkwwtttxotvyvlr.md usuoposxquloyruslpxqpnsposvmuslm.md
- puchie@guesthouse:~/rokkenjima/city-of-books/blog
- → cat myxuuolyuwlxowtwylkyywktssuwmtox.md Wed 30 Jul 2025 12:42:17 PM CDT
- # Creating WSL Module
- ## Create wsl.nix
- 1. Add `wsl.nix`
- 1. Edit `flake.nix`
- 1. `sudo nixos-rebuild boot --flake .#guesthouse`
- 1. `wsl -t guesthouse`
- 1. `wsl -d guesthouse --user root exit`
- 1. `wsl -t guesthouse`
- 1. `wsl -d guesthouse`
- ## Move rokkenjima to new user
- 1. `cp -r /home/nixos/rokkenjima .`
- 1. `jj config set --user user.name "puchiedarcy"`
- 1. `jj config set --user user.email "[email protected]"`
- puchie@guesthouse:~/rokkenjima/city-of-books/blog
- → cat poslymnzqqkyrkvxvllmxkotqtptvpwt.md Wed 30 Jul 2025 12:42:20 PM CDT
- # Getting Started with NixOS on WSL
- ## Guesthouse
- ### Install
- 1. Download latest NixOS-WSL [release](https://github.com/nix-community/NixOS-WSL/releases).
- 1. `wsl --install --from-file nixos-2411-6-0.wsl --name guesthouse`
- 1. `sudo nixos-rebuild switch` to get rid of initial welcome messages
- ### Create Nix Shell with Minumum Dev Tools
- 1. `nix-shell -p vim jujutsu tmux`
- 1. `cd`
- 1. `mkdir rokkenjima`
- 1. `cd rokkenkjima`
- 1. `jj git init`
- 1. `jj config set --user user.name "puchiedarcy"`
- 1. `jj config set --user user.email "[email protected]"`
- 1. `jj describe --reset-author --no-edit`
- ### Create Documentation
- 1. `mkdir city-of-books`
- 1. Create `rokkenjima.md`
- 1. Create `guesthouse.md`
- 1. `mkdir city-of-books/blog`
- ### Create Nix Flake
- 1. `nix flake init --experimental-features 'nix-command flakes'`
- 1. Edit `flake.nix`
- 1. Add NixOS-WSL to `inputs`
- 1. Add `nixos-wsl` to `outputs`
- 1. Create `nixosConfiguration` for current host
- 1. Copy existing NixOS config file from `/etc/nixos/configuration.nix`
- 1. `sudo nixos-rebuild switch --flake .`
- ### Uninstall
- 1. `wsl --unregister guesthouse`
- puchie@guesthouse:~/rokkenjima/city-of-books/blog
- → ls Wed 30 Jul 2025 12:42:34 PM CDT
- myxuuolyuwlxowtwylkyywktssuwmtox.md poslymnzqqkyrkvxvllmxkotqtptvpwt.md slnwmymkupwlolywqpkwwtttxotvyvlr.md usuoposxquloyruslpxqpnsposvmuslm.md
- puchie@guesthouse:~/rokkenjima/city-of-books/blog
- → cat slnwmymkupwlolywqpkwwtttxotvyvlr.md Wed 30 Jul 2025 12:42:46 PM CDT
- # Home Manager
- ## Bootstrap
- 1. `nix-channel --add https://github.com/nix-community/home-manager/archive/master.tar.gz home-manager`
- 1. `nix-channel --update`
- 1. `nix-shell '<home-manager>' -A install`
- ## Install
- 1. Add `home-manager` to `flake.nix` `inputs`
- 1. Create `home.nix` and cleanup `configuration.nix` and `flake.nix`
- 1. `sudo nixos-rebuild switch --flake .`
- 1. `home-manager switch --flake .`
- puchie@guesthouse:~/rokkenjima/city-of-books/blog
- → cat usuoposxquloyruslpxqpnsposvmuslm.md Wed 30 Jul 2025 12:42:47 PM CDT
- # Refactor flake by host and user
- ## configuration.nix
- - Set zsh as default
- - Define default user
- ## flake.nix
- - Add more settings
- - Let hostname and current logged in user select the nixOS config and home-manager modules of the same name
- ## guesthouse.nix
- - Define hostname
- - Include wsl.nix
- ## puchie.nix
- - Define user and programs
- ## wsl.nix
- - Enable wsl for host and set default user
Advertisement
Add Comment
Please, Sign In to add comment