refactor: 简化仓库路径,移除硬编码的 rebuild/update 命令和安装脚本
This commit is contained in:
@@ -59,7 +59,7 @@ Fish abbreviations `rebuild` and `update` are also available in the shell (defin
|
|||||||
- **catppuccin module name**: Uses `catppuccin.homeModules.catppuccin` (not the old `homeManagerModules`). NixOS uses `catppuccin.nixosModules.catppuccin`.
|
- **catppuccin module name**: Uses `catppuccin.homeModules.catppuccin` (not the old `homeManagerModules`). NixOS uses `catppuccin.nixosModules.catppuccin`.
|
||||||
- **Homebrew tap casks**: Casks from taps need full path (e.g. `"goooler/repo/fl-clash"`), not just the short name.
|
- **Homebrew tap casks**: Casks from taps need full path (e.g. `"goooler/repo/fl-clash"`), not just the short name.
|
||||||
- **`onActivation.cleanup = "zap"`**: Any brew formula/cask NOT declared in `modules/darwin/default.nix` WILL be removed on rebuild. Be comprehensive.
|
- **`onActivation.cleanup = "zap"`**: Any brew formula/cask NOT declared in `modules/darwin/default.nix` WILL be removed on rebuild. Be comprehensive.
|
||||||
- **Repo location**: Must be at `~/Developer/nix-config`. Fish abbreviations and `rebuild` reference this path.
|
- **Repo location**: Default `~/nix-config`. Configurable via `nix_config_dir` fish variable in `home/shell/fish.nix`.
|
||||||
- **First-time bootstrap requires sudo**: `sudo nix run nix-darwin -- switch --flake .#mac-mini` (not `darwin-rebuild` which doesn't exist yet).
|
- **First-time bootstrap requires sudo**: `sudo nix run nix-darwin -- switch --flake .#mac-mini` (not `darwin-rebuild` which doesn't exist yet).
|
||||||
|
|
||||||
## Secrets (sops-nix)
|
## Secrets (sops-nix)
|
||||||
|
|||||||
@@ -23,8 +23,8 @@ curl -sSf -L https://install.lix.systems/lix | sh -s -- install
|
|||||||
2. 克隆仓库并首次构建:
|
2. 克隆仓库并首次构建:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
git clone <repo-url> ~/Developer/nix-config
|
git clone <repo-url> ~/nix-config
|
||||||
cd ~/Developer/nix-config
|
cd ~/nix-config
|
||||||
# 首次(nix-darwin 尚未安装):
|
# 首次(nix-darwin 尚未安装):
|
||||||
sudo nix run nix-darwin -- switch --flake .#mac-mini
|
sudo nix run nix-darwin -- switch --flake .#mac-mini
|
||||||
# 之后日常重建:
|
# 之后日常重建:
|
||||||
@@ -43,8 +43,8 @@ wsl -d NixOS
|
|||||||
2. 克隆仓库并构建:
|
2. 克隆仓库并构建:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
git clone <repo-url> ~/Developer/nix-config
|
git clone <repo-url> ~/nix-config
|
||||||
cd ~/Developer/nix-config
|
cd ~/nix-config
|
||||||
sudo nixos-rebuild switch --flake .#wsl
|
sudo nixos-rebuild switch --flake .#wsl
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -24,8 +24,6 @@
|
|||||||
# Network
|
# Network
|
||||||
http = "xh";
|
http = "xh";
|
||||||
|
|
||||||
# Nix
|
|
||||||
update = "nix flake update --flake ~/Developer/nix-config";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
interactiveShellInit = ''
|
interactiveShellInit = ''
|
||||||
@@ -41,14 +39,6 @@
|
|||||||
# Sudo: double Escape to prepend sudo
|
# Sudo: double Escape to prepend sudo
|
||||||
bind \e\e 'fish_commandline_prepend sudo'
|
bind \e\e 'fish_commandline_prepend sudo'
|
||||||
|
|
||||||
# Platform-specific rebuild command (derive flake attr from hostname)
|
|
||||||
if test (uname) = Darwin
|
|
||||||
set -l attr (scutil --get LocalHostName | string lower | string replace 'awesome-' "")
|
|
||||||
abbr --add rebuild "sudo darwin-rebuild switch --flake ~/Developer/nix-config#$attr"
|
|
||||||
else
|
|
||||||
abbr --add rebuild "sudo nixos-rebuild switch --flake ~/Developer/nix-config#wsl"
|
|
||||||
end
|
|
||||||
|
|
||||||
# WSL clipboard
|
# WSL clipboard
|
||||||
if set -q WSL_DISTRO_NAME
|
if set -q WSL_DISTRO_NAME
|
||||||
alias pbcopy clip.exe
|
alias pbcopy clip.exe
|
||||||
|
|||||||
@@ -1,28 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
set -euo pipefail
|
|
||||||
|
|
||||||
REPO_URL="https://git.furtherverse.com/imbytecat/nix-config.git"
|
|
||||||
CONFIG_DIR="$HOME/Developer/nix-config"
|
|
||||||
|
|
||||||
if [[ -d "$CONFIG_DIR/.git" ]]; then
|
|
||||||
git -C "$CONFIG_DIR" pull
|
|
||||||
else
|
|
||||||
mkdir -p "$HOME/Developer"
|
|
||||||
git clone "$REPO_URL" "$CONFIG_DIR"
|
|
||||||
fi
|
|
||||||
|
|
||||||
case "$(uname)" in
|
|
||||||
Darwin)
|
|
||||||
TARGET="${1:?Usage: $0 <mac-mini|macbook-air>}"
|
|
||||||
if command -v darwin-rebuild &>/dev/null; then
|
|
||||||
sudo darwin-rebuild switch --flake "$CONFIG_DIR#$TARGET"
|
|
||||||
else
|
|
||||||
sudo nix run nix-darwin -- switch --flake "$CONFIG_DIR#$TARGET"
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
Linux)
|
|
||||||
sudo nixos-rebuild switch --flake "$CONFIG_DIR#wsl"
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
echo "Done! Restart your shell."
|
|
||||||
Reference in New Issue
Block a user