docs: improve WSL bootstrap guide and document justfile commands
- Fix WSL quickstart: use nix-shell -p git for initial clone since fresh NixOS-WSL lacks git - Rewrite daily usage section to list all justfile commands - Add rollback recipe to justfile (NixOS only) - Note sudo requirement for NixOS system-level garbage collection
This commit is contained in:
@@ -27,6 +27,12 @@ check:
|
|||||||
@nix eval .#darwinConfigurations.mac-mini.system > /dev/null && echo "mac-mini: ok"
|
@nix eval .#darwinConfigurations.mac-mini.system > /dev/null && echo "mac-mini: ok"
|
||||||
@nix eval .#darwinConfigurations.macbook-air.system > /dev/null && echo "macbook-air: ok"
|
@nix eval .#darwinConfigurations.macbook-air.system > /dev/null && echo "macbook-air: ok"
|
||||||
|
|
||||||
|
# Rollback to previous system generation
|
||||||
|
[linux]
|
||||||
|
[group('build')]
|
||||||
|
rollback:
|
||||||
|
sudo nixos-rebuild switch --rollback
|
||||||
|
|
||||||
# Check configs evaluate without errors
|
# Check configs evaluate without errors
|
||||||
[linux]
|
[linux]
|
||||||
[group('build')]
|
[group('build')]
|
||||||
|
|||||||
@@ -40,14 +40,16 @@ wsl --import NixOS C:\wsl\nixos nixos-wsl.tar.gz
|
|||||||
wsl -d NixOS
|
wsl -d NixOS
|
||||||
```
|
```
|
||||||
|
|
||||||
2. 克隆仓库并构建:
|
2. 首次初始化(全新的 NixOS-WSL 没有 `git`,需要借助 `nix-shell` 临时引入):
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
git clone <repo-url> ~/nix-config
|
nix-shell -p git --run "git clone <repo-url> ~/nix-config"
|
||||||
cd ~/nix-config
|
cd ~/nix-config
|
||||||
sudo nixos-rebuild switch --flake .#wsl
|
sudo nixos-rebuild switch --flake .#wsl
|
||||||
```
|
```
|
||||||
|
|
||||||
|
> 首次 rebuild 完成后 `git`、`just` 等工具会由配置声明安装,此后可直接使用 `just rebuild` 重建。
|
||||||
|
|
||||||
## 仓库结构
|
## 仓库结构
|
||||||
|
|
||||||
```
|
```
|
||||||
@@ -85,21 +87,28 @@ sudo nixos-rebuild switch --flake .#wsl
|
|||||||
|
|
||||||
## 日常使用
|
## 日常使用
|
||||||
|
|
||||||
|
项目提供 [`justfile`](justfile),首次 rebuild 后即可使用:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# 重建(abbreviation 自动选择 darwin-rebuild 或 nixos-rebuild)
|
just rebuild <host> # 重建系统(自动选择 darwin-rebuild / nixos-rebuild)
|
||||||
rebuild
|
just update # 更新所有 flake 输入
|
||||||
|
just up <input> # 更新单个输入,如 just up nixpkgs
|
||||||
# 更新所有依赖
|
just check # 检查配置是否能正常 evaluate
|
||||||
update
|
just clean # 清理旧 generation 并回收空间
|
||||||
|
just rollback # 回滚到上一个 generation(仅 NixOS)
|
||||||
# 回滚(NixOS)
|
just history # 查看系统 profile 历史
|
||||||
sudo nixos-rebuild switch --rollback
|
just show # 显示 flake 输出
|
||||||
|
|
||||||
# 清理旧 generation
|
|
||||||
sudo nix-collect-garbage -d # NixOS
|
|
||||||
nix-collect-garbage -d # macOS
|
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Fish shell 中也定义了 abbreviation 可直接使用:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
rebuild # 自动选择 darwin-rebuild 或 nixos-rebuild
|
||||||
|
update # nix flake update
|
||||||
|
```
|
||||||
|
|
||||||
|
> **注意**:`just clean` 仅清理用户级 generation。NixOS 上如需清理系统级旧 generation,需要 `sudo nix-collect-garbage -d`。
|
||||||
|
|
||||||
## Shell
|
## Shell
|
||||||
|
|
||||||
使用 **Fish** 作为默认 shell,搭配:
|
使用 **Fish** 作为默认 shell,搭配:
|
||||||
|
|||||||
Reference in New Issue
Block a user