Merge branch 'master' into staging

* master: (63 commits)
  tests.cc-wrapper: do not test sanitizers on darwin
  nodePackages_8_x: Add nodejs (npm) to wrapper
  python.pkgs.cairocffi: support darwin
  osinfo-db: 20180514 -> 20180531 (#41532)
  pkcs11helper: 1.22 -> 1.23 (#41530)
  pmd: 6.3.0 -> 6.4.0 (#41529)
  renpy: 6.99.14.3 -> 7.0.0 (#41515)
  wireless-regdb: 2018.05.09 -> 2018.05.31 (#41502)
  gnuplot: 5.2.3 -> 5.2.4 (#41505)
  qrencode: 4.0.0 -> 4.0.1
  Revert "libbsd: replace with nbcompat"
  Revert "opendkim: fix libbsd dependency"
  Revert "libbsd-freedesktop: re-init at 0.9.1, use for samba"
  flent: fix fetchFromGitHub version
  syncthing: 0.14.47 -> 0.14.48
  pythonPackages.pykdtree: init at 1.3.0 (#41355)
  snd: 18.3 -> 18.4
  bat: support darwin
  faust2: fix build with llvm 5.0.2 (#40672)
  mc: 4.8.20 -> 4.8.21 (#41496)
  ...
This commit is contained in:
Orivej Desh 2018-06-06 08:08:22 +00:00
commit 91e1ec684f
94 changed files with 4458 additions and 1049 deletions

View File

@ -12,6 +12,11 @@ format:
find . -iname '*.xml' -type f -print0 | xargs -0 -I{} -n1 \
xmlformat --config-file "$$XMLFORMAT_CONFIG" -i {}
.PHONY: fix-misc-xml
fix-misc-xml:
find . -iname '*.xml' -type f \
-exec ../nixos/doc/varlistentry-fixer.rb {} ';'
.PHONY: clean
clean:
rm -f ${MD_TARGETS} .version manual-full.xml

View File

@ -312,11 +312,15 @@ args.stdenv.mkDerivation (args // {
<variablelist>
<varlistentry>
<term>If its used to support <emphasis>software development</emphasis>:</term>
<term>
If its used to support <emphasis>software development</emphasis>:
</term>
<listitem>
<variablelist>
<varlistentry>
<term>If its a <emphasis>library</emphasis> used by other packages:</term>
<term>
If its a <emphasis>library</emphasis> used by other packages:
</term>
<listitem>
<para>
<filename>development/libraries</filename> (e.g.
@ -325,7 +329,9 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>If its a <emphasis>compiler</emphasis>:</term>
<term>
If its a <emphasis>compiler</emphasis>:
</term>
<listitem>
<para>
<filename>development/compilers</filename> (e.g.
@ -334,7 +340,9 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>If its an <emphasis>interpreter</emphasis>:</term>
<term>
If its an <emphasis>interpreter</emphasis>:
</term>
<listitem>
<para>
<filename>development/interpreters</filename> (e.g.
@ -343,11 +351,15 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>If its a (set of) development <emphasis>tool(s)</emphasis>:</term>
<term>
If its a (set of) development <emphasis>tool(s)</emphasis>:
</term>
<listitem>
<variablelist>
<varlistentry>
<term>If its a <emphasis>parser generator</emphasis> (including lexers):</term>
<term>
If its a <emphasis>parser generator</emphasis> (including lexers):
</term>
<listitem>
<para>
<filename>development/tools/parsing</filename> (e.g.
@ -356,7 +368,9 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>If its a <emphasis>build manager</emphasis>:</term>
<term>
If its a <emphasis>build manager</emphasis>:
</term>
<listitem>
<para>
<filename>development/tools/build-managers</filename> (e.g.
@ -365,7 +379,9 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>Else:</term>
<term>
Else:
</term>
<listitem>
<para>
<filename>development/tools/misc</filename> (e.g.
@ -377,7 +393,9 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>Else:</term>
<term>
Else:
</term>
<listitem>
<para>
<filename>development/misc</filename>
@ -388,7 +406,9 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>If its a (set of) <emphasis>tool(s)</emphasis>:</term>
<term>
If its a (set of) <emphasis>tool(s)</emphasis>:
</term>
<listitem>
<para>
(A tool is a relatively small program, especially one intended to be
@ -396,7 +416,9 @@ args.stdenv.mkDerivation (args // {
</para>
<variablelist>
<varlistentry>
<term>If its for <emphasis>networking</emphasis>:</term>
<term>
If its for <emphasis>networking</emphasis>:
</term>
<listitem>
<para>
<filename>tools/networking</filename> (e.g.
@ -405,7 +427,9 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>If its for <emphasis>text processing</emphasis>:</term>
<term>
If its for <emphasis>text processing</emphasis>:
</term>
<listitem>
<para>
<filename>tools/text</filename> (e.g. <filename>diffutils</filename>)
@ -413,9 +437,9 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>If its a <emphasis>system utility</emphasis>, i.e.,
something related or essential to the operation of a
system:</term>
<term>
If its a <emphasis>system utility</emphasis>, i.e., something related or essential to the operation of a system:
</term>
<listitem>
<para>
<filename>tools/system</filename> (e.g. <filename>cron</filename>)
@ -423,8 +447,9 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>If its an <emphasis>archiver</emphasis> (which may
include a compression function):</term>
<term>
If its an <emphasis>archiver</emphasis> (which may include a compression function):
</term>
<listitem>
<para>
<filename>tools/archivers</filename> (e.g. <filename>zip</filename>,
@ -433,7 +458,9 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>If its a <emphasis>compression</emphasis> program:</term>
<term>
If its a <emphasis>compression</emphasis> program:
</term>
<listitem>
<para>
<filename>tools/compression</filename> (e.g.
@ -442,7 +469,9 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>If its a <emphasis>security</emphasis>-related program:</term>
<term>
If its a <emphasis>security</emphasis>-related program:
</term>
<listitem>
<para>
<filename>tools/security</filename> (e.g. <filename>nmap</filename>,
@ -451,7 +480,9 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>Else:</term>
<term>
Else:
</term>
<listitem>
<para>
<filename>tools/misc</filename>
@ -462,7 +493,9 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>If its a <emphasis>shell</emphasis>:</term>
<term>
If its a <emphasis>shell</emphasis>:
</term>
<listitem>
<para>
<filename>shells</filename> (e.g. <filename>bash</filename>)
@ -470,11 +503,15 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>If its a <emphasis>server</emphasis>:</term>
<term>
If its a <emphasis>server</emphasis>:
</term>
<listitem>
<variablelist>
<varlistentry>
<term>If its a web server:</term>
<term>
If its a web server:
</term>
<listitem>
<para>
<filename>servers/http</filename> (e.g.
@ -483,7 +520,9 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>If its an implementation of the X Windowing System:</term>
<term>
If its an implementation of the X Windowing System:
</term>
<listitem>
<para>
<filename>servers/x11</filename> (e.g. <filename>xorg</filename>
@ -492,7 +531,9 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>Else:</term>
<term>
Else:
</term>
<listitem>
<para>
<filename>servers/misc</filename>
@ -503,7 +544,9 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>If its a <emphasis>desktop environment</emphasis>:</term>
<term>
If its a <emphasis>desktop environment</emphasis>:
</term>
<listitem>
<para>
<filename>desktops</filename> (e.g. <filename>kde</filename>,
@ -512,7 +555,9 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>If its a <emphasis>window manager</emphasis>:</term>
<term>
If its a <emphasis>window manager</emphasis>:
</term>
<listitem>
<para>
<filename>applications/window-managers</filename> (e.g.
@ -521,7 +566,9 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>If its an <emphasis>application</emphasis>:</term>
<term>
If its an <emphasis>application</emphasis>:
</term>
<listitem>
<para>
A (typically large) program with a distinct user interface, primarily
@ -529,7 +576,9 @@ args.stdenv.mkDerivation (args // {
</para>
<variablelist>
<varlistentry>
<term>If its a <emphasis>version management system</emphasis>:</term>
<term>
If its a <emphasis>version management system</emphasis>:
</term>
<listitem>
<para>
<filename>applications/version-management</filename> (e.g.
@ -538,7 +587,9 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>If its for <emphasis>video playback / editing</emphasis>:</term>
<term>
If its for <emphasis>video playback / editing</emphasis>:
</term>
<listitem>
<para>
<filename>applications/video</filename> (e.g.
@ -547,7 +598,9 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>If its for <emphasis>graphics viewing / editing</emphasis>:</term>
<term>
If its for <emphasis>graphics viewing / editing</emphasis>:
</term>
<listitem>
<para>
<filename>applications/graphics</filename> (e.g.
@ -556,11 +609,15 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>If its for <emphasis>networking</emphasis>:</term>
<term>
If its for <emphasis>networking</emphasis>:
</term>
<listitem>
<variablelist>
<varlistentry>
<term>If its a <emphasis>mailreader</emphasis>:</term>
<term>
If its a <emphasis>mailreader</emphasis>:
</term>
<listitem>
<para>
<filename>applications/networking/mailreaders</filename> (e.g.
@ -569,7 +626,9 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>If its a <emphasis>newsreader</emphasis>:</term>
<term>
If its a <emphasis>newsreader</emphasis>:
</term>
<listitem>
<para>
<filename>applications/networking/newsreaders</filename> (e.g.
@ -578,7 +637,9 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>If its a <emphasis>web browser</emphasis>:</term>
<term>
If its a <emphasis>web browser</emphasis>:
</term>
<listitem>
<para>
<filename>applications/networking/browsers</filename> (e.g.
@ -587,7 +648,9 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>Else:</term>
<term>
Else:
</term>
<listitem>
<para>
<filename>applications/networking/misc</filename>
@ -598,7 +661,9 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>Else:</term>
<term>
Else:
</term>
<listitem>
<para>
<filename>applications/misc</filename>
@ -609,12 +674,15 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>If its <emphasis>data</emphasis> (i.e., does not have a
straight-forward executable semantics):</term>
<term>
If its <emphasis>data</emphasis> (i.e., does not have a straight-forward executable semantics):
</term>
<listitem>
<variablelist>
<varlistentry>
<term>If its a <emphasis>font</emphasis>:</term>
<term>
If its a <emphasis>font</emphasis>:
</term>
<listitem>
<para>
<filename>data/fonts</filename>
@ -622,11 +690,15 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>If its related to <emphasis>SGML/XML processing</emphasis>:</term>
<term>
If its related to <emphasis>SGML/XML processing</emphasis>:
</term>
<listitem>
<variablelist>
<varlistentry>
<term>If its an <emphasis>XML DTD</emphasis>:</term>
<term>
If its an <emphasis>XML DTD</emphasis>:
</term>
<listitem>
<para>
<filename>data/sgml+xml/schemas/xml-dtd</filename> (e.g.
@ -635,7 +707,9 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>If its an <emphasis>XSLT stylesheet</emphasis>:</term>
<term>
If its an <emphasis>XSLT stylesheet</emphasis>:
</term>
<listitem>
<para>
(Okay, these are executable...)
@ -653,7 +727,9 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>If its a <emphasis>game</emphasis>:</term>
<term>
If its a <emphasis>game</emphasis>:
</term>
<listitem>
<para>
<filename>games</filename>
@ -661,7 +737,9 @@ args.stdenv.mkDerivation (args // {
</listitem>
</varlistentry>
<varlistentry>
<term>Else:</term>
<term>
Else:
</term>
<listitem>
<para>
<filename>misc</filename>

View File

@ -60,7 +60,8 @@
<variablelist>
<varlistentry>
<term><varname>buildPlatform</varname>
<term>
<varname>buildPlatform</varname>
</term>
<listitem>
<para>
@ -71,7 +72,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>hostPlatform</varname>
<term>
<varname>hostPlatform</varname>
</term>
<listitem>
<para>
@ -82,7 +84,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>targetPlatform</varname>
<term>
<varname>targetPlatform</varname>
</term>
<listitem>
<para>
@ -128,7 +131,8 @@
<variablelist>
<varlistentry>
<term><varname>system</varname>
<term>
<varname>system</varname>
</term>
<listitem>
<para>
@ -141,7 +145,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>config</varname>
<term>
<varname>config</varname>
</term>
<listitem>
<para>
@ -157,7 +162,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>parsed</varname>
<term>
<varname>parsed</varname>
</term>
<listitem>
<para>
@ -171,7 +177,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>libc</varname>
<term>
<varname>libc</varname>
</term>
<listitem>
<para>
@ -183,7 +190,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>is*</varname>
<term>
<varname>is*</varname>
</term>
<listitem>
<para>
@ -195,7 +203,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>platform</varname>
<term>
<varname>platform</varname>
</term>
<listitem>
<para>

View File

@ -321,7 +321,8 @@ merge:"diff3"
<variablelist>
<varlistentry>
<term><literal>name</literal>
<term>
<literal>name</literal>
</term>
<listitem>
<para>
@ -330,7 +331,8 @@ merge:"diff3"
</listitem>
</varlistentry>
<varlistentry>
<term><literal>targetPkgs</literal>
<term>
<literal>targetPkgs</literal>
</term>
<listitem>
<para>
@ -340,7 +342,8 @@ merge:"diff3"
</listitem>
</varlistentry>
<varlistentry>
<term><literal>multiPkgs</literal>
<term>
<literal>multiPkgs</literal>
</term>
<listitem>
<para>
@ -351,7 +354,8 @@ merge:"diff3"
</listitem>
</varlistentry>
<varlistentry>
<term><literal>extraBuildCommands</literal>
<term>
<literal>extraBuildCommands</literal>
</term>
<listitem>
<para>
@ -361,7 +365,8 @@ merge:"diff3"
</listitem>
</varlistentry>
<varlistentry>
<term><literal>extraBuildCommandsMulti</literal>
<term>
<literal>extraBuildCommandsMulti</literal>
</term>
<listitem>
<para>
@ -371,7 +376,8 @@ merge:"diff3"
</listitem>
</varlistentry>
<varlistentry>
<term><literal>extraOutputsToInstall</literal>
<term>
<literal>extraOutputsToInstall</literal>
</term>
<listitem>
<para>
@ -381,7 +387,8 @@ merge:"diff3"
</listitem>
</varlistentry>
<varlistentry>
<term><literal>extraInstallCommands</literal>
<term>
<literal>extraInstallCommands</literal>
</term>
<listitem>
<para>
@ -391,7 +398,8 @@ merge:"diff3"
</listitem>
</varlistentry>
<varlistentry>
<term><literal>runScript</literal>
<term>
<literal>runScript</literal>
</term>
<listitem>
<para>
@ -624,9 +632,9 @@ merge:"diff3"
<para>
This function is analogous to the <command>docker pull</command> command,
in that can be used to pull a Docker image from a Docker registry.
By default <link xlink:href="https://hub.docker.com/">Docker Hub</link>
is used to pull images.
in that can be used to pull a Docker image from a Docker registry. By
default <link xlink:href="https://hub.docker.com/">Docker Hub</link> is
used to pull images.
</para>
<para>
@ -648,15 +656,15 @@ merge:"diff3"
<calloutlist>
<callout arearefs='ex-dockerTools-pullImage-1'>
<para>
<varname>imageName</varname> specifies the name of the image to be downloaded,
which can also include the registry namespace (e.g. <literal>nixos</literal>).
This argument is required.
<varname>imageName</varname> specifies the name of the image to be
downloaded, which can also include the registry namespace (e.g.
<literal>nixos</literal>). This argument is required.
</para>
</callout>
<callout arearefs='ex-dockerTools-pullImage-2'>
<para>
<varname>imageDigest</varname> specifies the digest of the image
to be downloaded. Skopeo can be used to get the digest of an image
<varname>imageDigest</varname> specifies the digest of the image to be
downloaded. Skopeo can be used to get the digest of an image
<programlisting>
$ skopeo inspect docker://docker.io/nixos/nix:1.11 | jq -r '.Digest'
sha256:20d9485b25ecfd89204e843a962c1bd70e9cc6858d65d7f5fadc340246e2116b
@ -666,10 +674,10 @@ merge:"diff3"
</callout>
<callout arearefs='ex-dockerTools-pullImage-3'>
<para>
<varname>finalImageTag</varname>, if specified, this is the tag of
the image to be created. Note it is never used to fetch the image
since we prefer to rely on the immutable digest ID. By default
it's <literal>latest</literal>.
<varname>finalImageTag</varname>, if specified, this is the tag of the
image to be created. Note it is never used to fetch the image since we
prefer to rely on the immutable digest ID. By default it's
<literal>latest</literal>.
</para>
</callout>
<callout arearefs='ex-dockerTools-pullImage-4'>

View File

@ -205,8 +205,8 @@ pkgs.stdenv.mkDerivation {
<variablelist>
<varlistentry>
<term><literal>ENOCACHE</literal> errors from
<varname>buildBowerComponents</varname>
<term>
<literal>ENOCACHE</literal> errors from <varname>buildBowerComponents</varname>
</term>
<listitem>
<para>

View File

@ -83,7 +83,8 @@ hello-2.3 A program that produces a familiar, friendly greeting
<variablelist>
<varlistentry>
<term><varname>description</varname>
<term>
<varname>description</varname>
</term>
<listitem>
<para>
@ -106,7 +107,8 @@ hello-2.3 A program that produces a familiar, friendly greeting
</listitem>
</varlistentry>
<varlistentry>
<term><varname>longDescription</varname>
<term>
<varname>longDescription</varname>
</term>
<listitem>
<para>
@ -115,7 +117,8 @@ hello-2.3 A program that produces a familiar, friendly greeting
</listitem>
</varlistentry>
<varlistentry>
<term><varname>branch</varname>
<term>
<varname>branch</varname>
</term>
<listitem>
<para>
@ -126,7 +129,8 @@ hello-2.3 A program that produces a familiar, friendly greeting
</listitem>
</varlistentry>
<varlistentry>
<term><varname>homepage</varname>
<term>
<varname>homepage</varname>
</term>
<listitem>
<para>
@ -136,7 +140,8 @@ hello-2.3 A program that produces a familiar, friendly greeting
</listitem>
</varlistentry>
<varlistentry>
<term><varname>downloadPage</varname>
<term>
<varname>downloadPage</varname>
</term>
<listitem>
<para>
@ -146,7 +151,8 @@ hello-2.3 A program that produces a familiar, friendly greeting
</listitem>
</varlistentry>
<varlistentry>
<term><varname>license</varname>
<term>
<varname>license</varname>
</term>
<listitem>
<para>
@ -198,7 +204,8 @@ hello-2.3 A program that produces a familiar, friendly greeting
</listitem>
</varlistentry>
<varlistentry>
<term><varname>maintainers</varname>
<term>
<varname>maintainers</varname>
</term>
<listitem>
<para>
@ -213,7 +220,8 @@ hello-2.3 A program that produces a familiar, friendly greeting
</listitem>
</varlistentry>
<varlistentry>
<term><varname>priority</varname>
<term>
<varname>priority</varname>
</term>
<listitem>
<para>
@ -225,7 +233,8 @@ hello-2.3 A program that produces a familiar, friendly greeting
</listitem>
</varlistentry>
<varlistentry>
<term><varname>platforms</varname>
<term>
<varname>platforms</varname>
</term>
<listitem>
<para>
@ -242,7 +251,8 @@ meta.platforms = stdenv.lib.platforms.linux;
</listitem>
</varlistentry>
<varlistentry>
<term><varname>hydraPlatforms</varname>
<term>
<varname>hydraPlatforms</varname>
</term>
<listitem>
<para>
@ -261,7 +271,8 @@ meta.hydraPlatforms = [];
</listitem>
</varlistentry>
<varlistentry>
<term><varname>broken</varname>
<term>
<varname>broken</varname>
</term>
<listitem>
<para>
@ -273,7 +284,8 @@ meta.hydraPlatforms = [];
</listitem>
</varlistentry>
<varlistentry>
<term><varname>updateWalker</varname>
<term>
<varname>updateWalker</varname>
</term>
<listitem>
<para>
@ -305,8 +317,8 @@ meta.hydraPlatforms = [];
generic options are available:
<variablelist>
<varlistentry>
<term><varname>stdenv.lib.licenses.free</varname>,
<varname>"free"</varname>
<term>
<varname>stdenv.lib.licenses.free</varname>, <varname>"free"</varname>
</term>
<listitem>
<para>
@ -315,8 +327,8 @@ meta.hydraPlatforms = [];
</listitem>
</varlistentry>
<varlistentry>
<term><varname>stdenv.lib.licenses.unfreeRedistributable</varname>,
<varname>"unfree-redistributable"</varname>
<term>
<varname>stdenv.lib.licenses.unfreeRedistributable</varname>, <varname>"unfree-redistributable"</varname>
</term>
<listitem>
<para>
@ -336,8 +348,8 @@ meta.hydraPlatforms = [];
</listitem>
</varlistentry>
<varlistentry>
<term><varname>stdenv.lib.licenses.unfree</varname>,
<varname>"unfree"</varname>
<term>
<varname>stdenv.lib.licenses.unfree</varname>, <varname>"unfree"</varname>
</term>
<listitem>
<para>
@ -348,8 +360,8 @@ meta.hydraPlatforms = [];
</listitem>
</varlistentry>
<varlistentry>
<term><varname>stdenv.lib.licenses.unfreeRedistributableFirmware</varname>,
<varname>"unfree-redistributable-firmware"</varname>
<term>
<varname>stdenv.lib.licenses.unfreeRedistributableFirmware</varname>, <varname>"unfree-redistributable-firmware"</varname>
</term>
<listitem>
<para>

View File

@ -188,8 +188,8 @@
<variablelist>
<varlistentry>
<term><varname>
$outputDev</varname>
<term>
<varname> $outputDev</varname>
</term>
<listitem>
<para>
@ -200,8 +200,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>
$outputBin</varname>
<term>
<varname> $outputBin</varname>
</term>
<listitem>
<para>
@ -211,8 +211,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>
$outputLib</varname>
<term>
<varname> $outputLib</varname>
</term>
<listitem>
<para>
@ -223,8 +223,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>
$outputDoc</varname>
<term>
<varname> $outputDoc</varname>
</term>
<listitem>
<para>
@ -235,8 +235,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>
$outputDevdoc</varname>
<term>
<varname> $outputDevdoc</varname>
</term>
<listitem>
<para>
@ -248,8 +248,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>
$outputMan</varname>
<term>
<varname> $outputMan</varname>
</term>
<listitem>
<para>
@ -259,8 +259,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>
$outputDevman</varname>
<term>
<varname> $outputDevman</varname>
</term>
<listitem>
<para>
@ -270,8 +270,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>
$outputInfo</varname>
<term>
<varname> $outputInfo</varname>
</term>
<listitem>
<para>

View File

@ -428,7 +428,9 @@ packageOverrides = pkgs: {
<para>
<variablelist>
<varlistentry>
<term>Steam fails to start. What do I do?</term>
<term>
Steam fails to start. What do I do?
</term>
<listitem>
<para>
Try to run
@ -438,7 +440,9 @@ packageOverrides = pkgs: {
</listitem>
</varlistentry>
<varlistentry>
<term>Using the FOSS Radeon or nouveau (nvidia) drivers</term>
<term>
Using the FOSS Radeon or nouveau (nvidia) drivers
</term>
<listitem>
<itemizedlist>
<listitem>
@ -462,7 +466,9 @@ packageOverrides = pkgs: {
</listitem>
</varlistentry>
<varlistentry>
<term>Java</term>
<term>
Java
</term>
<listitem>
<orderedlist>
<listitem>

View File

@ -1,5 +1,5 @@
{ pkgs ? import ../. {} }:
(import ./default.nix).overrideAttrs (x: {
buildInputs = x.buildInputs ++ [ pkgs.xmloscopy ];
buildInputs = x.buildInputs ++ [ pkgs.xmloscopy pkgs.ruby ];
})

File diff suppressed because it is too large Load Diff

View File

@ -56,10 +56,10 @@ let
hasAttr head isAttrs isBool isInt isList isString length
lessThan listToAttrs pathExists readFile replaceStrings seq
stringLength sub substring tail;
inherit (trivial) id const concat or and bitAnd bitOr bitXor
boolToString mergeAttrs flip mapNullable inNixShell min max
importJSON warn info nixpkgsVersion version mod compare
splitByAndCompare functionArgs setFunctionArgs isFunction;
inherit (trivial) id const concat or and boolToString mergeAttrs
flip mapNullable inNixShell min max importJSON warn info
nixpkgsVersion version mod compare splitByAndCompare
functionArgs setFunctionArgs isFunction;
inherit (fixedPoints) fix fix' extends composeExtensions
makeExtensible makeExtensibleWithCustomName;

View File

@ -45,21 +45,6 @@ runTests {
expected = true;
};
testBitAnd = {
expr = (bitAnd 3 10);
expected = 2;
};
testBitOr = {
expr = (bitOr 3 10);
expected = 11;
};
testBitXor = {
expr = (bitXor 3 10);
expected = 9;
};
# STRINGS
testConcatMapStrings = {

View File

@ -1,38 +1,4 @@
{ lib }:
let
zipIntBits = f: x: y:
let
# (intToBits 6) -> [ 0 1 1 ]
intToBits = x:
if x==0 then
[]
else
let
headbit = if (x / 2) * 2 != x then 1 else 0; # x & 1
tailbits = if x < 0 then 9223372036854775807 + ((x+1) / 2) else x / 2; # x >>> 1
in
[headbit] ++ (intToBits tailbits);
# (bitsToInt [ 0 1 1 ]) -> 6
bitsToInt = l:
if l==[] then
0
else
(builtins.head l) + (2 * (bitsToInt (builtins.tail l)));
zipListsWith' = fst: snd:
if fst==[] && snd==[] then
[]
else if fst==[] then
[(f 0 (builtins.head snd))] ++ (zipListsWith' [] (builtins.tail snd))
else if snd==[] then
[(f (builtins.head fst) 0 )] ++ (zipListsWith' (builtins.tail fst) [] )
else
[(f (builtins.head fst) (builtins.head snd))] ++ (zipListsWith' (builtins.tail fst) (builtins.tail snd));
in
assert (builtins.isInt x) && (builtins.isInt y);
bitsToInt (zipListsWith' (intToBits x) (intToBits y));
in
rec {
/* The identity function
@ -65,15 +31,6 @@ rec {
/* boolean and */
and = x: y: x && y;
/* bitwise and */
bitAnd = builtins.bitAnd or zipIntBits (a: b: if a==1 && b==1 then 1 else 0);
/* bitwise or */
bitOr = builtins.bitOr or zipIntBits (a: b: if a==1 || b==1 then 1 else 0);
/* bitwise xor */
bitXor = builtins.bitXor or zipIntBits (a: b: if a!=b then 1 else 0);
/* Convert a boolean to a string.
Note that toString on a bool returns "1" and "".
*/

View File

@ -14,6 +14,11 @@ format:
find . -iname '*.xml' -type f -print0 | xargs -0 -I{} -n1 \
xmlformat --config-file "../xmlformat.conf" -i {}
.PHONY: fix-misc-xml
fix-misc-xml:
find . -iname '*.xml' -type f \
-exec ../varlistentry-fixer.rb {} ';'
.PHONY: clean
clean:
rm -f manual-combined.xml generated

View File

@ -14,7 +14,8 @@
NixOS boot scripts or by systemd:
<variablelist>
<varlistentry>
<term><literal>boot.shell_on_fail</literal>
<term>
<literal>boot.shell_on_fail</literal>
</term>
<listitem>
<para>
@ -25,7 +26,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><literal>boot.debug1</literal>
<term>
<literal>boot.debug1</literal>
</term>
<listitem>
<para>
@ -37,7 +39,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><literal>boot.trace</literal>
<term>
<literal>boot.trace</literal>
</term>
<listitem>
<para>
@ -46,7 +49,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><literal>single</literal>
<term>
<literal>single</literal>
</term>
<listitem>
<para>
@ -59,7 +63,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><literal>systemd.log_level=debug systemd.log_target=console</literal>
<term>
<literal>systemd.log_level=debug systemd.log_target=console</literal>
</term>
<listitem>
<para>

View File

@ -80,7 +80,9 @@ The option value `services.httpd.enable' in `/etc/nixos/configuration.nix' is no
Options have various types of values. The most important are:
<variablelist>
<varlistentry>
<term>Strings</term>
<term>
Strings
</term>
<listitem>
<para>
Strings are enclosed in double quotes, e.g.
@ -112,7 +114,9 @@ The option value `services.httpd.enable' in `/etc/nixos/configuration.nix' is no
</listitem>
</varlistentry>
<varlistentry>
<term>Booleans</term>
<term>
Booleans
</term>
<listitem>
<para>
These can be <literal>true</literal> or <literal>false</literal>, e.g.
@ -124,7 +128,9 @@ The option value `services.httpd.enable' in `/etc/nixos/configuration.nix' is no
</listitem>
</varlistentry>
<varlistentry>
<term>Integers</term>
<term>
Integers
</term>
<listitem>
<para>
For example,
@ -141,7 +147,9 @@ The option value `services.httpd.enable' in `/etc/nixos/configuration.nix' is no
</listitem>
</varlistentry>
<varlistentry>
<term>Sets</term>
<term>
Sets
</term>
<listitem>
<para>
Sets were introduced above. They are name/value pairs enclosed in braces,
@ -157,7 +165,9 @@ The option value `services.httpd.enable' in `/etc/nixos/configuration.nix' is no
</listitem>
</varlistentry>
<varlistentry>
<term>Lists</term>
<term>
Lists
</term>
<listitem>
<para>
The important thing to note about lists is that list elements are
@ -173,7 +183,9 @@ swapDevices = [ { device = "/dev/disk/by-label/swap"; } ];
</listitem>
</varlistentry>
<varlistentry>
<term>Packages</term>
<term>
Packages
</term>
<listitem>
<para>
Usually, the packages you need are already part of the Nix Packages

View File

@ -15,7 +15,8 @@ $ nix-build -A config.<replaceable>option</replaceable></screen>
include:
<variablelist>
<varlistentry>
<term><varname>system.build.toplevel</varname>
<term>
<varname>system.build.toplevel</varname>
</term>
<listitem>
<para>
@ -32,7 +33,8 @@ $ nix-build -A system</screen>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>system.build.manual.manual</varname>
<term>
<varname>system.build.manual.manual</varname>
</term>
<listitem>
<para>
@ -41,7 +43,8 @@ $ nix-build -A system</screen>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>system.build.etc</varname>
<term>
<varname>system.build.etc</varname>
</term>
<listitem>
<para>
@ -51,9 +54,11 @@ $ nix-build -A system</screen>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>system.build.initialRamdisk</varname>
<term>
<varname>system.build.initialRamdisk</varname>
</term>
<term><varname>system.build.kernel</varname>
<term>
<varname>system.build.kernel</varname>
</term>
<listitem>
<para>
@ -69,11 +74,14 @@ $ qemu-system-x86_64 -kernel ./kernel/bzImage -initrd ./initrd/initrd -hda /dev/
</listitem>
</varlistentry>
<varlistentry>
<term><varname>system.build.nixos-rebuild</varname>
<term>
<varname>system.build.nixos-rebuild</varname>
</term>
<term><varname>system.build.nixos-install</varname>
<term>
<varname>system.build.nixos-install</varname>
</term>
<term><varname>system.build.nixos-generate-config</varname>
<term>
<varname>system.build.nixos-generate-config</varname>
</term>
<listitem>
<para>
@ -82,7 +90,8 @@ $ qemu-system-x86_64 -kernel ./kernel/bzImage -initrd ./initrd/initrd -hda /dev/
</listitem>
</varlistentry>
<varlistentry>
<term><varname>systemd.units.<replaceable>unit-name</replaceable>.unit</varname>
<term>
<varname>systemd.units.<replaceable>unit-name</replaceable>.unit</varname>
</term>
<listitem>
<para>

View File

@ -32,7 +32,8 @@ xlink:href="https://nixos.org/nixpkgs/manual/#sec-package-naming">
The function <varname>mkOption</varname> accepts the following arguments.
<variablelist>
<varlistentry>
<term><varname>type</varname>
<term>
<varname>type</varname>
</term>
<listitem>
<para>
@ -43,7 +44,8 @@ xlink:href="https://nixos.org/nixpkgs/manual/#sec-package-naming">
</listitem>
</varlistentry>
<varlistentry>
<term><varname>default</varname>
<term>
<varname>default</varname>
</term>
<listitem>
<para>
@ -55,7 +57,8 @@ xlink:href="https://nixos.org/nixpkgs/manual/#sec-package-naming">
</listitem>
</varlistentry>
<varlistentry>
<term><varname>example</varname>
<term>
<varname>example</varname>
</term>
<listitem>
<para>
@ -64,7 +67,8 @@ xlink:href="https://nixos.org/nixpkgs/manual/#sec-package-naming">
</listitem>
</varlistentry>
<varlistentry>
<term><varname>description</varname>
<term>
<varname>description</varname>
</term>
<listitem>
<para>

View File

@ -22,7 +22,8 @@
<variablelist>
<varlistentry>
<term><varname>types.attrs</varname>
<term>
<varname>types.attrs</varname>
</term>
<listitem>
<para>
@ -31,7 +32,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>types.bool</varname>
<term>
<varname>types.bool</varname>
</term>
<listitem>
<para>
@ -41,7 +43,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>types.path</varname>
<term>
<varname>types.path</varname>
</term>
<listitem>
<para>
@ -52,7 +55,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>types.package</varname>
<term>
<varname>types.package</varname>
</term>
<listitem>
<para>
@ -68,7 +72,8 @@
<variablelist>
<varlistentry>
<term><varname>types.int</varname>
<term>
<varname>types.int</varname>
</term>
<listitem>
<para>
@ -77,7 +82,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>types.ints.{s8, s16, s32}</varname>
<term>
<varname>types.ints.{s8, s16, s32}</varname>
</term>
<listitem>
<para>
@ -91,7 +97,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>types.ints.unsigned</varname>
<term>
<varname>types.ints.unsigned</varname>
</term>
<listitem>
<para>
@ -100,7 +107,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>types.ints.{u8, u16, u32}</varname>
<term>
<varname>types.ints.{u8, u16, u32}</varname>
</term>
<listitem>
<para>
@ -114,7 +122,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>types.ints.positive</varname>
<term>
<varname>types.ints.positive</varname>
</term>
<listitem>
<para>
@ -130,7 +139,8 @@
<variablelist>
<varlistentry>
<term><varname>types.str</varname>
<term>
<varname>types.str</varname>
</term>
<listitem>
<para>
@ -139,7 +149,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>types.lines</varname>
<term>
<varname>types.lines</varname>
</term>
<listitem>
<para>
@ -149,7 +160,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>types.commas</varname>
<term>
<varname>types.commas</varname>
</term>
<listitem>
<para>
@ -159,7 +171,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>types.envVar</varname>
<term>
<varname>types.envVar</varname>
</term>
<listitem>
<para>
@ -169,7 +182,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>types.strMatching</varname>
<term>
<varname>types.strMatching</varname>
</term>
<listitem>
<para>
@ -191,7 +205,8 @@
<variablelist>
<varlistentry>
<term><varname>types.enum</varname><replaceable>l</replaceable>
<term>
<varname>types.enum</varname> <replaceable>l</replaceable>
</term>
<listitem>
<para>
@ -202,7 +217,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>types.separatedString</varname><replaceable>sep</replaceable>
<term>
<varname>types.separatedString</varname> <replaceable>sep</replaceable>
</term>
<listitem>
<para>
@ -212,7 +228,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>types.ints.between</varname><replaceable>lowest</replaceable><replaceable>highest</replaceable>
<term>
<varname>types.ints.between</varname> <replaceable>lowest</replaceable> <replaceable>highest</replaceable>
</term>
<listitem>
<para>
@ -223,7 +240,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>types.submodule</varname><replaceable>o</replaceable>
<term>
<varname>types.submodule</varname> <replaceable>o</replaceable>
</term>
<listitem>
<para>
@ -250,7 +268,8 @@
<variablelist>
<varlistentry>
<term><varname>types.listOf</varname><replaceable>t</replaceable>
<term>
<varname>types.listOf</varname> <replaceable>t</replaceable>
</term>
<listitem>
<para>
@ -260,7 +279,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>types.attrsOf</varname><replaceable>t</replaceable>
<term>
<varname>types.attrsOf</varname> <replaceable>t</replaceable>
</term>
<listitem>
<para>
@ -271,7 +291,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>types.loaOf</varname><replaceable>t</replaceable>
<term>
<varname>types.loaOf</varname> <replaceable>t</replaceable>
</term>
<listitem>
<para>
@ -281,7 +302,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>types.nullOr</varname><replaceable>t</replaceable>
<term>
<varname>types.nullOr</varname> <replaceable>t</replaceable>
</term>
<listitem>
<para>
@ -291,7 +313,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>types.uniq</varname><replaceable>t</replaceable>
<term>
<varname>types.uniq</varname> <replaceable>t</replaceable>
</term>
<listitem>
<para>
@ -301,7 +324,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>types.either</varname><replaceable>t1</replaceable><replaceable>t2</replaceable>
<term>
<varname>types.either</varname> <replaceable>t1</replaceable> <replaceable>t2</replaceable>
</term>
<listitem>
<para>
@ -312,7 +336,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><varname>types.coercedTo</varname><replaceable>from</replaceable><replaceable>f</replaceable><replaceable>to</replaceable>
<term>
<varname>types.coercedTo</varname> <replaceable>from</replaceable> <replaceable>f</replaceable> <replaceable>to</replaceable>
</term>
<listitem>
<para>
@ -468,7 +493,8 @@ config.mod.two = { foo = 2; bar = "two"; };</screen>
<variablelist>
<varlistentry>
<term><varname>check</varname>
<term>
<varname>check</varname>
</term>
<listitem>
<para>
@ -501,7 +527,8 @@ nixThings = mkOption {
</listitem>
</varlistentry>
<varlistentry>
<term><varname>merge</varname>
<term>
<varname>merge</varname>
</term>
<listitem>
<para>
@ -534,7 +561,8 @@ nixThings = mkOption {
<variablelist>
<varlistentry>
<term><varname>name</varname>
<term>
<varname>name</varname>
</term>
<listitem>
<para>
@ -543,7 +571,8 @@ nixThings = mkOption {
</listitem>
</varlistentry>
<varlistentry>
<term><varname>definition</varname>
<term>
<varname>definition</varname>
</term>
<listitem>
<para>
@ -553,7 +582,8 @@ nixThings = mkOption {
</listitem>
</varlistentry>
<varlistentry>
<term><varname>check</varname>
<term>
<varname>check</varname>
</term>
<listitem>
<para>
@ -565,7 +595,8 @@ nixThings = mkOption {
</listitem>
</varlistentry>
<varlistentry>
<term><varname>merge</varname>
<term>
<varname>merge</varname>
</term>
<listitem>
<para>
@ -573,7 +604,8 @@ nixThings = mkOption {
</para>
<variablelist>
<varlistentry>
<term><replaceable>loc</replaceable>
<term>
<replaceable>loc</replaceable>
</term>
<listitem>
<para>
@ -583,7 +615,8 @@ nixThings = mkOption {
</listitem>
</varlistentry>
<varlistentry>
<term><replaceable>defs</replaceable>
<term>
<replaceable>defs</replaceable>
</term>
<listitem>
<para>
@ -600,7 +633,8 @@ nixThings = mkOption {
</listitem>
</varlistentry>
<varlistentry>
<term><varname>getSubOptions</varname>
<term>
<varname>getSubOptions</varname>
</term>
<listitem>
<para>
@ -615,7 +649,8 @@ nixThings = mkOption {
</listitem>
</varlistentry>
<varlistentry>
<term><varname>getSubModules</varname>
<term>
<varname>getSubModules</varname>
</term>
<listitem>
<para>
@ -628,7 +663,8 @@ nixThings = mkOption {
</listitem>
</varlistentry>
<varlistentry>
<term><varname>substSubModules</varname>
<term>
<varname>substSubModules</varname>
</term>
<listitem>
<para>
@ -644,7 +680,8 @@ nixThings = mkOption {
</listitem>
</varlistentry>
<varlistentry>
<term><varname>typeMerge</varname>
<term>
<varname>typeMerge</varname>
</term>
<listitem>
<para>
@ -654,7 +691,8 @@ nixThings = mkOption {
</para>
<variablelist>
<varlistentry>
<term><replaceable>f</replaceable>
<term>
<replaceable>f</replaceable>
</term>
<listitem>
<para>
@ -670,7 +708,8 @@ nixThings = mkOption {
</listitem>
</varlistentry>
<varlistentry>
<term><varname>functor</varname>
<term>
<varname>functor</varname>
</term>
<listitem>
<para>
@ -679,7 +718,8 @@ nixThings = mkOption {
</para>
<variablelist>
<varlistentry>
<term><varname>type</varname>
<term>
<varname>type</varname>
</term>
<listitem>
<para>
@ -688,7 +728,8 @@ nixThings = mkOption {
</listitem>
</varlistentry>
<varlistentry>
<term><varname>wrapped</varname>
<term>
<varname>wrapped</varname>
</term>
<listitem>
<para>
@ -697,7 +738,8 @@ nixThings = mkOption {
</listitem>
</varlistentry>
<varlistentry>
<term><varname>payload</varname>
<term>
<varname>payload</varname>
</term>
<listitem>
<para>
@ -709,7 +751,8 @@ nixThings = mkOption {
</listitem>
</varlistentry>
<varlistentry>
<term><varname>binOp</varname>
<term>
<varname>binOp</varname>
</term>
<listitem>
<para>

View File

@ -54,7 +54,8 @@ xlink:href="https://github.com/NixOS/nixpkgs/blob/master/nixos/tests/nfs.nix">nf
<!-- FIXME: would be nice to generate this automatically. -->
<variablelist>
<varlistentry>
<term><option>virtualisation.memorySize</option>
<term>
<option>virtualisation.memorySize</option>
</term>
<listitem>
<para>
@ -63,7 +64,8 @@ xlink:href="https://github.com/NixOS/nixpkgs/blob/master/nixos/tests/nfs.nix">nf
</listitem>
</varlistentry>
<varlistentry>
<term><option>virtualisation.vlans</option>
<term>
<option>virtualisation.vlans</option>
</term>
<listitem>
<para>
@ -75,7 +77,8 @@ xlink:href="https://github.com/NixOS/nixpkgs/blob/master/nixos/tests/nfs.nix">nf
</listitem>
</varlistentry>
<varlistentry>
<term><option>virtualisation.writableStore</option>
<term>
<option>virtualisation.writableStore</option>
</term>
<listitem>
<para>
@ -120,7 +123,8 @@ startAll;
The following methods are available on machine objects:
<variablelist>
<varlistentry>
<term><methodname>start</methodname>
<term>
<methodname>start</methodname>
</term>
<listitem>
<para>
@ -130,7 +134,8 @@ startAll;
</listitem>
</varlistentry>
<varlistentry>
<term><methodname>shutdown</methodname>
<term>
<methodname>shutdown</methodname>
</term>
<listitem>
<para>
@ -139,7 +144,8 @@ startAll;
</listitem>
</varlistentry>
<varlistentry>
<term><methodname>crash</methodname>
<term>
<methodname>crash</methodname>
</term>
<listitem>
<para>
@ -148,7 +154,8 @@ startAll;
</listitem>
</varlistentry>
<varlistentry>
<term><methodname>block</methodname>
<term>
<methodname>block</methodname>
</term>
<listitem>
<para>
@ -158,7 +165,8 @@ startAll;
</listitem>
</varlistentry>
<varlistentry>
<term><methodname>unblock</methodname>
<term>
<methodname>unblock</methodname>
</term>
<listitem>
<para>
@ -167,7 +175,8 @@ startAll;
</listitem>
</varlistentry>
<varlistentry>
<term><methodname>screenshot</methodname>
<term>
<methodname>screenshot</methodname>
</term>
<listitem>
<para>
@ -177,7 +186,8 @@ startAll;
</listitem>
</varlistentry>
<varlistentry>
<term><methodname>getScreenText</methodname>
<term>
<methodname>getScreenText</methodname>
</term>
<listitem>
<para>
@ -193,7 +203,8 @@ startAll;
</listitem>
</varlistentry>
<varlistentry>
<term><methodname>sendMonitorCommand</methodname>
<term>
<methodname>sendMonitorCommand</methodname>
</term>
<listitem>
<para>
@ -203,7 +214,8 @@ startAll;
</listitem>
</varlistentry>
<varlistentry>
<term><methodname>sendKeys</methodname>
<term>
<methodname>sendKeys</methodname>
</term>
<listitem>
<para>
@ -213,7 +225,8 @@ startAll;
</listitem>
</varlistentry>
<varlistentry>
<term><methodname>sendChars</methodname>
<term>
<methodname>sendChars</methodname>
</term>
<listitem>
<para>
@ -224,7 +237,8 @@ startAll;
</listitem>
</varlistentry>
<varlistentry>
<term><methodname>execute</methodname>
<term>
<methodname>execute</methodname>
</term>
<listitem>
<para>
@ -235,7 +249,8 @@ startAll;
</listitem>
</varlistentry>
<varlistentry>
<term><methodname>succeed</methodname>
<term>
<methodname>succeed</methodname>
</term>
<listitem>
<para>
@ -245,7 +260,8 @@ startAll;
</listitem>
</varlistentry>
<varlistentry>
<term><methodname>fail</methodname>
<term>
<methodname>fail</methodname>
</term>
<listitem>
<para>
@ -255,7 +271,8 @@ startAll;
</listitem>
</varlistentry>
<varlistentry>
<term><methodname>waitUntilSucceeds</methodname>
<term>
<methodname>waitUntilSucceeds</methodname>
</term>
<listitem>
<para>
@ -264,7 +281,8 @@ startAll;
</listitem>
</varlistentry>
<varlistentry>
<term><methodname>waitUntilFails</methodname>
<term>
<methodname>waitUntilFails</methodname>
</term>
<listitem>
<para>
@ -273,7 +291,8 @@ startAll;
</listitem>
</varlistentry>
<varlistentry>
<term><methodname>waitForUnit</methodname>
<term>
<methodname>waitForUnit</methodname>
</term>
<listitem>
<para>
@ -282,7 +301,8 @@ startAll;
</listitem>
</varlistentry>
<varlistentry>
<term><methodname>waitForFile</methodname>
<term>
<methodname>waitForFile</methodname>
</term>
<listitem>
<para>
@ -291,7 +311,8 @@ startAll;
</listitem>
</varlistentry>
<varlistentry>
<term><methodname>waitForOpenPort</methodname>
<term>
<methodname>waitForOpenPort</methodname>
</term>
<listitem>
<para>
@ -301,7 +322,8 @@ startAll;
</listitem>
</varlistentry>
<varlistentry>
<term><methodname>waitForClosedPort</methodname>
<term>
<methodname>waitForClosedPort</methodname>
</term>
<listitem>
<para>
@ -310,7 +332,8 @@ startAll;
</listitem>
</varlistentry>
<varlistentry>
<term><methodname>waitForX</methodname>
<term>
<methodname>waitForX</methodname>
</term>
<listitem>
<para>
@ -319,7 +342,8 @@ startAll;
</listitem>
</varlistentry>
<varlistentry>
<term><methodname>waitForText</methodname>
<term>
<methodname>waitForText</methodname>
</term>
<listitem>
<para>
@ -336,7 +360,8 @@ startAll;
</listitem>
</varlistentry>
<varlistentry>
<term><methodname>waitForWindow</methodname>
<term>
<methodname>waitForWindow</methodname>
</term>
<listitem>
<para>
@ -346,7 +371,8 @@ startAll;
</listitem>
</varlistentry>
<varlistentry>
<term><methodname>copyFileFromHost</methodname>
<term>
<methodname>copyFileFromHost</methodname>
</term>
<listitem>
<para>
@ -361,7 +387,8 @@ startAll;
</listitem>
</varlistentry>
<varlistentry>
<term><methodname>systemctl</methodname>
<term>
<methodname>systemctl</methodname>
</term>
<listitem>
<para>

View File

@ -16,7 +16,9 @@
</para>
<variablelist>
<varlistentry>
<term>UEFI systems</term>
<term>
UEFI systems
</term>
<listitem>
<para>
You should boot the live CD in UEFI mode (consult your specific
@ -138,7 +140,9 @@
<listitem>
<variablelist>
<varlistentry>
<term>UEFI systems</term>
<term>
UEFI systems
</term>
<listitem>
<para>
For creating boot partitions: <command>mkfs.fat</command>. Again
@ -178,7 +182,9 @@
<listitem>
<variablelist>
<varlistentry>
<term>UEFI systems</term>
<term>
UEFI systems
</term>
<listitem>
<para>
Mount the boot file system on <filename>/mnt/boot</filename>, e.g.
@ -234,7 +240,9 @@
</para>
<variablelist>
<varlistentry>
<term>BIOS systems</term>
<term>
BIOS systems
</term>
<listitem>
<para>
You <emphasis>must</emphasis> set the option
@ -244,7 +252,9 @@
</listitem>
</varlistentry>
<varlistentry>
<term>UEFI systems</term>
<term>
UEFI systems
</term>
<listitem>
<para>
You <emphasis>must</emphasis> set the option

View File

@ -12,14 +12,22 @@
</refname><refpurpose>build a network of virtual machines from a network of NixOS configurations</refpurpose>
</refnamediv>
<refsynopsisdiv>
<cmdsynopsis><command>nixos-build-vms</command>
<arg><option>--show-trace</option>
<cmdsynopsis>
<command>nixos-build-vms</command>
<arg>
<option>--show-trace</option>
</arg>
<arg><option>--no-out-link</option>
<arg>
<option>--no-out-link</option>
</arg>
<arg><option>--help</option>
<arg>
<option>--help</option>
</arg>
<arg choice="plain"><replaceable>network.nix</replaceable>
<arg choice="plain">
<replaceable>network.nix</replaceable>
</arg>
</cmdsynopsis>
</refsynopsisdiv>
@ -78,7 +86,8 @@
</para>
<variablelist>
<varlistentry>
<term><option>--show-trace</option>
<term>
<option>--show-trace</option>
</term>
<listitem>
<para>
@ -87,7 +96,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><option>--no-out-link</option>
<term>
<option>--no-out-link</option>
</term>
<listitem>
<para>
@ -96,7 +106,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><option>-h</option>, <option>--help</option>
<term>
<option>-h</option>, <option>--help</option>
</term>
<listitem>
<para>

View File

@ -12,26 +12,40 @@
</refname><refpurpose>run a command in a NixOS chroot environment</refpurpose>
</refnamediv>
<refsynopsisdiv>
<cmdsynopsis><command>nixos-enter</command>
<cmdsynopsis>
<command>nixos-enter</command>
<arg>
<arg choice='plain'><option>--root</option>
</arg><replaceable>root</replaceable>
<arg choice='plain'>
<option>--root</option>
</arg>
<arg>
<arg choice='plain'><option>--system</option>
</arg><replaceable>system</replaceable>
<replaceable>root</replaceable>
</arg>
<arg>
<arg choice='plain'><option>-c</option>
</arg><replaceable>shell-command</replaceable>
<arg choice='plain'>
<option>--system</option>
</arg>
<replaceable>system</replaceable>
</arg>
<arg>
<arg choice='plain'><option>--help</option>
<arg choice='plain'>
<option>-c</option>
</arg>
<replaceable>shell-command</replaceable>
</arg>
<arg>
<arg choice='plain'>
<option>--help</option>
</arg>
</arg>
<arg>
<arg choice='plain'><option>--</option>
</arg><replaceable>arguments</replaceable>
<arg choice='plain'>
<option>--</option>
</arg>
<replaceable>arguments</replaceable>
</arg>
</cmdsynopsis>
</refsynopsisdiv>
@ -50,7 +64,8 @@
</para>
<variablelist>
<varlistentry>
<term><option>--root</option>
<term>
<option>--root</option>
</term>
<listitem>
<para>
@ -60,7 +75,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><option>--system</option>
<term>
<option>--system</option>
</term>
<listitem>
<para>
@ -72,9 +88,11 @@
</listitem>
</varlistentry>
<varlistentry>
<term><option>--command</option>
<term>
<option>--command</option>
</term>
<term><option>-c</option>
<term>
<option>-c</option>
</term>
<listitem>
<para>
@ -83,7 +101,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><option>--</option>
<term>
<option>--</option>
</term>
<listitem>
<para>

View File

@ -12,16 +12,24 @@
</refname><refpurpose>generate NixOS configuration modules</refpurpose>
</refnamediv>
<refsynopsisdiv>
<cmdsynopsis><command>nixos-generate-config</command>
<arg><option>--force</option>
</arg>
<cmdsynopsis>
<command>nixos-generate-config</command>
<arg>
<arg choice='plain'><option>--root</option>
</arg><replaceable>root</replaceable>
<option>--force</option>
</arg>
<arg>
<arg choice='plain'><option>--dir</option>
</arg><replaceable>dir</replaceable>
<arg choice='plain'>
<option>--root</option>
</arg>
<replaceable>root</replaceable>
</arg>
<arg>
<arg choice='plain'>
<option>--dir</option>
</arg>
<replaceable>dir</replaceable>
</arg>
</cmdsynopsis>
</refsynopsisdiv>
@ -31,7 +39,8 @@
This command writes two NixOS configuration modules:
<variablelist>
<varlistentry>
<term><option>/etc/nixos/hardware-configuration.nix</option>
<term>
<option>/etc/nixos/hardware-configuration.nix</option>
</term>
<listitem>
<para>
@ -53,7 +62,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><option>/etc/nixos/configuration.nix</option>
<term>
<option>/etc/nixos/configuration.nix</option>
</term>
<listitem>
<para>
@ -74,7 +84,8 @@
</para>
<variablelist>
<varlistentry>
<term><option>--root</option>
<term>
<option>--root</option>
</term>
<listitem>
<para>
@ -88,7 +99,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><option>--dir</option>
<term>
<option>--dir</option>
</term>
<listitem>
<para>
@ -99,7 +111,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><option>--force</option>
<term>
<option>--force</option>
</term>
<listitem>
<para>
@ -109,7 +122,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><option>--no-filesystems</option>
<term>
<option>--no-filesystems</option>
</term>
<listitem>
<para>
@ -119,7 +133,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><option>--show-hardware-config</option>
<term>
<option>--show-hardware-config</option>
</term>
<listitem>
<para>

View File

@ -12,47 +12,76 @@
</refname><refpurpose>install bootloader and NixOS</refpurpose>
</refnamediv>
<refsynopsisdiv>
<cmdsynopsis><command>nixos-install</command>
<cmdsynopsis>
<command>nixos-install</command>
<arg>
<arg choice='plain'><option>-I</option>
</arg><replaceable>path</replaceable>
<arg choice='plain'>
<option>-I</option>
</arg>
<replaceable>path</replaceable>
</arg>
<arg>
<arg choice='plain'><option>--root</option>
</arg><replaceable>root</replaceable>
<arg choice='plain'>
<option>--root</option>
</arg>
<replaceable>root</replaceable>
</arg>
<arg>
<arg choice='plain'><option>--system</option>
</arg><replaceable>path</replaceable>
<arg choice='plain'>
<option>--system</option>
</arg>
<replaceable>path</replaceable>
</arg>
<arg>
<arg choice='plain'><option>--no-channel-copy</option>
<arg choice='plain'>
<option>--no-channel-copy</option>
</arg>
</arg>
<arg>
<arg choice='plain'><option>--no-root-passwd</option>
<arg choice='plain'>
<option>--no-root-passwd</option>
</arg>
</arg>
<arg>
<arg choice='plain'><option>--no-bootloader</option>
<arg choice='plain'>
<option>--no-bootloader</option>
</arg>
</arg>
<arg><group choice='req'>
<arg choice='plain'><option>--max-jobs</option>
</arg>
<arg choice='plain'><option>-j</option>
</arg></group><replaceable>number</replaceable>
</arg>
<arg><option>--cores</option><replaceable>number</replaceable>
</arg>
<arg><option>--option</option><replaceable>name</replaceable><replaceable>value</replaceable>
</arg>
<arg>
<arg choice='plain'><option>--show-trace</option>
<group choice='req'>
<arg choice='plain'>
<option>--max-jobs</option>
</arg>
<arg choice='plain'>
<option>-j</option>
</arg>
</group> <replaceable>number</replaceable>
</arg>
<arg>
<arg choice='plain'><option>--help</option>
<option>--cores</option> <replaceable>number</replaceable>
</arg>
<arg>
<option>--option</option> <replaceable>name</replaceable> <replaceable>value</replaceable>
</arg>
<arg>
<arg choice='plain'>
<option>--show-trace</option>
</arg>
</arg>
<arg>
<arg choice='plain'>
<option>--help</option>
</arg>
</arg>
</cmdsynopsis>
@ -106,7 +135,8 @@
</para>
<variablelist>
<varlistentry>
<term><option>--root</option>
<term>
<option>--root</option>
</term>
<listitem>
<para>
@ -117,7 +147,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><option>--system</option>
<term>
<option>--system</option>
</term>
<listitem>
<para>
@ -135,7 +166,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><option>-I</option>
<term>
<option>-I</option>
</term>
<listitem>
<para>
@ -147,9 +179,11 @@
</listitem>
</varlistentry>
<varlistentry>
<term><option>--max-jobs</option>
<term>
<option>--max-jobs</option>
</term>
<term><option>-j</option>
<term>
<option>-j</option>
</term>
<listitem>
<para>
@ -160,7 +194,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><option>--cores</option>
<term>
<option>--cores</option>
</term>
<listitem>
<para>
@ -177,7 +212,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><option>--option</option><replaceable>name</replaceable><replaceable>value</replaceable>
<term>
<option>--option</option> <replaceable>name</replaceable> <replaceable>value</replaceable>
</term>
<listitem>
<para>
@ -187,7 +223,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><option>--show-trace</option>
<term>
<option>--show-trace</option>
</term>
<listitem>
<para>
@ -197,7 +234,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><option>--help</option>
<term>
<option>--help</option>
</term>
<listitem>
<para>

View File

@ -12,14 +12,22 @@
</refname><refpurpose>inspect a NixOS configuration</refpurpose>
</refnamediv>
<refsynopsisdiv>
<cmdsynopsis><command>nixos-option</command>
<arg><option>-I</option><replaceable>path</replaceable>
<cmdsynopsis>
<command>nixos-option</command>
<arg>
<option>-I</option> <replaceable>path</replaceable>
</arg>
<arg><option>--verbose</option>
<arg>
<option>--verbose</option>
</arg>
<arg><option>--xml</option>
<arg>
<option>--xml</option>
</arg>
<arg choice="plain"><replaceable>option.name</replaceable>
<arg choice="plain">
<replaceable>option.name</replaceable>
</arg>
</cmdsynopsis>
</refsynopsisdiv>
@ -42,7 +50,8 @@
</para>
<variablelist>
<varlistentry>
<term><option>-I</option><replaceable>path</replaceable>
<term>
<option>-I</option> <replaceable>path</replaceable>
</term>
<listitem>
<para>
@ -52,7 +61,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><option>--verbose</option>
<term>
<option>--verbose</option>
</term>
<listitem>
<para>
@ -62,7 +72,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><option>--xml</option>
<term>
<option>--xml</option>
</term>
<listitem>
<para>
@ -76,7 +87,8 @@
<title>Environment</title>
<variablelist>
<varlistentry>
<term><envar>NIXOS_CONFIG</envar>
<term>
<envar>NIXOS_CONFIG</envar>
</term>
<listitem>
<para>

View File

@ -12,43 +12,75 @@
</refname><refpurpose>reconfigure a NixOS machine</refpurpose>
</refnamediv>
<refsynopsisdiv>
<cmdsynopsis><command>nixos-rebuild</command><group choice='req'>
<arg choice='plain'><option>switch</option>
<cmdsynopsis>
<command>nixos-rebuild</command><group choice='req'>
<arg choice='plain'>
<option>switch</option>
</arg>
<arg choice='plain'><option>boot</option>
<arg choice='plain'>
<option>boot</option>
</arg>
<arg choice='plain'><option>test</option>
<arg choice='plain'>
<option>test</option>
</arg>
<arg choice='plain'><option>build</option>
<arg choice='plain'>
<option>build</option>
</arg>
<arg choice='plain'><option>dry-build</option>
<arg choice='plain'>
<option>dry-build</option>
</arg>
<arg choice='plain'><option>dry-activate</option>
<arg choice='plain'>
<option>dry-activate</option>
</arg>
<arg choice='plain'><option>build-vm</option>
<arg choice='plain'>
<option>build-vm</option>
</arg>
<arg choice='plain'><option>build-vm-with-bootloader</option>
</arg></group>
<arg choice='plain'>
<option>build-vm-with-bootloader</option>
</arg>
</group>
<sbr />
<arg><option>--upgrade</option>
<arg>
<option>--upgrade</option>
</arg>
<arg><option>--install-bootloader</option>
<arg>
<option>--install-bootloader</option>
</arg>
<arg><option>--no-build-nix</option>
<arg>
<option>--no-build-nix</option>
</arg>
<arg><option>--fast</option>
<arg>
<option>--fast</option>
</arg>
<arg><option>--rollback</option>
<arg>
<option>--rollback</option>
</arg>
<sbr />
<arg><group choice='req'>
<arg choice='plain'><option>--profile-name</option>
<arg>
<group choice='req'>
<arg choice='plain'>
<option>--profile-name</option>
</arg>
<arg choice='plain'><option>-p</option>
</arg></group><replaceable>name</replaceable>
<arg choice='plain'>
<option>-p</option>
</arg>
</group> <replaceable>name</replaceable>
</arg>
<sbr />
<arg><option>--show-trace</option>
<arg>
<option>--show-trace</option>
</arg>
</cmdsynopsis>
</refsynopsisdiv>
@ -68,7 +100,8 @@
operation. It must be one of the following:
<variablelist>
<varlistentry>
<term><option>switch</option>
<term>
<option>switch</option>
</term>
<listitem>
<para>
@ -82,7 +115,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><option>boot</option>
<term>
<option>boot</option>
</term>
<listitem>
<para>
@ -94,7 +128,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><option>test</option>
<term>
<option>test</option>
</term>
<listitem>
<para>
@ -107,7 +142,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><option>build</option>
<term>
<option>build</option>
</term>
<listitem>
<para>
@ -124,7 +160,8 @@ $ nix-build /path/to/nixpkgs/nixos -A system
</listitem>
</varlistentry>
<varlistentry>
<term><option>dry-build</option>
<term>
<option>dry-build</option>
</term>
<listitem>
<para>
@ -134,7 +171,8 @@ $ nix-build /path/to/nixpkgs/nixos -A system
</listitem>
</varlistentry>
<varlistentry>
<term><option>dry-activate</option>
<term>
<option>dry-activate</option>
</term>
<listitem>
<para>
@ -147,7 +185,8 @@ $ nix-build /path/to/nixpkgs/nixos -A system
</listitem>
</varlistentry>
<varlistentry>
<term><option>build-vm</option>
<term>
<option>build-vm</option>
</term>
<listitem>
<para>
@ -186,7 +225,8 @@ $ ./result/bin/run-*-vm
</listitem>
</varlistentry>
<varlistentry>
<term><option>build-vm-with-bootloader</option>
<term>
<option>build-vm-with-bootloader</option>
</term>
<listitem>
<para>
@ -213,7 +253,8 @@ $ ./result/bin/run-*-vm
</para>
<variablelist>
<varlistentry>
<term><option>--upgrade</option>
<term>
<option>--upgrade</option>
</term>
<listitem>
<para>
@ -222,7 +263,8 @@ $ ./result/bin/run-*-vm
</listitem>
</varlistentry>
<varlistentry>
<term><option>--install-bootloader</option>
<term>
<option>--install-bootloader</option>
</term>
<listitem>
<para>
@ -232,7 +274,8 @@ $ ./result/bin/run-*-vm
</listitem>
</varlistentry>
<varlistentry>
<term><option>--no-build-nix</option>
<term>
<option>--no-build-nix</option>
</term>
<listitem>
<para>
@ -246,7 +289,8 @@ $ ./result/bin/run-*-vm
</listitem>
</varlistentry>
<varlistentry>
<term><option>--fast</option>
<term>
<option>--fast</option>
</term>
<listitem>
<para>
@ -258,7 +302,8 @@ $ ./result/bin/run-*-vm
</listitem>
</varlistentry>
<varlistentry>
<term><option>--rollback</option>
<term>
<option>--rollback</option>
</term>
<listitem>
<para>
@ -271,9 +316,11 @@ $ ./result/bin/run-*-vm
</listitem>
</varlistentry>
<varlistentry>
<term><option>--profile-name</option>
<term>
<option>--profile-name</option>
</term>
<term><option>-p</option>
<term>
<option>-p</option>
</term>
<listitem>
<para>
@ -299,7 +346,8 @@ $ nixos-rebuild switch -p test -I nixos-config=./test.nix
</listitem>
</varlistentry>
<varlistentry>
<term><option>--build-host</option>
<term>
<option>--build-host</option>
</term>
<listitem>
<para>
@ -323,7 +371,8 @@ $ nixos-rebuild switch -p test -I nixos-config=./test.nix
</listitem>
</varlistentry>
<varlistentry>
<term><option>--target-host</option>
<term>
<option>--target-host</option>
</term>
<listitem>
<para>
@ -361,7 +410,8 @@ $ nixos-rebuild switch -p test -I nixos-config=./test.nix
<title>Environment</title>
<variablelist>
<varlistentry>
<term><envar>NIXOS_CONFIG</envar>
<term>
<envar>NIXOS_CONFIG</envar>
</term>
<listitem>
<para>
@ -371,7 +421,8 @@ $ nixos-rebuild switch -p test -I nixos-config=./test.nix
</listitem>
</varlistentry>
<varlistentry>
<term><envar>NIX_SSHOPTS</envar>
<term>
<envar>NIX_SSHOPTS</envar>
</term>
<listitem>
<para>
@ -386,7 +437,8 @@ $ nixos-rebuild switch -p test -I nixos-config=./test.nix
<title>Files</title>
<variablelist>
<varlistentry>
<term><filename>/run/current-system</filename>
<term>
<filename>/run/current-system</filename>
</term>
<listitem>
<para>
@ -395,7 +447,8 @@ $ nixos-rebuild switch -p test -I nixos-config=./test.nix
</listitem>
</varlistentry>
<varlistentry>
<term><filename>/nix/var/nix/profiles/system</filename>
<term>
<filename>/nix/var/nix/profiles/system</filename>
</term>
<listitem>
<para>

View File

@ -11,10 +11,14 @@
</refname><refpurpose>show the NixOS version</refpurpose>
</refnamediv>
<refsynopsisdiv>
<cmdsynopsis><command>nixos-version</command>
<arg><option>--hash</option>
<cmdsynopsis>
<command>nixos-version</command>
<arg>
<option>--hash</option>
</arg>
<arg><option>--revision</option>
<arg>
<option>--revision</option>
</arg>
</cmdsynopsis>
</refsynopsisdiv>
@ -29,7 +33,8 @@
The version consists of the following elements:
<variablelist>
<varlistentry>
<term><literal>16.03</literal>
<term>
<literal>16.03</literal>
</term>
<listitem>
<para>
@ -39,7 +44,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><literal>1011</literal>
<term>
<literal>1011</literal>
</term>
<listitem>
<para>
@ -53,7 +59,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><literal>6317da4</literal>
<term>
<literal>6317da4</literal>
</term>
<listitem>
<para>
@ -63,7 +70,8 @@
</listitem>
</varlistentry>
<varlistentry>
<term><literal>Emu</literal>
<term>
<literal>Emu</literal>
</term>
<listitem>
<para>
@ -83,9 +91,11 @@
</para>
<variablelist>
<varlistentry>
<term><option>--hash</option>
<term>
<option>--hash</option>
</term>
<term><option>--revision</option>
<term>
<option>--revision</option>
</term>
<listitem>
<para>

View File

@ -435,11 +435,11 @@ system.autoUpgrade.enable = true;
<programlisting>
system.nixos.stateVersion = "14.12";
</programlisting>
The new option <option>system.nixos.stateVersion</option> ensures that certain
configuration changes that could break existing systems (such as the
<command>sshd</command> host key setting) will maintain compatibility with
the specified NixOS release. NixOps sets the state version of existing
deployments automatically.
The new option <option>system.nixos.stateVersion</option> ensures that
certain configuration changes that could break existing systems (such as
the <command>sshd</command> host key setting) will maintain compatibility
with the specified NixOS release. NixOps sets the state version of
existing deployments automatically.
</para>
</listitem>
<listitem>

View File

@ -53,10 +53,12 @@ $ nix-instantiate -E '(import &lt;nixpkgsunstable&gt; {}).gitFull'
<itemizedlist>
<listitem>
<para>When enabled the <literal>iproute2</literal> will copy the files
expected by ip route (e.g., <filename>rt_tables</filename>) in
<para>
When enabled the <literal>iproute2</literal> will copy the files expected
by ip route (e.g., <filename>rt_tables</filename>) in
<filename>/run/iproute2</filename>. This allows to write aliases for
routing tables for instance.</para>
routing tables for instance.
</para>
</listitem>
</itemizedlist>
</section>
@ -99,20 +101,24 @@ $ nix-instantiate -E '(import &lt;nixpkgsunstable&gt; {}).gitFull'
</listitem>
<listitem>
<para>
The <varname>services.docker-registry.extraConfig</varname> object doesn't contain
environment variables anymore. Instead it needs to provide an object structure
that can be mapped onto the YAML configuration defined in <link xlink:href="https://github.com/docker/distribution/blob/v2.6.2/docs/configuration.md">the <varname>docker/distribution</varname> docs</link>.
The <varname>services.docker-registry.extraConfig</varname> object doesn't
contain environment variables anymore. Instead it needs to provide an
object structure that can be mapped onto the YAML configuration defined in
<link xlink:href="https://github.com/docker/distribution/blob/v2.6.2/docs/configuration.md">the
<varname>docker/distribution</varname> docs</link>.
</para>
</listitem>
<listitem>
<para>
<literal>gnucash</literal> has changed from version 2.4 to 3.x.
If you've been using <literal>gnucash</literal> (version 2.4) instead of
<literal>gnucash26</literal> (version 2.6) you must open your Gnucash
data file(s) with <literal>gnucash26</literal> and then save them to
upgrade the file format. Then you may use your data file(s) with
Gnucash 3.x. See the upgrade <link xlink:href="https://wiki.gnucash.org/wiki/FAQ#Using_Different_Versions.2C_Up_And_Downgrade">documentation</link>.
Gnucash 2.4 is still available under the attribute <literal>gnucash24</literal>.
<literal>gnucash</literal> has changed from version 2.4 to 3.x. If you've
been using <literal>gnucash</literal> (version 2.4) instead of
<literal>gnucash26</literal> (version 2.6) you must open your Gnucash data
file(s) with <literal>gnucash26</literal> and then save them to upgrade
the file format. Then you may use your data file(s) with Gnucash 3.x. See
the upgrade
<link xlink:href="https://wiki.gnucash.org/wiki/FAQ#Using_Different_Versions.2C_Up_And_Downgrade">documentation</link>.
Gnucash 2.4 is still available under the attribute
<literal>gnucash24</literal>.
</para>
</listitem>
</itemizedlist>
@ -128,9 +134,9 @@ $ nix-instantiate -E '(import &lt;nixpkgsunstable&gt; {}).gitFull'
<itemizedlist>
<listitem>
<para>
<literal>dockerTools.pullImage</literal> relies on image digest
instead of image tag to download the image. The
<literal>sha256</literal> of a pulled image has to be updated.
<literal>dockerTools.pullImage</literal> relies on image digest instead of
image tag to download the image. The <literal>sha256</literal> of a pulled
image has to be updated.
</para>
</listitem>
<listitem>
@ -187,32 +193,40 @@ $ nix-instantiate -E '(import &lt;nixpkgsunstable&gt; {}).gitFull'
<para>
The module for <option>security.dhparams</option> has two new options now:
</para>
<variablelist>
<varlistentry>
<term><option>security.dhparams.stateless</option></term>
<listitem><para>
<term>
<option>security.dhparams.stateless</option>
</term>
<listitem>
<para>
Puts the generated Diffie-Hellman parameters into the Nix store instead
of managing them in a stateful manner in
<filename class="directory">/var/lib/dhparams</filename>.
</para></listitem>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>security.dhparams.defaultBitSize</option></term>
<listitem><para>
The default bit size to use for the generated Diffie-Hellman parameters.
</para></listitem>
<term>
<option>security.dhparams.defaultBitSize</option>
</term>
<listitem>
<para>
The default bit size to use for the generated Diffie-Hellman
parameters.
</para>
</listitem>
</varlistentry>
</variablelist>
<note><para>
<note>
<para>
The path to the actual generated parameter files should now be queried
using
<literal>config.security.dhparams.params.<replaceable>name</replaceable>.path</literal>
because it might be either in the Nix store or in a directory configured
by <option>security.dhparams.path</option>.
</para></note>
</para>
</note>
<note>
<title>For developers:</title>
<para>
@ -237,20 +251,23 @@ $ nix-instantiate -E '(import &lt;nixpkgsunstable&gt; {}).gitFull'
</listitem>
<listitem>
<para>
<literal>networking.networkmanager.useDnsmasq</literal> has been deprecated. Use
<literal>networking.networkmanager.dns</literal> instead.
<literal>networking.networkmanager.useDnsmasq</literal> has been
deprecated. Use <literal>networking.networkmanager.dns</literal> instead.
</para>
</listitem>
<listitem>
<para>
The option <varname>services.kubernetes.apiserver.admissionControl</varname>
was renamed to <varname>services.kubernetes.apiserver.enableAdmissionPlugins</varname>.
The option
<varname>services.kubernetes.apiserver.admissionControl</varname> was
renamed to
<varname>services.kubernetes.apiserver.enableAdmissionPlugins</varname>.
</para>
</listitem>
<listitem>
<para>
Recommented way to access the Kubernetes Dashboard is with HTTPS (TLS)
Therefore; public service port for the dashboard has changed to 443 (container port 8443) and scheme to https.
Therefore; public service port for the dashboard has changed to 443
(container port 8443) and scheme to https.
</para>
</listitem>
</itemizedlist>

View File

@ -4,5 +4,5 @@ in
pkgs.mkShell {
name = "nixos-manual";
buildInputs = with pkgs; [ xmlformat jing xmloscopy ];
buildInputs = with pkgs; [ xmlformat jing xmloscopy ruby ];
}

124
nixos/doc/varlistentry-fixer.rb Executable file
View File

@ -0,0 +1,124 @@
#!/usr/bin/env ruby
# This script is written intended as a living, evolving tooling
# to fix oopsies within the docbook documentation.
#
# This is *not* a formatter. It, instead, handles some known cases
# where something bad happened, and fixing it manually is tedious.
#
# Read the code to see the different cases it handles.
#
# ALWAYS `make format` after fixing with this!
# ALWAYS read the changes, this tool isn't yet proven to be always right.
require "rexml/document"
include REXML
if ARGV.length < 1 then
$stderr.puts "Needs a filename."
exit 1
end
filename = ARGV.shift
doc = Document.new(File.open(filename))
$touched = false
# Fixing varnames having a sibling element without spacing.
# This is to fix an initial `xmlformat` issue where `term`
# would mangle as spaces.
#
# <varlistentry>
# <term><varname>types.separatedString</varname><replaceable>sep</replaceable> <----
# </term>
# ...
#
# Generates: types.separatedStringsep
# ^^^^
#
# <varlistentry xml:id='fun-makeWrapper'>
# <term>
# <function>makeWrapper</function><replaceable>executable</replaceable><replaceable>wrapperfile</replaceable><replaceable>args</replaceable> <----
# </term>
#
# Generates: makeWrapperexecutablewrapperfileargs
# ^^^^ ^^^^ ^^ ^^
#
# <term>
# <option>--option</option><replaceable>name</replaceable><replaceable>value</replaceable> <-----
# </term>
#
# Generates: --optionnamevalue
# ^^ ^^
doc.elements.each("//varlistentry/term") do |term|
["varname", "function", "option", "replaceable"].each do |prev_name|
term.elements.each(prev_name) do |el|
if el.next_element and
el.next_element.name == "replaceable" and
el.next_sibling_node.class == Element
then
$touched = true
term.insert_after(el, Text.new(" "))
end
end
end
end
# <cmdsynopsis>
# <command>nixos-option</command>
# <arg>
# <option>-I</option><replaceable>path</replaceable> <------
# </arg>
#
# Generates: -Ipath
# ^^
doc.elements.each("//cmdsynopsis/arg") do |term|
["option", "replaceable"].each do |prev_name|
term.elements.each(prev_name) do |el|
if el.next_element and
el.next_element.name == "replaceable" and
el.next_sibling_node.class == Element
then
$touched = true
term.insert_after(el, Text.new(" "))
end
end
end
end
# <cmdsynopsis>
# <arg>
# <group choice='req'>
# <arg choice='plain'>
# <option>--profile-name</option>
# </arg>
#
# <arg choice='plain'>
# <option>-p</option>
# </arg>
# </group><replaceable>name</replaceable> <----
# </arg>
#
# Generates: [{--profile-name | -p }name]
# ^^^^
doc.elements.each("//cmdsynopsis/arg") do |term|
["group"].each do |prev_name|
term.elements.each(prev_name) do |el|
if el.next_element and
el.next_element.name == "replaceable" and
el.next_sibling_node.class == Element
then
$touched = true
term.insert_after(el, Text.new(" "))
end
end
end
end
if $touched then
doc.context[:attribute_quote] = :quote
doc.write(output: File.open(filename, "w"))
end

View File

@ -67,6 +67,7 @@ programlisting screen
entry-break = 0
exit-break = 0
#term
# format inline
# This is needed so that the spacing inside those tags is kept.
term cmdsynopsis arg
normalize yes
format block

View File

@ -64,9 +64,10 @@ let
)) + ":" + (makeSearchPathOutput "bin" "sbin" [
pkgs.mdadm pkgs.utillinux
]);
font = if lib.last (lib.splitString "." cfg.font) == "pf2"
font = if cfg.font == null then ""
else (if lib.last (lib.splitString "." cfg.font) == "pf2"
then cfg.font
else "${convertedFont}";
else "${convertedFont}");
});
bootDeviceCounters = fold (device: attr: attr // { "${device}" = (attr."${device}" or 0) + 1; }) {}

View File

@ -281,6 +281,11 @@ else {
else
insmod vbe
fi
";
if ($font) {
copy $font, "$bootPath/converted-font.pf2" or die "cannot copy $font to $bootPath\n";
$conf .= "
insmod font
if loadfont " . $grubBoot->path . "/converted-font.pf2; then
insmod gfxterm
@ -294,9 +299,6 @@ else {
terminal_output gfxterm
fi
";
if ($font) {
copy $font, "$bootPath/converted-font.pf2" or die "cannot copy $font to $bootPath\n";
}
if ($splashImage) {
# Keeps the image's extension.

View File

@ -78,9 +78,15 @@ in rec {
optional (badFields != [ ])
"Systemd ${group} has extra fields [${concatStringsSep " " badFields}].";
checkUnitConfig = group: checks: v:
let errors = concatMap (c: c group v) checks; in
if errors == [] then true
checkUnitConfig = group: checks: attrs: let
# We're applied at the top-level type (attrsOf unitOption), so the actual
# unit options might contain attributes from mkOverride that we need to
# convert into single values before checking them.
defs = mapAttrs (const (v:
if v._type or "" == "override" then v.content else v
)) attrs;
errors = concatMap (c: c group defs) checks;
in if errors == [] then true
else builtins.trace (concatStringsSep "\n" errors) false;
toOption = x:

View File

@ -73,6 +73,13 @@ let
sed '52iLLVM_VERSION=${stdenv.lib.getVersion llvm}' -i compiler/Makefile.unix
'';
postPatch = ''
# fix build with llvm 5.0.2 by adding it to the list of known versions
# TODO: check if still needed on next update
substituteInPlace compiler/Makefile.unix \
--replace "5.0.0 5.0.1" "5.0.0 5.0.1 5.0.2"
'';
# Remove most faust2appl scripts since they won't run properly
# without additional paths setup. See faust.wrap,
# faust.wrapWithBuildEnv.
@ -193,6 +200,7 @@ let
propagatedBuildInputs = [ faust ] ++ propagatedBuildInputs;
postFixup = ''
# export parts of the build environment

View File

@ -4,11 +4,11 @@
}:
stdenv.mkDerivation rec {
name = "snd-18.3";
name = "snd-18.4";
src = fetchurl {
url = "mirror://sourceforge/snd/${name}.tar.gz";
sha256 = "117sgvdv0a03ys1v27bs99mgzpfm2a7xg6s0q6m1f79jniia12ss";
sha256 = "1asc513d0cmbq0ldzpzmfbydvlj5hwpp480qnicgkn96wplp9c7s";
};
nativeBuildInputs = [ pkgconfig ];

View File

@ -7,7 +7,7 @@
stdenv.mkDerivation rec {
name = "dbeaver-ce-${version}";
version = "5.0.6";
version = "5.1.0";
desktopItem = makeDesktopItem {
name = "dbeaver";
@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "https://dbeaver.io/files/${version}/dbeaver-ce-${version}-linux.gtk.x86_64.tar.gz";
sha256 = "12crrazlfzvr1c6y33z7v4z7ip9pjbzki8cw15v5d2irkpa710ky";
sha256 = "041wqlipkwk4xp3qa4rrwyw6rgsn1ppv25qb4h2mkhrsjcjagqhj";
};
installPhase = ''

View File

@ -14,7 +14,7 @@ GEM
eventmachine (>= 0.12.9)
http_parser.rb (~> 0.6.0)
eventmachine (1.2.7)
ffi (1.9.23)
ffi (1.9.25)
forwardable-extended (2.6.0)
gemoji (3.0.0)
html-pipeline (2.8.0)
@ -23,7 +23,7 @@ GEM
http_parser.rb (0.6.0)
i18n (0.9.5)
concurrent-ruby (~> 1.0)
jekyll (3.8.2)
jekyll (3.8.3)
addressable (~> 2.4)
colorator (~> 1.0)
em-websocket (~> 0.5)
@ -43,7 +43,7 @@ GEM
jekyll (~> 3.0)
jekyll-sass-converter (1.5.2)
sass (~> 3.4)
jekyll-seo-tag (2.4.0)
jekyll-seo-tag (2.5.0)
jekyll (~> 3.3)
jekyll-sitemap (1.2.0)
jekyll (~> 3.3)
@ -53,7 +53,7 @@ GEM
gemoji (~> 3.0)
html-pipeline (~> 2.2)
jekyll (~> 3.0)
kramdown (1.16.2)
kramdown (1.17.0)
liquid (4.0.0)
listen (3.1.5)
rb-fsevent (~> 0.9, >= 0.9.4)

View File

@ -53,10 +53,10 @@
ffi = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "0zw6pbyvmj8wafdc7l5h7w20zkp1vbr2805ql5d941g2b20pk4zr";
sha256 = "0jpm2dis1j7zvvy3lg7axz9jml316zrn7s0j59vyq3qr127z0m7q";
type = "gem";
};
version = "1.9.23";
version = "1.9.25";
};
forwardable-extended = {
source = {
@ -104,10 +104,10 @@
dependencies = ["addressable" "colorator" "em-websocket" "i18n" "jekyll-sass-converter" "jekyll-watch" "kramdown" "liquid" "mercenary" "pathutil" "rouge" "safe_yaml"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1cp1iijcf4w2i7lzfbszpv2in9fcxm23fv0znghkm934rxrw55g8";
sha256 = "1iw90wihk9dscgmppf5v6lysg3kjmnx50mjyl4gghkdb4spw97xk";
type = "gem";
};
version = "3.8.2";
version = "3.8.3";
};
jekyll-avatar = {
dependencies = ["jekyll"];
@ -140,10 +140,10 @@
dependencies = ["jekyll"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0f9b2mvmx57zj49afb3x8cmzdmb1kh4rbpbv3v7w5bh47g2c9big";
sha256 = "19yfr5i04gm50swbc6xxf4090z5z1v0kjfnvh695ydq1dkyx1csl";
type = "gem";
};
version = "2.4.0";
version = "2.5.0";
};
jekyll-sitemap = {
dependencies = ["jekyll"];
@ -175,10 +175,10 @@
kramdown = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "0mkrqpp01rrfn3rx6wwsjizyqmafp0vgg8ja1dvbjs185r5zw3za";
sha256 = "1n1c4jmrh5ig8iv1rw81s4mw4xsp4v97hvf8zkigv4hn5h542qjq";
type = "gem";
};
version = "1.16.2";
version = "1.17.0";
};
liquid = {
source = {

View File

@ -22,10 +22,10 @@ GEM
http_parser.rb (~> 0.6.0)
eventmachine (1.2.7)
execjs (2.7.0)
faraday (0.15.1)
faraday (0.15.2)
multipart-post (>= 1.2, < 3)
fast-stemmer (1.0.2)
ffi (1.9.23)
ffi (1.9.25)
forwardable-extended (2.6.0)
gemoji (3.0.0)
html-pipeline (2.8.0)
@ -34,7 +34,7 @@ GEM
http_parser.rb (0.6.0)
i18n (0.9.5)
concurrent-ruby (~> 1.0)
jekyll (3.8.2)
jekyll (3.8.3)
addressable (~> 2.4)
colorator (~> 1.0)
em-websocket (~> 0.5)
@ -52,7 +52,7 @@ GEM
jekyll-coffeescript (1.1.1)
coffee-script (~> 2.2)
coffee-script-source (~> 1.11.1)
jekyll-feed (0.9.3)
jekyll-feed (0.10.0)
jekyll (~> 3.3)
jekyll-gist (1.5.0)
octokit (~> 4.2)
@ -64,7 +64,7 @@ GEM
jekyll (~> 3.3)
jekyll-sass-converter (1.5.2)
sass (~> 3.4)
jekyll-seo-tag (2.4.0)
jekyll-seo-tag (2.5.0)
jekyll (~> 3.3)
jekyll-sitemap (1.2.0)
jekyll (~> 3.3)
@ -74,7 +74,7 @@ GEM
gemoji (~> 3.0)
html-pipeline (~> 2.2)
jekyll (~> 3.0)
kramdown (1.16.2)
kramdown (1.17.0)
liquid (4.0.0)
liquid-c (3.0.0)
liquid (>= 3.0.0)

View File

@ -96,10 +96,10 @@
dependencies = ["multipart-post"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0q3z6mm6ym11jrzi1hqcwi0mkydb5m980g8is6ggkcxrinmx2nxx";
sha256 = "14lg0c4bphk16rccc5jmaan6nfcvmy0caiahpc61f9zfwpsj7ymg";
type = "gem";
};
version = "0.15.1";
version = "0.15.2";
};
fast-stemmer = {
source = {
@ -112,10 +112,10 @@
ffi = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "0zw6pbyvmj8wafdc7l5h7w20zkp1vbr2805ql5d941g2b20pk4zr";
sha256 = "0jpm2dis1j7zvvy3lg7axz9jml316zrn7s0j59vyq3qr127z0m7q";
type = "gem";
};
version = "1.9.23";
version = "1.9.25";
};
forwardable-extended = {
source = {
@ -163,10 +163,10 @@
dependencies = ["addressable" "colorator" "em-websocket" "i18n" "jekyll-sass-converter" "jekyll-watch" "kramdown" "liquid" "mercenary" "pathutil" "rouge" "safe_yaml"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1cp1iijcf4w2i7lzfbszpv2in9fcxm23fv0znghkm934rxrw55g8";
sha256 = "1iw90wihk9dscgmppf5v6lysg3kjmnx50mjyl4gghkdb4spw97xk";
type = "gem";
};
version = "3.8.2";
version = "3.8.3";
};
jekyll-avatar = {
dependencies = ["jekyll"];
@ -190,10 +190,10 @@
dependencies = ["jekyll"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0kr3kyaq4z3jixn6ay8h16bxxlv6slvvp7nqnl05jdymhkl0bmm9";
sha256 = "0l5w2bd6dsjnc623qjw5h06n0wslh32rqkkjlkymga24cplbln8j";
type = "gem";
};
version = "0.9.3";
version = "0.10.0";
};
jekyll-gist = {
dependencies = ["octokit"];
@ -243,10 +243,10 @@
dependencies = ["jekyll"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0f9b2mvmx57zj49afb3x8cmzdmb1kh4rbpbv3v7w5bh47g2c9big";
sha256 = "19yfr5i04gm50swbc6xxf4090z5z1v0kjfnvh695ydq1dkyx1csl";
type = "gem";
};
version = "2.4.0";
version = "2.5.0";
};
jekyll-sitemap = {
dependencies = ["jekyll"];
@ -278,10 +278,10 @@
kramdown = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "0mkrqpp01rrfn3rx6wwsjizyqmafp0vgg8ja1dvbjs185r5zw3za";
sha256 = "1n1c4jmrh5ig8iv1rw81s4mw4xsp4v97hvf8zkigv4hn5h542qjq";
type = "gem";
};
version = "1.16.2";
version = "1.17.0";
};
liquid = {
source = {

View File

@ -9,13 +9,13 @@
buildPythonApplication rec {
name = "udiskie-${version}";
version = "1.7.4";
version = "1.7.5";
src = fetchFromGitHub {
owner = "coldfix";
repo = "udiskie";
rev = version;
sha256 = "0r3m8y6ppkl8p1lhr89sfk9v2la1zn0rbmr6hy860j7b22yvnkrn";
sha256 = "1mcdn8ha5d5nsmrzk6xnnsqrmk94rdrzym9sqm38zk5r8gpyl1k4";
};
buildInputs = [

View File

@ -6,8 +6,8 @@ buildPythonApplication rec {
src = fetchFromGitHub {
owner = "tohojo";
repo = "flent";
rev = version;
sha256 = "0rl4ahynl6ymw7r04vpg9p90pplrxc41rjlzvm0swxsvpw40yvkm";
rev = "v${version}";
sha256 = "1llcdakk0nk9xlpjjz7mv4a80yq4sjnbqhaqvyj9m6lbcxgssh2r";
};
buildInputs = [ netperf ];

View File

@ -4,8 +4,8 @@ let
mkTelegram = args: qt5.callPackage (import ./generic.nix args) { };
stableVersion = {
stable = true;
version = "1.2.17";
sha256Hash = "1lswjn3rnrbps1pd2xhnhggcn1z0i7y71dpr0v9wb1yc8qhh4pi0";
version = "1.3.0";
sha256Hash = "1h5zcvd58bjm02b0rfb7fx1nx1gmzdlk1854lm6kg1hd6mqrrb0i";
# svn log svn://svn.archlinux.org/community/telegram-desktop/trunk
archPatchesRevision = "310557";
archPatchesHash = "1v134dal3xiapgh3akfr61vh62j24m9vkb62kckwvap44iqb0hlk";
@ -14,7 +14,7 @@ in {
stable = mkTelegram stableVersion;
preview = mkTelegram (stableVersion // {
stable = false;
version = "1.3.0";
sha256Hash = "1h5zcvd58bjm02b0rfb7fx1nx1gmzdlk1854lm6kg1hd6mqrrb0i";
version = "1.3.1";
sha256Hash = "084zrdx3w1yq53r53zjbqpz7s8fc3ga26ffwyfxj07ysmyn7ck25";
});
}

View File

@ -1,4 +1,4 @@
{ fetchurl, stdenv, wrapGAppsHook
{ fetchurl, stdenv, wrapGAppsHook, autoreconfHook
, curl, dbus, dbus-glib, enchant, gtk2, gnutls, gnupg, gpgme, hicolor-icon-theme
, libarchive, libcanberra-gtk2, libetpan, libnotify, libsoup, libxml2, networkmanager
, openldap, perl, pkgconfig, poppler, python, shared-mime-info, webkitgtk24x-gtk2
@ -10,7 +10,6 @@
# provided:
# gdata requires libgdata
# geolocation requires libchamplain
# python requires python
, enableLdap ? false
, enableNetworkManager ? false
, enablePgp ? true
@ -19,6 +18,7 @@
, enablePluginNotificationDialogs ? true
, enablePluginNotificationSounds ? true
, enablePluginPdf ? false
, enablePluginPython ? false
, enablePluginRavatar ? false
, enablePluginRssyl ? false
, enablePluginSmime ? false
@ -43,16 +43,22 @@ stdenv.mkDerivation rec {
patches = [ ./mime.patch ];
preConfigure = ''
# autotools check tries to dlopen libpython as a requirement for the python plugin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${python}/lib
'';
postPatch = ''
substituteInPlace src/procmime.c \
--subst-var-by MIMEROOTDIR ${shared-mime-info}/share
'';
nativeBuildInputs = [ pkgconfig wrapGAppsHook ];
nativeBuildInputs = [ autoreconfHook pkgconfig wrapGAppsHook python.pkgs.wrapPython ];
propagatedBuildInputs = with python.pkgs; [ python ] ++ optionals enablePluginPython [ pygtk pygobject2 ];
buildInputs =
[ curl dbus dbus-glib gtk2 gnutls gsettings-desktop-schemas hicolor-icon-theme
libetpan perl python glib-networking libSM libytnef
libetpan perl glib-networking libSM libytnef
]
++ optional enableSpellcheck enchant
++ optionals (enablePgp || enablePluginSmime) [ gnupg gpgme ]
@ -77,6 +83,7 @@ stdenv.mkDerivation rec {
++ optional (!enablePluginArchive) "--disable-archive-plugin"
++ optional (!enablePluginFancy) "--disable-fancy-plugin"
++ optional (!enablePluginPdf) "--disable-pdf_viewer-plugin"
++ optional (!enablePluginPython) "--disable-python-plugin"
++ optional (!enablePluginRavatar) "--disable-libravatar-plugin"
++ optional (!enablePluginRssyl) "--disable-rssyl-plugin"
++ optional (!enablePluginSmime) "--disable-smime-plugin"
@ -87,8 +94,11 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
pythonPath = with python.pkgs; [ pygobject2 pygtk ];
preFixup = ''
gappsWrapperArgs+=(--prefix XDG_DATA_DIRS : "${shared-mime-info}/share")
buildPythonPath "$out $pythonPath"
gappsWrapperArgs+=(--prefix XDG_DATA_DIRS : "${shared-mime-info}/share" --prefix PYTHONPATH : "$program_PYTHONPATH")
'';
postInstall = ''

View File

@ -3,14 +3,14 @@
let
common = { stname, target, patches ? [], postInstall ? "" }:
stdenv.mkDerivation rec {
version = "0.14.47";
version = "0.14.48";
name = "${stname}-${version}";
src = fetchFromGitHub {
owner = "syncthing";
repo = "syncthing";
rev = "v${version}";
sha256 = "1md835c13f3c9bknnm6pxn0r8k8g2wg56zfav96bpnpk4aqx41bh";
sha256 = "10jls0z3y081fq097xarplzv5sz076ibhawzm65bq695f6s5sdzw";
};
inherit patches;

View File

@ -20,11 +20,11 @@ assert (withQt5 -> qtbase != null && qtsvg != null && qtx11extras != null);
stdenv.mkDerivation rec {
name = "vlc-${version}";
version = "3.0.1";
version = "3.0.3";
src = fetchurl {
url = "http://get.videolan.org/vlc/${version}/${name}.tar.xz";
sha256 = "008krfhykm9447wc1kkw82bsw3f6ikljgrqyb1sinwlxnkghqw6f";
sha256 = "0lavzly8l0ll1d9iris9cnirgcs77g48lxj14058dxqkvd5v1a4v";
};
# VLC uses a *ton* of libraries for various pieces of functionality, many of
@ -52,6 +52,14 @@ stdenv.mkDerivation rec {
# set the path to the compiler
BUILDCC = "${stdenv.cc}/bin/gcc";
patches = [
(fetchpatch {
name = "vlc-qt5.11.patch";
url = "https://git.archlinux.org/svntogit/packages.git/plain/trunk/vlc-qt5.11.patch?h=packages/vlc";
sha256 = "0yh65bhhaz876cazhagnafs1dr61184lpj3y0m3y7k37bswykj8p";
})
];
postPatch = ''
substituteInPlace configure \
--replace /bin/echo echo

View File

@ -1,6 +1,6 @@
{ fetchurl }:
fetchurl {
url = "https://github.com/commercialhaskell/all-cabal-hashes/archive/810aa8e3848857c1158ded74a52159220119d188.tar.gz";
sha256 = "1s4x3ipn2san4rvfagmczdn70rhygpwwdmz0pqvy7q4rmgxy9x1i";
url = "https://github.com/commercialhaskell/all-cabal-hashes/archive/6a869307fd58b59579f78e5631b9bc8ae6b9bb92.tar.gz";
sha256 = "1i6gg49gibbqgc0iq87qlf6cqmi67pk8y2zbiz3gynqzrcmqbhfd";
}

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl, osinfo-db-tools, intltool, libxml2 }:
stdenv.mkDerivation rec {
name = "osinfo-db-20180514";
name = "osinfo-db-20180531";
src = fetchurl {
url = "https://releases.pagure.org/libosinfo/${name}.tar.xz";
sha256 = "1pyz89gwn3s9ha4chgfcfddi6dixm2dp4zsypfd38fwhqa9v0ij2";
sha256 = "0vw6hn7xdfj0q7wc3k9b0nvbghdp1b9dl63xz2v7frr55qv59m5x";
};
nativeBuildInputs = [ osinfo-db-tools intltool libxml2 ];

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
name = "wireless-regdb-${version}";
version = "2018.05.09";
version = "2018.05.31";
src = fetchurl {
url = "https://www.kernel.org/pub/software/network/wireless-regdb/${name}.tar.xz";
sha256 = "0db4p8m194cjydrv9q7ygx62v202sighb9pizbn8a29anvm0cmzd";
sha256 = "0yxydxkmcb6iryrbazdk8lqqibig102kq323gw3p64vpjwxvrpz1";
};
dontBuild = true;

View File

@ -3,13 +3,13 @@
stdenv.mkDerivation ( rec {
name = "ponyc-${version}";
version = "0.22.3";
version = "0.22.5";
src = fetchFromGitHub {
owner = "ponylang";
repo = "ponyc";
rev = version;
sha256 = "0av664n3k73psn00bd36pibkyc5b530aqqiqpg4mw2ks060dm40v";
sha256 = "1kxn4chc35h72hrblfrmmwgzb9s1sjsjazwz1dksj3hy45288lj1";
};
buildInputs = [ llvm makeWrapper which ];

View File

@ -82,7 +82,7 @@ self: super: {
name = "git-annex-${drv.version}-src";
url = "git://git-annex.branchable.com/";
rev = "refs/tags/" + drv.version;
sha256 = "1w0gzqk70ymlpvh9zqkg1cd3ipaw4n85k4zsf49xl6kjp4vbcmwj";
sha256 = "0cz044zjp067xjx0dw1yg3n7vnrkn1j3rvnk9i3jf1aqfvm1szwy";
};
})).overrideScope (self: super: {
aws = dontCheck (self.aws_0_18);

File diff suppressed because it is too large Load Diff

View File

@ -7,7 +7,7 @@ with pythonPackages;
stdenv.mkDerivation rec {
name = "renpy-${version}";
version = "6.99.14.3";
version = "7.0.0";
meta = with stdenv.lib; {
description = "Ren'Py Visual Novel Engine";
@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "https://www.renpy.org/dl/${version}/renpy-${version}-source.tar.bz2";
sha256 = "15n29ybblcpnfbmhc31gm5vj7cpqd8cwrcqxlwnxy0gjpbc50x73";
sha256 = "0yrwp5iw4fjg7kbd041qv8gh2p0dnbrnkrgmn0ndk5k10pjij82g";
};
patches = [

View File

@ -1,4 +1,4 @@
{stdenv, fetchurl, cmake}:
{stdenv, fetchurl, fetchpatch, cmake}:
let
version = "3.3.4";
@ -12,6 +12,15 @@ stdenv.mkDerivation {
sha256 = "1q85bgd6hnsgn0kq73wa4jwh4qdwklfg73pgqrz4zmxvzbqyi1j2";
};
patches = [
# Remove for > 3.3.4
# Upstream commit from 6 Apr 2018 "Fix cmake scripts with no fortran compiler"
(fetchpatch {
url = "https://bitbucket.org/eigen/eigen/commits/ba14974d054ae9ae4ba88e5e58012fa6c2729c32/raw";
sha256 = "0fskiy9sbzvp693fcyv3pfq8kxxx3d3mgmaqvjbl5bpfjivij8l1";
})
];
nativeBuildInputs = [ cmake ];
postInstall = ''

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
name = "lombok-1.16.20";
name = "lombok-1.16.22";
src = fetchurl {
url = "https://projectlombok.org/downloads/${name}.jar";
sha256 = "0v8fq4qlpjh4b87xx35m32y2xpnj4d05xflrgghia6mar8c8n5y5";
sha256 = "1hr2jjlqdnxrw7ablqkf7ljc6n2q6a04ww14di06zs6i3l82zzpa";
};
buildCommand = ''

View File

@ -0,0 +1,222 @@
From 11ec8f1e5dfa1c10e0c9fb94879b6f5b96ba52dd Mon Sep 17 00:00:00 2001
From: Guillem Jover <guillem@hadrons.org>
Date: Tue, 6 Mar 2018 01:41:35 +0100
Subject: Handle systems missing <sys/cdefs.h>
This is a non-portable header, and we cannot expect it to be provided by
the system libc (e.g. musl). We just need and rely on declaration that
we have defined ourselves in our own <bsd/sys/cdefs.h>. So we switch to
only ever assume that.
Fixes: https://bugs.freedesktop.org/105281
---
include/bsd/libutil.h | 4 ++++
include/bsd/md5.h | 4 ++++
include/bsd/nlist.h | 4 ++++
include/bsd/readpassphrase.h | 4 ++++
include/bsd/stdlib.h | 4 ++++
include/bsd/string.h | 4 ++++
include/bsd/stringlist.h | 5 +++++
include/bsd/sys/queue.h | 4 ++++
include/bsd/sys/tree.h | 4 ++++
include/bsd/timeconv.h | 4 ++++
include/bsd/vis.h | 4 ++++
include/bsd/wchar.h | 4 ++++
12 files changed, 49 insertions(+)
diff --git a/include/bsd/libutil.h b/include/bsd/libutil.h
index 45b3b15..ccca29a 100644
--- a/include/bsd/libutil.h
+++ b/include/bsd/libutil.h
@@ -40,7 +40,11 @@
#define LIBBSD_LIBUTIL_H
#include <features.h>
+#ifdef LIBBSD_OVERLAY
#include <sys/cdefs.h>
+#else
+#include <bsd/sys/cdefs.h>
+#endif
#include <sys/types.h>
#include <stdint.h>
#include <stdio.h>
diff --git a/include/bsd/md5.h b/include/bsd/md5.h
index 5f3ae46..bf36a30 100644
--- a/include/bsd/md5.h
+++ b/include/bsd/md5.h
@@ -27,7 +27,11 @@ typedef struct MD5Context {
uint8_t buffer[MD5_BLOCK_LENGTH]; /* input buffer */
} MD5_CTX;
+#ifdef LIBBSD_OVERLAY
#include <sys/cdefs.h>
+#else
+#include <bsd/sys/cdefs.h>
+#endif
#include <sys/types.h>
__BEGIN_DECLS
diff --git a/include/bsd/nlist.h b/include/bsd/nlist.h
index cb297e8..8767117 100644
--- a/include/bsd/nlist.h
+++ b/include/bsd/nlist.h
@@ -27,7 +27,11 @@
#ifndef LIBBSD_NLIST_H
#define LIBBSD_NLIST_H
+#ifdef LIBBSD_OVERLAY
#include <sys/cdefs.h>
+#else
+#include <bsd/sys/cdefs.h>
+#endif
struct nlist {
union {
diff --git a/include/bsd/readpassphrase.h b/include/bsd/readpassphrase.h
index 14744b8..5eb8021 100644
--- a/include/bsd/readpassphrase.h
+++ b/include/bsd/readpassphrase.h
@@ -31,7 +31,11 @@
#define RPP_SEVENBIT 0x10 /* Strip the high bit from input. */
#define RPP_STDIN 0x20 /* Read from stdin, not /dev/tty */
+#ifdef LIBBSD_OVERLAY
#include <sys/cdefs.h>
+#else
+#include <bsd/sys/cdefs.h>
+#endif
#include <sys/types.h>
__BEGIN_DECLS
diff --git a/include/bsd/stdlib.h b/include/bsd/stdlib.h
index ebc9638..8d33d1f 100644
--- a/include/bsd/stdlib.h
+++ b/include/bsd/stdlib.h
@@ -42,7 +42,11 @@
#ifndef LIBBSD_STDLIB_H
#define LIBBSD_STDLIB_H
+#ifdef LIBBSD_OVERLAY
#include <sys/cdefs.h>
+#else
+#include <bsd/sys/cdefs.h>
+#endif
#include <sys/stat.h>
#include <stdint.h>
diff --git a/include/bsd/string.h b/include/bsd/string.h
index 6798bf6..29097f6 100644
--- a/include/bsd/string.h
+++ b/include/bsd/string.h
@@ -33,7 +33,11 @@
#ifndef LIBBSD_STRING_H
#define LIBBSD_STRING_H
+#ifdef LIBBSD_OVERLAY
#include <sys/cdefs.h>
+#else
+#include <bsd/sys/cdefs.h>
+#endif
#include <sys/types.h>
__BEGIN_DECLS
diff --git a/include/bsd/stringlist.h b/include/bsd/stringlist.h
index ff30cac..dd71496 100644
--- a/include/bsd/stringlist.h
+++ b/include/bsd/stringlist.h
@@ -31,7 +31,12 @@
#ifndef LIBBSD_STRINGLIST_H
#define LIBBSD_STRINGLIST_H
+
+#ifdef LIBBSD_OVERLAY
#include <sys/cdefs.h>
+#else
+#include <bsd/sys/cdefs.h>
+#endif
#include <sys/types.h>
/*
diff --git a/include/bsd/sys/queue.h b/include/bsd/sys/queue.h
index 4a94ea7..ac00026 100644
--- a/include/bsd/sys/queue.h
+++ b/include/bsd/sys/queue.h
@@ -33,7 +33,11 @@
#ifndef LIBBSD_SYS_QUEUE_H
#define LIBBSD_SYS_QUEUE_H
+#ifdef LIBBSD_OVERLAY
#include <sys/cdefs.h>
+#else
+#include <bsd/sys/cdefs.h>
+#endif
/*
* This file defines four types of data structures: singly-linked lists,
diff --git a/include/bsd/sys/tree.h b/include/bsd/sys/tree.h
index 628bec0..325b382 100644
--- a/include/bsd/sys/tree.h
+++ b/include/bsd/sys/tree.h
@@ -30,7 +30,11 @@
#ifndef LIBBSD_SYS_TREE_H
#define LIBBSD_SYS_TREE_H
+#ifdef LIBBSD_OVERLAY
#include <sys/cdefs.h>
+#else
+#include <bsd/sys/cdefs.h>
+#endif
/*
* This file defines data structures for different types of trees:
diff --git a/include/bsd/timeconv.h b/include/bsd/timeconv.h
index e2a2c55..a426bd3 100644
--- a/include/bsd/timeconv.h
+++ b/include/bsd/timeconv.h
@@ -41,7 +41,11 @@
#ifndef LIBBSD_TIMECONV_H
#define LIBBSD_TIMECONV_H
+#ifdef LIBBSD_OVERLAY
#include <sys/cdefs.h>
+#else
+#include <bsd/sys/cdefs.h>
+#endif
#include <stdint.h>
#include <time.h>
diff --git a/include/bsd/vis.h b/include/bsd/vis.h
index 970dfdd..ab5430c 100644
--- a/include/bsd/vis.h
+++ b/include/bsd/vis.h
@@ -72,7 +72,11 @@
*/
#define UNVIS_END 1 /* no more characters */
+#ifdef LIBBSD_OVERLAY
#include <sys/cdefs.h>
+#else
+#include <bsd/sys/cdefs.h>
+#endif
__BEGIN_DECLS
char *vis(char *, int, int, int);
diff --git a/include/bsd/wchar.h b/include/bsd/wchar.h
index 33a500e..7216503 100644
--- a/include/bsd/wchar.h
+++ b/include/bsd/wchar.h
@@ -40,7 +40,11 @@
#define LIBBSD_WCHAR_H
#include <stddef.h>
+#ifdef LIBBSD_OVERLAY
#include <sys/cdefs.h>
+#else
+#include <bsd/sys/cdefs.h>
+#endif
#include <sys/types.h>
__BEGIN_DECLS
--
cgit v1.1

View File

@ -0,0 +1,703 @@
diff --git a/configure.ac b/configure.ac
index 88ccd91..0857782 100644
--- a/configure.ac
+++ b/configure.ac
@@ -59,7 +59,7 @@ AS_CASE([$host_os],
)
# Checks for header files.
-AC_CHECK_HEADERS([sys/ndir.h sys/dir.h ndir.h dirent.h])
+AC_CHECK_HEADERS([sys/ndir.h sys/dir.h ndir.h dirent.h stdio_ext.h])
# Checks for typedefs, structures, and compiler characteristics.
AC_C_INLINE
@@ -146,6 +146,31 @@ AC_CHECK_FUNCS([clearenv dirfd fopencookie __fpurge \
pstat_getproc sysconf])
AM_CONDITIONAL([HAVE_GETENTROPY], [test "x$ac_cv_func_getentropy" = "xtrue"])
+HostOS=`echo "$host" | sed 's/.*-//'`
+os_is_macosx=false
+nonLinuxOS=false
+AC_SUBST(HostOS)
+case ${HostOS} in
+ darwin* | powerpc*-*-darwin* | freebsd* | netbsd* | openbsd*)
+ os_is_macosx=true
+ nonLinuxOS=true
+ echo HostOS="$HostOS"
+ ;;
+ *)
+ echo host="$host"
+ echo HostOS="$HostOS"
+ os_is_macosx=false
+ nonLinuxOS=false
+ ;;
+esac
+AM_CONDITIONAL([IS_DARWIN], [test x$os_is_macosx = xtrue])
+AM_COND_IF([IS_DARWIN],
+ [AC_DEFINE([IS_DARWIN], [1], [Get HostOS Type is Darwin])])
+
+AM_CONDITIONAL([NON_LINUX], [test x$userdefine_gethostbyname_r = xtrue])
+AM_COND_IF([NON_LINUX],
+ [AC_DEFINE([NON_LINUX], [1], [Get HostOS Type])])
+
AC_CONFIG_FILES([
Makefile
include/Makefile
diff --git a/include/bsd/libutil.h b/include/bsd/libutil.h
index 45b3b15..d0d4043 100644
--- a/include/bsd/libutil.h
+++ b/include/bsd/libutil.h
@@ -39,7 +39,9 @@
#ifndef LIBBSD_LIBUTIL_H
#define LIBBSD_LIBUTIL_H
+#ifdef HAVE_FEATURES_H
#include <features.h>
+#endif
#include <sys/cdefs.h>
#include <sys/types.h>
#include <stdint.h>
diff --git a/include/bsd/stdio.h b/include/bsd/stdio.h
index 4b69983..c75151b 100644
--- a/include/bsd/stdio.h
+++ b/include/bsd/stdio.h
@@ -48,12 +48,16 @@
__BEGIN_DECLS
const char *fmtcheck(const char *, const char *);
+#if !defined(darwin) && !defined(__APPLE__) && !defined(MACOSX)
/* XXX: The function requires cooperation from the system libc to store the
* line buffer in the FILE struct itself. */
char *fgetln(FILE *fp, size_t *lenp)
- LIBBSD_DEPRECATED("This functions cannot be safely ported, "
- "use getline(3) instead, as it is supported "
- "by GNU and POSIX.1-2008.");
+ __attribute__((deprecated("This functions cannot be safely ported, "
+ "use getline(3) instead, as it is supported "
+ "by GNU and POSIX.1-2008.")));
+#else
+char *fgetln(FILE *fp, size_t *lenp);
+#endif
/*
* Note: We diverge from the FreeBSD, OpenBSD and DragonFlyBSD declarations,
diff --git a/include/bsd/stdlib.h b/include/bsd/stdlib.h
index ebc9638..6cd7943 100644
--- a/include/bsd/stdlib.h
+++ b/include/bsd/stdlib.h
@@ -67,9 +67,11 @@ int sradixsort(const unsigned char **base, int nmemb,
const unsigned char *table, unsigned endbyte);
void *reallocf(void *ptr, size_t size);
-#if defined(_GNU_SOURCE) && defined(__GLIBC__) && !__GLIBC_PREREQ(2, 26)
+#if defined(_GNU_SOURCE) && defined(__GLIBC__) && defined(__GLIBC_PREREQ)
+#if !__GLIBC_PREREQ(2, 26)
void *reallocarray(void *ptr, size_t nmemb, size_t size);
#endif
+#endif
long long strtonum(const char *nptr, long long minval, long long maxval,
const char **errstr);
diff --git a/include/bsd/string.h b/include/bsd/string.h
index 6798bf6..6baaa14 100644
--- a/include/bsd/string.h
+++ b/include/bsd/string.h
@@ -37,6 +37,12 @@
#include <sys/types.h>
__BEGIN_DECLS
+#if defined(darwin) || defined(__APPLE__) || defined(MACOSX)
+size_t bsd_strlcpy(char *dst, const char *src, size_t siz);
+size_t bsd_strlcat(char *dst, const char *src, size_t siz);
+char *bsd_strnstr(const char *str, const char *find, size_t str_len);
+void bsd_strmode(mode_t mode, char *str);
+#else
size_t strlcpy(char *dst, const char *src, size_t siz);
size_t strlcat(char *dst, const char *src, size_t siz);
char *strnstr(const char *str, const char *find, size_t str_len);
@@ -45,6 +51,7 @@ void strmode(mode_t mode, char *str);
#if defined(_GNU_SOURCE) && defined(__GLIBC__) && !__GLIBC_PREREQ(2, 25)
void explicit_bzero(void *buf, size_t len);
#endif
+#endif
__END_DECLS
#endif
diff --git a/src/Makefile.am b/src/Makefile.am
index ad83dbf..0f2a7ee 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -54,17 +54,21 @@ libbsd_la_DEPENDENCIES = \
libbsd.map
libbsd_la_LIBADD = \
$(CLOCK_GETTIME_LIBS)
+
+if IS_DARWIN
+libbsd_la_LDFLAGS = \
+ -Wl \
+ -version-number $(LIBBSD_ABI)
+else
libbsd_la_LDFLAGS = \
-Wl,--version-script=$(srcdir)/libbsd.map \
-version-number $(LIBBSD_ABI)
+endif
+
libbsd_la_SOURCES = \
arc4random.c \
- arc4random.h \
- arc4random_unix.h \
- arc4random_openbsd.h \
arc4random_uniform.c \
bsd_getopt.c \
- chacha_private.h \
closefrom.c \
dehumanize_number.c \
err.c \
@@ -117,6 +121,15 @@ libbsd_la_SOURCES += \
$(nil)
endif
+noinst_HEADERS = \
+ arc4random.h \
+ arc4random_bsd.h \
+ arc4random_linux.h \
+ arc4random_unix.h \
+ arc4random_osx.h \
+ arc4random_openbsd.h \
+ chacha_private.h
+
libbsd_ctor_a_SOURCES = \
setproctitle_ctor.c \
$(nil)
diff --git a/src/arc4random_bsd.h b/src/arc4random_bsd.h
new file mode 100644
index 0000000..ece2f85
--- /dev/null
+++ b/src/arc4random_bsd.h
@@ -0,0 +1,86 @@
+/* $OpenBSD: arc4random_freebsd.h,v 1.2 2015/01/15 06:57:18 deraadt Exp $ */
+
+/*
+ * Copyright (c) 1996, David Mazieres <dm@uun.org>
+ * Copyright (c) 2008, Damien Miller <djm@openbsd.org>
+ * Copyright (c) 2013, Markus Friedl <markus@openbsd.org>
+ * Copyright (c) 2014, Theo de Raadt <deraadt@openbsd.org>
+ *
+ * Permission to use, copy, modify, and distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+/*
+ * Stub functions for portability.
+ */
+
+#include <sys/mman.h>
+
+#include <pthread.h>
+#include <signal.h>
+
+static pthread_mutex_t arc4random_mtx = PTHREAD_MUTEX_INITIALIZER;
+#define _ARC4_LOCK() pthread_mutex_lock(&arc4random_mtx)
+#define _ARC4_UNLOCK() pthread_mutex_unlock(&arc4random_mtx)
+
+/*
+ * Unfortunately, pthread_atfork() is broken on FreeBSD (at least 9 and 10) if
+ * a program does not link to -lthr. Callbacks registered with pthread_atfork()
+ * appear to fail silently. So, it is not always possible to detect a PID
+ * wraparound.
+ */
+#define _ARC4_ATFORK(f) pthread_atfork(NULL, NULL, (f))
+
+static inline void
+_getentropy_fail(void)
+{
+ raise(SIGKILL);
+}
+
+static volatile sig_atomic_t _rs_forked;
+
+static inline void
+_rs_forkhandler(void)
+{
+ _rs_forked = 1;
+}
+
+static inline void
+_rs_forkdetect(void)
+{
+ static pid_t _rs_pid = 0;
+ pid_t pid = getpid();
+
+ if (_rs_pid == 0 || _rs_pid != pid || _rs_forked) {
+ _rs_pid = pid;
+ _rs_forked = 0;
+ if (rs)
+ memset(rs, 0, sizeof(*rs));
+ }
+}
+
+static inline int
+_rs_allocate(struct _rs **rsp, struct _rsx **rsxp)
+{
+ if ((*rsp = mmap(NULL, sizeof(**rsp), PROT_READ|PROT_WRITE,
+ MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED)
+ return (-1);
+
+ if ((*rsxp = mmap(NULL, sizeof(**rsxp), PROT_READ|PROT_WRITE,
+ MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED) {
+ munmap(*rsp, sizeof(**rsp));
+ return (-1);
+ }
+
+ _ARC4_ATFORK(_rs_forkhandler);
+ return (0);
+}
diff --git a/src/arc4random_linux.h b/src/arc4random_linux.h
new file mode 100644
index 0000000..d61a8db
--- /dev/null
+++ b/src/arc4random_linux.h
@@ -0,0 +1,86 @@
+/* $OpenBSD: arc4random_linux.h,v 1.8 2014/08/13 06:04:10 deraadt Exp $ */
+
+/*
+ * Copyright (c) 1996, David Mazieres <dm@uun.org>
+ * Copyright (c) 2008, Damien Miller <djm@openbsd.org>
+ * Copyright (c) 2013, Markus Friedl <markus@openbsd.org>
+ * Copyright (c) 2014, Theo de Raadt <deraadt@openbsd.org>
+ *
+ * Permission to use, copy, modify, and distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+/*
+ * Stub functions for portability.
+ */
+
+#include <sys/mman.h>
+
+#include <pthread.h>
+#include <signal.h>
+
+static pthread_mutex_t arc4random_mtx = PTHREAD_MUTEX_INITIALIZER;
+#define _ARC4_LOCK() pthread_mutex_lock(&arc4random_mtx)
+#define _ARC4_UNLOCK() pthread_mutex_unlock(&arc4random_mtx)
+
+#ifdef __GLIBC__
+extern void *__dso_handle;
+extern int __register_atfork(void (*)(void), void(*)(void), void (*)(void), void *);
+#define _ARC4_ATFORK(f) __register_atfork(NULL, NULL, (f), __dso_handle)
+#else
+#define _ARC4_ATFORK(f) pthread_atfork(NULL, NULL, (f))
+#endif
+
+static inline void
+_getentropy_fail(void)
+{
+ raise(SIGKILL);
+}
+
+static volatile sig_atomic_t _rs_forked;
+
+static inline void
+_rs_forkhandler(void)
+{
+ _rs_forked = 1;
+}
+
+static inline void
+_rs_forkdetect(void)
+{
+ static pid_t _rs_pid = 0;
+ pid_t pid = getpid();
+
+ if (_rs_pid == 0 || _rs_pid != pid || _rs_forked) {
+ _rs_pid = pid;
+ _rs_forked = 0;
+ if (rs)
+ memset(rs, 0, sizeof(*rs));
+ }
+}
+
+static inline int
+_rs_allocate(struct _rs **rsp, struct _rsx **rsxp)
+{
+ if ((*rsp = mmap(NULL, sizeof(**rsp), PROT_READ|PROT_WRITE,
+ MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED)
+ return (-1);
+
+ if ((*rsxp = mmap(NULL, sizeof(**rsxp), PROT_READ|PROT_WRITE,
+ MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED) {
+ munmap(*rsp, sizeof(**rsp));
+ return (-1);
+ }
+
+ _ARC4_ATFORK(_rs_forkhandler);
+ return (0);
+}
diff --git a/src/arc4random_osx.h b/src/arc4random_osx.h
new file mode 100644
index 0000000..14771a6
--- /dev/null
+++ b/src/arc4random_osx.h
@@ -0,0 +1,82 @@
+/* $OpenBSD: arc4random_osx.h,v 1.10 2015/09/11 11:52:55 deraadt Exp $ */
+
+/*
+ * Copyright (c) 1996, David Mazieres <dm@uun.org>
+ * Copyright (c) 2008, Damien Miller <djm@openbsd.org>
+ * Copyright (c) 2013, Markus Friedl <markus@openbsd.org>
+ * Copyright (c) 2014, Theo de Raadt <deraadt@openbsd.org>
+ *
+ * Permission to use, copy, modify, and distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+/*
+ * Stub functions for portability.
+ */
+
+#include <sys/mman.h>
+
+#include <unistd.h>
+#include <pthread.h>
+#include <signal.h>
+
+static pthread_mutex_t arc4random_mtx = PTHREAD_MUTEX_INITIALIZER;
+#define _ARC4_LOCK() pthread_mutex_lock(&arc4random_mtx)
+#define _ARC4_UNLOCK() pthread_mutex_unlock(&arc4random_mtx)
+
+#define _ARC4_ATFORK(f) pthread_atfork(NULL, NULL, (f))
+
+static inline void
+_getentropy_fail(void)
+{
+ raise(SIGKILL);
+}
+
+static volatile sig_atomic_t _rs_forked;
+
+static inline void
+_rs_forkhandler(void)
+{
+ _rs_forked = 1;
+}
+
+static inline void
+_rs_forkdetect(void)
+{
+ static pid_t _rs_pid = 0;
+ pid_t pid = getpid();
+
+ if (_rs_pid == 0 || _rs_pid != pid || _rs_forked) {
+ _rs_pid = pid;
+ _rs_forked = 0;
+ if (rs)
+ memset(rs, 0, sizeof(*rs));
+ }
+}
+
+static inline int
+_rs_allocate(struct _rs **rsp, struct _rsx **rsxp)
+{
+ if ((*rsp = mmap(NULL, sizeof(**rsp), PROT_READ|PROT_WRITE,
+ MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED)
+ return (-1);
+
+ if ((*rsxp = mmap(NULL, sizeof(**rsxp), PROT_READ|PROT_WRITE,
+ MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED) {
+ munmap(*rsp, sizeof(**rsp));
+ *rsp = NULL;
+ return (-1);
+ }
+
+ _ARC4_ATFORK(_rs_forkhandler);
+ return (0);
+}
diff --git a/src/fgetln.c b/src/fgetln.c
index 4d1726e..9c73788 100644
--- a/src/fgetln.c
+++ b/src/fgetln.c
@@ -30,7 +30,9 @@
#include <sys/types.h>
#include <string.h>
+#if !defined(darwin) && !defined(__APPLE__) && !defined(MACOSX)
#include "local-link.h"
+#endif
#ifdef HAVE_GETLINE
struct filebuf {
@@ -75,9 +77,11 @@ fgetln(FILE *stream, size_t *len)
return fb->buf;
}
}
+#if !defined(darwin) && !defined(__APPLE__) && !defined(MACOSX)
libbsd_link_warning(fgetln,
"This functions cannot be safely ported, use getline(3) "
"instead, as it is supported by GNU and POSIX.1-2008.")
+#endif
#else
#error "Function fgetln() needs to be ported."
#endif
diff --git a/src/fpurge.c b/src/fpurge.c
index 462535a..e7eb46f 100644
--- a/src/fpurge.c
+++ b/src/fpurge.c
@@ -26,9 +26,11 @@
#include <errno.h>
#include <stdio.h>
+#if HAVE___FPURGE
#include <stdio_ext.h>
+#endif
-#ifdef HAVE___FPURGE
+#ifdef HAVE___FPURGE /* glibc >= 2.2, Haiku, Solaris >= 7 */
int
fpurge(FILE *fp)
{
@@ -42,5 +44,55 @@ fpurge(FILE *fp)
return 0;
}
#else
-#error "Function fpurge() needs to be ported."
+#define fp_ fp
+//#error "Function fpurge() needs to be ported."
+//#elif HAVE_FPURGE /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin 1.7 */
+int
+fpurge(FILE *fp)
+{
+ if (fp == NULL || fileno(fp) < 0) {
+ errno = EBADF;
+ return EOF;
+ }
+
+ /* Call the system's fpurge function. */
+# undef fpurge
+# if !HAVE_DECL_FPURGE
+ extern int fpurge (FILE *);
+# endif
+ int result = fpurge (fp);
+# if defined __sferror || defined __DragonFly__ /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin */
+ if (result == 0)
+ /* Correct the invariants that fpurge broke.
+ <stdio.h> on BSD systems says:
+ "The following always hold: if _flags & __SRD, _w is 0."
+ If this invariant is not fulfilled and the stream is read-write but
+ currently reading, subsequent putc or fputc calls will write directly
+ into the buffer, although they shouldn't be allowed to. */
+ if ((fp_->_flags & __SRD) != 0)
+ fp_->_w = 0;
+#endif
+ return result;
+}
+//#endif
+#endif
+
+#ifdef TEST
+int
+main()
+{
+ static FILE fp_bad;
+ FILE *fp;
+
+ if (fpurge(&fp_bad) == 0)
+ return 1;
+
+ fp = fopen("/dev/zero", "r");
+ if (fpurge(fp) < 0)
+ return 1;
+
+ fclose(fp);
+
+ return 0;
+}
#endif
diff --git a/src/funopen.c b/src/funopen.c
index 1e05c7e..75e61ea 100644
--- a/src/funopen.c
+++ b/src/funopen.c
@@ -143,6 +143,7 @@ funopen(const void *cookie,
* they will not add the needed support to implement it. Just ignore this
* interface there, as it has never been provided anyway.
*/
+#elif defined(darwin) || defined(__APPLE__) || defined(MACOSX)
#else
#error "Function funopen() needs to be ported or disabled."
#endif
diff --git a/src/getentropy.c b/src/getentropy.c
index 3f11a1e..8a23a07 100644
--- a/src/getentropy.c
+++ b/src/getentropy.c
@@ -28,9 +28,7 @@
#include "getentropy_linux.c"
#elif defined(__GNU__)
#include "getentropy_hurd.c"
-#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
-#include "getentropy_bsd.c"
-#elif defined(__NetBSD__)
+#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__NetBSD__)
#include "getentropy_bsd.c"
#elif defined(__sun)
#include "getentropy_solaris.c"
diff --git a/src/hash/sha512.h b/src/hash/sha512.h
index 4f368a1..ab22fc1 100644
--- a/src/hash/sha512.h
+++ b/src/hash/sha512.h
@@ -29,7 +29,11 @@
#ifndef _SHA512_H_
#define _SHA512_H_
+#if defined(darwin) || defined(__APPLE__) || defined(MACOSX)
+#include <stdint.h>
+#else
#include <sys/types.h>
+#endif
#define SHA512_DIGEST_LENGTH 64
diff --git a/src/hash/sha512c.c b/src/hash/sha512c.c
index b3c8d5e..f69013d 100644
--- a/src/hash/sha512c.c
+++ b/src/hash/sha512c.c
@@ -25,7 +25,13 @@
*/
#include <sys/cdefs.h>
+__FBSDID("$FreeBSD$");
+
+#if defined(darwin) || defined(__APPLE__) || defined(MACOSX)
+#include <machine/endian.h>
+#else
#include <sys/endian.h>
+#endif
#include <sys/types.h>
#include <string.h>
diff --git a/src/nlist.c b/src/nlist.c
index 0932f59..598a329 100644
--- a/src/nlist.c
+++ b/src/nlist.c
@@ -27,6 +27,10 @@
* SUCH DAMAGE.
*/
+#if !defined(darwin) && !defined(__APPLE__) && !defined(MACOSX)
+#if defined(LIBC_SCCS) && !defined(lint)
+static char sccsid[] = "@(#)nlist.c 8.1 (Berkeley) 6/4/93";
+#endif /* LIBC_SCCS and not lint */
#include <sys/cdefs.h>
#include <sys/param.h>
@@ -265,3 +269,4 @@ nlist(const char *name, struct nlist *list)
(void)close(fd);
return (n);
}
+#endif /* _NLIST_DO_ELF */
diff --git a/src/setproctitle.c b/src/setproctitle.c
index 038ac7d..d0ef01b 100644
--- a/src/setproctitle.c
+++ b/src/setproctitle.c
@@ -32,6 +32,11 @@
#include <unistd.h>
#include <string.h>
+#if defined(darwin) || defined(__APPLE__) || defined(MACOSX)
+#define __asm__(x)
+extern char **environ;
+#endif
+
static struct {
/* Original value. */
const char *arg0;
@@ -287,7 +292,14 @@ __asm__(".symver setproctitle_impl,setproctitle@@LIBBSD_0.5");
* for code linking against that version, and change the default to use the
* new version, so that new code depends on the implemented version. */
#ifdef HAVE_TYPEOF
+#if defined(darwin) || defined(__APPLE__) || defined(MACOSX)
+//
+// HACK: even weak aliasing breaks in clang so just comment this out for now
+//
+// extern typeof(setproctitle_impl) setproctitle_stub __attribute__((weak, alias("setproctitle_impl")));
+#else
extern typeof(setproctitle_impl) setproctitle_stub __attribute__((alias("setproctitle_impl")));
+#endif
#else
void setproctitle_stub(const char *fmt, ...)
__attribute__((alias("setproctitle_impl")));
diff --git a/src/strlcat.c b/src/strlcat.c
index 14c53a1..e01cb60 100644
--- a/src/strlcat.c
+++ b/src/strlcat.c
@@ -27,7 +27,11 @@
* If retval >= dsize, truncation occurred.
*/
size_t
+#if defined(darwin) || defined(__APPLE__) || defined(MACOSX)
+bsd_strlcat(char *dst, const char *src, size_t dsize)
+#else
strlcat(char *dst, const char *src, size_t dsize)
+#endif
{
const char *odst = dst;
const char *osrc = src;
diff --git a/src/strlcpy.c b/src/strlcpy.c
index e9a7fe4..10a855f 100644
--- a/src/strlcpy.c
+++ b/src/strlcpy.c
@@ -25,7 +25,11 @@
* Returns strlen(src); if retval >= dsize, truncation occurred.
*/
size_t
+#if defined(darwin) || defined(__APPLE__) || defined(MACOSX)
+bsd_strlcpy(char *dst, const char *src, size_t dsize)
+#else
strlcpy(char *dst, const char *src, size_t dsize)
+#endif
{
const char *osrc = src;
size_t nleft = dsize;
diff --git a/src/strmode.c b/src/strmode.c
index e6afde5..c463243 100644
--- a/src/strmode.c
+++ b/src/strmode.c
@@ -33,7 +33,11 @@
#include <string.h>
void
+#if defined(darwin) || defined(__APPLE__) || defined(MACOSX)
+bsd_strmode(mode_t mode, char *p)
+#else
strmode(mode_t mode, char *p)
+#endif
{
/* print type */
switch (mode & S_IFMT) {

View File

@ -1,21 +1,34 @@
{ stdenv, fetchurl }:
{ stdenv, fetchurl, autoreconfHook }:
stdenv.mkDerivation rec {
name = "libbsd-${version}";
version = "0.9.1";
version = "0.8.7";
src = fetchurl {
url = "http://libbsd.freedesktop.org/releases/${name}.tar.xz";
sha256 = "1957w2wi7iqar978qlfsm220dwywnrh5m58nrnn9zmi74ds3bn2n";
sha256 = "0c9bl49zs0xdddcwj5dh0lay9sxi2m1yi74848g8p87mb87g2j7m";
};
patches = [];
# darwin changes configure.ac which means we need to regenerate
# the configure scripts
nativeBuildInputs = [ autoreconfHook ];
patches = stdenv.lib.optional stdenv.isDarwin ./darwin.patch
# Suitable for all, but limited to musl to avoid rebuilds
++ stdenv.lib.optionals stdenv.hostPlatform.isMusl [
# https://cgit.freedesktop.org/libbsd/commit/?id=1f8a3f7bccfc84b195218ad0086ebd57049c3490
./non-glibc.patch
# https://cgit.freedesktop.org/libbsd/commit/?id=11ec8f1e5dfa1c10e0c9fb94879b6f5b96ba52dd
./cdefs.patch
# https://cgit.freedesktop.org/libbsd/commit/?id=b20272f5a966333b49fdf2bda797e2a9f0227404
./features.patch
];
meta = with stdenv.lib; {
description = "Common functions found on BSD systems, Freedesktop fork";
description = "Common functions found on BSD systems";
homepage = https://libbsd.freedesktop.org/;
license = licenses.bsd3;
platforms = platforms.linux;
maintainers = with maintainers; [ raskin ];
platforms = platforms.linux ++ platforms.darwin;
maintainers = with maintainers; [ matthewbauer ];
};
}

View File

@ -0,0 +1,26 @@
From b20272f5a966333b49fdf2bda797e2a9f0227404 Mon Sep 17 00:00:00 2001
From: Guillem Jover <guillem@hadrons.org>
Date: Tue, 6 Mar 2018 01:42:52 +0100
Subject: Remove <features.h> inclusion from <bsd/libutil.h>
This is a non-portable header, and we should not assume it is present.
Let the first system header pull it in if needed.
---
include/bsd/libutil.h | 1 -
1 file changed, 1 deletion(-)
diff --git a/include/bsd/libutil.h b/include/bsd/libutil.h
index ccca29a..e5f148a 100644
--- a/include/bsd/libutil.h
+++ b/include/bsd/libutil.h
@@ -39,7 +39,6 @@
#ifndef LIBBSD_LIBUTIL_H
#define LIBBSD_LIBUTIL_H
-#include <features.h>
#ifdef LIBBSD_OVERLAY
#include <sys/cdefs.h>
#else
--
cgit v1.1

View File

@ -0,0 +1,74 @@
From 1f8a3f7bccfc84b195218ad0086ebd57049c3490 Mon Sep 17 00:00:00 2001
From: Guillem Jover <guillem@hadrons.org>
Date: Tue, 6 Mar 2018 01:39:45 +0100
Subject: Fix function declaration protection for glibc already providing them
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
On non-glibc based systems we cannot unconditionally use the
__GLIBC_PREREQ macro as it gets expanded before evaluation. Instead,
if it is undefined, define it to 0.
We should also always declare these functions on non-glibc based
systems. And on systems with a new enough glibc, which provides these
functions, we should still provide the declarations if _GNU_SOURCE
is *not* defined.
Reported-by: Jörg Krause <joerg.krause@embedded.rocks>
---
include/bsd/stdlib.h | 3 ++-
include/bsd/string.h | 3 ++-
include/bsd/sys/cdefs.h | 8 ++++++++
3 files changed, 12 insertions(+), 2 deletions(-)
diff --git a/include/bsd/stdlib.h b/include/bsd/stdlib.h
index 8d33d1f..a5b063c 100644
--- a/include/bsd/stdlib.h
+++ b/include/bsd/stdlib.h
@@ -71,7 +71,8 @@ int sradixsort(const unsigned char **base, int nmemb,
const unsigned char *table, unsigned endbyte);
void *reallocf(void *ptr, size_t size);
-#if defined(_GNU_SOURCE) && defined(__GLIBC__) && !__GLIBC_PREREQ(2, 26)
+#if !defined(__GLIBC__) || \
+ (defined(__GLIBC__) && (!__GLIBC_PREREQ(2, 26) || !defined(_GNU_SOURCE)))
void *reallocarray(void *ptr, size_t nmemb, size_t size);
#endif
diff --git a/include/bsd/string.h b/include/bsd/string.h
index 29097f6..f987fee 100644
--- a/include/bsd/string.h
+++ b/include/bsd/string.h
@@ -46,7 +46,8 @@ size_t strlcat(char *dst, const char *src, size_t siz);
char *strnstr(const char *str, const char *find, size_t str_len);
void strmode(mode_t mode, char *str);
-#if defined(_GNU_SOURCE) && defined(__GLIBC__) && !__GLIBC_PREREQ(2, 25)
+#if !defined(__GLIBC__) || \
+ (defined(__GLIBC__) && (!__GLIBC_PREREQ(2, 25) || !defined(_GNU_SOURCE)))
void explicit_bzero(void *buf, size_t len);
#endif
__END_DECLS
diff --git a/include/bsd/sys/cdefs.h b/include/bsd/sys/cdefs.h
index b4c8f30..d1cc419 100644
--- a/include/bsd/sys/cdefs.h
+++ b/include/bsd/sys/cdefs.h
@@ -59,6 +59,14 @@
#endif
/*
+ * On non-glibc based systems, we cannot unconditionally use the
+ * __GLIBC_PREREQ macro as it gets expanded before evaluation.
+ */
+#ifndef __GLIBC_PREREQ
+#define __GLIBC_PREREQ(maj, min) 0
+#endif
+
+/*
* Some kFreeBSD headers expect those macros to be set for sanity checks.
*/
#ifndef _SYS_CDEFS_H_
--
cgit v1.1

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
name = "pkcs11-helper-${version}";
version = "1.22";
version = "1.23";
src = fetchFromGitHub {
owner = "OpenSC";
repo = "pkcs11-helper";
rev = "${name}";
sha256 = "01v3zv6sr5phqhr2f21fl2rmcnmkp9518dkq82g1v2y9ysjksg7q";
sha256 = "1m3fp3v6c903cs36bvvg0h65p1sdamsmzy13ww0zyvplcycarz0n";
};
nativeBuildInputs = [ autoreconfHook pkgconfig ];

View File

@ -4,4 +4,6 @@ patch: [
(patch "001" "0xm3sxvwmss7ddyfb11n6pgcqd1aglnpy15g143vzcf75snb7hcs")
(patch "002" "0n1dxmqsbjgrfxb1hgk5c6lsraw4ncbnzxlsx7m35nym6lncjiw7")
(patch "003" "1027kmymniizcy0zbdlrczxfx3clxcdln5yq05q9yzlc6y9slhwy")
(patch "004" "0r3bbaf12iz8m02z6p3fzww2m365fhn71xmzab2p62gj54s6h9gr")
(patch "005" "0lxpa4f72y2nsgj6fgrhjk2nmmxvccys6aciwfxwchb5f21rq5fa")
]

View File

@ -68,9 +68,14 @@ nodePackages // {
pnpm = nodePackages.pnpm.override (oldAttrs: {
nativeBuildInputs = oldAttrs.buildInputs ++ [ pkgs.makeWrapper ];
postInstall = ''
postInstall = let
pnpmLibPath = stdenv.lib.makeBinPath [
nodejs.passthru.python
nodejs
];
in ''
for prog in $out/bin/*; do
wrapProgram "$prog" --prefix PATH : ${stdenv.lib.makeBinPath [ nodejs.passthru.python ]}
wrapProgram "$prog" --prefix PATH : ${pnpmLibPath}
done
'';
});

View File

@ -0,0 +1,29 @@
{ stdenv, fetchFromGitHub, ocaml, jbuilder, findlib, result }:
if !stdenv.lib.versionAtLeast ocaml.version "4.02"
then throw "linenoise is not available for OCaml ${ocaml.version}"
else
stdenv.mkDerivation rec {
name = "ocaml${ocaml.version}-linenoise-${version}";
version = "1.1.0";
src = fetchFromGitHub {
owner = "fxfactorial";
repo = "ocaml-linenoise";
rev = "v${version}";
sha256 = "1h6rqfgmhmd7p5z8yhk6zkbrk4yzw1v2fgwas2b7g3hqs6y0xj0q";
};
buildInputs = [ ocaml findlib jbuilder ];
propagatedBuildInputs = [ result ];
inherit (jbuilder) installPhase;
meta = {
description = "OCaml bindings to linenoise";
license = stdenv.lib.licenses.bsd3;
maintainers = [ stdenv.lib.maintainers.vbgl ];
inherit (ocaml.meta) platforms;
inherit (src.meta) homepage;
};
}

View File

@ -1,5 +1,6 @@
# FIXME: make gdk_pixbuf dependency optional
{ buildPythonPackage
{ stdenv
, buildPythonPackage
, fetchPypi
, lib
, substituteAll
@ -42,6 +43,7 @@ buildPythonPackage rec {
# OSError: dlopen() failed to load a library: gdk_pixbuf-2.0 / gdk_pixbuf-2.0-0
(substituteAll {
src = ./dlopen-paths.patch;
ext = stdenv.hostPlatform.extensions.sharedLibrary;
cairo = cairo.out;
glib = glib.out;
gdk_pixbuf = gdk_pixbuf.out;

View File

@ -16,10 +16,10 @@ index 718aa7f..1a1dcff 100644
+# Use hardcoded soname, because ctypes.util use gcc/objdump which shouldn't be required for runtime
+_LIBS = {
+ 'cairo': '@cairo@/lib/libcairo.so.2',
+ 'glib-2.0': '@glib@/lib/libglib-2.0.so.0',
+ 'gobject-2.0': '@glib@/lib/libgobject-2.0.so.0',
+ 'gdk_pixbuf-2.0': '@gdk_pixbuf@/lib/libgdk_pixbuf-2.0.so.0',
+ 'cairo': '@cairo@/lib/libcairo@ext@',
+ 'glib-2.0': '@glib@/lib/libglib-2.0@ext@',
+ 'gobject-2.0': '@glib@/lib/libgobject-2.0@ext@',
+ 'gdk_pixbuf-2.0': '@gdk_pixbuf@/lib/libgdk_pixbuf-2.0@ext@',
+}
-def dlopen(ffi, *names):

View File

@ -0,0 +1,24 @@
{ stdenv, buildPythonPackage, fetchPypi, numpy, nose, openmp }:
buildPythonPackage rec {
pname = "pykdtree";
version = "1.3.0";
src = fetchPypi {
inherit pname version;
sha256 = "79351b79087f473f83fb27a5cd552bd1056f2dfa7acec5d4a68f35a7cbea6776";
};
buildInputs = [ openmp ];
propagatedBuildInputs = [ numpy ];
checkInputs = [ nose ];
meta = with stdenv.lib; {
description = "kd-tree implementation for fast nearest neighbour search in Python";
homepage = https://github.com/storpipfugl/pykdtree;
license = licenses.lgpl3;
maintainers = with maintainers; [ psyanticy ];
};
}

View File

@ -0,0 +1,31 @@
{ lib, buildPythonPackage, fetchPypi, pythonOlder, isPy3k, python, typing }:
let
testDir = if isPy3k then "src_py3" else "src_py2";
in buildPythonPackage rec {
pname = "typing_extensions";
version = "3.6.5";
src = fetchPypi {
inherit pname version;
sha256 = "09xxykw8mk30r0g33r2gy5qlqw3sqj5vkp6h7nh0flp59hxqw2hw";
};
checkInputs = lib.optional (pythonOlder "3.5") typing;
# Error for Python3.6: ImportError: cannot import name 'ann_module'
# See https://github.com/python/typing/pull/280
doCheck = pythonOlder "3.6";
checkPhase = ''
cd ${testDir}
${python.interpreter} -m unittest discover
'';
meta = with lib; {
description = "Backported and Experimental Type Hints for Python 3.5+";
homepage = https://github.com/python/typing;
license = licenses.psfl;
maintainers = with maintainers; [ pmiddend ];
};
}

View File

@ -0,0 +1,35 @@
{ stdenv, buildPythonPackage, isPy3k, fetchFromGitHub, voluptuous, pytest }:
buildPythonPackage rec {
pname = "voluptuous-serialize";
version = "2018-03-10";
disabled = !isPy3k;
# no tests in PyPI tarball
src = fetchFromGitHub {
owner = "balloob";
repo = pname;
rev = "567f0d96f928cf6c30c9f1b8bdee729e651aac82";
sha256 = "0b16f1bxlqyvi1hy8wmzp2k0rzqcycmdhs8zwsyx0swnvkgwnv50";
};
propagatedBuildInputs = [
voluptuous
];
checkInputs = [
pytest
];
checkPhase = ''
py.test
'';
meta = with stdenv.lib; {
homepage = https://github.com/balloob/voluptuous-serialize;
license = licenses.asl20;
description = "Convert Voluptuous schemas to dictionaries so they can be serialized";
maintainers = with maintainers; [ etu ];
};
}

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
name = "pmd-${version}";
version = "6.3.0";
version = "6.4.0";
buildInputs = [ unzip ];
src = fetchurl {
url = "mirror://sourceforge/pmd/pmd-bin-${version}.zip";
sha256 = "09x6mpqz4z583lvliipkmvlv3qmmwi7zjzgfjhwyp27faf2pz1ym";
sha256 = "17yjjmqcn1fy3bj73nh5i84yc7wappza612a0iwg0lqqn4yl7lyn";
};
installPhase = ''

View File

@ -52,12 +52,12 @@ rec {
};
gradle_latest = gradleGen rec {
name = "gradle-4.7";
name = "gradle-4.8";
nativeVersion = "0.14";
src = fetchurl {
url = "http://services.gradle.org/distributions/${name}-bin.zip";
sha256 = "016vvjvk3gfasv3h6dxxp48kp9v4ariqj280bijn835mr1yhi9gw";
sha256 = "1fpihf35nd2wqh3ghkk9x0x2nr1s4vx3dgrfn2q4xagsm299dqpk";
};
};

View File

@ -1,5 +1,5 @@
diff --git a/bfd/config.bfd b/bfd/config.bfd
index f04a993f06..3357022f35 100644
index f04a993f06..1e24a9d030 100644
--- a/bfd/config.bfd
+++ b/bfd/config.bfd
@@ -238,7 +238,7 @@ case "${targ}" in
@ -20,8 +20,35 @@ index f04a993f06..3357022f35 100644
targ_defvec=arm_mach_o_vec
targ_selvecs="mach_o_le_vec mach_o_be_vec mach_o_fat_vec"
targ_archs="$targ_archs bfd_i386_arch bfd_powerpc_arch bfd_rs6000_arch"
@@ -678,7 +678,7 @@ case "${targ}" in
i[3-7]86-*-aix*)
targ_defvec=i386_coff_vec
;;
- i[3-7]86-*-darwin* | i[3-7]86-*-macos10* | i[3-7]86-*-rhapsody*)
+ i[3-7]86-*-darwin* | i[3-7]86-*-ios* | i[3-7]86-*-macos10* | i[3-7]86-*-rhapsody*)
targ_defvec=i386_mach_o_vec
targ_selvecs="mach_o_le_vec mach_o_be_vec mach_o_fat_vec pef_vec pef_xlib_vec sym_vec"
targ64_selvecs=x86_64_mach_o_vec
@@ -762,7 +762,7 @@ case "${targ}" in
targ_defvec=x86_64_elf64_cloudabi_vec
want64=true
;;
- x86_64-*-darwin*)
+ x86_64-*-darwin* | x86_64-*-ios*)
targ_defvec=x86_64_mach_o_vec
targ_selvecs="i386_mach_o_vec mach_o_le_vec mach_o_be_vec mach_o_fat_vec pef_vec pef_xlib_vec sym_vec"
targ_archs="$targ_archs bfd_powerpc_arch bfd_rs6000_arch"
@@ -1402,7 +1402,7 @@ case "${targ}" in
targ_selvecs="powerpc_elf32_le_vec powerpc_boot_vec"
targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec"
;;
- powerpc-*-darwin* | powerpc-*-macos10* | powerpc-*-rhapsody*)
+ powerpc-*-darwin* | powerpc-*-ios* | powerpc-*-macos10* | powerpc-*-rhapsody*)
targ_defvec=mach_o_be_vec
targ_selvecs="mach_o_be_vec mach_o_le_vec mach_o_fat_vec pef_vec pef_xlib_vec sym_vec"
targ_archs="$targ_archs bfd_i386_arch"
diff --git a/configure.ac b/configure.ac
index aae94501e4..4b1121e0d1 100644
index aae94501e4..2cceb4dad4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -510,7 +510,7 @@ if test x$enable_libgomp = x ; then
@ -33,9 +60,18 @@ index aae94501e4..4b1121e0d1 100644
;;
nvptx*-*-*)
;;
@@ -706,7 +706,7 @@ case "${target}" in
@@ -700,13 +700,13 @@ esac
# Disable libffi for some systems.
case "${target}" in
- powerpc-*-darwin*)
+ powerpc-*-darwin* | powerpc-*-ios*)
;;
x86_64-*-darwin[[912]]*)
- i[[3456789]]86-*-darwin*)
+ i[[3456789]]86-*-darwin* | i[[3456789]]86-*-ios*)
;;
- x86_64-*-darwin[[912]]*)
+ x86_64-*-darwin[[912]]* | x86_64-*-ios[[912]]*)
;;
- *-*-darwin*)
+ *-*-darwin* | *-*-ios*)
@ -60,7 +96,7 @@ index aae94501e4..4b1121e0d1 100644
# PR 46986
noconfigdirs="$noconfigdirs target-libgo"
;;
@@ -916,11 +916,11 @@ esac
@@ -916,27 +916,27 @@ esac
case "${target}" in
*-*-chorusos)
;;
@ -74,7 +110,18 @@ index aae94501e4..4b1121e0d1 100644
noconfigdirs="$noconfigdirs ld gas gdb gprof"
noconfigdirs="$noconfigdirs sim target-rda"
;;
@@ -936,7 +936,7 @@ case "${target}" in
- powerpc-*-darwin*)
+ powerpc-*-darwin* | powerpc-*-ios*)
noconfigdirs="$noconfigdirs ld gas gdb gprof"
noconfigdirs="$noconfigdirs sim target-rda"
;;
- i[[3456789]]86-*-darwin*)
+ i[[3456789]]86-*-darwin* | i[[3456789]]86-*-ios*)
noconfigdirs="$noconfigdirs ld gprof"
noconfigdirs="$noconfigdirs sim target-rda"
;;
- x86_64-*-darwin[[912]]*)
+ x86_64-*-darwin[[912]]* | x86_64-*-ios[[912]]*)
noconfigdirs="$noconfigdirs ld gas gprof"
noconfigdirs="$noconfigdirs sim target-rda"
;;
@ -92,6 +139,15 @@ index aae94501e4..4b1121e0d1 100644
host_makefile_frag="config/mh-darwin"
;;
powerpc-*-aix*)
@@ -1697,7 +1697,7 @@ ACX_ELF_TARGET_IFELSE([# ELF platforms build the lto-plugin always.
build_lto_plugin=yes
],[if test x"$default_enable_lto" = x"yes" ; then
case $target in
- *-apple-darwin[[912]]* | *-cygwin* | *-mingw* | *djgpp*) ;;
+ *-apple-darwin[[912]]* | *-apple-ios[[912]]* | *-cygwin* | *-mingw* | *djgpp*) ;;
# On other non-ELF platforms, LTO has yet to be validated.
*) enable_lto=no ;;
esac
@@ -1708,7 +1708,7 @@ ACX_ELF_TARGET_IFELSE([# ELF platforms build the lto-plugin always.
# warn during gcc/ subconfigure; unless you're bootstrapping with
# -flto it won't be needed until after installation anyway.

View File

@ -0,0 +1,32 @@
{ stdenv, fetchFromGitHub, SDL, SDL_image, SDL_mixer, binutils }:
# - set the opendune configuration at ~/.config/opendune/opendune.ini:
# [opendune]
# datadir=/path/to/opendune-data
# - download dune2 into [datadir] http://www.bestoldgames.net/eng/old-games/dune-2.php
stdenv.mkDerivation rec {
name = "opendune-${version}";
version = "0.9";
src = fetchFromGitHub {
owner = "OpenDUNE";
repo = "OpenDUNE";
rev = version;
sha256 = "15rvrnszdy3db8s0dmb696l4isb3x2cpj7wcl4j09pdi59pc8p37";
};
buildInputs = [ SDL SDL_image SDL_mixer ];
installPhase = ''
install -m 555 -D bin/opendune $out/bin/opendune
'';
meta = with stdenv.lib; {
description = "Dune, Reinvented";
homepage = https://github.com/OpenDUNE/OpenDUNE;
license = licenses.gpl2;
maintainers = [ maintainers.nand0p ];
platforms = platforms.linux;
};
}

View File

@ -3,6 +3,7 @@
, withJava ? false
, withPrimus ? false
, extraPkgs ? pkgs: [ ] # extra packages to add to targetPkgs
, extraProfile ? "" # string to append to profile
, nativeOnly ? false
, runtimeOnly ? false
}:
@ -178,7 +179,7 @@ in buildFHSUserEnv rec {
profile = ''
export STEAM_RUNTIME=${if nativeOnly then "0" else "/steamrt"}
'';
'' + extraProfile;
runScript = writeScript "steam-wrapper.sh" ''
#!${stdenv.shell}

View File

@ -3,13 +3,13 @@
with stdenv.lib;
buildLinux (args // rec {
version = "4.14.47";
version = "4.14.48";
# branchVersion needs to be x.y
extraMeta.branch = concatStrings (intersperse "." (take 2 (splitString "." version)));
src = fetchurl {
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
sha256 = "06c8kl9f0s5qmqh9l16y1q7r44ld56kd0a00722c3aivddm3nav7";
sha256 = "1f92pz92mf0x9jfv3qf4w40i78l053f2qh2n8p2sbrqzc67n1840";
};
} // (args.argsOverride or {}))

View File

@ -3,7 +3,7 @@
with stdenv.lib;
buildLinux (args // rec {
version = "4.16.13";
version = "4.16.14";
# modDirVersion needs to be x.y.z, will automatically add .0 if needed
modDirVersion = if (modDirVersionArg == null) then concatStrings (intersperse "." (take 3 (splitString "." "${version}.0"))) else modDirVersionArg;
@ -13,6 +13,6 @@ buildLinux (args // rec {
src = fetchurl {
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
sha256 = "1qzj5mbkxkrpmnwws8vdz292gp863kybrgr9bvgs7v28plx7n2kg";
sha256 = "1h6zjnwpdyqk9fp72c35565lhw00kpjl55faakwx7xsxfpyvc25p";
};
} // (args.argsOverride or {}))

View File

@ -1,11 +1,11 @@
{ stdenv, buildPackages, hostPlatform, fetchurl, perl, buildLinux, ... } @ args:
buildLinux (args // rec {
version = "4.9.105";
version = "4.9.106";
extraMeta.branch = "4.9";
src = fetchurl {
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
sha256 = "1i3dv7lvh7b08943iw45j0x99878wia83fribbgxn7xcwcld51fh";
sha256 = "0g5y3ckwb1zn8gzsk1sc6vnmsrvsx5g2a1p0p9hrmsl8jnr9nh1d";
};
} // (args.argsOverride or {}))

View File

@ -228,7 +228,7 @@
"comfoconnect" = ps: with ps; [ ];
"config" = ps: with ps; [ aiohttp-cors ];
"config.automation" = ps: with ps; [ ];
"config.config_entries" = ps: with ps; [ ];
"config.config_entries" = ps: with ps; [ voluptuous-serialize ];
"config.core" = ps: with ps; [ ];
"config.customize" = ps: with ps; [ ];
"config.entity_registry" = ps: with ps; [ ];

View File

@ -95,8 +95,8 @@ in with py.pkgs; buildPythonApplication rec {
propagatedBuildInputs = [
# From setup.py
requests pyyaml pytz pip jinja2 voluptuous typing aiohttp async-timeout astral certifi attrs
# From http, frontend and recorder components
sqlalchemy aiohttp-cors hass-frontend
# From http, frontend, recorder and config.config_entries components
sqlalchemy aiohttp-cors hass-frontend voluptuous-serialize
] ++ componentBuildInputs ++ extraBuildInputs;
checkInputs = [

View File

@ -0,0 +1,48 @@
{ stdenv, fetchgit, autoPatchelfHook, fetchzip, libunwind, libuuid, icu, curl, cacert,
makeWrapper, less, openssl }:
let platformString = if stdenv.isDarwin then "osx"
else if stdenv.isLinux then "linux"
else throw "unsupported platform";
platformSha = if stdenv.isDarwin then "1ga4p8xmrxa54v2s6i0q1q7lx2idcmp1jwm0g4jxr54fyn5ay3lf"
else if stdenv.isLinux then "000mmv5iblnmwydfdvg5izli3vpb6l14xy4qy3smcikpf0h87fhl"
else throw "unsupported platform";
platformLdLibraryPath = if stdenv.isDarwin then "DYLD_FALLBACK_LIBRARY_PATH"
else if stdenv.isLinux then "LD_LIBRARY_PATH"
else throw "unsupported platform";
in
stdenv.mkDerivation rec {
name = "powershell-${version}";
version = "6.0.2";
src = fetchzip {
url = "https://github.com/PowerShell/PowerShell/releases/download/v${version}/powershell-${version}-${platformString}-x64.tar.gz";
sha256 = platformSha;
stripRoot = false;
};
buildInputs = [ autoPatchelfHook makeWrapper ];
propagatedBuildInputs = [ libunwind libuuid icu curl cacert less openssl ];
# TODO: remove PAGER after upgrading to v6.1.0-preview.1 or later as it has been addressed in
# https://github.com/PowerShell/PowerShell/pull/6144
installPhase = ''
mkdir -p $out/bin
mkdir -p $out/share/powershell
cp -r * $out/share/powershell
rm $out/share/powershell/DELETE_ME_TO_DISABLE_CONSOLEHOST_TELEMETRY
makeWrapper $out/share/powershell/pwsh $out/bin/pwsh --prefix ${platformLdLibraryPath} : "${stdenv.lib.makeLibraryPath [ libunwind libuuid icu openssl curl ]}" \
--set PAGER ${less}/bin/less --set TERM xterm
'';
dontStrip = true;
meta = with stdenv.lib; {
description = "Cross-platform (Windows, Linux, and macOS) automation and configuration tool/framework";
homepage = https://github.com/PowerShell/PowerShell;
maintainers = [ maintainers.yrashk ];
platforms = platforms.unix;
license = with licenses; [ mit ];
};
}

View File

@ -1,8 +1,9 @@
{ stdenv }:
with stdenv.lib;
let
# Sanitizers are not supported on Darwin.
# Sanitizer headers aren't available in older libc++ stdenvs due to a bug
sanitizersBroken = stdenv.cc.isClang && builtins.compareVersions (getVersion stdenv.cc.name) "6.0.0" < 0;
sanitizersBroken = stdenv.isDarwin || stdenv.cc.isClang && builtins.compareVersions (getVersion stdenv.cc.name) "6.0.0" < 0;
in stdenv.mkDerivation {
name = "cc-wrapper-test";

View File

@ -1,6 +1,23 @@
{ stdenv, fetchFromGitHub, zfs, mbuffer, perl, perlPackages, wget, autoconf, automake }:
{ stdenv, fetchFromGitHub, fetchurl, zfs, mbuffer, perl, perlPackages, wget, autoconf, automake }:
let
# when upgrade znapzend, check versions of Perl libs here: https://github.com/oetiker/znapzend/blob/master/PERL_MODULES
Mojolicious-6-46 = perlPackages.buildPerlPackage rec {
name = "Mojolicious-6.46";
src = fetchurl {
url = "mirror://cpan/authors/id/S/SR/SRI/${name}.tar.gz";
sha256 = "0i3axmx4506fx5gms148pj65x6ys7flaz1aqjd8hd9zfkd8pzdfr";
};
};
MojoIOLoopForkCall-0-17 = perlPackages.buildPerlModule rec {
name = "Mojo-IOLoop-ForkCall-0.17";
src = fetchurl {
url = "mirror://cpan/authors/id/J/JB/JBERGER/${name}.tar.gz";
sha256 = "090qxz1nbah2qxvfg4whl6yp6q03qkx7a42751iai521nk1yavc8";
};
propagatedBuildInputs = [ perlPackages.IOPipely Mojolicious-6-46 ];
};
version = "0.18.0";
checksum = "1nlvw56viwgafma506slywfg54z6009jmzc9q6wljgr6mqfmmchd";
in
@ -14,9 +31,7 @@ stdenv.mkDerivation rec {
sha256 = checksum;
};
buildInputs = [ perl perlPackages.TestHarness perlPackages.Mojolicious
perlPackages.TAPParserSourceHandlerpgTAP perlPackages.MojoIOLoopForkCall
perlPackages.IOPipely wget ];
buildInputs = [ wget perl perlPackages.TestHarness MojoIOLoopForkCall-0-17 perlPackages.TAPParserSourceHandlerpgTAP ];
nativeBuildInputs = [ autoconf automake ];
@ -38,25 +53,25 @@ stdenv.mkDerivation rec {
substituteInPlace $out/bin/znapzend --replace "${perl}/bin/perl" \
"${perl}/bin/perl \
-I${perlPackages.TestHarness}/${perl.libPrefix} \
-I${perlPackages.Mojolicious}/${perl.libPrefix} \
-I${Mojolicious-6-46}/${perl.libPrefix} \
-I${perlPackages.TAPParserSourceHandlerpgTAP}/${perl.libPrefix} \
-I${perlPackages.MojoIOLoopForkCall}/${perl.libPrefix} \
-I${MojoIOLoopForkCall-0-17}/${perl.libPrefix} \
-I${perlPackages.IOPipely}/${perl.libPrefix} \
"
substituteInPlace $out/bin/znapzendzetup --replace "${perl}/bin/perl" \
"${perl}/bin/perl \
-I${perlPackages.TestHarness}/${perl.libPrefix} \
-I${perlPackages.Mojolicious}/${perl.libPrefix} \
-I${Mojolicious-6-46}/${perl.libPrefix} \
-I${perlPackages.TAPParserSourceHandlerpgTAP}/${perl.libPrefix} \
-I${perlPackages.MojoIOLoopForkCall}/${perl.libPrefix} \
-I${MojoIOLoopForkCall-0-17}/${perl.libPrefix} \
-I${perlPackages.IOPipely}/${perl.libPrefix} \
"
substituteInPlace $out/bin/znapzendztatz --replace "${perl}/bin/perl" \
"${perl}/bin/perl \
-I${perlPackages.TestHarness}/${perl.libPrefix} \
-I${perlPackages.Mojolicious}/${perl.libPrefix} \
-I${Mojolicious-6-46}/${perl.libPrefix} \
-I${perlPackages.TAPParserSourceHandlerpgTAP}/${perl.libPrefix} \
-I${perlPackages.MojoIOLoopForkCall}/${perl.libPrefix} \
-I${MojoIOLoopForkCall-0-17}/${perl.libPrefix} \
-I${perlPackages.IOPipely}/${perl.libPrefix} \
"
'';

View File

@ -20,11 +20,11 @@ let
withX = libX11 != null && !aquaterm && !stdenv.isDarwin;
in
stdenv.mkDerivation rec {
name = "gnuplot-5.2.3";
name = "gnuplot-5.2.4";
src = fetchurl {
url = "mirror://sourceforge/gnuplot/${name}.tar.gz";
sha256 = "0977vgjszjpqhz2jahq07zmcmi0k9d6v7wq70ph2klfrb29qrdgy";
sha256 = "1jvh8xmd2cvrhlsg88kxwh55wkwx31sg50v1n59slfippl0g058m";
};
nativeBuildInputs = [ makeWrapper pkgconfig texinfo ] ++ lib.optional withQt qttools;

View File

@ -0,0 +1,38 @@
{ stdenv, fetchFromGitHub, pythonPackages, imagemagick, exiftool, file, ghostscript }:
pythonPackages.buildPythonApplication rec {
pname = "pdf-redact-tools";
version = "0.1.2";
src = fetchFromGitHub {
owner = "firstlookmedia";
repo = pname;
rev = "v${version}";
sha256 = "01vs1bc0pfgk6x2m36vwra605fg59yc31d0hl9jmj86n8q6wwvss";
};
patchPhase = ''substituteInPlace pdf-redact-tools \
--replace \'convert\' \'${imagemagick}/bin/convert\' \
--replace \'exiftool\' \'${exiftool}/bin/exiftool\' \
--replace \'file\' \'${file}/bin/file\'
'';
propagatedBuildInputs = [ imagemagick exiftool ghostscript ];
meta = with stdenv.lib; {
description = "Redact and strip metadata from documents before publishing";
longDescription = ''
PDF Redact Tools helps with securely redacting and stripping metadata
from documents before publishing. Note that this is not a security tool.
It uses ImageMagick to parse PDFs. While ImageMagick is a versatile tool, it has
a history of several security bugs. A malicious PDF could exploit a bug in
ImageMagick to take over your computer. If you're working with potentially
malicious PDFs, it's safest to run them through PDF Redact Tools in an isolated
environment, such as a virtual machine, or by using a tool such as the Qubes
PDF Converter instead.
'';
platforms = platforms.all;
license = licenses.gpl3;
maintainers = with maintainers; [ leenaars ];
};
}

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl, libpng, pkgconfig }:
stdenv.mkDerivation rec {
name = "qrencode-4.0.0";
name = "qrencode-4.0.1";
src = fetchurl {
url = "${meta.homepage}/${name}.tar.bz2";
sha256 = "02vx69fl52jbcrmnydsaxcmy6nxqm9jyxzd7hr07s491d7hka069";
sha256 = "0j7cqhjc0l6i99lzph51gakmcmfs74x483plna93r4ngz328knph";
};
buildInputs = [ libpng ];

View File

@ -1,4 +1,4 @@
{ stdenv, rustPlatform, fetchFromGitHub, cmake, pkgconfig, zlib }:
{ stdenv, rustPlatform, fetchFromGitHub, cmake, pkgconfig, zlib, libiconv, darwin }:
rustPlatform.buildRustPackage rec {
name = "bat-${version}";
@ -15,11 +15,15 @@ rustPlatform.buildRustPackage rec {
nativeBuildInputs = [ cmake pkgconfig zlib ];
buildInputs = [ libiconv ] ++ stdenv.lib.optionals stdenv.isDarwin [
darwin.apple_sdk.frameworks.Security
];
meta = with stdenv.lib; {
description = "A cat(1) clone with syntax highlighting and Git integration";
homepage = https://github.com/sharkdp/bat;
license = with licenses; [ asl20 /* or */ mit ];
maintainers = with maintainers; [ dywedir ];
platforms = platforms.linux;
platforms = platforms.linux ++ platforms.darwin;
};
}

View File

@ -3,11 +3,11 @@
stdenv.mkDerivation rec {
name = "mc-${version}";
version = "4.8.20";
version = "4.8.21";
src = fetchurl {
url = "http://www.midnight-commander.org/downloads/${name}.tar.xz";
sha256 = "072h7n9b3j79fqn48xaw0xhlcjavpsmfpz6nyh20lhmfz3sffzh1";
sha256 = "130lzrcmazinznnnpf00lcizdlmjdhfiqfx00g1cjcbwmi3fadwg";
};
nativeBuildInputs = [ pkgconfig ];

View File

@ -0,0 +1,21 @@
{ stdenv, fetchzip }:
stdenv.mkDerivation rec {
name = "ctmg-${version}";
version = "1.2";
src = fetchzip {
url = "https://git.zx2c4.com/ctmg/snapshot/ctmg-${version}.tar.xz";
sha256 = "1i4v8sriwjrmj3yizbl1ysckb711yl9qsn9x45jq0ij1apsydhyc";
};
installPhase = "install -D ctmg.sh $out/bin/ctmg";
meta = with stdenv.lib; {
description = "An encrypted container manager for Linux using cryptsetup";
homepage = https://git.zx2c4.com/ctmg/about/;
license = licenses.isc;
maintainers = with maintainers; [ mrVanDalo ];
platforms = platforms.linux;
};
}

View File

@ -1358,6 +1358,8 @@ with pkgs;
meritous = callPackage ../games/meritous { };
opendune = callPackage ../games/opendune { };
meson = callPackage ../development/tools/build-managers/meson { };
metabase = callPackage ../servers/metabase { };
@ -2157,7 +2159,7 @@ with pkgs;
mcrcon = callPackage ../tools/networking/mcrcon {};
s-tar = callPackages ../tools/archivers/s-tar {};
s-tar = callPackage ../tools/archivers/s-tar {};
tealdeer = callPackage ../tools/misc/tealdeer { };
@ -2382,6 +2384,8 @@ with pkgs;
flvstreamer = callPackage ../tools/networking/flvstreamer { };
libbsd = callPackage ../development/libraries/libbsd { };
libbladeRF = callPackage ../development/libraries/libbladeRF { };
lp_solve = callPackage ../applications/science/math/lp_solve { };
@ -4160,9 +4164,7 @@ with pkgs;
opendht = callPackage ../development/libraries/opendht {};
opendkim = callPackage ../development/libraries/opendkim {
libbsd = libbsd-freedesktop;
};
opendkim = callPackage ../development/libraries/opendkim { };
opendylan = callPackage ../development/compilers/opendylan {
opendylan-bootstrap = opendylan_bin;
@ -4374,6 +4376,8 @@ with pkgs;
pdf2odt = callPackage ../tools/typesetting/pdf2odt { };
pdf-redact-tools = callPackage ../tools/graphics/pdfredacttools { };
pdf2svg = callPackage ../tools/graphics/pdf2svg { };
fmodex = callPackage ../games/zandronum/fmod.nix { };
@ -7816,6 +7820,8 @@ with pkgs;
ctodo = callPackage ../applications/misc/ctodo { };
ctmg = callPackage ../tools/security/ctmg { };
cmake_2_8 = callPackage ../development/tools/build-managers/cmake/2.8.nix { };
cmake = libsForQt5.callPackage ../development/tools/build-managers/cmake { };
@ -12958,7 +12964,6 @@ with pkgs;
samba4 = callPackage ../servers/samba/4.x.nix {
python = python2;
libbsd = libbsd-freedesktop;
};
sambaMaster = callPackage ../servers/samba/master.nix { };
@ -21525,13 +21530,11 @@ with pkgs;
fts = if hostPlatform.isMusl then netbsd.fts else null;
libbsd = netbsd.compat;
libbsd-freedesktop = callPackage ../development/libraries/libbsd {};
inherit (recurseIntoAttrs (callPackages ../os-specific/bsd { }))
netbsd;
yrd = callPackage ../tools/networking/yrd { };
powershell = callPackage ../shells/powershell { };
}

View File

@ -363,6 +363,8 @@ let
then callPackage ../development/ocaml-modules/lambda-term { }
else lambdaTerm-1_6;
linenoise = callPackage ../development/ocaml-modules/linenoise { };
llvm = callPackage ../development/ocaml-modules/llvm {
llvm = pkgs.llvm_39;
};

View File

@ -384,6 +384,10 @@ in {
callPackage = pkgs.callPackage;
};
pykdtree = callPackage ../development/python-modules/pykdtree {
inherit (pkgs.llvmPackages) openmp;
};
pyparser = callPackage ../development/python-modules/pyparser { };
pyqt4 = callPackage ../development/python-modules/pyqt/4.x.nix {
@ -12435,6 +12439,8 @@ in {
typing = callPackage ../development/python-modules/typing { };
typing-extensions = callPackage ../development/python-modules/typing-extensions { };
typeguard = callPackage ../development/python-modules/typeguard { };
ruamel_yaml = buildPythonPackage rec {
@ -18131,6 +18137,8 @@ EOF
voluptuous = callPackage ../development/python-modules/voluptuous { };
voluptuous-serialize = callPackage ../development/python-modules/voluptuous-serialize { };
pysigset = callPackage ../development/python-modules/pysigset { };
us = callPackage ../development/python-modules/us { };