You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在NixOS中安装私有软件包

NixOS安装私有Git仓库编译包的方案

直接用nix-env安装本地编译产物

如果已经在本地完成编译,直接找到对应的产物路径或.drv文件安装:

  • 若知道编译后包在/nix/store里的完整路径(比如/nix/store/abc123-your-package),执行:
    nix-env -i /nix/store/abc123-your-package
    
  • 手里只有编译生成的.drv文件,执行:
    nix-env -i -f /path/to/your/package.drv
    

把私有仓库集成到系统配置(长期维护推荐)

如果需要让这个包长期出现在系统里,直接在configuration.nix里引用私有仓库的Nix表达式:

  1. 先确保机器能访问私有Git仓库(比如配置好SSH密钥),然后在configuration.nix的environment.systemPackages里添加:
    environment.systemPackages = with pkgs; [
      (import (fetchGit {
        url = "git@your-private-repo:user/repo.git";
        rev = "a1b2c3d4e5f6"; # 你要使用的提交哈希
        sha256 = "0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef";
      })).your-package-name
    ];
    
  2. 上面的sha256可以用命令生成,替换成你的仓库和提交哈希:
    nix-prefetch-git git@your-private-repo:user/repo.git a1b2c3d4e5f6
    
  3. 最后重建系统配置生效:
    sudo nixos-rebuild switch
    

用本地Nix表达式目录安装

如果不想拉远程仓库,直接用本地的包定义目录:

  1. 假设本地有个目录/home/you/private-package,里面有default.nix定义了你的包;
  2. 在configuration.nix里添加:
    environment.systemPackages = with pkgs; [
      (import /home/you/private-package)
    ];
    
  3. 重建系统:
    sudo nixos-rebuild switch
    

内容的提问来源于stack exchange,提问作者DevOps

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 05:07:33