Nixery

Welcome to this instance of Nixery, an ad-hoc container image registry that provides packages from the Nix package manager.

You can pull container images from this registry at nixery.dev by appending any packages that you need in the URL, separated by slashes.

Demo

Usage

These usage examples assume that you use Docker, but should not be much different for other OCI-compatible platforms.

Pull an image from this registry, separating each package you want included by a slash:

docker pull nixery.dev/shell/git/htop

This gives you an image with git, htop and an interactively configured shell. You could run it like this:

docker run -ti nixery.dev/shell/git/htop bash

Each path segment corresponds either to a key in the Nix package set, or a meta-package that automatically expands to several other packages.

Meta-packages must be the first path component if they are used. Currently there are only two meta-packages:

Recent build errors

Below are the Nix build errors for some packages that failed to build recently. If Nixery served you an error, you might be able to find more details about it here.

gzip/python-swiftclient/shell/sqlite
error: while evaluating anonymous function at /nix/store/zk2qpnzz9hcvwh46q1vcrbzasfiny2jh-prepare-image.nix:13:1, called from undefined position:
while evaluating 'writeText' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/build-support/trivial-builders/default.nix:170:11, called from /nix/store/zk2qpnzz9hcvwh46q1vcrbzasfiny2jh-prepare-image.nix:195:1:
while evaluating 'assertMsg' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/asserts.nix:50:21, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/build-support/trivial-builders/default.nix:172:12:
while evaluating anonymous function at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/strings.nix:2601:5, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/build-support/trivial-builders/default.nix:172:27:
while evaluating 'isStringLike' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/strings.nix:2621:18, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/strings.nix:2601:8:
while evaluating 'splitter' at /nix/store/zk2qpnzz9hcvwh46q1vcrbzasfiny2jh-prepare-image.nix:115:25, called from /nix/store/zk2qpnzz9hcvwh46q1vcrbzasfiny2jh-prepare-image.nix:122:5:
while evaluating anonymous function at /nix/store/zk2qpnzz9hcvwh46q1vcrbzasfiny2jh-prepare-image.nix:68:28, called from undefined position:
while evaluating 'attrByPath' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/attrsets.nix:93:24, called from /nix/store/zk2qpnzz9hcvwh46q1vcrbzasfiny2jh-prepare-image.nix:90:5:
while evaluating 'attrByPath'' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/attrsets.nix:97:12, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/attrsets.nix:110:5:
while evaluating 'attrByPath'' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/attrsets.nix:97:12, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/attrsets.nix:106:35:
while evaluating the attribute 'python-swiftclient' at undefined position:
while evaluating anonymous function at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/top-level/aliases.nix:214:31, called from undefined position:
while evaluating 'removeRecurseForDerivations' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/top-level/aliases.nix:26:5, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/top-level/aliases.nix:214:38:
while evaluating 'checkInPkgs' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/top-level/aliases.nix:210:8, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/top-level/aliases.nix:214:67:
'python-swiftclient' has been renamed to/replaced by 'swiftclient'
gzip/postgresql_15/python-swiftclient/shell
error: while evaluating anonymous function at /nix/store/zk2qpnzz9hcvwh46q1vcrbzasfiny2jh-prepare-image.nix:13:1, called from undefined position:
while evaluating 'writeText' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/build-support/trivial-builders/default.nix:170:11, called from /nix/store/zk2qpnzz9hcvwh46q1vcrbzasfiny2jh-prepare-image.nix:195:1:
while evaluating 'assertMsg' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/asserts.nix:50:21, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/build-support/trivial-builders/default.nix:172:12:
while evaluating anonymous function at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/strings.nix:2601:5, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/build-support/trivial-builders/default.nix:172:27:
while evaluating 'isStringLike' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/strings.nix:2621:18, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/strings.nix:2601:8:
while evaluating 'splitter' at /nix/store/zk2qpnzz9hcvwh46q1vcrbzasfiny2jh-prepare-image.nix:115:25, called from /nix/store/zk2qpnzz9hcvwh46q1vcrbzasfiny2jh-prepare-image.nix:122:5:
while evaluating anonymous function at /nix/store/zk2qpnzz9hcvwh46q1vcrbzasfiny2jh-prepare-image.nix:68:28, called from undefined position:
while evaluating 'attrByPath' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/attrsets.nix:93:24, called from /nix/store/zk2qpnzz9hcvwh46q1vcrbzasfiny2jh-prepare-image.nix:90:5:
while evaluating 'attrByPath'' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/attrsets.nix:97:12, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/attrsets.nix:110:5:
while evaluating 'attrByPath'' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/attrsets.nix:97:12, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/attrsets.nix:106:35:
while evaluating the attribute 'python-swiftclient' at undefined position:
while evaluating anonymous function at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/top-level/aliases.nix:214:31, called from undefined position:
while evaluating 'removeRecurseForDerivations' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/top-level/aliases.nix:26:5, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/top-level/aliases.nix:214:38:
while evaluating 'checkInPkgs' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/top-level/aliases.nix:210:8, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/top-level/aliases.nix:214:67:
'python-swiftclient' has been renamed to/replaced by 'swiftclient'
shell/steam
error: while evaluating anonymous function at /nix/store/zk2qpnzz9hcvwh46q1vcrbzasfiny2jh-prepare-image.nix:13:1, called from undefined position:
while evaluating 'writeText' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/build-support/trivial-builders/default.nix:170:11, called from /nix/store/zk2qpnzz9hcvwh46q1vcrbzasfiny2jh-prepare-image.nix:195:1:
while evaluating 'assertMsg' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/asserts.nix:50:21, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/build-support/trivial-builders/default.nix:172:12:
while evaluating anonymous function at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/strings.nix:2601:5, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/build-support/trivial-builders/default.nix:172:27:
while evaluating 'isStringLike' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/strings.nix:2621:18, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/strings.nix:2601:8:
while evaluating the attribute 'exportReferencesGraph' of the derivation 'runtime-graph.json' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/stdenv/generic/make-derivation.nix:480:13:
while evaluating the attribute 'handled' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/stdenv/generic/check-meta.nix:651:9:
while evaluating 'handleEvalIssue' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/stdenv/generic/check-meta.nix:300:5, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/stdenv/generic/check-meta.nix:655:14:
Package ‘steam-1.0.0.83’ in /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/by-name/st/steam-unwrapped/package.nix:47 has an unfree license (‘unfreeRedistributable’), refusing to evaluate.

a) To temporarily allow unfree packages, you can use an environment variable
   for a single invocation of the nix tools.

     $ export NIXPKGS_ALLOW_UNFREE=1
     
   Note: When using `nix shell`, `nix build`, `nix develop`, etc with a flake,
         then pass `--impure` in order to allow use of environment variables.
    
b) For `nixos-rebuild` you can set
  { nixpkgs.config.allowUnfree = true; }
in configuration.nix to override this.

Alternatively you can configure a predicate to allow specific packages:
  { nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [
      "steam"
    ];
  }

c) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnfree = true; }
to ~/.config/nixpkgs/config.nix.
jboss/keycloak
error: while evaluating anonymous function at /nix/store/zk2qpnzz9hcvwh46q1vcrbzasfiny2jh-prepare-image.nix:13:1, called from undefined position:
while evaluating 'writeText' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/build-support/trivial-builders/default.nix:170:11, called from /nix/store/zk2qpnzz9hcvwh46q1vcrbzasfiny2jh-prepare-image.nix:195:1:
while evaluating 'assertMsg' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/asserts.nix:50:21, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/build-support/trivial-builders/default.nix:172:12:
while evaluating anonymous function at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/strings.nix:2601:5, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/build-support/trivial-builders/default.nix:172:27:
while evaluating 'isStringLike' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/strings.nix:2621:18, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/strings.nix:2601:8:
while evaluating the attribute 'exportReferencesGraph' of the derivation 'runtime-graph.json' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/stdenv/generic/make-derivation.nix:480:13:
while evaluating the attribute 'handled' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/stdenv/generic/check-meta.nix:651:9:
while evaluating 'handleEvalIssue' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/stdenv/generic/check-meta.nix:300:5, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/stdenv/generic/check-meta.nix:655:14:
Package ‘jboss-as-7.1.1.Final’ in /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/by-name/jb/jboss/package.nix:23 is marked as insecure, refusing to evaluate.


Known issues:
 - CVE-2015-7501: remote code execution in apache-commons-collections: InvokerTransformer during deserialisation

You can install it anyway by allowing this package, using the
following methods:

a) To temporarily allow all insecure packages, you can use an environment
   variable for a single invocation of the nix tools:

     $ export NIXPKGS_ALLOW_INSECURE=1
     
   Note: When using `nix shell`, `nix build`, `nix develop`, etc with a flake,
         then pass `--impure` in order to allow use of environment variables.
    
b) for `nixos-rebuild` you can add ‘jboss-as-7.1.1.Final’ to
   `nixpkgs.config.permittedInsecurePackages` in the configuration.nix,
   like so:

     {
       nixpkgs.config.permittedInsecurePackages = [
         "jboss-as-7.1.1.Final"
       ];
     }

c) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
   ‘jboss-as-7.1.1.Final’ to `permittedInsecurePackages` in
   ~/.config/nixpkgs/config.nix, like so:

     {
       permittedInsecurePackages = [
         "jboss-as-7.1.1.Final"
       ];
     }
consul/curl/findutils/shell
error: while evaluating anonymous function at /nix/store/zk2qpnzz9hcvwh46q1vcrbzasfiny2jh-prepare-image.nix:13:1, called from undefined position:
while evaluating 'writeText' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/build-support/trivial-builders/default.nix:170:11, called from /nix/store/zk2qpnzz9hcvwh46q1vcrbzasfiny2jh-prepare-image.nix:195:1:
while evaluating 'assertMsg' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/asserts.nix:50:21, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/build-support/trivial-builders/default.nix:172:12:
while evaluating anonymous function at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/strings.nix:2601:5, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/build-support/trivial-builders/default.nix:172:27:
while evaluating 'isStringLike' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/strings.nix:2621:18, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/strings.nix:2601:8:
while evaluating the attribute 'exportReferencesGraph' of the derivation 'runtime-graph.json' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/stdenv/generic/make-derivation.nix:480:13:
while evaluating the attribute 'handled' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/stdenv/generic/check-meta.nix:651:9:
while evaluating 'handleEvalIssue' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/stdenv/generic/check-meta.nix:300:5, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/stdenv/generic/check-meta.nix:655:14:
Package ‘consul-1.21.4’ in /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/by-name/co/consul/package.nix:54 has an unfree license (‘bsl11’), refusing to evaluate.

a) To temporarily allow unfree packages, you can use an environment variable
   for a single invocation of the nix tools.

     $ export NIXPKGS_ALLOW_UNFREE=1
     
   Note: When using `nix shell`, `nix build`, `nix develop`, etc with a flake,
         then pass `--impure` in order to allow use of environment variables.
    
b) For `nixos-rebuild` you can set
  { nixpkgs.config.allowUnfree = true; }
in configuration.nix to override this.

Alternatively you can configure a predicate to allow specific packages:
  { nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [
      "consul"
    ];
  }

c) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnfree = true; }
to ~/.config/nixpkgs/config.nix.
azure-storage-azcopy/bash/busybox/jq/vault/vault-medusa
error: while evaluating anonymous function at /nix/store/zk2qpnzz9hcvwh46q1vcrbzasfiny2jh-prepare-image.nix:13:1, called from undefined position:
while evaluating 'writeText' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/build-support/trivial-builders/default.nix:170:11, called from /nix/store/zk2qpnzz9hcvwh46q1vcrbzasfiny2jh-prepare-image.nix:195:1:
while evaluating 'assertMsg' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/asserts.nix:50:21, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/build-support/trivial-builders/default.nix:172:12:
while evaluating anonymous function at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/strings.nix:2601:5, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/build-support/trivial-builders/default.nix:172:27:
while evaluating 'isStringLike' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/strings.nix:2621:18, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/lib/strings.nix:2601:8:
while evaluating the attribute 'exportReferencesGraph' of the derivation 'runtime-graph.json' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/stdenv/generic/make-derivation.nix:480:13:
while evaluating the attribute 'handled' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/stdenv/generic/check-meta.nix:651:9:
while evaluating 'handleEvalIssue' at /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/stdenv/generic/check-meta.nix:300:5, called from /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/stdenv/generic/check-meta.nix:655:14:
Package ‘vault-1.20.2’ in /nix/store/pq1i11l56sp21zc0z15b2pf9zwskkqvv-nixpkgs-src/pkgs/by-name/va/vault/package.nix:70 has an unfree license (‘bsl11’), refusing to evaluate.

a) To temporarily allow unfree packages, you can use an environment variable
   for a single invocation of the nix tools.

     $ export NIXPKGS_ALLOW_UNFREE=1
     
   Note: When using `nix shell`, `nix build`, `nix develop`, etc with a flake,
         then pass `--impure` in order to allow use of environment variables.
    
b) For `nixos-rebuild` you can set
  { nixpkgs.config.allowUnfree = true; }
in configuration.nix to override this.

Alternatively you can configure a predicate to allow specific packages:
  { nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [
      "vault"
    ];
  }

c) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnfree = true; }
to ~/.config/nixpkgs/config.nix.

FAQ

How does this work?

The short version is that we use the Nix package manager and an optimised layering strategy.

Check out the Nixery talk from NixCon 2019 for more information.

Should I depend on nixery.dev in production?

While we appreciate the enthusiasm, if you would like to use Nixery in your production project we recommend setting up a private instance. The public Nixery at nixery.dev is run on a best-effort basis and we make no guarantees about availability.

Who made this?

Nixery was written by tazjin, originally at Google. These days Nixery is maintained by TVL.

Nixery would not be possible without the many people that have contributed to Nix and nixpkgs over time, maybe you could become one of them?

Where is the source code for this?

Nixery lives in the TVL monorepo. All development happens there and follows the TVL contribution guidelines.

We mirror the source code to Github but do not guarantee that anyone will look at PRs or issues there.