Frequently Asked Questions#
Nix#
How do I add a new binary cache?#
Using NixOS (≥ 22.05):
1nix.settings = {
2 trusted-substituters = [ "https://cache.nixos.org" ];
3 substituters = [ "https://cache.nixos.org" ];
4};
Using NixOS (≤ 21.11):
1nix = {
2 trustedBinaryCaches = [ "https://cache.nixos.org" ];
3 binaryCaches = [ "https://cache.nixos.org" ];
4};
Using Nix
:
$ echo "trusted-binary-caches = https://cache.nixos.org" >> /etc/nix/nix.conf
$ nix-build helpers/bench.nix --option extra-binary-caches https://cache.nixos.org
How to operate between Nix paths and strings?#
How to build reverse dependencies of a package?#
$ nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
How can I manage dotfiles in $HOME with Nix?#
What’s the recommended process for building custom packages?#
E.g. if I git clone nixpkgs how do I use the cloned repo to define new / updated packages?
NixOS#
How to build my own ISO?#
See http://nixos.org/nixos/manual/index.html#sec-building-image
How do I connect to any of the machines in NixOS tests?#
Apply following patch:
diff --git a/nixos/lib/test-driver/test-driver.pl b/nixos/lib/test-driver/test-driver.pl
index 8ad0d67..838fbdd 100644
--- a/nixos/lib/test-driver/test-driver.pl
+++ b/nixos/lib/test-driver/test-driver.pl
@@ -34,7 +34,7 @@ foreach my $vlan (split / /, $ENV{VLANS} || "") {
if ($pid == 0) {
dup2(fileno($pty->slave), 0);
dup2(fileno($stdoutW), 1);
- exec "vde_switch -s $socket" or _exit(1);
+ exec "vde_switch -tap tap0 -s $socket" or _exit(1);
}
close $stdoutW;
print $pty "version\n";
And then the vde_switch network should be accessible locally.
How to bootstrap NixOS inside an existing Linux installation?#
There are a couple of tools: