packages

Create custom Nix packages and Nixpkgs overlays for Nix environments.

18|1|Updated Jun 2, 2023
One-click install
npx skills add https://github.com/DaRacci/nix-config --skill packages
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: packages
Source: https://github.com/DaRacci/nix-config/tree/main/.opencode/skills/packages
Command: npx skills add https://github.com/DaRacci/nix-config --skill packages

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill streamlines the process of defining, building, and integrating custom software packages and library overlays within the Nix ecosystem, simplifying your development workflow.

Core Features & Use Cases

  • Custom Package Definition: Easily create Nix expressions for any software, from shell scripts to complex Python applications.
  • Overlay Management: Extend Nixpkgs with your own packages and modifications.
  • Use Case: You need to package a proprietary internal tool or a specific version of a library not available in Nixpkgs. This Skill guides you through creating a Nix derivation for it and making it available system-wide.

Quick Start

Use the packages skill to create a new Nix package definition for a shell script.

Frequently Asked Questions about packages

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a custom Nix package for a shell script?

To create a custom Nix package for a shell script, you define a Nix expression that specifies the script source and its dependencies. This Skill guides you through generating the derivation and integrating it into your Nix environment.

How do I add custom packages to Nixpkgs using overlays?

You add custom packages to Nixpkgs by defining an overlay that extends the existing package set. This Skill enables you to seamlessly integrate your custom software and modifications system-wide via Nix overlays.

Can I package Python applications and libraries in Nix?

Yes, you can package Python applications and libraries in Nix. This Skill supports defining Nix expressions specifically for Python software, along with shell script wrappers and binary executables using autoPatchelf.

What is the best way to manage proprietary binaries in Nix?

The best way to manage proprietary binaries in Nix is by creating a custom derivation with autoPatchelf. This Skill helps you package binary executables and integrate them into your environment using overlays.

Does this support multi-output packages and automated dependency updates?

Yes, this supports defining multi-output packages and provides update script integration. You can split package outputs and automate dependency management directly within your custom Nix expressions.

Do I need prior Nix expression knowledge to package custom software?

You need a basic understanding of the Nix ecosystem to package custom software effectively. This Skill streamlines the workflow, but defining derivations and overlays requires familiarity with Nix expressions.