nix-hybrid

Bridge non-flake Nix code with flake tooling using overlay.nix and flake-compat.

1|1|Updated Apr 6, 2026
One-click install
npx skills add https://github.com/Jylhis/skills --skill nix-hybrid
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: nix-hybrid
Source: https://github.com/Jylhis/skills/tree/main/skills/nix-hybrid
Command: npx skills add https://github.com/Jylhis/skills --skill nix-hybrid

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Hybrid Nix projects often juggle non-flake code with flake-based tooling, causing architectural confusion and pinning drift; nix-hybrid provides patterns and guidance to reconcile these approaches for predictable builds.

Core Features & Use Cases

  • Guidance for integrating overlay.nix, module and package flakes, and a flake-compat shim to support non-flake consumers.
  • Techniques for pin synchronization and devenv integration to keep flake.lock and devenv.lock aligned.
  • Migration patterns to move projects toward a unified hybrid workflow while preserving compatibility with existing non-flake workflows.

Quick Start

Explain how to set up a hybrid Nix project by wiring an overlay.nix with a flake.nix orchestrator and enabling a flake-compat shim for non-flake consumers.

Frequently Asked Questions about nix-hybrid

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

FAQPage Schema
How do I bridge non-flake code with flake tooling for reliable Nix builds?

To bridge non-flake code with flake tooling for reliable Nix builds, wire an overlay.nix with a flake.nix orchestrator and enable a flake-compat shim for non-flake consumers. This maintains parity and safe operation across hybrid workflows.

What is the best way to keep flake.lock and devenv.lock pins synchronized?

The best way to keep flake.lock and devenv.lock pins synchronized is to apply pin synchronization techniques and devenv integration patterns. This ensures both lock files remain aligned, preventing pinning drift in hybrid Nix projects.

Can I use an overlay.nix architecture alongside a flake.nix orchestrator?

Yes, you can use an overlay.nix architecture alongside a flake.nix orchestrator. This hybrid Nix project setup supports both package and module patterns while maintaining compatibility with existing non-flake workflows.

Do I need a flake-compat shim to support non-flake consumers in a NixOS project?

You need a flake-compat shim to support non-flake consumers in a NixOS or nix-darwin project. It bridges the gap between flake-based tooling and non-flake code, ensuring predictable builds without forcing consumers to adopt flakes.

Why does pinning drift happen in hybrid Nix projects and how do I prevent it?

Pinning drift happens in hybrid Nix projects when non-flake code and flake-based tooling juggle separate lock files without synchronization. Prevent it by applying pin synchronization patterns to keep flake.lock and devenv.lock aligned.

How to migrate a Nix project toward a unified hybrid workflow?

To migrate a Nix project toward a unified hybrid workflow, apply migration patterns that integrate overlay.nix, module and package flakes, and devenv tooling. This preserves compatibility with existing non-flake workflows while reconciling architectural confusion.