Nix Ecosystem

Write Nix expressions, flakes, and Home Manager configurations.

71|2|Updated Feb 23, 2024
One-click install
npx skills add https://github.com/takeokunn/nixos-configuration --skill nix-ecosystem-takeokunn
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: Nix Ecosystem
Source: https://github.com/takeokunn/nixos-configuration/tree/main/home-manager/programs/claude-code/skills/ecosystem/nix-ecosystem
Command: npx skills add https://github.com/takeokunn/nixos-configuration --skill nix-ecosystem-takeokunn

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill consolidates Nix ecosystem patterns and best practices for writing Nix expressions, flakes, and Home Manager configurations.

Core Features & Use Cases

  • Comprehensive Nix language patterns (lazy evaluation, pure functions, attribute sets) and common derivation patterns (mkDerivation, callPackage, overlays).
  • Flake structure guidance (packages, devShells, apps, overlays) and best practices for composing nixos and home-manager modules.
  • Home Manager module patterns and organization for programs, options, and config.

Quick Start

Create a minimal flake.nix example and gradually add overlays and a simple home-manager module to see patterns in action.

Frequently Asked Questions about Nix Ecosystem

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

FAQPage Schema
What are the best practices for structuring nix flakes?

Best practices for structuring nix flakes involve organizing outputs into packages, devShells, apps, and overlays to maintain reproducibility. Composing nixos and home-manager modules correctly ensures clear separation of concerns across Linux environments.

How do I write nix derivations using mkDerivation and callPackage?

Writing nix derivations uses patterns like mkDerivation and callPackage to build packages reliably. Leveraging lazy evaluation and pure functions, these patterns manage dependencies through overlays to ensure reproducible builds.

How do I configure home-manager modules for programs and options?

Configuring home-manager modules requires organizing program definitions, custom options, and config blocks into structured modules. This pattern maintains reproducibility by cleanly separating concerns within your Nix expressions across Linux environments.

Does this Nix skill apply to managing nixpkgs overlays?

Yes, this Nix skill applies to managing nixpkgs overlays by encoding common derivation patterns. It provides packaging guidance and constraints for using overlays to ensure reliable and reproducible package composition.

What is the best way to start writing Nix expressions for reproducible configs?

The best way to start writing Nix expressions is creating a minimal flake.nix and gradually adding overlays and a simple home-manager module. This approach applies fundamental language patterns to maintain reproducibility in Linux configurations.