فا نیکسی

سنجاق کردن Nixpkgs

مشخص کردن عبارت‌های Nix راه دور، مانند آنچه توسط Nixpkgs ارائه شده است، به روش‌های مختلفی انجام‌پذیر است:

مقادیر ممکن URL

  • مسیر فایل محلی:
  ./path/to/expression.nix

استفاده از ./. بدین معناست که عبارت در یک فایل default.nix در پوشه جاری قرار دارد.

  • سنجاق‌شده به یک کامیت خاص:
  https://github.com/NixOS/nixpkgs/archive/eabc38219184cc3e04a974fe31857d8e0eac098d.tar.gz
  • استفاده از آخرین نسخه کانال، به این معنا که تمام تست‌ها با موفقیت پشت سر گذاشته شده‌اند:
  http://nixos.org/channels/nixos-22.11/nixexprs.tar.xz
  • سینتکس خلاصه برای کانال‌ها:
  channel:nixos-22.11
  • استفاده از جدیدترین نسخه کانال، میزبانی‌شده توسط GitHub:
  https://github.com/NixOS/nixpkgs/archive/nixos-22.11.tar.gz
  • استفاده از آخرین کامیت روی شاخهٔ انتشار، اما هنوز آزمایش‌نشده:
  https://github.com/NixOS/nixpkgs/archive/release-21.11.tar.gz

مثال‌ها

  $ nix-build -I ~/dev
  $ nix-build -I nixpkgs=http://nixos.org/channels/nixos-22.11/nixexprs.tar.xz
  $ nix-build -I nixpkgs=channel:nixos-22.11
  $ NIX_PATH=nixpkgs=http://nixos.org/channels/nixos-22.11/nixexprs.tar.xz nix-build
  $ NIX_PATH=nixpkgs=channel:nixos-22.11 nix-build
  • در زبان Nix:
  let
    pkgs = import (fetchTarball "https://github.com/NixOS/nixpkgs/archive/nixos-22.11.tar.gz") {};
  in pkgs.stdenv.mkDerivation { ... }

یافتن کامیت‌ها و نسخه‌های خاص

سایت status.nixos.org موارد زیر را فراهم می‌کند:

  • آخرین کامیت‌های تست‌شده برای هر نسخه - هنگام سنجاق کردن Nixpkgs به کامیت‌های خاص از آن استفاده کنید.
  • فهرست کانال‌های نسخهٔ فعال - هنگام پیگیری آخرین نسخه‌های کانال از آن استفاده کنید.

ف فهرست کامل کانال‌ها در nixos.org/channels در دسترس است.

راهنمایی

اطلاعات بیشتر درباره نسخه‌های Nixpkgs و NixOS: channel-branches

nix.dev/reference/pinning-nixpkgs

نیکسی · یادداشت‌های فارسی Nix local fonts