Nix-on-Droid 项目使用教程
1. 项目的目录结构及介绍
Nix-on-Droid 项目的目录结构如下:
nix-on-droid/
├── AUTHORS
├── CHANGELOG.md
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md
├── LICENSE
├── README.md
├── default.nix
├── flake.lock
├── flake.nix
├── github
│ └── workflows
├── modules
│ └── nix-on-droid
├── overlays
├── pkgs
├── scripts
├── templates
└── tests
目录介绍
- AUTHORS: 项目作者列表。
- CHANGELOG.md: 项目更新日志。
- CODE_OF_CONDUCT.md: 项目行为准则。
- CONTRIBUTING.md: 贡献指南。
- LICENSE: 项目许可证。
- README.md: 项目说明文档。
- default.nix: Nix 默认配置文件。
- flake.lock: Nix flake 锁定文件。
- flake.nix: Nix flake 配置文件。
- github/workflows: GitHub Actions 工作流配置。
- modules/nix-on-droid: Nix-on-Droid 模块配置。
- overlays: Nix 包覆盖配置。
- pkgs: 自定义包配置。
- scripts: 脚本文件。
- templates: 配置模板。
- tests: 测试配置。
2. 项目的启动文件介绍
Nix-on-Droid 项目的启动文件主要是 default.nix
和 flake.nix
。
default.nix
default.nix
是 Nix 的默认配置文件,用于定义项目的默认构建和配置。
flake.nix
flake.nix
是 Nix flake 的配置文件,用于定义项目的输入、输出和依赖关系。
{
description = "Nix-on-Droid 系统配置示例";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.05";
nix-on-droid = {
url = "github:nix-community/nix-on-droid/release-24.05";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = { self, nixpkgs, nix-on-droid }: {
nixOnDroidConfigurations.default = nix-on-droid.lib.nixOnDroidConfiguration {
pkgs = import nixpkgs { system = "aarch64-linux"; };
modules = [ ./nix-on-droid.nix ];
};
};
}
3. 项目的配置文件介绍
Nix-on-Droid 的配置文件主要有两个位置:
~/config/nixpkgs/nix-on-droid.nix
这是主要的配置文件,用于定义环境包和系统状态版本。
{ pkgs }:
{
environment.packages = [ pkgs.vim ];
system.stateVersion = "24.05";
}
~/config/nixpkgs/config.nix
这是备用配置文件,使用 nix-on-droid
键进行配置。
{
nix-on-droid = { pkgs }: {
environment.packages = [ pkgs.vim ];
system.stateVersion = "24.05";
};
}
以上是 Nix-on-Droid 项目的基本使用教程,涵盖了项目的目录结构、启动文件和配置文件的介绍。希望对您有所帮助!