Nix Starter Configs 项目教程

Nix Starter Configs 项目教程

nix-starter-configsSimple and documented config templates to help you get started with NixOS + home-manager + flakes. All the boilerplate you need!项目地址:https://gitcode.com/gh_mirrors/ni/nix-starter-configs

1. 项目的目录结构及介绍

nix-starter-configs/
├── LICENSE
├── README.md
├── flake.lock
├── flake.nix
├── home-manager
│   └── home.nix
└── nixos
    └── configuration.nix
  • LICENSE: 项目的许可证文件,采用CC0-1.0许可证。
  • README.md: 项目说明文档,包含项目的基本介绍和使用方法。
  • flake.lock: 锁定文件,确保依赖版本一致性。
  • flake.nix: 主配置文件,定义了项目的依赖和输出。
  • home-manager/home.nix: Home Manager的配置文件,用于管理用户环境。
  • nixos/configuration.nix: NixOS的系统配置文件,用于系统级别的配置。

2. 项目的启动文件介绍

flake.nix

flake.nix 是项目的主配置文件,定义了项目的依赖和输出。以下是文件的基本结构:

{
  description = "Nix Starter Configs";

  inputs = {
    nixpkgs.url = "github:nixos/nixpkgs";
    home-manager.url = "github:nix-community/home-manager";
  };

  outputs = { self, nixpkgs, home-manager }: {
    nixosConfigurations = {
      hostname = nixpkgs.lib.nixosSystem {
        system = "x86_64-linux";
        modules = [
          ./nixos/configuration.nix
        ];
      };
    };

    homeManagerConfigurations = {
      username = home-manager.lib.homeManagerConfiguration {
        configuration = ./home-manager/home.nix;
      };
    };
  };
}
  • description: 项目描述。
  • inputs: 定义项目的依赖,如 nixpkgshome-manager
  • outputs: 定义项目的输出,包括 nixosConfigurationshomeManagerConfigurations

3. 项目的配置文件介绍

nixos/configuration.nix

nixos/configuration.nix 是 NixOS 的系统配置文件,用于系统级别的配置。以下是文件的基本结构:

{ config, pkgs, ... }:

{
  boot.loader.grub.enable = true;
  boot.loader.grub.version = 2;
  boot.loader.grub.device = "/dev/sda";

  fileSystems."/".device = "/dev/sda1";

  environment.systemPackages = with pkgs; [
    vim
    git
  ];

  users.users.username = {
    isNormalUser = true;
    extraGroups = [ "wheel" ];
    password = "password";
  };

  system.stateVersion = "21.11";
}
  • boot.loader: 定义启动加载器。
  • fileSystems: 定义文件系统挂载点。
  • environment.systemPackages: 定义系统包。
  • users.users: 定义用户。
  • system.stateVersion: 定义系统状态版本。

home-manager/home.nix

home-manager/home.nix 是 Home Manager 的配置文件,用于管理用户环境。以下是文件的基本结构:

{ config, pkgs, ... }:

{
  home.packages = with pkgs; [
    vim
    git
  ];

  programs.bash.enable = true;
  programs.bash.shellAliases = {
    ll = "ls -l";
  };

  home.file.".config/example".source = ./path/to/example;

  home.stateVersion = "21.11";
}
  • home.packages: 定义用户包。
  • programs.bash: 定义 Bash 配置。
  • home.file: 定义文件路径和源。
  • home.stateVersion: 定义用户状态版本。

以上是 nix-starter-configs 项目的基本教程,涵盖了项目的目录结构、启动文件和配置文件的介绍。希望对您有所帮助!

nix-starter-configsSimple and documented config templates to help you get started with NixOS + home-manager + flakes. All the boilerplate you need!项目地址:https://gitcode.com/gh_mirrors/ni/nix-starter-configs

  • 6
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

廉咏燃

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值