<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/changelog-deprecating-channels-and-indirect-flake-references-r74mzdr2t" -->

---
title: Changelog: deprecating channels and indirect flake...
description: Determinate Nix 3.4.2 (based on upstream Nix 2.28.3) introduces deprecation warnings for two legacy constructs: Nix channels and indirect flake references...
canonical: https://daily.dev/posts/changelog-deprecating-channels-and-indirect-flake-references-r74mzdr2t
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Changelog: deprecating channels and indirect flake references | daily.dev
og:description: Determinate Nix 3.4.2 (based on upstream Nix 2.28.3) introduces deprecation warnings for two legacy constructs: Nix channels and indirect flake references...
og:url: https://daily.dev/posts/changelog-deprecating-channels-and-indirect-flake-references-r74mzdr2t
og:image: https://api.daily.dev/og/posts/R74mzDr2t.png
og:image:alt: Changelog: deprecating channels and indirect flake references
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Changelog: deprecating channels and indirect flake references

**[Determinate Systems](https://daily.dev/sources/determinate-systems)** · 5 min read · 0 upvotes · 0 comments

## Summary

Determinate Nix 3.4.2 (based on upstream Nix 2.28.3) introduces deprecation warnings for two legacy constructs: Nix channels and indirect flake references inside flake.nix files. Channels are being deprecated because they undermine reproducibility — two machines using the same code can evaluate different expressions if their channels point to different commits. Flakes with lockfiles are the recommended replacement. Indirect flake references inside flakes are also being deprecated because they create a reproducibility hole: a reference can resolve differently depending on the local registry state. Both features still work in 3.4.2 but now emit warnings. Lookup paths like <nixpkgs> are not yet deprecated. Future releases intend to fully prohibit indirect flake references in flakes.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://determinate.systems/blog/changelog-determinate-nix-342>

## Similar posts on daily.dev

- [Changelog: a new upstream base, GC roots for nix eval, and a faster nix copy](https://daily.dev/posts/changelog-a-new-upstream-base-gc-roots-for-nix-eval-and-a-faster-nix-copy-a9ytihpvx) · Determinate Systems · 0 upvotes · 0 comments
- [The Great Nix Flake Check](https://daily.dev/posts/the-great-nix-flake-check-joelq4xlg) · Lobsters · 0 upvotes · 0 comments
- [Changelog: FlakeHub Cache edge routing and a few crash fixes](https://daily.dev/posts/changelog-flakehub-cache-edge-routing-and-a-few-crash-fixes-umodwxeoj) · Determinate Systems · 0 upvotes · 0 comments
- [Dependabot version updates now support the Nix ecosystem](https://daily.dev/posts/dependabot-version-updates-now-support-the-nix-ecosystem-77socdz4m) · GitHub Changelog · 0 upvotes · 0 comments
- [One flake to rule them all](https://daily.dev/posts/one-flake-to-rule-them-all-oyz5p8fiz) · Farid Zakaria’s Blog · 1 upvotes · 1 comments

---

[View this post on daily.dev](https://daily.dev/posts/changelog-deprecating-channels-and-indirect-flake-references-r74mzdr2t)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Changelog: deprecating channels and indirect flake references","url":"https://daily.dev/posts/changelog-deprecating-channels-and-indirect-flake-references-r74mzdr2t","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/changelog-deprecating-channels-and-indirect-flake-references-r74mzdr2t"},"datePublished":"2026-07-26T07:48:26.261Z","dateModified":"2026-07-26T07:51:42.403Z","description":"Determinate Nix 3.4.2 (based on upstream Nix 2.28.3) introduces deprecation warnings for two legacy constructs: Nix channels and indirect flake references...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/3c1225b91b553781eff09d7d50a2fd3e?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/3c1225b91b553781eff09d7d50a2fd3e?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Determinate Systems","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Determinate Systems","logo":"https://media.daily.dev/image/upload/s--E2qrkc9w--/c_limit,w_256/f_auto,q_auto/v1785052094/logos/determinate-systems?_a=BAMAMicg0","url":"https://daily.dev/sources/determinate-systems"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/changelog-deprecating-channels-and-indirect-flake-references-r74mzdr2t","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"","timeRequired":"PT5M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Determinate Systems","item":"https://daily.dev/sources/determinate-systems"},{"@type":"ListItem","position":3,"name":"Changelog: deprecating channels and indirect flake references"}]}
```

