Manual: Random indentation fixes
This commit is contained in:
parent
3db3ae3700
commit
eac06ed070
|
@ -325,7 +325,7 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
</screen>
|
</screen>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
To install it into our environment, you can just run <literal>nix-env -iA
|
To install it into our environment, you can just run <literal>nix-env -iA
|
||||||
|
@ -347,7 +347,7 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
</screen>
|
</screen>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
<literal>pathsToLink</literal> tells Nixpkgs to only link the paths listed
|
<literal>pathsToLink</literal> tells Nixpkgs to only link the paths listed
|
||||||
|
@ -383,7 +383,7 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
</screen>
|
</screen>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
This provides us with some useful documentation for using our packages.
|
This provides us with some useful documentation for using our packages.
|
||||||
|
@ -395,15 +395,15 @@
|
||||||
{
|
{
|
||||||
packageOverrides = pkgs: with pkgs; rec {
|
packageOverrides = pkgs: with pkgs; rec {
|
||||||
myProfile = writeText "my-profile" ''
|
myProfile = writeText "my-profile" ''
|
||||||
export PATH=$HOME/.nix-profile/bin:/nix/var/nix/profiles/default/bin:/sbin:/bin:/usr/sbin:/usr/bin
|
export PATH=$HOME/.nix-profile/bin:/nix/var/nix/profiles/default/bin:/sbin:/bin:/usr/sbin:/usr/bin
|
||||||
export MANPATH=$HOME/.nix-profile/share/man:/nix/var/nix/profiles/default/share/man:/usr/share/man
|
export MANPATH=$HOME/.nix-profile/share/man:/nix/var/nix/profiles/default/share/man:/usr/share/man
|
||||||
'';
|
'';
|
||||||
myPackages = pkgs.buildEnv {
|
myPackages = pkgs.buildEnv {
|
||||||
name = "my-packages";
|
name = "my-packages";
|
||||||
paths = [
|
paths = [
|
||||||
(runCommand "profile" {} ''
|
(runCommand "profile" {} ''
|
||||||
mkdir -p $out/etc/profile.d
|
mkdir -p $out/etc/profile.d
|
||||||
cp ${myProfile} $out/etc/profile.d/my-profile.sh
|
cp ${myProfile} $out/etc/profile.d/my-profile.sh
|
||||||
'')
|
'')
|
||||||
aspell
|
aspell
|
||||||
bc
|
bc
|
||||||
|
@ -421,7 +421,7 @@ cp ${myProfile} $out/etc/profile.d/my-profile.sh
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
</screen>
|
</screen>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
For this to work fully, you must also have this script sourced when you are
|
For this to work fully, you must also have this script sourced when you are
|
||||||
|
@ -438,7 +438,7 @@ if [ -d $HOME/.nix-profile/etc/profile.d ]; then
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
</screen>
|
</screen>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Now just run <literal>source $HOME/.profile</literal> and you can starting
|
Now just run <literal>source $HOME/.profile</literal> and you can starting
|
||||||
|
@ -459,16 +459,16 @@ fi
|
||||||
{
|
{
|
||||||
packageOverrides = pkgs: with pkgs; rec {
|
packageOverrides = pkgs: with pkgs; rec {
|
||||||
myProfile = writeText "my-profile" ''
|
myProfile = writeText "my-profile" ''
|
||||||
export PATH=$HOME/.nix-profile/bin:/nix/var/nix/profiles/default/bin:/sbin:/bin:/usr/sbin:/usr/bin
|
export PATH=$HOME/.nix-profile/bin:/nix/var/nix/profiles/default/bin:/sbin:/bin:/usr/sbin:/usr/bin
|
||||||
export MANPATH=$HOME/.nix-profile/share/man:/nix/var/nix/profiles/default/share/man:/usr/share/man
|
export MANPATH=$HOME/.nix-profile/share/man:/nix/var/nix/profiles/default/share/man:/usr/share/man
|
||||||
export INFOPATH=$HOME/.nix-profile/share/info:/nix/var/nix/profiles/default/share/info:/usr/share/info
|
export INFOPATH=$HOME/.nix-profile/share/info:/nix/var/nix/profiles/default/share/info:/usr/share/info
|
||||||
'';
|
'';
|
||||||
myPackages = pkgs.buildEnv {
|
myPackages = pkgs.buildEnv {
|
||||||
name = "my-packages";
|
name = "my-packages";
|
||||||
paths = [
|
paths = [
|
||||||
(runCommand "profile" {} ''
|
(runCommand "profile" {} ''
|
||||||
mkdir -p $out/etc/profile.d
|
mkdir -p $out/etc/profile.d
|
||||||
cp ${myProfile} $out/etc/profile.d/my-profile.sh
|
cp ${myProfile} $out/etc/profile.d/my-profile.sh
|
||||||
'')
|
'')
|
||||||
aspell
|
aspell
|
||||||
bc
|
bc
|
||||||
|
@ -485,17 +485,17 @@ cp ${myProfile} $out/etc/profile.d/my-profile.sh
|
||||||
pathsToLink = [ "/share/man" "/share/doc" "/share/info" "/bin" "/etc" ];
|
pathsToLink = [ "/share/man" "/share/doc" "/share/info" "/bin" "/etc" ];
|
||||||
extraOutputsToInstall = [ "man" "doc" "info" ];
|
extraOutputsToInstall = [ "man" "doc" "info" ];
|
||||||
postBuild = ''
|
postBuild = ''
|
||||||
if [ -x $out/bin/install-info -a -w $out/share/info ]; then
|
if [ -x $out/bin/install-info -a -w $out/share/info ]; then
|
||||||
shopt -s nullglob
|
shopt -s nullglob
|
||||||
for i in $out/share/info/*.info $out/share/info/*.info.gz; do
|
for i in $out/share/info/*.info $out/share/info/*.info.gz; do
|
||||||
$out/bin/install-info $i $out/share/info/dir
|
$out/bin/install-info $i $out/share/info/dir
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
</screen>
|
</screen>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
<literal>postBuild</literal> tells Nixpkgs to run a command after building
|
<literal>postBuild</literal> tells Nixpkgs to run a command after building
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<chapter xmlns="http://docbook.org/ns/docbook"
|
<chapter xmlns="http://docbook.org/ns/docbook"
|
||||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||||
xmlns:xi="http://www.w3.org/2001/XInclude"
|
xmlns:xi="http://www.w3.org/2001/XInclude"
|
||||||
xml:id="chap-functions">
|
xml:id="chap-functions">
|
||||||
<title>Functions reference</title>
|
<title>Functions reference</title>
|
||||||
<para>
|
<para>
|
||||||
The nixpkgs repository has several utility functions to manipulate Nix
|
The nixpkgs repository has several utility functions to manipulate Nix
|
||||||
|
@ -31,12 +31,16 @@
|
||||||
<para>
|
<para>
|
||||||
Example usages:
|
Example usages:
|
||||||
<programlisting>pkgs.foo.override { arg1 = val1; arg2 = val2; ... }</programlisting>
|
<programlisting>pkgs.foo.override { arg1 = val1; arg2 = val2; ... }</programlisting>
|
||||||
<programlisting>import pkgs.path { overlays = [ (self: super: {
|
<programlisting>
|
||||||
foo = super.foo.override { barSupport = true ; };
|
import pkgs.path { overlays = [ (self: super: {
|
||||||
})]};</programlisting>
|
foo = super.foo.override { barSupport = true ; };
|
||||||
<programlisting>mypkg = pkgs.callPackage ./mypkg.nix {
|
})]};
|
||||||
mydep = pkgs.mydep.override { ... };
|
</programlisting>
|
||||||
}</programlisting>
|
<programlisting>
|
||||||
|
mypkg = pkgs.callPackage ./mypkg.nix {
|
||||||
|
mydep = pkgs.mydep.override { ... };
|
||||||
|
}
|
||||||
|
</programlisting>
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
|
@ -61,9 +65,11 @@
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Example usage:
|
Example usage:
|
||||||
<programlisting>helloWithDebug = pkgs.hello.overrideAttrs (oldAttrs: rec {
|
<programlisting>
|
||||||
separateDebugInfo = true;
|
helloWithDebug = pkgs.hello.overrideAttrs (oldAttrs: rec {
|
||||||
});</programlisting>
|
separateDebugInfo = true;
|
||||||
|
});
|
||||||
|
</programlisting>
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
|
@ -134,14 +140,16 @@
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Example usage:
|
Example usage:
|
||||||
<programlisting>mySed = pkgs.gnused.overrideDerivation (oldAttrs: {
|
<programlisting>
|
||||||
name = "sed-4.2.2-pre";
|
mySed = pkgs.gnused.overrideDerivation (oldAttrs: {
|
||||||
src = fetchurl {
|
name = "sed-4.2.2-pre";
|
||||||
url = ftp://alpha.gnu.org/gnu/sed/sed-4.2.2-pre.tar.bz2;
|
src = fetchurl {
|
||||||
sha256 = "11nq06d131y4wmf3drm0yk502d2xc6n5qy82cg88rb9nqd2lj41k";
|
url = ftp://alpha.gnu.org/gnu/sed/sed-4.2.2-pre.tar.bz2;
|
||||||
};
|
sha256 = "11nq06d131y4wmf3drm0yk502d2xc6n5qy82cg88rb9nqd2lj41k";
|
||||||
patches = [];
|
};
|
||||||
});</programlisting>
|
patches = [];
|
||||||
|
});
|
||||||
|
</programlisting>
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
|
@ -181,8 +189,10 @@
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Example usage:
|
Example usage:
|
||||||
<programlisting>f = { a, b }: { result = a+b; }
|
<programlisting>
|
||||||
c = lib.makeOverridable f { a = 1; b = 2; }</programlisting>
|
f = { a, b }: { result = a+b; };
|
||||||
|
c = lib.makeOverridable f { a = 1; b = 2; };
|
||||||
|
</programlisting>
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
|
@ -482,29 +492,29 @@ merge:"diff3"
|
||||||
<example xml:id='ex-dockerTools-buildImage'>
|
<example xml:id='ex-dockerTools-buildImage'>
|
||||||
<title>Docker build</title>
|
<title>Docker build</title>
|
||||||
<programlisting>
|
<programlisting>
|
||||||
buildImage {
|
buildImage {
|
||||||
name = "redis"; <co xml:id='ex-dockerTools-buildImage-1' />
|
name = "redis"; <co xml:id='ex-dockerTools-buildImage-1' />
|
||||||
tag = "latest"; <co xml:id='ex-dockerTools-buildImage-2' />
|
tag = "latest"; <co xml:id='ex-dockerTools-buildImage-2' />
|
||||||
|
|
||||||
fromImage = someBaseImage; <co xml:id='ex-dockerTools-buildImage-3' />
|
fromImage = someBaseImage; <co xml:id='ex-dockerTools-buildImage-3' />
|
||||||
fromImageName = null; <co xml:id='ex-dockerTools-buildImage-4' />
|
fromImageName = null; <co xml:id='ex-dockerTools-buildImage-4' />
|
||||||
fromImageTag = "latest"; <co xml:id='ex-dockerTools-buildImage-5' />
|
fromImageTag = "latest"; <co xml:id='ex-dockerTools-buildImage-5' />
|
||||||
|
|
||||||
contents = pkgs.redis; <co xml:id='ex-dockerTools-buildImage-6' />
|
contents = pkgs.redis; <co xml:id='ex-dockerTools-buildImage-6' />
|
||||||
runAsRoot = '' <co xml:id='ex-dockerTools-buildImage-runAsRoot' />
|
runAsRoot = '' <co xml:id='ex-dockerTools-buildImage-runAsRoot' />
|
||||||
#!${stdenv.shell}
|
#!${stdenv.shell}
|
||||||
mkdir -p /data
|
mkdir -p /data
|
||||||
'';
|
'';
|
||||||
|
|
||||||
config = { <co xml:id='ex-dockerTools-buildImage-8' />
|
config = { <co xml:id='ex-dockerTools-buildImage-8' />
|
||||||
Cmd = [ "/bin/redis-server" ];
|
Cmd = [ "/bin/redis-server" ];
|
||||||
WorkingDir = "/data";
|
WorkingDir = "/data";
|
||||||
Volumes = {
|
Volumes = {
|
||||||
"/data" = {};
|
"/data" = {};
|
||||||
};
|
|
||||||
};
|
};
|
||||||
}
|
};
|
||||||
</programlisting>
|
}
|
||||||
|
</programlisting>
|
||||||
</example>
|
</example>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
|
@ -647,15 +657,15 @@ merge:"diff3"
|
||||||
<example xml:id='ex-dockerTools-pullImage'>
|
<example xml:id='ex-dockerTools-pullImage'>
|
||||||
<title>Docker pull</title>
|
<title>Docker pull</title>
|
||||||
<programlisting>
|
<programlisting>
|
||||||
pullImage {
|
pullImage {
|
||||||
imageName = "nixos/nix"; <co xml:id='ex-dockerTools-pullImage-1' />
|
imageName = "nixos/nix"; <co xml:id='ex-dockerTools-pullImage-1' />
|
||||||
imageDigest = "sha256:20d9485b25ecfd89204e843a962c1bd70e9cc6858d65d7f5fadc340246e2116b"; <co xml:id='ex-dockerTools-pullImage-2' />
|
imageDigest = "sha256:20d9485b25ecfd89204e843a962c1bd70e9cc6858d65d7f5fadc340246e2116b"; <co xml:id='ex-dockerTools-pullImage-2' />
|
||||||
finalImageTag = "1.11"; <co xml:id='ex-dockerTools-pullImage-3' />
|
finalImageTag = "1.11"; <co xml:id='ex-dockerTools-pullImage-3' />
|
||||||
sha256 = "0mqjy3zq2v6rrhizgb9nvhczl87lcfphq9601wcprdika2jz7qh8"; <co xml:id='ex-dockerTools-pullImage-4' />
|
sha256 = "0mqjy3zq2v6rrhizgb9nvhczl87lcfphq9601wcprdika2jz7qh8"; <co xml:id='ex-dockerTools-pullImage-4' />
|
||||||
os = "linux"; <co xml:id='ex-dockerTools-pullImage-5' />
|
os = "linux"; <co xml:id='ex-dockerTools-pullImage-5' />
|
||||||
arch = "x86_64"; <co xml:id='ex-dockerTools-pullImage-6' />
|
arch = "x86_64"; <co xml:id='ex-dockerTools-pullImage-6' />
|
||||||
}
|
}
|
||||||
</programlisting>
|
</programlisting>
|
||||||
</example>
|
</example>
|
||||||
|
|
||||||
<calloutlist>
|
<calloutlist>
|
||||||
|
@ -677,9 +687,9 @@ merge:"diff3"
|
||||||
exactly which image you want. By default it will match the OS and
|
exactly which image you want. By default it will match the OS and
|
||||||
architecture of the host the command is run on.
|
architecture of the host the command is run on.
|
||||||
<programlisting>
|
<programlisting>
|
||||||
$ nix-shell --packages skopeo jq --command "skopeo --override-os linux --override-arch x86_64 inspect docker://docker.io/nixos/nix:1.11 | jq -r '.Digest'"
|
$ nix-shell --packages skopeo jq --command "skopeo --override-os linux --override-arch x86_64 inspect docker://docker.io/nixos/nix:1.11 | jq -r '.Digest'"
|
||||||
sha256:20d9485b25ecfd89204e843a962c1bd70e9cc6858d65d7f5fadc340246e2116b
|
sha256:20d9485b25ecfd89204e843a962c1bd70e9cc6858d65d7f5fadc340246e2116b
|
||||||
</programlisting>
|
</programlisting>
|
||||||
This argument is required.
|
This argument is required.
|
||||||
</para>
|
</para>
|
||||||
</callout>
|
</callout>
|
||||||
|
@ -737,13 +747,13 @@ merge:"diff3"
|
||||||
<example xml:id='ex-dockerTools-exportImage'>
|
<example xml:id='ex-dockerTools-exportImage'>
|
||||||
<title>Docker export</title>
|
<title>Docker export</title>
|
||||||
<programlisting>
|
<programlisting>
|
||||||
exportImage {
|
exportImage {
|
||||||
fromImage = someLayeredImage;
|
fromImage = someLayeredImage;
|
||||||
fromImageName = null;
|
fromImageName = null;
|
||||||
fromImageTag = null;
|
fromImageTag = null;
|
||||||
|
|
||||||
name = someLayeredImage.name;
|
name = someLayeredImage.name;
|
||||||
}
|
}
|
||||||
</programlisting>
|
</programlisting>
|
||||||
</example>
|
</example>
|
||||||
|
|
||||||
|
@ -774,19 +784,19 @@ merge:"diff3"
|
||||||
<example xml:id='ex-dockerTools-shadowSetup'>
|
<example xml:id='ex-dockerTools-shadowSetup'>
|
||||||
<title>Shadow base files</title>
|
<title>Shadow base files</title>
|
||||||
<programlisting>
|
<programlisting>
|
||||||
buildImage {
|
buildImage {
|
||||||
name = "shadow-basic";
|
name = "shadow-basic";
|
||||||
|
|
||||||
runAsRoot = ''
|
runAsRoot = ''
|
||||||
#!${stdenv.shell}
|
#!${stdenv.shell}
|
||||||
${shadowSetup}
|
${shadowSetup}
|
||||||
groupadd -r redis
|
groupadd -r redis
|
||||||
useradd -r -g redis redis
|
useradd -r -g redis redis
|
||||||
mkdir /data
|
mkdir /data
|
||||||
chown redis:redis /data
|
chown redis:redis /data
|
||||||
'';
|
'';
|
||||||
}
|
}
|
||||||
</programlisting>
|
</programlisting>
|
||||||
</example>
|
</example>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
|
|
Loading…
Reference in New Issue