aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/attrsets.nix4
-rw-r--r--nixos/modules/system/activation/activation-script.nix3
-rw-r--r--pkgs/applications/search/recoll/default.nix44
-rw-r--r--pkgs/build-support/cc-wrapper/default.nix12
-rw-r--r--pkgs/build-support/gcc-wrapper-old/default.nix8
-rw-r--r--pkgs/development/compilers/gcc-arm-embedded/default.nix4
-rw-r--r--pkgs/development/compilers/ghc/6.10.2-binary.nix4
-rw-r--r--pkgs/development/compilers/go/1.4.nix2
-rw-r--r--pkgs/development/interpreters/perl/default.nix4
-rw-r--r--pkgs/development/interpreters/pypy/default.nix7
-rw-r--r--pkgs/development/interpreters/python/2.6/default.nix4
-rw-r--r--pkgs/development/interpreters/python/2.7/default.nix4
-rw-r--r--pkgs/development/interpreters/python/3.2/default.nix4
-rw-r--r--pkgs/development/interpreters/python/3.3/default.nix4
-rw-r--r--pkgs/development/interpreters/python/3.4/default.nix4
-rw-r--r--pkgs/development/interpreters/python/3.5/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/cmake/default.nix6
-rw-r--r--pkgs/misc/emulators/wine/base.nix5
-rw-r--r--pkgs/stdenv/darwin/make-bootstrap-tools.nix2
-rw-r--r--pkgs/stdenv/generic/default.nix2
20 files changed, 67 insertions, 64 deletions
diff --git a/lib/attrsets.nix b/lib/attrsets.nix
index 9104ff35d194..636cb257d6bf 100644
--- a/lib/attrsets.nix
+++ b/lib/attrsets.nix
@@ -450,6 +450,10 @@ rec {
then pkg.${output} or pkg.out or pkg
else pkg;
+ getBin = getOutput "bin";
+ getLib = getOutput "lib";
+ getDev = getOutput "dev";
+
/*** deprecated stuff ***/
diff --git a/nixos/modules/system/activation/activation-script.nix b/nixos/modules/system/activation/activation-script.nix
index 9d61d64f7553..4489e34831da 100644
--- a/nixos/modules/system/activation/activation-script.nix
+++ b/nixos/modules/system/activation/activation-script.nix
@@ -12,8 +12,7 @@ let
'';
});
- path = map # outputs TODO?
- (pkg: (pkg.bin or (pkg.out or pkg)))
+ path = map getBin
[ pkgs.coreutils pkgs.gnugrep pkgs.findutils
pkgs.glibc # needed for getent
pkgs.shadow
diff --git a/pkgs/applications/search/recoll/default.nix b/pkgs/applications/search/recoll/default.nix
index 253b97aff1e7..345b1341c0f4 100644
--- a/pkgs/applications/search/recoll/default.nix
+++ b/pkgs/applications/search/recoll/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, bison
+{ stdenv, fetchurl, lib, bison
, qt4, xapian, file, python, perl
, djvulibre, groff, libxslt, unzip, poppler_utils, antiword, catdoc, lyx
, libwpd, unrtf, untex
@@ -26,27 +26,27 @@ stdenv.mkDerivation rec {
# the absolute path to the filtering command.
postInstall = ''
for f in $out/share/recoll/filters/* ; do
- substituteInPlace $f --replace antiword ${antiword}/bin/antiword
- substituteInPlace $f --replace awk ${gawk}/bin/awk
- substituteInPlace $f --replace catppt ${catdoc}/bin/catppt
- substituteInPlace $f --replace djvused ${djvulibre.bin}/bin/djvused
- substituteInPlace $f --replace djvutxt ${djvulibre.bin}/bin/djvutxt
- substituteInPlace $f --replace egrep ${gnugrep}/bin/egrep
- substituteInPlace $f --replace groff ${groff}/bin/groff
- substituteInPlace $f --replace gunzip ${gzip}/bin/gunzip
- substituteInPlace $f --replace iconv ${libiconv.bin or libiconv}/bin/iconv
- substituteInPlace $f --replace lyx ${lyx}/bin/lyx
- substituteInPlace $f --replace pdftotext ${poppler_utils.out}/bin/pdftotext
- substituteInPlace $f --replace pstotext ${ghostscript}/bin/ps2ascii
- substituteInPlace $f --replace sed ${gnused}/bin/sed
- substituteInPlace $f --replace tar ${gnutar}/bin/tar
- substituteInPlace $f --replace unzip ${unzip}/bin/unzip
- substituteInPlace $f --replace xls2csv ${catdoc}/bin/xls2csv
- substituteInPlace $f --replace xsltproc ${libxslt.bin}/bin/xsltproc
- substituteInPlace $f --replace unrtf ${unrtf}/bin/unrtf
- substituteInPlace $f --replace untex ${untex}/bin/untex
- substituteInPlace $f --replace wpd2html ${libwpd}/bin/wpd2html
- substituteInPlace $f --replace /usr/bin/perl ${perl}/bin/perl
+ substituteInPlace $f --replace antiword ${lib.getBin antiword}/bin/antiword
+ substituteInPlace $f --replace awk ${lib.getBin gawk}/bin/awk
+ substituteInPlace $f --replace catppt ${lib.getBin catdoc}/bin/catppt
+ substituteInPlace $f --replace djvused ${lib.getBin djvulibre}/bin/djvused
+ substituteInPlace $f --replace djvutxt ${lib.getBin djvulibre}/bin/djvutxt
+ substituteInPlace $f --replace egrep ${lib.getBin gnugrep}/bin/egrep
+ substituteInPlace $f --replace groff ${lib.getBin groff}/bin/groff
+ substituteInPlace $f --replace gunzip ${lib.getBin gzip}/bin/gunzip
+ substituteInPlace $f --replace iconv ${lib.getBin libiconv}/bin/iconv
+ substituteInPlace $f --replace lyx ${lib.getBin lyx}/bin/lyx
+ substituteInPlace $f --replace pdftotext ${lib.getBin poppler_utils}/bin/pdftotext
+ substituteInPlace $f --replace pstotext ${lib.getBin ghostscript}/bin/ps2ascii
+ substituteInPlace $f --replace sed ${lib.getBin gnused}/bin/sed
+ substituteInPlace $f --replace tar ${lib.getBin gnutar}/bin/tar
+ substituteInPlace $f --replace unzip ${lib.getBin unzip}/bin/unzip
+ substituteInPlace $f --replace xls2csv ${lib.getBin catdoc}/bin/xls2csv
+ substituteInPlace $f --replace xsltproc ${lib.getBin libxslt}/bin/xsltproc
+ substituteInPlace $f --replace unrtf ${lib.getBin unrtf}/bin/unrtf
+ substituteInPlace $f --replace untex ${lib.getBin untex}/bin/untex
+ substituteInPlace $f --replace wpd2html ${lib.getBin libwpd}/bin/wpd2html
+ substituteInPlace $f --replace /usr/bin/perl ${lib.getBin perl}/bin/perl
done
'';
diff --git a/pkgs/build-support/cc-wrapper/default.nix b/pkgs/build-support/cc-wrapper/default.nix
index 6cdd04772445..6bdb35b912a7 100644
--- a/pkgs/build-support/cc-wrapper/default.nix
+++ b/pkgs/build-support/cc-wrapper/default.nix
@@ -27,13 +27,13 @@ let
ccVersion = (builtins.parseDrvName cc.name).version;
ccName = (builtins.parseDrvName cc.name).name;
- libc_bin = if nativeLibc then null else libc.bin or libc;
- libc_dev = if nativeLibc then null else libc.dev or libc;
- libc_lib = if nativeLibc then null else libc.out or libc;
- cc_solib = cc.lib or cc;
- binutils_bin = if nativeTools then "" else binutils.bin or binutils;
+ libc_bin = if nativeLibc then null else getBin libc;
+ libc_dev = if nativeLibc then null else getDev libc;
+ libc_lib = if nativeLibc then null else getLib libc;
+ cc_solib = getLib cc;
+ binutils_bin = if nativeTools then "" else getBin binutils;
# The wrapper scripts use 'cat' and 'grep', so we may need coreutils.
- coreutils_bin = if nativeTools then "" else coreutils.bin or coreutils;
+ coreutils_bin = if nativeTools then "" else getBin coreutils;
in
stdenv.mkDerivation {
diff --git a/pkgs/build-support/gcc-wrapper-old/default.nix b/pkgs/build-support/gcc-wrapper-old/default.nix
index f44aaec5d9d7..a7801e239e9c 100644
--- a/pkgs/build-support/gcc-wrapper-old/default.nix
+++ b/pkgs/build-support/gcc-wrapper-old/default.nix
@@ -5,7 +5,7 @@
# stdenv.mkDerivation provides a wrapper that sets up the right environment
# variables so that the compiler and the linker just "work".
-{ name ? "", stdenv, nativeTools, nativeLibc, nativePrefix ? ""
+{ name ? "", stdenv, lib, nativeTools, nativeLibc, nativePrefix ? ""
, gcc ? null, libc ? null, binutils ? null, coreutils ? null, shell ? ""
, zlib ? null
}:
@@ -41,10 +41,10 @@ stdenv.mkDerivation {
addFlags = ./add-flags;
inherit nativeTools nativeLibc nativePrefix gcc;
- gcc_lib = gcc.lib or gcc;
+ gcc_lib = lib.getLib gcc;
libc = if nativeLibc then null else libc;
- libc_dev = if nativeLibc then null else libc.dev or libc;
- libc_bin = if nativeLibc then null else libc.bin or libc;
+ libc_dev = if nativeLibc then null else lib.getDev libc;
+ libc_bin = if nativeLibc then null else lib.getBin libc;
binutils = if nativeTools then null else binutils;
# The wrapper scripts use 'cat', so we may need coreutils
coreutils = if nativeTools then null else coreutils;
diff --git a/pkgs/development/compilers/gcc-arm-embedded/default.nix b/pkgs/development/compilers/gcc-arm-embedded/default.nix
index 1c549907c31d..85d8d37b21ce 100644
--- a/pkgs/development/compilers/gcc-arm-embedded/default.nix
+++ b/pkgs/development/compilers/gcc-arm-embedded/default.nix
@@ -33,8 +33,8 @@ stdenv.mkDerivation {
for f in $(find $out); do
if [ -f "$f" ] && patchelf "$f" 2> /dev/null; then
- patchelf --set-interpreter ${glibc.out}/lib/ld-linux.so.2 \
- --set-rpath $out/lib:${gcc.lib or gcc}/lib:${ncurses.out}/lib \
+ patchelf --set-interpreter ${getLib glibc}/lib/ld-linux.so.2 \
+ --set-rpath $out/lib:${getLib gcc}/lib:${ncurses.out}/lib \
"$f" || true
fi
done
diff --git a/pkgs/development/compilers/ghc/6.10.2-binary.nix b/pkgs/development/compilers/ghc/6.10.2-binary.nix
index 3ad872518f9e..045b9142ef3b 100644
--- a/pkgs/development/compilers/ghc/6.10.2-binary.nix
+++ b/pkgs/development/compilers/ghc/6.10.2-binary.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, perl, libedit, ncurses, gmp}:
+{stdenv, lib, fetchurl, perl, libedit, ncurses, gmp}:
stdenv.mkDerivation rec {
version = "6.10.2";
@@ -47,7 +47,7 @@ stdenv.mkDerivation rec {
'' else "");
configurePhase = ''
- ./configure --prefix=$out --with-gmp-libraries=${gmp.out}/lib --with-gmp-includes=${gmp.dev or gmp}/include
+ ./configure --prefix=$out --with-gmp-libraries=${lib.getLib gmp}/lib --with-gmp-includes=${lib.getDev gmp}/include
'';
# Stripping combined with patchelf breaks the executables (they die
diff --git a/pkgs/development/compilers/go/1.4.nix b/pkgs/development/compilers/go/1.4.nix
index 3a1f39eab242..17c3cc052177 100644
--- a/pkgs/development/compilers/go/1.4.nix
+++ b/pkgs/development/compilers/go/1.4.nix
@@ -58,7 +58,7 @@ stdenv.mkDerivation rec {
sed -i 's,/usr/share/zoneinfo/,${tzdata}/share/zoneinfo/,' src/time/zoneinfo_unix.go
# Find the loader dynamically
- LOADER="$(find ${libc.out or libc}/lib -name ld-linux\* | head -n 1)"
+ LOADER="$(find ${lib.getLib libc}/lib -name ld-linux\* | head -n 1)"
# Replace references to the loader
find src/cmd -name asm.c -exec sed -i "s,/lib/ld-linux.*\.so\.[0-9],$LOADER," {} \;
diff --git a/pkgs/development/interpreters/perl/default.nix b/pkgs/development/interpreters/perl/default.nix
index f8565b9637a5..a853ca4eb777 100644
--- a/pkgs/development/interpreters/perl/default.nix
+++ b/pkgs/development/interpreters/perl/default.nix
@@ -17,8 +17,8 @@ assert enableThreading -> (stdenv ? glibc);
let
libc = if stdenv.cc.libc or null != null then stdenv.cc.libc else "/usr";
- libcInc = libc.dev or libc;
- libcLib = libc.out or libc;
+ libcInc = lib.getDev libc;
+ libcLib = lib.getLib libc;
common = { version, sha256 }: stdenv.mkDerivation rec {
name = "perl-${version}";
diff --git a/pkgs/development/interpreters/pypy/default.nix b/pkgs/development/interpreters/pypy/default.nix
index 095e0b7db08e..fdbf7b1bab63 100644
--- a/pkgs/development/interpreters/pypy/default.nix
+++ b/pkgs/development/interpreters/pypy/default.nix
@@ -25,10 +25,9 @@ let
++ stdenv.lib.optional (stdenv ? cc && stdenv.cc.libc != null) stdenv.cc.libc
++ stdenv.lib.optional zlibSupport zlib;
- C_INCLUDE_PATH = stdenv.lib.concatStringsSep ":" (map (p: "${p.dev or p}/include") buildInputs);
- LIBRARY_PATH = stdenv.lib.concatStringsSep ":" (map (p: "${p.lib or p.out or p}/lib") buildInputs);
- LD_LIBRARY_PATH = stdenv.lib.concatStringsSep ":" (map (p: "${p.lib or p.out or p}/lib")
- (stdenv.lib.filter (x : x.outPath != stdenv.cc.libc.outPath or "") buildInputs));
+ C_INCLUDE_PATH = stdenv.lib.makeSearchPathOutput "dev" "include" buildInputs;
+ LIBRARY_PATH = stdenv.lib.makeLibraryPath buildInputs;
+ LD_LIBRARY_PATH = stdenv.lib.makeLibraryPath (stdenv.lib.filter (x : x.outPath != stdenv.cc.libc.outPath or "") buildInputs);
preConfigure = ''
# hint pypy to find nix ncurses
diff --git a/pkgs/development/interpreters/python/2.6/default.nix b/pkgs/development/interpreters/python/2.6/default.nix
index 96b44ddc17f3..2196bb7e8b86 100644
--- a/pkgs/development/interpreters/python/2.6/default.nix
+++ b/pkgs/development/interpreters/python/2.6/default.nix
@@ -53,8 +53,8 @@ let
++ optional zlibSupport zlib;
mkPaths = paths: {
- C_INCLUDE_PATH = concatStringsSep ":" (map (p: "${p.dev or p}/include") paths);
- LIBRARY_PATH = concatStringsSep ":" (map (p: "${p.lib or (p.out or p)}/lib") paths);
+ C_INCLUDE_PATH = makeSearchPathOutput "dev" "include" paths;
+ LIBRARY_PATH = makeLibraryPath paths;
};
# Build the basic Python interpreter without modules that have
diff --git a/pkgs/development/interpreters/python/2.7/default.nix b/pkgs/development/interpreters/python/2.7/default.nix
index f1ae897ea4ac..6b336766db78 100644
--- a/pkgs/development/interpreters/python/2.7/default.nix
+++ b/pkgs/development/interpreters/python/2.7/default.nix
@@ -102,8 +102,8 @@ let
propagatedBuildInputs = optional stdenv.isDarwin configd;
mkPaths = paths: {
- C_INCLUDE_PATH = concatStringsSep ":" (map (p: "${p.dev or p}/include") paths);
- LIBRARY_PATH = concatStringsSep ":" (map (p: "${p.lib or (p.out or p)}/lib") paths);
+ C_INCLUDE_PATH = makeSearchPathOutput "dev" "include" paths;
+ LIBRARY_PATH = makeLibraryPath paths;
};
# Build the basic Python interpreter without modules that have
diff --git a/pkgs/development/interpreters/python/3.2/default.nix b/pkgs/development/interpreters/python/3.2/default.nix
index c0b5d3401ddd..91f962efcf4a 100644
--- a/pkgs/development/interpreters/python/3.2/default.nix
+++ b/pkgs/development/interpreters/python/3.2/default.nix
@@ -44,8 +44,8 @@ stdenv.mkDerivation {
${optionalString stdenv.isDarwin ''export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -msse2"''}
configureFlagsArray=( --enable-shared --with-threads --with-wide-unicode
- CPPFLAGS="${concatStringsSep " " (map (p: "-I${p.dev or p}/include") buildInputs)}"
- LDFLAGS="${concatStringsSep " " (map (p: "-L${p.lib or (p.out or p)}/lib") buildInputs)}"
+ CPPFLAGS="${makeSearchPathOutput "dev" "include" buildInputs}"
+ LDFLAGS="${makeLibraryPath buildInputs}"
LIBS="${optionalString (!stdenv.isDarwin) "-lcrypt"} ${optionalString (ncurses != null) "-lncurses"}"
)
'';
diff --git a/pkgs/development/interpreters/python/3.3/default.nix b/pkgs/development/interpreters/python/3.3/default.nix
index a46ef7c056b2..b9cb46562122 100644
--- a/pkgs/development/interpreters/python/3.3/default.nix
+++ b/pkgs/development/interpreters/python/3.3/default.nix
@@ -46,8 +46,8 @@ stdenv.mkDerivation {
${optionalString stdenv.isDarwin ''export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -msse2"''}
configureFlagsArray=( --enable-shared --with-threads
- CPPFLAGS="${concatStringsSep " " (map (p: "-I${p.dev or p}/include") buildInputs)}"
- LDFLAGS="${concatStringsSep " " (map (p: "-L${p.lib or (p.out or p)}/lib") buildInputs)}"
+ CPPFLAGS="${makeSearchPathOutput "dev" "include" buildInputs}"
+ LDFLAGS="${makeLibraryPath buildInputs}"
LIBS="${optionalString (!stdenv.isDarwin) "-lcrypt"} ${optionalString (ncurses != null) "-lncurses"}"
)
'';
diff --git a/pkgs/development/interpreters/python/3.4/default.nix b/pkgs/development/interpreters/python/3.4/default.nix
index 8d87c6abfbb4..6a3ab25c5d40 100644
--- a/pkgs/development/interpreters/python/3.4/default.nix
+++ b/pkgs/development/interpreters/python/3.4/default.nix
@@ -58,8 +58,8 @@ stdenv.mkDerivation {
''}
configureFlagsArray=( --enable-shared --with-threads
- CPPFLAGS="${concatStringsSep " " (map (p: "-I${p.dev or p}/include") buildInputs)}"
- LDFLAGS="${concatStringsSep " " (map (p: "-L${p.lib or (p.out or p)}/lib") buildInputs)}"
+ CPPFLAGS="${makeSearchPathOutput "dev" "include" buildInputs}"
+ LDFLAGS="${makeLibraryPath buildInputs}"
LIBS="${optionalString (!stdenv.isDarwin) "-lcrypt"} ${optionalString (ncurses != null) "-lncurses"}"
)
'';
diff --git a/pkgs/development/interpreters/python/3.5/default.nix b/pkgs/development/interpreters/python/3.5/default.nix
index 4bc39f4c2b3a..504c85ac38d2 100644
--- a/pkgs/development/interpreters/python/3.5/default.nix
+++ b/pkgs/development/interpreters/python/3.5/default.nix
@@ -58,8 +58,8 @@ stdenv.mkDerivation {
''}
configureFlagsArray=( --enable-shared --with-threads
- CPPFLAGS="${concatStringsSep " " (map (p: "-I${p.dev or p}/include") buildInputs)}"
- LDFLAGS="${concatStringsSep " " (map (p: "-L${p.lib or (p.out or p)}/lib") buildInputs)}"
+ CPPFLAGS="${makeSearchPathOutput "dev" "include" buildInputs}"
+ LDFLAGS="${makeLibraryPath buildInputs}"
LIBS="${optionalString (!stdenv.isDarwin) "-lcrypt"} ${optionalString (ncurses != null) "-lncurses"}"
)
'';
diff --git a/pkgs/development/tools/build-managers/cmake/default.nix b/pkgs/development/tools/build-managers/cmake/default.nix
index 9d0ff6e1f174..e1528aa5f009 100644
--- a/pkgs/development/tools/build-managers/cmake/default.nix
+++ b/pkgs/development/tools/build-managers/cmake/default.nix
@@ -47,9 +47,9 @@ stdenv.mkDerivation rec {
''
fixCmakeFiles .
substituteInPlace Modules/Platform/UnixPaths.cmake \
- --subst-var-by glibc_bin ${glibc.bin or glibc} \
- --subst-var-by glibc_dev ${glibc.dev or glibc} \
- --subst-var-by glibc_lib ${glibc.out or glibc}
+ --subst-var-by glibc_bin ${getBin glibc} \
+ --subst-var-by glibc_dev ${getDev glibc} \
+ --subst-var-by glibc_lib ${getLib glibc}
'';
configureFlags =
[ "--docdir=/share/doc/${name}"
diff --git a/pkgs/misc/emulators/wine/base.nix b/pkgs/misc/emulators/wine/base.nix
index 804eb0bb304c..0398ed57a702 100644
--- a/pkgs/misc/emulators/wine/base.nix
+++ b/pkgs/misc/emulators/wine/base.nix
@@ -32,9 +32,10 @@ stdenv.mkDerivation ((lib.optionalAttrs (! isNull buildScript) {
# them to the RPATH so that the user doesn't have to set them in
# LD_LIBRARY_PATH.
NIX_LDFLAGS = map (path: "-rpath " + path) (
- map (x: "${x}/lib") ([ stdenv.cc.cc ] ++ (map (x: x.lib or x.out) buildInputs))
+ map (x: "${lib.getLib x}/lib") ([ stdenv.cc.cc ] ++ buildInputs)
# libpulsecommon.so is linked but not found otherwise
- ++ lib.optionals pulseaudioSupport (map (x: "${x}/lib/pulseaudio") (toBuildInputs pkgArches (pkgs: [ pkgs.libpulseaudio ])))
+ ++ lib.optionals pulseaudioSupport (map (x: "${lib.getLib x}/lib/pulseaudio")
+ (toBuildInputs pkgArches (pkgs: [ pkgs.libpulseaudio ])))
);
# Don't shrink the ELF RPATHs in order to keep the extra RPATH
diff --git a/pkgs/stdenv/darwin/make-bootstrap-tools.nix b/pkgs/stdenv/darwin/make-bootstrap-tools.nix
index 561dcc7fdfda..40f26dc2450b 100644
--- a/pkgs/stdenv/darwin/make-bootstrap-tools.nix
+++ b/pkgs/stdenv/darwin/make-bootstrap-tools.nix
@@ -62,7 +62,7 @@ rec {
cp -d ${openssl.out}/lib/*.dylib $out/lib
cp -d ${gnugrep.pcre.out}/lib/libpcre*.dylib $out/lib
- cp -d ${libiconv.lib or libiconv}/lib/lib*.dylib $out/lib
+ cp -d ${lib.getLib libiconv}/lib/lib*.dylib $out/lib
cp -d ${gettext}/lib/libintl*.dylib $out/lib
chmod +x $out/lib/libintl*.dylib
cp -d ${ncurses.out}/lib/libncurses*.dylib $out/lib
diff --git a/pkgs/stdenv/generic/default.nix b/pkgs/stdenv/generic/default.nix
index 547541d28246..5d3b1682f396 100644
--- a/pkgs/stdenv/generic/default.nix
+++ b/pkgs/stdenv/generic/default.nix
@@ -223,7 +223,7 @@ let
# include it in the result, it *is* available to nix-env for queries.
meta = { }
# If the packager hasn't specified `outputsToInstall`, choose a default,
- # namely `p.bin or p.out or p`;
+ # namely `lib.getBin p`;
# if he has specified it, it will be overridden below in `// meta`.
# Note: This default probably shouldn't be globally configurable.
# Services and users should specify outputs explicitly,