# Nixcademy Blog

Useful Guides and Tutorials about Nix and NixOS

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## The New Default Nix Flake Template Explained

DevFeed: [The New Default Nix Flake Template Explained](<https://devfeed.tech/articles/the-new-default-nix-flake-template-explained-32440.md>)

Original publisher: [Read original article](<https://nixcademy.com/posts/new-default-nix-flake-template/>)

Author: Jacek Galowicz

Published: 2026-08-17T00:00:00Z

Content type: tutorial

Language: en

Sources: [Nixcademy Blog](<https://devfeed.tech/sources/nixcademy-blog.md>)

Topics: [Nix](<https://devfeed.tech/topics/nix.md>), [Template](<https://devfeed.tech/topics/template.md>), [Development](<https://devfeed.tech/topics/development.md>), [Tooling](<https://devfeed.tech/topics/tooling.md>)

Tags: [architecture](<https://devfeed.tech/tags/architecture.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [learn](<https://devfeed.tech/tags/learn.md>), [packages](<https://devfeed.tech/tags/packages.md>), [patterns](<https://devfeed.tech/tags/patterns.md>), [shell](<https://devfeed.tech/tags/shell.md>), [standard](<https://devfeed.tech/tags/standard.md>), [template](<https://devfeed.tech/tags/template.md>)

### AI overview

An explanation of the new default Nix flake template, which supports multiple platforms without flake-utils. The article describes the underlying pattern, how to extend it for real projects, and its limitations and advanced cases.

### Source excerpt

The default Nix flake template is now multi-platform without flake-utils. Learn how the new pattern works and how to extend it for real projects.

## 2.5x Faster x86\_64 Linux Builds on macOS with Rosetta

DevFeed: [2.5x Faster x86\_64 Linux Builds on macOS with Rosetta](<https://devfeed.tech/articles/2-5x-faster-x86-64-linux-builds-on-macos-with-rosetta-32450.md>)

Original publisher: [Read original article](<https://nixcademy.com/posts/rosetta-linux-builder-macos/>)

Author: Jacek Galowicz

Published: 2026-08-10T00:00:00Z

Content type: article

Language: en

Sources: [Nixcademy Blog](<https://devfeed.tech/sources/nixcademy-blog.md>)

Topics: [macOS](<https://devfeed.tech/topics/macos.md>), [Nix](<https://devfeed.tech/topics/nix.md>), [virtualization](<https://devfeed.tech/topics/virtualization.md>), [qemu](<https://devfeed.tech/topics/qemu.md>), [x86](<https://devfeed.tech/topics/x86.md>), [Linux](<https://devfeed.tech/topics/linux.md>)

Tags: [apple-silicon](<https://devfeed.tech/tags/apple-silicon.md>), [install](<https://devfeed.tech/tags/install.md>), [macos](<https://devfeed.tech/tags/macos.md>), [qemu](<https://devfeed.tech/tags/qemu.md>), [rosetta](<https://devfeed.tech/tags/rosetta.md>), [run](<https://devfeed.tech/tags/run.md>), [virtualization](<https://devfeed.tech/tags/virtualization.md>), [x86-64](<https://devfeed.tech/tags/x86-64.md>)

### AI overview

The article explains a new nix-darwin Linux builder backend that uses Apple's Virtualization.framework and exposes Rosetta to guest VMs. On Apple Silicon Macs, it supports x86_64 Linux builds and is reported to be roughly 2.5 times faster than QEMU-based emulation.

### Source excerpt

Build x86_64 Linux packages 2.5x faster on your Apple Silicon Mac with the new Rosetta-based linux-builder, a drop-in replacement in nix-darwin.

## Don't Let Flakes Pin You Down: Unlocking Better Inputs

DevFeed: [Don't Let Flakes Pin You Down: Unlocking Better Inputs](<https://devfeed.tech/articles/don-t-let-flakes-pin-you-down-unlocking-better-inputs-32432.md>)

Original publisher: [Read original article](<https://nixcademy.com/posts/dont-let-flakes-pin-you-down-unlocking-better-inputs-with-nixtamal/>)

Author: toastal

Published: 2026-03-26T00:00:00Z

Content type: tutorial

Language: en

Sources: [Nixcademy Blog](<https://devfeed.tech/sources/nixcademy-blog.md>)

Topics: [Nix](<https://devfeed.tech/topics/nix.md>), [version-control](<https://devfeed.tech/topics/version-control.md>), [Git](<https://devfeed.tech/topics/git.md>), [Tooling](<https://devfeed.tech/topics/tooling.md>)

Tags: [best-practices](<https://devfeed.tech/tags/best-practices.md>), [features](<https://devfeed.tech/tags/features.md>), [fetch](<https://devfeed.tech/tags/fetch.md>), [reproducibility](<https://devfeed.tech/tags/reproducibility.md>), [version-control](<https://devfeed.tech/tags/version-control.md>)

### AI overview

This article examines the limitations of Nix flakes' input-pinning model and introduces nixtamal as a way to work with better inputs. It explains how pinning supports reproducibility, contrasts flakes with earlier tooling such as niv and npins, and discusses limitations including restricted version-control support.

### Source excerpt

Flakes gave us input pinning, but you might be missing out on better inputs. Let's see how nixtamal unlocks them.

## Faster and cheaper NixOS integration tests with containers

DevFeed: [Faster and cheaper NixOS integration tests with containers](<https://devfeed.tech/articles/faster-and-cheaper-nixos-integration-tests-with-containers-32435.md>)

Original publisher: [Read original article](<https://nixcademy.com/posts/faster-cheaper-nixos-integration-tests-with-containers/>)

Author: Jacek Galowicz

Published: 2026-03-13T00:00:00Z

Content type: tutorial

Language: en

Sources: [Nixcademy Blog](<https://devfeed.tech/sources/nixcademy-blog.md>)

Topics: [Testing](<https://devfeed.tech/topics/testing.md>), [Containers](<https://devfeed.tech/topics/containers.md>), [Nix](<https://devfeed.tech/topics/nix.md>), [qemu](<https://devfeed.tech/topics/qemu.md>)

Tags: [containers](<https://devfeed.tech/tags/containers.md>), [faster](<https://devfeed.tech/tags/faster.md>), [integration-test](<https://devfeed.tech/tags/integration-test.md>), [testing](<https://devfeed.tech/tags/testing.md>)

### AI overview

This article introduces a container backend for the NixOS integration test driver as an alternative to its QEMU-based tests. It explains that container tests can reduce startup time and memory use, lower infrastructure requirements, and simplify GPU passthrough in cases where full virtual-machine isolation is unnecessary.

### Source excerpt

The new container support in the NixOS integration test driver allows for faster and lighter testing, let's see how it works!

## Cross-Compiling NixOS images

DevFeed: [Cross-Compiling NixOS images](<https://devfeed.tech/articles/cross-compiling-nixos-images-32431.md>)

Original publisher: [Read original article](<https://nixcademy.com/posts/cross-compile-nixos-images/>)

Author: Jacek Galowicz

Published: 2025-12-20T00:00:00Z

Content type: tutorial

Language: en

Sources: [Nixcademy Blog](<https://devfeed.tech/sources/nixcademy-blog.md>)

Topics: [Nix](<https://devfeed.tech/topics/nix.md>), [Cross-Compilation](<https://devfeed.tech/topics/cross-compilation.md>), [gnu linux](<https://devfeed.tech/topics/gnu-linux.md>), [systemd](<https://devfeed.tech/topics/systemd.md>)

Tags: [article](<https://devfeed.tech/tags/article.md>), [compilation](<https://devfeed.tech/tags/compilation.md>), [cross-compilation](<https://devfeed.tech/tags/cross-compilation.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [learn](<https://devfeed.tech/tags/learn.md>), [linux](<https://devfeed.tech/tags/linux.md>), [systemd](<https://devfeed.tech/tags/systemd.md>)

### AI overview

Part four of a series explaining how to cross-compile NixOS appliance images for other platforms while retaining Nix's declarative and composable configuration model.

### Source excerpt

Part 4 of our NixOS appliance image series - Learn how to cross-compile NixOS images without losing declarativity and composability

## NixOS OTA Updates with systemd-sysupdate: Immutable A/B System Partitions

DevFeed: [NixOS OTA Updates with systemd-sysupdate: Immutable A/B System Partitions](<https://devfeed.tech/articles/nixos-ota-updates-with-systemd-sysupdate-immutable-a-b-system-partitions-32436.md>)

Original publisher: [Read original article](<https://nixcademy.com/posts/immutable-ab-system-partitions-with-nixos-for-ota-updates-with-systemd-sysupdate/>)

Author: Jacek Galowicz

Published: 2025-11-03T00:00:00Z

Content type: tutorial

Language: en

Sources: [Nixcademy Blog](<https://devfeed.tech/sources/nixcademy-blog.md>)

Topics: [Nix](<https://devfeed.tech/topics/nix.md>), [systemd](<https://devfeed.tech/topics/systemd.md>), [Linux](<https://devfeed.tech/topics/linux.md>), [Tutorial](<https://devfeed.tech/topics/tutorial.md>), [systems](<https://devfeed.tech/topics/systems.md>)

Tags: [linux](<https://devfeed.tech/tags/linux.md>), [ota](<https://devfeed.tech/tags/ota.md>), [partitions](<https://devfeed.tech/tags/partitions.md>), [systemd](<https://devfeed.tech/tags/systemd.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>), [updates](<https://devfeed.tech/tags/updates.md>)

### AI overview

A tutorial on using NixOS and systemd-sysupdate to build immutable A/B system partitions for over-the-air updates of minimal appliance systems. It explains the partition layout, update packages, configuration, and testing the update cycle in a virtual machine.

### Source excerpt

NixOS systemd-sysupdate tutorial: build immutable A/B system partitions for over-the-air appliance updates. Part 3 of our NixOS image series.

## Minimizing NixOS images

DevFeed: [Minimizing NixOS images](<https://devfeed.tech/articles/minimizing-nixos-images-32439.md>)

Original publisher: [Read original article](<https://nixcademy.com/posts/minimizing-nixos-images/>)

Author: Jacek Galowicz

Published: 2025-10-21T00:00:00Z

Content type: tutorial

Language: en

Sources: [Nixcademy Blog](<https://devfeed.tech/sources/nixcademy-blog.md>)

Topics: [Nix](<https://devfeed.tech/topics/nix.md>), [gnu linux](<https://devfeed.tech/topics/gnu-linux.md>), [build performance](<https://devfeed.tech/topics/build-performance.md>), [iteration](<https://devfeed.tech/topics/iteration.md>)

Tags: [article](<https://devfeed.tech/tags/article.md>), [build](<https://devfeed.tech/tags/build.md>), [capabilities](<https://devfeed.tech/tags/capabilities.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [iteration](<https://devfeed.tech/tags/iteration.md>)

### AI overview

Part two of a four-part series that explains how to reduce a NixOS appliance image from 1.5 GB to around 360 MB. It covers using Nix tools to inspect dependencies and applying configuration techniques to create smaller system images.

### Source excerpt

Part 2 of our NixOS appliance image series - Learn how to use native Nix tools to shrink the size of your NixOS system images with quick iteration cycles!

## Self-growing NixOS appliance images with systemd-repart

DevFeed: [Self-growing NixOS appliance images with systemd-repart](<https://devfeed.tech/articles/self-growing-nixos-appliance-images-with-systemd-repart-32426.md>)

Original publisher: [Read original article](<https://nixcademy.com/posts/auto-growing-nixos-appliance-images-with-systemd-repart/>)

Author: Jacek Galowicz

Published: 2025-10-03T00:00:00Z

Content type: tutorial

Language: en

Sources: [Nixcademy Blog](<https://devfeed.tech/sources/nixcademy-blog.md>)

Topics: [Nix](<https://devfeed.tech/topics/nix.md>), [systemd](<https://devfeed.tech/topics/systemd.md>), [Linux](<https://devfeed.tech/topics/linux.md>), [Disk image](<https://devfeed.tech/topics/disk-image.md>), [systems](<https://devfeed.tech/topics/systems.md>)

Tags: [boot](<https://devfeed.tech/tags/boot.md>), [build](<https://devfeed.tech/tags/build.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [linux](<https://devfeed.tech/tags/linux.md>), [partitions](<https://devfeed.tech/tags/partitions.md>), [systemd](<https://devfeed.tech/tags/systemd.md>)

### AI overview

This tutorial explains how to build small, bootable NixOS appliance images with systemd-repart that expand to use the available disk during the first boot. It introduces the approach as part of a series covering image minimization, OTA updates, and cross-compilation.

### Source excerpt

How to build small, self-inflating NixOS images with systemd-repart that automatically repartition to use the full disk on the first boot.

## 1000 Instances of flake-utils

DevFeed: [1000 Instances of flake-utils](<https://devfeed.tech/articles/1000-instances-of-flake-utils-32425.md>)

Original publisher: [Read original article](<https://nixcademy.com/posts/1000-instances-of-flake-utils/>)

Author: Marijan Petričević

Published: 2025-05-26T00:00:00Z

Content type: article

Language: en

Sources: [Nixcademy Blog](<https://devfeed.tech/sources/nixcademy-blog.md>)

Topics: [Nix](<https://devfeed.tech/topics/nix.md>), [systems](<https://devfeed.tech/topics/systems.md>), [Code](<https://devfeed.tech/topics/code.md>), [function](<https://devfeed.tech/topics/function.md>)

Tags: [callback](<https://devfeed.tech/tags/callback.md>), [dependency](<https://devfeed.tech/tags/dependency.md>), [documentation](<https://devfeed.tech/tags/documentation.md>), [function](<https://devfeed.tech/tags/function.md>), [guide](<https://devfeed.tech/tags/guide.md>), [systems](<https://devfeed.tech/tags/systems.md>)

### AI overview

This article examines flake-utils as a dependency for reducing repetition when declaring Nix Flake outputs across systems. It discusses obscurity around default systems and argues that a simple custom function can often provide the needed behavior without flake-utils.

### Source excerpt

Let's look at flake-utils' hidden downsides! This guide quickly demystifies it through simple rewrite, offering insights you likely haven't encountered before.

## Ekapkgs: Streamlining Nixpkgs and Flakes for a Smoother Experience

DevFeed: [Ekapkgs: Streamlining Nixpkgs and Flakes for a Smoother Experience](<https://devfeed.tech/articles/ekapkgs-streamlining-nixpkgs-and-flakes-for-a-smoother-experience-32434.md>)

Original publisher: [Read original article](<https://nixcademy.com/posts/ekapkgs-overlays-flakes/>)

Author: Jon Ringer

Published: 2025-05-20T00:00:00Z

Content type: article

Language: en

Sources: [Nixcademy Blog](<https://devfeed.tech/sources/nixcademy-blog.md>)

Topics: [Nix](<https://devfeed.tech/topics/nix.md>), [Development](<https://devfeed.tech/topics/development.md>)

Tags: [consistency](<https://devfeed.tech/tags/consistency.md>), [development](<https://devfeed.tech/tags/development.md>), [packages](<https://devfeed.tech/tags/packages.md>), [workflows](<https://devfeed.tech/tags/workflows.md>)

### AI overview

This article presents ekpkgs, a proposed approach for making Nixpkgs and Flakes easier to use. It describes unified overlay management, extensible package scopes, and streamlined development shells.

### Source excerpt

Ekpkgs simplifies Nix development by improving overlay management, package scoping, and development shell workflows using Flakes.

## Demonstrably Secure Software Supply Chains with Nix

DevFeed: [Demonstrably Secure Software Supply Chains with Nix](<https://devfeed.tech/articles/demonstrably-secure-software-supply-chains-with-nix-32452.md>)

Original publisher: [Read original article](<https://nixcademy.com/posts/secure-supply-chain-with-nix/>)

Author: Jacek Galowicz

Published: 2025-05-12T00:00:00Z

Content type: article

Language: en

Sources: [Nixcademy Blog](<https://devfeed.tech/sources/nixcademy-blog.md>)

Topics: [Nix](<https://devfeed.tech/topics/nix.md>), [supply-chain-security](<https://devfeed.tech/topics/supply-chain-security.md>), [open-source-security](<https://devfeed.tech/topics/open-source-security.md>), [integrity](<https://devfeed.tech/topics/integrity.md>), [Security](<https://devfeed.tech/topics/security.md>), [toolchains](<https://devfeed.tech/topics/toolchains.md>), [audit](<https://devfeed.tech/topics/audit.md>)

Tags: [audit](<https://devfeed.tech/tags/audit.md>), [audits](<https://devfeed.tech/tags/audits.md>), [builds](<https://devfeed.tech/tags/builds.md>), [capabilities](<https://devfeed.tech/tags/capabilities.md>), [compilers](<https://devfeed.tech/tags/compilers.md>), [compliance](<https://devfeed.tech/tags/compliance.md>), [environments](<https://devfeed.tech/tags/environments.md>), [government](<https://devfeed.tech/tags/government.md>), [integrity](<https://devfeed.tech/tags/integrity.md>), [local](<https://devfeed.tech/tags/local.md>), [offline](<https://devfeed.tech/tags/offline.md>), [organizations](<https://devfeed.tech/tags/organizations.md>), [rebuilds](<https://devfeed.tech/tags/rebuilds.md>), [secure-software](<https://devfeed.tech/tags/secure-software.md>), [security](<https://devfeed.tech/tags/security.md>), [software](<https://devfeed.tech/tags/software.md>), [software-supply-chain](<https://devfeed.tech/tags/software-supply-chain.md>), [software-supply-chain-security](<https://devfeed.tech/tags/software-supply-chain-security.md>), [supply-chain](<https://devfeed.tech/tags/supply-chain.md>), [supply-chain-security](<https://devfeed.tech/tags/supply-chain-security.md>)

### AI overview

This article explains how Nix can support verifiable software supply chain integrity. It describes tracing sources and toolchains, enabling hermetic offline rebuilds, and exporting release sources for audits to help meet regulatory requirements.

### Source excerpt

Discover how Nix can revolutionize your software supply chain security, enabling verifiable integrity and offline rebuilds from source.

## Ekapkgs, a poly-repo fork of Nixpkgs

DevFeed: [Ekapkgs, a poly-repo fork of Nixpkgs](<https://devfeed.tech/articles/ekapkgs-a-poly-repo-fork-of-nixpkgs-32433.md>)

Original publisher: [Read original article](<https://nixcademy.com/posts/ekala-project/>)

Author: Jon Ringer

Published: 2025-03-31T00:00:00Z

Content type: opinion

Language: en

Sources: [Nixcademy Blog](<https://devfeed.tech/sources/nixcademy-blog.md>)

Topics: [Nix](<https://devfeed.tech/topics/nix.md>), [repo](<https://devfeed.tech/topics/repo.md>), [Development](<https://devfeed.tech/topics/development.md>), [Maintainability](<https://devfeed.tech/topics/maintainability.md>), [cloud-infrastructure](<https://devfeed.tech/topics/cloud-infrastructure.md>)

Tags: [development](<https://devfeed.tech/tags/development.md>), [fork](<https://devfeed.tech/tags/fork.md>), [glibc](<https://devfeed.tech/tags/glibc.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [maintainability](<https://devfeed.tech/tags/maintainability.md>), [openssl](<https://devfeed.tech/tags/openssl.md>), [repo](<https://devfeed.tech/tags/repo.md>)

### AI overview

The article presents Ekapkgs as a poly-repository fork of Nixpkgs. It argues that Nixpkgs' monolithic scale, lengthy RFC process, and staging workflow make maintenance, convention changes, and package updates difficult, while separate repositories could enable faster iteration and more focused curation.

### Source excerpt

Ekapkgs forks Nixpkgs, splitting it into repos for faster updates & easier curation. Ditch monolithic development flows & slow RFCs. Innovate freely!

## Nix Import From Derivation: How It Works and When to Use It

DevFeed: [Nix Import From Derivation: How It Works and When to Use It](<https://devfeed.tech/articles/nix-ifd-a-ticking-time-bomb-in-your-build-pipeline-32453.md>)

Original publisher: [Read original article](<https://nixcademy.com/posts/what-is-ifd-ups-and-downs/>)

Author: Jacek Galowicz

Published: 2024-12-30T00:00:00Z

Content type: tutorial

Language: en

Sources: [Nixcademy Blog](<https://devfeed.tech/sources/nixcademy-blog.md>)

Topics: [Nix](<https://devfeed.tech/topics/nix.md>), [import](<https://devfeed.tech/topics/import.md>), [Development](<https://devfeed.tech/topics/development.md>)

Tags: [build](<https://devfeed.tech/tags/build.md>), [compilation](<https://devfeed.tech/tags/compilation.md>), [dependencies](<https://devfeed.tech/tags/dependencies.md>), [graph](<https://devfeed.tech/tags/graph.md>), [pipeline](<https://devfeed.tech/tags/pipeline.md>), [terminal](<https://devfeed.tech/tags/terminal.md>), [time](<https://devfeed.tech/tags/time.md>)

### AI overview

This tutorial explains Nix Import From Derivation (IFD), including how it differs from non-IFD builds and how Nix evaluates and realizes derivations. It discusses IFD's benefits for dependency management alongside its potential to slow build times, helping readers decide when to use it.

### Source excerpt

Nix's Import From Derivation (IFD) can speed up development but also cause slow builds. Learn how IFD works, its pros/cons, and when to use it effectively.

## Run and Auto-Update Docker Containers on NixOS

DevFeed: [Run and Auto-Update Docker Containers on NixOS](<https://devfeed.tech/articles/run-and-auto-update-docker-containers-on-nixos-32427.md>)

Original publisher: [Read original article](<https://nixcademy.com/posts/auto-update-containers/>)

Author: Jacek Galowicz

Published: 2024-11-21T00:00:00Z

Content type: tutorial

Language: en

Sources: [Nixcademy Blog](<https://devfeed.tech/sources/nixcademy-blog.md>)

Topics: [Nix](<https://devfeed.tech/topics/nix.md>), [Home Assistant](<https://devfeed.tech/topics/home-assistant.md>), [Docker Image](<https://devfeed.tech/topics/docker-image.md>), [podman](<https://devfeed.tech/topics/podman.md>), [Raspberry Pi](<https://devfeed.tech/topics/raspberry-pi.md>), [systemd](<https://devfeed.tech/topics/systemd.md>), [Containers](<https://devfeed.tech/topics/containers.md>)

Tags: [automatically](<https://devfeed.tech/tags/automatically.md>), [docker](<https://devfeed.tech/tags/docker.md>), [docker-image](<https://devfeed.tech/tags/docker-image.md>), [home-assistant](<https://devfeed.tech/tags/home-assistant.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [pi-4](<https://devfeed.tech/tags/pi-4.md>), [podman](<https://devfeed.tech/tags/podman.md>), [raspberry-pi](<https://devfeed.tech/tags/raspberry-pi.md>), [systemd](<https://devfeed.tech/tags/systemd.md>), [update](<https://devfeed.tech/tags/update.md>)

### AI overview

A tutorial showing how to run Home Assistant in a Docker or Podman container on NixOS, including configuration for host networking and a Zigbee USB dongle. It also explains how to automate image updates and prune old images with systemd timers.

### Source excerpt

Learn how to run the Home Assistant Docker image on NixOS on a Raspberry Pi 4 or other NixOS machines and how to keep it up to date automatically.

## Mastering Nixpkgs Overlays: Techniques and Best Practice

DevFeed: [Mastering Nixpkgs Overlays: Techniques and Best Practice](<https://devfeed.tech/articles/mastering-nixpkgs-overlays-techniques-and-best-practice-32438.md>)

Original publisher: [Read original article](<https://nixcademy.com/posts/mastering-nixpkgs-overlays-techniques-and-best-practice/>)

Author: Jacek Galowicz

Published: 2024-08-01T00:00:00Z

Content type: tutorial

Language: en

Sources: [Nixcademy Blog](<https://devfeed.tech/sources/nixcademy-blog.md>)

Topics: [Nix](<https://devfeed.tech/topics/nix.md>), [function](<https://devfeed.tech/topics/function.md>), [monorepo](<https://devfeed.tech/topics/monorepo.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>), [systems](<https://devfeed.tech/topics/systems.md>), [Fuzzing/Fuzz testing](<https://devfeed.tech/topics/fuzzing.md>), [Testing](<https://devfeed.tech/topics/testing.md>)

Tags: [function](<https://devfeed.tech/tags/function.md>), [fuzzing](<https://devfeed.tech/tags/fuzzing.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [monorepo](<https://devfeed.tech/tags/monorepo.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [patches](<https://devfeed.tech/tags/patches.md>), [systems](<https://devfeed.tech/tags/systems.md>), [techniques](<https://devfeed.tech/tags/techniques.md>), [testing](<https://devfeed.tech/tags/testing.md>)

### AI overview

This tutorial explains how Nixpkgs overlays help compose package collections and build different package or system-image variants. It covers the problems overlays solve, how to apply them to package trees and system images, and positive and negative examples.

### Source excerpt

Overlays in Nixpkgs are a powerful mechanism, but they are also complex to grasp. We tell you everything you need to know about Nixpkgs overlays.

## What You Need to Know About Lazy Evaluation in Nix

DevFeed: [What You Need to Know About Lazy Evaluation in Nix](<https://devfeed.tech/articles/what-you-need-to-know-about-lazy-evaluation-in-nix-32454.md>)

Original publisher: [Read original article](<https://nixcademy.com/posts/what-you-need-to-know-about-laziness/>)

Author: Jacek Galowicz

Published: 2024-07-15T00:00:00Z

Content type: tutorial

Language: en

Sources: [Nixcademy Blog](<https://devfeed.tech/sources/nixcademy-blog.md>)

Topics: [Nix](<https://devfeed.tech/topics/nix.md>), [Functional programming](<https://devfeed.tech/topics/functional-programming.md>), [Programming](<https://devfeed.tech/topics/programming.md>)

Tags: [article](<https://devfeed.tech/tags/article.md>), [functional-programming](<https://devfeed.tech/tags/functional-programming.md>), [lazy](<https://devfeed.tech/tags/lazy.md>), [programming](<https://devfeed.tech/tags/programming.md>)

### AI overview

This article explains lazy evaluation in the Nix language, including when expressions are evaluated, how errors can be deferred until a value is referenced, and how thunks model this behavior. It also introduces context for understanding Nix overlays and dependency overrides.

### Source excerpt

If you have no prior experience with functional programming, don't miss this article which explains the most important intricacies of lazy evaluation!

## Run NixOS Integration Tests on macOS

DevFeed: [Run NixOS Integration Tests on macOS](<https://devfeed.tech/articles/run-nixos-integration-tests-on-macos-32451.md>)

Original publisher: [Read original article](<https://nixcademy.com/posts/running-nixos-integration-tests-on-macos/>)

Author: Jacek Galowicz

Published: 2024-03-08T00:00:00Z

Content type: tutorial

Language: en

Sources: [Nixcademy Blog](<https://devfeed.tech/sources/nixcademy-blog.md>)

Topics: [Nix](<https://devfeed.tech/topics/nix.md>), [macOS](<https://devfeed.tech/topics/macos.md>), [qemu](<https://devfeed.tech/topics/qemu.md>), [Python](<https://devfeed.tech/topics/python.md>), [Linux](<https://devfeed.tech/topics/linux.md>)

Tags: [how-to](<https://devfeed.tech/tags/how-to.md>), [integration-test](<https://devfeed.tech/tags/integration-test.md>), [linux](<https://devfeed.tech/tags/linux.md>), [macos](<https://devfeed.tech/tags/macos.md>), [python](<https://devfeed.tech/tags/python.md>), [qemu](<https://devfeed.tech/tags/qemu.md>)

### AI overview

This tutorial explains how to run NixOS integration tests on macOS. The setup uses normal NixOS virtual machines while qemu and the Python test driver run natively on macOS, with a Linux Builder and required Nix capability flags.

### Source excerpt

NixOS integration now run on macOS! Learn how to set it up and run complex integration tests on your Mac today!

## How to Run NixOS Integration Tests for a Python Service with GitHub Actions

DevFeed: [How to Run NixOS Integration Tests for a Python Service with GitHub Actions](<https://devfeed.tech/articles/test-your-apps-and-services-with-github-actions-quickly-and-for-free-32442.md>)

Original publisher: [Read original article](<https://nixcademy.com/posts/nixos-integration-test-on-github/>)

Author: Jacek Galowicz

Published: 2024-03-01T00:00:00Z

Content type: tutorial

Language: en

Sources: [Nixcademy Blog](<https://devfeed.tech/sources/nixcademy-blog.md>)

Topics: [GitHub Actions](<https://devfeed.tech/topics/github-actions.md>), [Testing](<https://devfeed.tech/topics/testing.md>), [Integration testing](<https://devfeed.tech/topics/integration-testing.md>), [Python](<https://devfeed.tech/topics/python.md>), [systemd](<https://devfeed.tech/topics/systemd.md>)

Tags: [ci](<https://devfeed.tech/tags/ci.md>), [github-actions](<https://devfeed.tech/tags/github-actions.md>), [integration-testing](<https://devfeed.tech/tags/integration-testing.md>), [python](<https://devfeed.tech/tags/python.md>), [server](<https://devfeed.tech/tags/server.md>), [testing](<https://devfeed.tech/tags/testing.md>)

### AI overview

A beginner-focused tutorial that builds a minimal Python TCP echo server, packages it as a NixOS systemd service, tests it with the NixOS integration test driver, and runs the tests on GitHub Actions.

### Source excerpt

Discover how to set up, test, and deploy an example application server using NixOS and GitHub Actions for seamless CI. Unlock powerful integration testing now!

## Build and Deploy Linux Systems from macOS

DevFeed: [Build and Deploy Linux Systems from macOS](<https://devfeed.tech/articles/build-and-deploy-linux-systems-from-macos-32437.md>)

Original publisher: [Read original article](<https://nixcademy.com/posts/macos-linux-builder/>)

Author: Jacek Galowicz

Published: 2024-02-12T00:00:00Z

Content type: tutorial

Language: en

Sources: [Nixcademy Blog](<https://devfeed.tech/sources/nixcademy-blog.md>)

Topics: [Nix](<https://devfeed.tech/topics/nix.md>), [Linux](<https://devfeed.tech/topics/linux.md>), [macOS](<https://devfeed.tech/topics/macos.md>), [cross-platform](<https://devfeed.tech/topics/cross-platform.md>), [qemu](<https://devfeed.tech/topics/qemu.md>), [virtualization](<https://devfeed.tech/topics/virtualization.md>)

Tags: [cross-platform](<https://devfeed.tech/tags/cross-platform.md>), [development](<https://devfeed.tech/tags/development.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [linux](<https://devfeed.tech/tags/linux.md>), [macos](<https://devfeed.tech/tags/macos.md>), [qemu](<https://devfeed.tech/tags/qemu.md>), [virtualization](<https://devfeed.tech/tags/virtualization.md>)

### AI overview

This tutorial explains how to configure macOS with a local remote builder for building NixOS images and deploying to Linux systems. It describes running a NixOS virtual machine with QEMU and configuring Nix and SSH, then introduces a nix-darwin module intended to simplify the setup.

### Source excerpt

Learn how to build and deploy Linux systems from macOS. Set up and optimize nix-darwin for efficient cross-platform development on your Mac.

## Separation of Concerns in Cross-Compilation

DevFeed: [Separation of Concerns in Cross-Compilation](<https://devfeed.tech/articles/separation-of-concerns-in-cross-compilation-32430.md>)

Original publisher: [Read original article](<https://nixcademy.com/posts/cross-compilation-with-nix/>)

Author: Jacek Galowicz

Published: 2024-01-30T00:00:00Z

Content type: tutorial

Language: en

Sources: [Nixcademy Blog](<https://devfeed.tech/sources/nixcademy-blog.md>)

Topics: [Cross-Compilation](<https://devfeed.tech/topics/cross-compilation.md>), [Nix](<https://devfeed.tech/topics/nix.md>), [C++](<https://devfeed.tech/topics/c-plus-plus.md>), [Dependency management](<https://devfeed.tech/topics/dependency-management.md>), [Compiler](<https://devfeed.tech/topics/compiler.md>), [Dockerfile](<https://devfeed.tech/topics/dockerfile.md>), [static linking](<https://devfeed.tech/topics/static-linking.md>)

Tags: [c-plus-plus](<https://devfeed.tech/tags/c-plus-plus.md>), [compilation](<https://devfeed.tech/tags/compilation.md>), [compiler](<https://devfeed.tech/tags/compiler.md>), [cross-compilation](<https://devfeed.tech/tags/cross-compilation.md>), [dependency-management](<https://devfeed.tech/tags/dependency-management.md>), [development](<https://devfeed.tech/tags/development.md>), [docker](<https://devfeed.tech/tags/docker.md>), [static-linking](<https://devfeed.tech/tags/static-linking.md>)

### AI overview

This guide explains how Nix applies separation of concerns to cross-compilation in complex C++ projects. It discusses compiler selection, dependency management, external libraries, distribution, Docker-based workflows, and static linking.

### Source excerpt

Master cross-compilation in complex C++ projects with Nix. Simplify dependency management, boost development speed, and reduce costs with this guide!

## Setting up Nix on macOS

DevFeed: [Setting up Nix on macOS](<https://devfeed.tech/articles/setting-up-nix-on-macos-32441.md>)

Original publisher: [Read original article](<https://nixcademy.com/posts/nix-on-macos/>)

Author: Jacek Galowicz

Published: 2024-01-15T00:00:00Z

Content type: tutorial

Language: en

Sources: [Nixcademy Blog](<https://devfeed.tech/sources/nixcademy-blog.md>)

Topics: [macOS](<https://devfeed.tech/topics/macos.md>), [Nix](<https://devfeed.tech/topics/nix.md>), [configuration](<https://devfeed.tech/topics/configuration.md>), [Development](<https://devfeed.tech/topics/development.md>), [Package manager](<https://devfeed.tech/topics/package-manager.md>)

Tags: [command-line](<https://devfeed.tech/tags/command-line.md>), [configuration](<https://devfeed.tech/tags/configuration.md>), [declarative](<https://devfeed.tech/tags/declarative.md>), [development](<https://devfeed.tech/tags/development.md>), [homebrew](<https://devfeed.tech/tags/homebrew.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [installation](<https://devfeed.tech/tags/installation.md>), [macos](<https://devfeed.tech/tags/macos.md>)

### AI overview

A tutorial on installing Nix on macOS and bootstrapping a declarative setup. It covers package and system configuration, nix-darwin integration, Linux and Intel Mac compilation, and local Linux builder virtual machines.

### Source excerpt

Explore how to set up Nix on macOS effortlessly and boost your development workflow. Learn using nix-darwin for declarative package mgmt and sys configuration.

## How the NixOS Integration Test Driver Works

DevFeed: [How the NixOS Integration Test Driver Works](<https://devfeed.tech/articles/unveiling-the-power-of-the-nixos-integration-test-driver-part-2-32443.md>)

Original publisher: [Read original article](<https://nixcademy.com/posts/nixos-integration-tests-part-2/>)

Author: Jacek Galowicz

Published: 2023-12-01T00:00:00Z

Content type: tutorial

Language: en

Sources: [Nixcademy Blog](<https://devfeed.tech/sources/nixcademy-blog.md>)

Topics: [Nix](<https://devfeed.tech/topics/nix.md>), [Testing](<https://devfeed.tech/topics/testing.md>), [Orchestration](<https://devfeed.tech/topics/orchestration.md>), [configuration](<https://devfeed.tech/topics/configuration.md>), [Python](<https://devfeed.tech/topics/python.md>)

Tags: [debugging](<https://devfeed.tech/tags/debugging.md>), [declarative](<https://devfeed.tech/tags/declarative.md>), [dns](<https://devfeed.tech/tags/dns.md>), [orchestration](<https://devfeed.tech/tags/orchestration.md>), [python](<https://devfeed.tech/tags/python.md>), [testing](<https://devfeed.tech/tags/testing.md>)

### AI overview

This tutorial explains the architecture and operation of the NixOS integration test driver. It presents a runnable example with declarative NixOS host configuration and imperative Python test logic, including virtual networking, VM preparation, and execution in Nix sandboxes.

### Source excerpt

Unlock the NixOS Integration Test Driver! Discover its architecture, setup, interactive debugging, and OCR for efficient, reproducible testing.

## C++ with Nix in 2023, Part 2: Package Generation and Cross-Compilation

DevFeed: [C++ with Nix in 2023, Part 2: Package Generation and Cross-Compilation](<https://devfeed.tech/articles/c-with-nix-in-2023-part-2-package-generation-and-cross-compilation-32429.md>)

Original publisher: [Read original article](<https://nixcademy.com/posts/cpp-with-nix-in-2023-part-2-package/>)

Author: Jacek Galowicz

Published: 2023-11-16T00:00:00Z

Content type: tutorial

Language: en

Sources: [Nixcademy Blog](<https://devfeed.tech/sources/nixcademy-blog.md>)

Topics: [Nix](<https://devfeed.tech/topics/nix.md>), [C++](<https://devfeed.tech/topics/c-plus-plus.md>), [Cross-Compilation](<https://devfeed.tech/topics/cross-compilation.md>), [Development](<https://devfeed.tech/topics/development.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [build-system](<https://devfeed.tech/tags/build-system.md>), [c-plus-plus](<https://devfeed.tech/tags/c-plus-plus.md>), [cross-compilation](<https://devfeed.tech/tags/cross-compilation.md>), [github](<https://devfeed.tech/tags/github.md>), [platforms](<https://devfeed.tech/tags/platforms.md>), [toolchain](<https://devfeed.tech/tags/toolchain.md>)

### AI overview

A tutorial on packaging C++ applications with Nix, using Nix package definitions and flakes to create reproducible builds, generate developer shells, run applications, swap compilers, and cross-compile for different platforms.

### Source excerpt

Learn to package and cross-compile C++ apps with Nix in 2023. Use nix flakes, swap compilers, and cross-compile for various platforms effortlessly.

## C++ with Nix in 2023, Part 1: Developer Shells

DevFeed: [C++ with Nix in 2023, Part 1: Developer Shells](<https://devfeed.tech/articles/c-with-nix-in-2023-part-1-developer-shells-32428.md>)

Original publisher: [Read original article](<https://nixcademy.com/posts/cpp-with-nix-in-2023-part-1-shell/>)

Author: Jacek Galowicz

Published: 2023-10-31T00:00:00Z

Content type: tutorial

Language: en

Sources: [Nixcademy Blog](<https://devfeed.tech/sources/nixcademy-blog.md>)

Topics: [Nix](<https://devfeed.tech/topics/nix.md>), [C++](<https://devfeed.tech/topics/c-plus-plus.md>), [Development](<https://devfeed.tech/topics/development.md>), [toolchain](<https://devfeed.tech/topics/toolchain.md>)

Tags: [build-tool](<https://devfeed.tech/tags/build-tool.md>), [c-plus-plus](<https://devfeed.tech/tags/c-plus-plus.md>), [compilers](<https://devfeed.tech/tags/compilers.md>), [dependency](<https://devfeed.tech/tags/dependency.md>), [development](<https://devfeed.tech/tags/development.md>), [environments](<https://devfeed.tech/tags/environments.md>), [installation](<https://devfeed.tech/tags/installation.md>)

### AI overview

This tutorial introduces Nix for C++ development, focusing on creating consistent and portable developer shells. It explains how Nix can manage compilers, build tools, and dependency libraries without modifying the rest of the system, and begins with a small example project.

### Source excerpt

Discover how Nix simplifies C++ dev with consistent, portable environments. Create dev shells, switch compilers, and update dependencies seamlessly.

[Next page](<https://devfeed.tech/sources/nixcademy-blog.md?cursor=WyIyMDIzLTEwLTMxVDAwOjAwOjAwKzAwOjAwIiwgImE5M2EyNmVjLWFkMDctNGI1Ny1iMzlhLTdhYmFiNTEzY2M4YiJd>)