这个项目能做什么

tsssni.nix 是一个个人 Nix flake,用于共享模块、软件包和系统配置。它被定位为构建可复现系统与桌面配置的框架,同时还捆绑了带有快捷键和插件的 Nixvim 设置。 使用方式是通过该 flake。README 说明其仅支持 unstable nixpkgs,并展示了将该仓库添加为 flake input,同时让 nixpkgs 跟随用户自己的 nixpkgs input。 模块以 tsssni.${platform}Modules.tsssni 的形式暴露,覆盖 NixOS、nix-darwin 和 home-manager。文档中的模式是将相关模块包含到对应配置中,并使用 tsssni.lib 扩展 lib;同时给出了 nixosConfigurations、darwinConfigurations 和 homeConfigurations 的示例。软件包通过 overlay 提供,并经由 nixpkgs.overlays 添加。 关于配置布局,README 指示将系统配置放在 ./configs/(nixos|nix-darwin)/${host-name} 下,将 home-manager 配置放在 ./configs/home-manager/${user-name} 下。系统配置位于 ${config-path}/system/,home-manager 配置位于 ${config-path}/${user-name}/,且各自包含一个 rebuild.nix。构建使用 (nixos|darwin)-rebuild switch --flake . 或 home-manager switch --flake . 完成;rebuild.nix 必须声明一个 system 值,因为该值无法被自动检测。此外还可以使用可选的 config 块来设置 CUDA 支持和 capabilities 等选项。 仓库包含一张 README 引用的截图资源。所提供的材料中未说明许可证、发布或贡献相关细节。