搜索

PythonReactSEOPDF
GitHub Skill

nix-packaging

Package new software or update existing packages using Nix

nix-community☆ 177 仓库 Stars19 仓库 Forks

安装与使用

请根据来源仓库和你的 AI 工具说明安装此技能。先阅读技能文件和依赖要求,再添加到工作流。

查看来源 ↗使用指南

技能说明

Overview

Create new Nix packages or update existing ones, with language-specific examples and guidance.

Workflow: Creating a New Package

  1. Identify the software source: internal to this repo or external (e.g., a GitHub repository).
  2. Determine the programming language(s) used.
  3. Analyze the software structure (build system, dependencies, configuration files).
  4. Create the package following language-specific guidance below.
  5. Optionally, integrate the package into the current project (e.g., add to overlay and expose via packages in flake.nix).
  6. Test iteratively: run nix build .#<package-name>, read errors, fix issues, and rebuild until successful.

Workflow: Updating an Existing Package

Typically, update the version and source fetching attributes (e.g., fetchFromGitHub). The hash field must also be updated using one of these methods:

Method 1: Calculate the new hash directly

# Get the hash
nix-prefetch-url --type sha256 --unpack https://github.com/owner/repo/archive/refs/tags/v<NEW_VERSION>.tar.gz
# Convert to SRI format
nix hash convert --hash-algo sha256 <old-hash>

Method 2: Let Nix tell you the hash Set hash = ""; and run the build. The error message will display the correct hash.

For language-specific update steps, see the references below.

Language-Specific Packaging Skills

使用示例

查看来源仓库中的使用示例与配置说明。

查看来源 ↗

来源历史

收录时间
2026-01-20
索引更新时间
2026-01-26
Branch
main

收录与同步日期属于本站记录。源码修改历史请查看来源仓库。

GitHub ↗

chat Comments (0)

chat_bubble_outline

No comments yet. Be the first to share your thoughts!