尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證製作者的介紹僅有上面的一句話。 更多詳情請閱讀儲存庫 README。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗An opinionated Nix configuration for macOS, NixOS desktops, and virtual machines. Keep shared tools in reusable modules, personal choices in a profile, and your setup in version control.
| A shared foundation | Room for your choices |
|---|---|
| Repeatable environments | Flakes pin dependencies; modules capture your configuration. |
| Personal profiles | Identity, locale, hardware, and host preferences stay together. |
| Multiple platforms | nix-darwin for macOS, NixOS for Linux, Home Manager for shared tools. |
| Optional capabilities | Development shells, VM management, Agenix secrets, and AI tooling. |
Make it yours before applying it. This repository is actively used on the maintainer's machines. Replace personal values, hardware settings, SSH hosts, and encrypted secrets before activating a configuration.
Each Linux output selects the desktop its name describes:
| Flake output | Desktop |
|---|---|
nixos-end4 | Hyprland with the end4 configuration |
nixos-omarchy | Omarchy desktop through the NixOS integration |
nixos-plasma | KDE Plasma 6 with SDDM and Plasma Home Manager settings |
The Linux setup default is defined near the top of the Makefile:
LINUX_CONFIG ?= nixos-end4 # nixos-end4 | nixos-omarchy | nixos-plasma
Override it for a single invocation after completing setup:
CONFIRM_APPLY=1 make setup-linux LINUX_CONFIG=nixos-plasma
The three maintained desktop outputs share the same host name and hardware
profile. The nixos-desktop alias defaults to nixos-omarchy; its selection line
in flake.nix also lists all three choices. Older
nixos-desktop-end4 and nixos-desktop-omarchy names remain compatibility aliases.
nixos-plasma now means Plasma, not end4.
| Other maintained output | Platform / environment |
|---|---|
Ryans-MacBook-Pro | Apple Silicon macOS with nix-darwin |
vm, nixos-vm-omarchy | x86_64 NixOS guest with Omarchy |
nixos-vm-hyprland | x86_64 NixOS guest with end4 Hyprland |
nixos-vm-arm64 | ARM64 NixOS guest with end4 Hyprland for UTM |
These outputs use the maintainer's profile. Forks should define their own hosts. The ARM64 and x86_64 VM profiles use separate hardware modules. Generate a fresh module for the architecture and disk layout of the guest you intend to use.
nix-command and flakes.sudo nixos-generate-config --show-hardware-config. Save the output in your
own hardware module and update the profile's hardwareModules paths.machine explicitly when reusing a machine
module under a new host name.secrets.nix on
secrets.nix.example, use your own public recipients,
and create new encrypted files. See the Agenix guide.nix flake check and build your selected host before activation.profiles/local.nix and profiles/local/ are ignored by Git. If you use those
paths, explicitly track reviewed configuration with git add -f, or choose
another profile name. Never track private keys or plaintext secrets.
After validation, apply your own output with the matching target:
# macOS — replace my-mac with your Darwin output
CONFIRM_APPLY=1 make setup-macos MACOS_CONFIG=my-mac
# NixOS — replace my-desktop with your NixOS output
CONFIRM_APPLY=1 make setup-linux LINUX_CONFIG=my-desktop
Activation installs packages and changes system settings. Keep a known working generation available while trying changes.
| Command | Purpose |
|---|---|
make help | Discover available commands |
make check | Evaluate flake checks |
make fmt | Format Nix files |
make dev | Enter the default development shell |
make dev-web / make dev-python | Web or Python development |
make dev-flutter / make dev-rust | Flutter or Rust development |
make vm-download | Download the ARM64 UTM ISO without activating a system |
Review updates to flake.lock before rebuilding. VM, GPU, and libvirt workflows
are host-specific. make clean also runs Nix garbage collection.
profiles/ Identity, preferences, hardware, and personal imports
machines/ Platform composition for macOS, desktops, and guests
modules/ Reusable system, desktop, host, and VM capabilities
home/ Shared and platform-specific Home Manager configuration
devshells/ Focused development environments
website/ Product website and practical documentation
Hardware, BIOS, GPU, and local-model notes contain maintainer-specific examples. Adapt them to your own machine.
This configuration is provided for educational and personal use. Review the modules before enabling them on a machine you rely on, and check the licenses of included software separately.