imxyy1soope1 1cf0d8fed2 nix: nix-racer -> selector4nix
Replace the vendored nix-racer Rust proxy with selector4nix as the local
substituter proxy. Drop the nix-racer crate and its systemd service, add
the selector4nix flake input, repoint nix.settings.substituters at its
port, and load upstream nixos modules via an upstreamModules list in
flake/hosts.nix.
2026-08-08 21:36:18 +08:00
2025-10-18 10:17:49 +08:00
2026-08-08 21:36:18 +08:00
2026-08-08 21:36:18 +08:00
2026-06-13 11:57:10 +08:00
2026-08-08 10:44:44 +08:00
2026-08-01 16:37:52 +08:00
2026-02-07 11:03:28 +08:00
2025-08-16 23:13:01 +08:00
2026-08-08 21:36:18 +08:00
2026-08-08 21:36:18 +08:00
2026-01-16 20:26:33 +08:00
2026-07-24 15:31:55 +08:00
2026-01-30 21:35:16 +08:00
2026-05-30 16:19:38 +08:00
2025-12-27 16:46:24 +08:00

❄️ imxyy_soope_'s NixOS Config ❄️

This configuration and READMEs in this repo borrows heavily from ryan4yin/nix-config and his cookbook. Many thanks to his spirit of sharing!

This repository is home to the nix code that builds my systems: Currently, this repository contains the nix code that builds:

  1. NixOS Desktop (imxyy-nix): NixOS with home-manager, niri, neovim, etc.
  2. NixOS Laptop (imxyy-nix-x16): the desktop profile on a laptop
  3. NixOS home server (imxyy-nix-server)
  4. NixOS WSL (imxyy-nix-wsl)

See ./hosts for details of each host.

Why NixOS & Flakes?

Nix allows for easy-to-manage, collaborative, reproducible deployments. This means that once something is setup and configured once, it works (almost) forever. If someone else shares their configuration, anyone else can just use it (if you really understand what you're copying/refering now).

As for Flakes, refer to Introduction to Flakes - NixOS & Nix Flakes Book

This configuration uses flake-parts for better flake organization and modularity, enabling declarative host definitions and cleaner separation of concerns.

Folder Structure

  • modules/ - custom NixOS modules, auto-imported via lib.umport
    • modules/core/ - core system modules (nix, persistence, time, user, xdg)
    • modules/cli/ - command-line tools and utilities
    • modules/coding/ - development environments and editors
    • modules/desktop/ - desktop applications and window managers
    • modules/virt/ - virtualization configurations
    • modules/i18n/ - locale and input method (fcitx5)
    • modules/programs/ - misc system programs (e.g. ollama)
    • modules/*.nix - standalone modules (audio, bluetooth, fonts, gpg, sops, etc.)
  • profiles/ - system configuration profiles
    • profiles/base.nix - base configuration for all hosts
    • profiles/desktop.nix - desktop environment configuration
    • profiles/server.nix - server-specific configuration
    • profiles/wsl.nix - WSL-specific configuration
  • hosts/<name>/ - host-specific configs
  • flake/ - flake-parts modules
    • flake/hosts.nix - declarative host definitions
    • flake/pkgs.nix - custom packages exported from the flake
    • flake/overlays/ - nixpkgs overlays and patches
  • lib/ - custom nix library
  • pkgs/ - custom packages
  • vars.nix - my variables
  • secrets/ - secrets managed by sops-nix. see ./secrets for details
  • flake.nix - flake entry
S
Description
My personal NixOS dotfiles
Readme
2.4 MiB
Languages
Nix 77%
Lua 12.6%
Python 7.7%
Shell 2.1%
Just 0.6%