···7 <warning>
8 <para>
9 The following section is a draft, and the policy for reviewing is still being discussed in issues such as <link
10- xlink:href="https://github.com/NixOS/nixpkgs/issues/11166">#11166 </link> and <link
11- xlink:href="https://github.com/NixOS/nixpkgs/issues/20836">#20836 </link>.
12 </para>
13 </warning>
14 <para>
···7 <warning>
8 <para>
9 The following section is a draft, and the policy for reviewing is still being discussed in issues such as <link
10+ xlink:href="https://github.com/NixOS/nixpkgs/issues/11166">#11166 </link> and <link
11+ xlink:href="https://github.com/NixOS/nixpkgs/issues/20836">#20836 </link>.
12 </para>
13 </warning>
14 <para>
+2-2
doc/languages-frameworks/dotnet.section.md
···6465The `dotnetCorePackages.sdk_X_Y` is preferred over the old dotnet-sdk as both major and minor version are very important for a dotnet environment. If a given minor version isn't present (or was changed), then this will likely break your ability to build a project.
6667-## dotnetCorePackages.sdk vs dotnetCorePackages.netcore vs dotnetCorePackages.aspnetcore
6869-The `dotnetCorePackages.sdk` contains both a runtime and the full sdk of a given version. The `netcore` and `aspnetcore` packages are meant to serve as minimal runtimes to deploy alongside already built applications.
7071## Packaging a Dotnet Application
72
···6465The `dotnetCorePackages.sdk_X_Y` is preferred over the old dotnet-sdk as both major and minor version are very important for a dotnet environment. If a given minor version isn't present (or was changed), then this will likely break your ability to build a project.
6667+## dotnetCorePackages.sdk vs vs dotnetCorePackages.net vs dotnetCorePackages.netcore vs dotnetCorePackages.aspnetcore
6869+The `dotnetCorePackages.sdk` contains both a runtime and the full sdk of a given version. The `net`, `netcore` and `aspnetcore` packages are meant to serve as minimal runtimes to deploy alongside already built applications. For runtime versions >= .NET 5 `net` is used while `netcore` is used for older .NET Core runtime version.
7071## Packaging a Dotnet Application
72
+1-2
doc/stdenv/meta.xml
···189 </term>
190 <listitem>
191 <para>
192- A list of names and e-mail addresses of the maintainers of this Nix expression. If you would like to be a maintainer of a package, you may want to add yourself to <link
193- xlink:href="https://github.com/NixOS/nixpkgs/blob/master/maintainers/maintainer-list.nix"><filename>nixpkgs/maintainers/maintainer-list.nix</filename></link>. There is no restriction to becoming a maintainer, just add each new maintainer to that list in a separate commit titled 'maintainers: add alice', and reference maintainers with <literal>maintainers = with lib.maintainers; [ alice bob ]</literal>.
194 </para>
195 </listitem>
196 </varlistentry>
···189 </term>
190 <listitem>
191 <para>
192+ A list of the maintainers of this Nix expression. Maintainers are defined in <link xlink:href="https://github.com/NixOS/nixpkgs/blob/master/maintainers/maintainer-list.nix"><filename>nixpkgs/maintainers/maintainer-list.nix</filename></link>. There is no restriction to becoming a maintainer, just add yourself to that list in a separate commit titled 'maintainers: add alice', and reference maintainers with <literal>maintainers = with lib.maintainers; [ alice bob ]</literal>.
0193 </para>
194 </listitem>
195 </varlistentry>
···65 <title>AMD</title>
6667 <para>
68- Modern AMD <link
69- xlink:href="https://en.wikipedia.org/wiki/Graphics_Core_Next">Graphics
70- Core Next</link> (GCN) GPUs are supported through the
71- <package>rocm-opencl-icd</package> package. Adding this package to
72- <xref linkend="opt-hardware.opengl.extraPackages"/> enables OpenCL
73- support:
7475- <programlisting><xref linkend="opt-hardware.opengl.extraPackages"/> = [
76- rocm-opencl-icd
77-];</programlisting>
78 </para>
79 </section>
80···100 support. For example, for Gen8 and later GPUs, the following
101 configuration can be used:
102103- <programlisting><xref linkend="opt-hardware.opengl.extraPackages"/> = [
104- intel-compute-runtime
105-];</programlisting>
106107 </para>
108 </section>
···173 <title>AMD</title>
174175 <para>
176- Modern AMD <link
177- xlink:href="https://en.wikipedia.org/wiki/Graphics_Core_Next">Graphics
178- Core Next</link> (GCN) GPUs are supported through either radv, which is
179- part of <package>mesa</package>, or the <package>amdvlk</package> package.
180- Adding the <package>amdvlk</package> package to
181- <xref linkend="opt-hardware.opengl.extraPackages"/> makes both drivers
182- available for applications and lets them choose. A specific driver can
183- be forced as follows:
184185- <programlisting><xref linkend="opt-hardware.opengl.extraPackages"/> = [
186- pkgs.<package>amdvlk</package>
187-];
188189-# To enable Vulkan support for 32-bit applications, also add:
190-<xref linkend="opt-hardware.opengl.extraPackages32"/> = [
191- pkgs.driversi686Linux.<package>amdvlk</package>
192-];
193194-# For amdvlk
195-<xref linkend="opt-environment.variables"/>.VK_ICD_FILENAMES =
196- "/run/opengl-driver/share/vulkan/icd.d/amd_icd64.json";
197-# For radv
198-<xref linkend="opt-environment.variables"/>.VK_ICD_FILENAMES =
199- "/run/opengl-driver/share/vulkan/icd.d/radeon_icd.x86_64.json";
200-</programlisting>
201 </para>
202 </section>
203 </section>
···65 <title>AMD</title>
6667 <para>
68+ Modern AMD <link
69+ xlink:href="https://en.wikipedia.org/wiki/Graphics_Core_Next">Graphics
70+ Core Next</link> (GCN) GPUs are supported through the
71+ <package>rocm-opencl-icd</package> package. Adding this package to
72+ <xref linkend="opt-hardware.opengl.extraPackages"/> enables OpenCL
73+ support:
7475+ <programlisting><xref linkend="opt-hardware.opengl.extraPackages"/> = [
76+ rocm-opencl-icd
77+ ];</programlisting>
78 </para>
79 </section>
80···100 support. For example, for Gen8 and later GPUs, the following
101 configuration can be used:
102103+ <programlisting><xref linkend="opt-hardware.opengl.extraPackages"/> = [
104+ intel-compute-runtime
105+ ];</programlisting>
106107 </para>
108 </section>
···173 <title>AMD</title>
174175 <para>
176+ Modern AMD <link
177+ xlink:href="https://en.wikipedia.org/wiki/Graphics_Core_Next">Graphics
178+ Core Next</link> (GCN) GPUs are supported through either radv, which is
179+ part of <package>mesa</package>, or the <package>amdvlk</package> package.
180+ Adding the <package>amdvlk</package> package to
181+ <xref linkend="opt-hardware.opengl.extraPackages"/> makes both drivers
182+ available for applications and lets them choose. A specific driver can
183+ be forced as follows:
184185+ <programlisting><xref linkend="opt-hardware.opengl.extraPackages"/> = [
186+ pkgs.<package>amdvlk</package>
187+ ];
188189+ # To enable Vulkan support for 32-bit applications, also add:
190+ <xref linkend="opt-hardware.opengl.extraPackages32"/> = [
191+ pkgs.driversi686Linux.<package>amdvlk</package>
192+ ];
193194+ # For amdvlk
195+ <xref linkend="opt-environment.variables"/>.VK_ICD_FILENAMES =
196+ "/run/opengl-driver/share/vulkan/icd.d/amd_icd64.json";
197+ # For radv
198+ <xref linkend="opt-environment.variables"/>.VK_ICD_FILENAMES =
199+ "/run/opengl-driver/share/vulkan/icd.d/radeon_icd.x86_64.json";
200+ </programlisting>
201 </para>
202 </section>
203 </section>
+1-1
nixos/doc/manual/contributing-to-this-manual.xml
···12 You can quickly check your edits with the following:
13 </para>
14<screen>
15-<prompt>$ </prompt>cd /path/to/nixpkgs/nixos/doc/manual
16<prompt>$ </prompt>nix-build nixos/release.nix -A manual.x86_64-linux
17</screen>
18 <para>
···12 You can quickly check your edits with the following:
13 </para>
14<screen>
15+<prompt>$ </prompt>cd /path/to/nixpkgs
16<prompt>$ </prompt>nix-build nixos/release.nix -A manual.x86_64-linux
17</screen>
18 <para>
···161 existing systems without the help of a rescue USB drive or similar.
162 </para>
163 </warning>
0000000164<screen><prompt>$ </prompt>sudo PATH="$PATH" NIX_PATH="$NIX_PATH" `which nixos-install` --root /mnt</screen>
165 <para>
166 Again, please refer to the <literal>nixos-install</literal> step in
···161 existing systems without the help of a rescue USB drive or similar.
162 </para>
163 </warning>
164+ <note>
165+ <para>
166+ On some distributions there are separate PATHS for programs intended only for root.
167+ In order for the installation to succeed, you might have to use <literal>PATH="$PATH:/usr/sbin:/sbin"</literal>
168+ in the following command.
169+ </para>
170+ </note>
171<screen><prompt>$ </prompt>sudo PATH="$PATH" NIX_PATH="$NIX_PATH" `which nixos-install` --root /mnt</screen>
172 <para>
173 Again, please refer to the <literal>nixos-install</literal> step in
+35-25
nixos/doc/manual/release-notes/rl-2009.xml
···234 </listitem>
235 </itemizedlist>
236 </listitem>
237-0000000000238 </itemizedlist>
239 </section>
240···1593 <para>
1594 Agda has been heavily reworked.
1595 <itemizedlist>
1596- <listitem>
1597- <para>
1598- <literal>agda.mkDerivation</literal> has been heavily changed and
1599- is now located at <package>agdaPackages.mkDerivation</package>.
1600- </para>
1601- </listitem>
1602- <listitem>
1603- <para>
1604- New top-level packages <package>agda</package> and
1605- <literal>agda.withPackages</literal> have been added, the second
1606- of which sets up agda with access to chosen libraries.
1607- </para>
1608- </listitem>
1609- <listitem>
1610- <para>
1611- All agda libraries now live under
1612- <literal>agdaPackages</literal>.
1613- </para>
1614- </listitem>
1615- <listitem>
1616- <para>
1617- Many broken libraries have been removed.
1618- </para>
1619- </listitem>
1620 </itemizedlist>
1621 See the <link
1622 xlink:href="https://nixos.org/nixpkgs/manual/#agda">new
···234 </listitem>
235 </itemizedlist>
236 </listitem>
237+ <listitem>
238+ <para>
239+ Starting with this release, the hydra-build-result
240+ <literal>nixos-<replaceable>YY.MM</replaceable></literal>
241+ branches no longer exist in the <link
242+ xlink:href="https://github.com/nixos/nixpkgs-channels">deprecated
243+ nixpkgs-channels repository</link>. These branches are now in
244+ <link xlink:href="https://github.com/nixos/nixpkgs">the main nixpkgs
245+ repository</link>.
246+ </para>
247+ </listitem>
248 </itemizedlist>
249 </section>
250···1603 <para>
1604 Agda has been heavily reworked.
1605 <itemizedlist>
1606+ <listitem>
1607+ <para>
1608+ <literal>agda.mkDerivation</literal> has been heavily changed and
1609+ is now located at <package>agdaPackages.mkDerivation</package>.
1610+ </para>
1611+ </listitem>
1612+ <listitem>
1613+ <para>
1614+ New top-level packages <package>agda</package> and
1615+ <literal>agda.withPackages</literal> have been added, the second
1616+ of which sets up agda with access to chosen libraries.
1617+ </para>
1618+ </listitem>
1619+ <listitem>
1620+ <para>
1621+ All agda libraries now live under
1622+ <literal>agdaPackages</literal>.
1623+ </para>
1624+ </listitem>
1625+ <listitem>
1626+ <para>
1627+ Many broken libraries have been removed.
1628+ </para>
1629+ </listitem>
1630 </itemizedlist>
1631 See the <link
1632 xlink:href="https://nixos.org/nixpkgs/manual/#agda">new
+9
nixos/doc/manual/release-notes/rl-2103.xml
···163 <literal>vim</literal> switched to Python 3, dropping all Python 2 support.
164 </para>
165 </listitem>
000000000166 </itemizedlist>
167 </section>
168
···163 <literal>vim</literal> switched to Python 3, dropping all Python 2 support.
164 </para>
165 </listitem>
166+ <listitem>
167+ <para>
168+ <link linkend="opt-boot.zfs.forceImportAll">boot.zfs.forceImportAll</link>
169+ previously did nothing, but has been fixed. However its default has been
170+ changed to <literal>false</literal> to preserve the existing default
171+ behaviour. If you have this explicitly set to <literal>true</literal>,
172+ please note that your non-root pools will now be forcibly imported.
173+ </para>
174+ </listitem>
175 </itemizedlist>
176 </section>
177
+37-37
nixos/doc/varlistentry-fixer.rb
···15include REXML
1617if ARGV.length < 1 then
18- $stderr.puts "Needs a filename."
19- exit 1
20end
2122filename = ARGV.shift
···51# Generates: --optionnamevalue
52# ^^ ^^
53doc.elements.each("//varlistentry/term") do |term|
54- ["varname", "function", "option", "replaceable"].each do |prev_name|
55- term.elements.each(prev_name) do |el|
56- if el.next_element and
57- el.next_element.name == "replaceable" and
58- el.next_sibling_node.class == Element
59- then
60- $touched = true
61- term.insert_after(el, Text.new(" "))
62- end
63- end
64- end
65end
6667···75# Generates: -Ipath
76# ^^
77doc.elements.each("//cmdsynopsis/arg") do |term|
78- ["option", "replaceable"].each do |prev_name|
79- term.elements.each(prev_name) do |el|
80- if el.next_element and
81- el.next_element.name == "replaceable" and
82- el.next_sibling_node.class == Element
83- then
84- $touched = true
85- term.insert_after(el, Text.new(" "))
86- end
87- end
88- end
89end
9091# <cmdsynopsis>
···104# Generates: [{--profile-name | -p }name]
105# ^^^^
106doc.elements.each("//cmdsynopsis/arg") do |term|
107- ["group"].each do |prev_name|
108- term.elements.each(prev_name) do |el|
109- if el.next_element and
110- el.next_element.name == "replaceable" and
111- el.next_sibling_node.class == Element
112- then
113- $touched = true
114- term.insert_after(el, Text.new(" "))
115- end
116- end
117- end
118end
119120121if $touched then
122- doc.context[:attribute_quote] = :quote
123- doc.write(output: File.open(filename, "w"))
124end
···15include REXML
1617if ARGV.length < 1 then
18+ $stderr.puts "Needs a filename."
19+ exit 1
20end
2122filename = ARGV.shift
···51# Generates: --optionnamevalue
52# ^^ ^^
53doc.elements.each("//varlistentry/term") do |term|
54+ ["varname", "function", "option", "replaceable"].each do |prev_name|
55+ term.elements.each(prev_name) do |el|
56+ if el.next_element and
57+ el.next_element.name == "replaceable" and
58+ el.next_sibling_node.class == Element
59+ then
60+ $touched = true
61+ term.insert_after(el, Text.new(" "))
62+ end
63+ end
64+ end
65end
6667···75# Generates: -Ipath
76# ^^
77doc.elements.each("//cmdsynopsis/arg") do |term|
78+ ["option", "replaceable"].each do |prev_name|
79+ term.elements.each(prev_name) do |el|
80+ if el.next_element and
81+ el.next_element.name == "replaceable" and
82+ el.next_sibling_node.class == Element
83+ then
84+ $touched = true
85+ term.insert_after(el, Text.new(" "))
86+ end
87+ end
88+ end
89end
9091# <cmdsynopsis>
···104# Generates: [{--profile-name | -p }name]
105# ^^^^
106doc.elements.each("//cmdsynopsis/arg") do |term|
107+ ["group"].each do |prev_name|
108+ term.elements.each(prev_name) do |el|
109+ if el.next_element and
110+ el.next_element.name == "replaceable" and
111+ el.next_sibling_node.class == Element
112+ then
113+ $touched = true
114+ term.insert_after(el, Text.new(" "))
115+ end
116+ end
117+ end
118end
119120121if $touched then
122+ doc.context[:attribute_quote] = :quote
123+ doc.write(output: File.open(filename, "w"))
124end
···175176 forceImportAll = mkOption {
177 type = types.bool;
178- default = true;
179 description = ''
180 Forcibly import all ZFS pool(s).
181-182- This is enabled by default for backwards compatibility purposes, but it is highly
183- recommended to disable this option, as it bypasses some of the safeguards ZFS uses
184- to protect your ZFS pools.
185186 If you set this option to <literal>false</literal> and NixOS subsequently fails to
187 import your non-root ZFS pool(s), you should manually import each pool with
···507 Type = "oneshot";
508 RemainAfterExit = true;
509 };
0510 script = (importLib {
511 # See comments at importLib definition.
512 zpoolCmd="${packages.zfsUser}/sbin/zpool";
···175176 forceImportAll = mkOption {
177 type = types.bool;
178+ default = false;
179 description = ''
180 Forcibly import all ZFS pool(s).
0000181182 If you set this option to <literal>false</literal> and NixOS subsequently fails to
183 import your non-root ZFS pool(s), you should manually import each pool with
···503 Type = "oneshot";
504 RemainAfterExit = true;
505 };
506+ environment.ZFS_FORCE = optionalString cfgZfs.forceImportAll "-f";
507 script = (importLib {
508 # See comments at importLib definition.
509 zpoolCmd="${packages.zfsUser}/sbin/zpool";
···163 # The declarations for `gimp-with-plugins` wrapper,
164 # used for determining plug-in installation paths
165 majorVersion = "${lib.versions.major version}.0";
166- targetPluginDir = "lib/gimp/${majorVersion}/plug-ins";
167- targetScriptDir = "share/gimp/${majorVersion}/scripts";
00168169 # probably its a good idea to use the same gtk in plugins ?
170 gtk = gtk2;
···163 # The declarations for `gimp-with-plugins` wrapper,
164 # used for determining plug-in installation paths
165 majorVersion = "${lib.versions.major version}.0";
166+ targetLibDir = "lib/gimp/${majorVersion}";
167+ targetDataDir = "share/gimp/${majorVersion}";
168+ targetPluginDir = "${targetLibDir}/plug-ins";
169+ targetScriptDir = "${targetDataDir}/scripts";
170171 # probably its a good idea to use the same gtk in plugins ?
172 gtk = gtk2;
···344 patchelf --set-rpath "${libGL}/lib:$origRpath" "$chromiumBinary"
345 '';
346347- passthru.updateScript = ./update.py;
00000348 };
349350# Remove some extraAttrs we supplied to the base attributes already.
···344 patchelf --set-rpath "${libGL}/lib:$origRpath" "$chromiumBinary"
345 '';
346347+ passthru = {
348+ updateScript = ./update.py;
349+ chromiumDeps = {
350+ gn = gnChromium;
351+ };
352+ };
353 };
354355# Remove some extraAttrs we supplied to the base attributes already.
···1+{ stdenv, python38Packages, fetchPypi
2+, fftw, alsaLib, pulseaudio, wxPython_4_0 }:
3+4+python38Packages.buildPythonApplication rec {
5+ pname = "quisk";
6+ version = "4.1.72";
7+8+ src = fetchPypi {
9+ inherit pname version;
10+ sha256 = "0qw00b9d0l3ysdrmd3nr5a2zlwg9ygdil7krnk2gjp5g8bb778k7";
11+ };
12+13+ buildInputs = [ fftw alsaLib pulseaudio ];
14+15+ propagatedBuildInputs = [ wxPython_4_0 ];
16+17+ doCheck = false;
18+19+ meta = with stdenv.lib; {
20+ description = "A SDR transceiver for radios that use the Hermes protocol";
21+ longDescription = ''
22+ QUISK is a Software Defined Radio (SDR) transceiver. You supply radio
23+ hardware that converts signals at the antenna to complex (I/Q) data at an
24+ intermediate frequency (IF). Data can come from a sound card, Ethernet or
25+ USB. Quisk then filters and demodulates the data and sends the audio to
26+ your speakers or headphones. For transmit, Quisk takes the microphone
27+ signal, converts it to I/Q data and sends it to the hardware.
28+29+ Quisk can be used with SoftRock, Hermes Lite 2, HiQSDR, Odyssey and many
30+ radios that use the Hermes protocol. Quisk can connect to digital
31+ programs like Fldigi and WSJT-X. Quisk can be connected to other software
32+ like N1MM+ and software that uses Hamlib.
33+ '';
34+ license = licenses.gpl2Plus;
35+ homepage = "https://james.ahlstrom.name/quisk/";
36+ maintainers = with maintainers; [ pulsation ];
37+ platforms = platforms.linux;
38+ };
39+}
···23stdenv.mkDerivation rec {
4 pname = "gnome-shell-extension-material-shell";
5- version = "9";
67 src = fetchFromGitHub {
8 owner = "material-shell";
9 repo = "material-shell";
10 rev = version;
11- sha256 = "154ids72hkkvibqpq3522wf6h9qw7zkjnf8dgz50vxbkiiy015xn";
12 };
1314 # This package has a Makefile, but it's used for building a zip for
···23stdenv.mkDerivation rec {
4 pname = "gnome-shell-extension-material-shell";
5+ version = "10";
67 src = fetchFromGitHub {
8 owner = "material-shell";
9 repo = "material-shell";
10 rev = version;
11+ sha256 = "18d813n8s7ns8xp75zmlna7a8mi23rn9yqps51xvdd0sdgn72a1c";
12 };
1314 # This package has a Makefile, but it's used for building a zip for
···14, zlib
15}:
160000000000000000017stdenv.mkDerivation rec {
18 pname = "yosys";
19- version = "2020.10.20";
2021 src = fetchFromGitHub {
22 owner = "YosysHQ";
23 repo = "yosys";
24- rev = "06347b119b08257eff37cdd10ed802e794c1a3cf";
25- sha256 = "07058r8095192gwkiy2yyvj9vxv09fcw9bqi2b39wn85lh5kx2k2";
26 };
2728 enableParallelBuilding = true;
···55 (cd misc && ${protobuf}/bin/protoc --cpp_out ../backends/protobuf/ ./yosys.proto)
5657 if ! grep -q "ABCREV = ${shortAbcRev}" Makefile; then
58- echo "yosys isn't compatible with the provided abc (${shortAbcRev}), failing."
0000059 exit 1
60 fi
61 '';
62063 doCheck = true;
64 checkInputs = [ verilog ];
65···68 # they just assume that 'yosys-abc' is available -- but it's not installed
69 # when using ABCEXTERNAL
70 #
71- # add a symlink to fake things so that both variants work the same way.
72- postInstall = ''
73- ln -sfv ${abc-verifier}/bin/abc $out/bin/yosys-abc
74- '';
7576 meta = with stdenv.lib; {
77 description = "Open RTL synthesis framework and tools";
···14, zlib
15}:
1617+# NOTE: as of late 2020, yosys has switched to an automation robot that
18+# automatically tags their repository Makefile with a new build number every
19+# day when changes are committed. please MAKE SURE that the version number in
20+# the 'version' field exactly matches the YOSYS_VER field in the Yosys
21+# makefile!
22+#
23+# if a change in yosys isn't yet available under a build number like this (i.e.
24+# it was very recently merged, within an hour), wait a few hours for the
25+# automation robot to tag the new version, like so:
26+#
27+# https://github.com/YosysHQ/yosys/commit/71ca9a825309635511b64b3ec40e5e5e9b6ad49b
28+#
29+# note that while most nix packages for "unstable versions" use a date-based
30+# version scheme, synchronizing the nix package version here with the unstable
31+# yosys version number helps users report better bugs upstream, and is
32+# ultimately less confusing than using dates.
33+34stdenv.mkDerivation rec {
35 pname = "yosys";
36+ version = "0.9+3675";
3738 src = fetchFromGitHub {
39 owner = "YosysHQ";
40 repo = "yosys";
41+ rev = "71ca9a825309635511b64b3ec40e5e5e9b6ad49b";
42+ sha256 = "03jlhfvm5rxx8yybf94nqd3ld2y6brp8r0k6gfi56chv3iqqavy3";
43 };
4445 enableParallelBuilding = true;
···72 (cd misc && ${protobuf}/bin/protoc --cpp_out ../backends/protobuf/ ./yosys.proto)
7374 if ! grep -q "ABCREV = ${shortAbcRev}" Makefile; then
75+ echo "ERROR: yosys isn't compatible with the provided abc (${shortAbcRev}), failing."
76+ exit 1
77+ fi
78+79+ if ! grep -q "YOSYS_VER := ${version}" Makefile; then
80+ echo "ERROR: yosys version in Makefile isn't equivalent to version of the nix package (${version}), failing."
81 exit 1
82 fi
83 '';
8485+ checkTarget = "test";
86 doCheck = true;
87 checkInputs = [ verilog ];
88···91 # they just assume that 'yosys-abc' is available -- but it's not installed
92 # when using ABCEXTERNAL
93 #
94+ # add a symlink to fake things so that both variants work the same way. this
95+ # is also needed at build time for the test suite.
96+ postBuild = "ln -sfv ${abc-verifier}/bin/abc ./yosys-abc";
97+ postInstall = "ln -sfv ${abc-verifier}/bin/abc $out/bin/yosys-abc";
9899 meta = with stdenv.lib; {
100 description = "Open RTL synthesis framework and tools";
···1-From 597e73f2a4b2f0b508127931b36d5540d6941823 Mon Sep 17 00:00:00 2001
2-From: Frederik Rietdijk <fridh@fridh.nl>
3-Date: Mon, 28 Aug 2017 09:24:06 +0200
4-Subject: [PATCH] Don't use ldconfig
56---
7- Lib/ctypes/util.py | 70 ++----------------------------------------------------
8- 1 file changed, 2 insertions(+), 68 deletions(-)
910diff --git a/Lib/ctypes/util.py b/Lib/ctypes/util.py
11-index 5e8b31a854..7b45ce6c15 100644
12--- a/Lib/ctypes/util.py
13+++ b/Lib/ctypes/util.py
14-@@ -94,46 +94,7 @@ elif os.name == "posix":
15- import re, tempfile
1617 def _findLib_gcc(name):
18- # Run GCC's linker with the -t (aka --trace) option and examine the
···51- # Raised if the file was already removed, which is the normal
52- # behaviour of GCC if linking fails
53- pass
54-- res = re.search(expr, trace)
55- if not res:
56- return None
57-- return os.fsdecode(res.group(0))
000000058+ return None
596061 if sys.platform == "sunos5":
62-@@ -255,34 +216,7 @@ elif os.name == "posix":
63 else:
6465 def _findSoname_ldconfig(name):
···96 def _findLib_ld(name):
97 # See issue #9998 for why this is needed
98--
99-2.15.0
100
···1+From 084c6dd6352077e64f10cf7aa168f95d800f3819 Mon Sep 17 00:00:00 2001
2+From: Jonathan Ringer <jonringer117@gmail.com>
3+Date: Mon, 9 Nov 2020 10:24:35 -0800
4+Subject: [PATCH] CPython: Don't use ldconfig
56---
7+ Lib/ctypes/util.py | 77 ++--------------------------------------------
8+ 1 file changed, 2 insertions(+), 75 deletions(-)
910diff --git a/Lib/ctypes/util.py b/Lib/ctypes/util.py
11+index 0c2510e..7fb98af 100644
12--- a/Lib/ctypes/util.py
13+++ b/Lib/ctypes/util.py
14+@@ -100,53 +100,7 @@ elif os.name == "posix":
15+ return thefile.read(4) == elf_header
1617 def _findLib_gcc(name):
18- # Run GCC's linker with the -t (aka --trace) option and examine the
···51- # Raised if the file was already removed, which is the normal
52- # behaviour of GCC if linking fails
53- pass
54+- res = re.findall(expr, trace)
55- if not res:
56- return None
57+-
58+- for file in res:
59+- # Check if the given file is an elf file: gcc can report
60+- # some files that are linker scripts and not actual
61+- # shared objects. See bpo-41976 for more details
62+- if not _is_elf(file):
63+- continue
64+- return os.fsdecode(file)
65+ return None
666768 if sys.platform == "sunos5":
69+@@ -268,34 +222,7 @@ elif os.name == "posix":
70 else:
7172 def _findSoname_ldconfig(name):
···103 def _findLib_ld(name):
104 # See issue #9998 for why this is needed
105--
106+2.28.0
107
···23stdenv.mkDerivation rec {
4 pname = "soundtouch";
5- version = "2.1.2";
67 src = fetchFromGitLab {
8 owner = pname;
9 repo = pname;
10 rev = version;
11- sha256 = "174wgm3s0inmbnkrlnspxjwm2014qhjhkbdqa5r8rbfi0nzqxzsz";
12 };
1314 nativeBuildInputs = [ autoconf automake libtool ];
1516 preConfigure = "./bootstrap";
001718 meta = with lib; {
19 description = "A program and library for changing the tempo, pitch and playback rate of audio";
20- homepage = "http://www.surina.net/soundtouch/";
21- license = licenses.lgpl21;
22 platforms = platforms.all;
023 };
24}
···23stdenv.mkDerivation rec {
4 pname = "soundtouch";
5+ version = "2.2";
67 src = fetchFromGitLab {
8 owner = pname;
9 repo = pname;
10 rev = version;
11+ sha256 = "12i6yg8vvqwyk412lxl2krbfby6hnxld8qxy0k4m5xp4g94jiq4p";
12 };
1314 nativeBuildInputs = [ autoconf automake libtool ];
1516 preConfigure = "./bootstrap";
17+18+ enableParallelBuilding = true;
1920 meta = with lib; {
21 description = "A program and library for changing the tempo, pitch and playback rate of audio";
22+ homepage = "https://www.surina.net/soundtouch/";
23+ license = licenses.lgpl21Plus;
24 platforms = platforms.all;
25+ maintainers = with maintainers; [ orivej ];
26 };
27}
+2-2
pkgs/development/libraries/tiledb/default.nix
···2122stdenv.mkDerivation rec {
23 pname = "tiledb";
24- version = "2.0.7";
2526 src = fetchFromGitHub {
27 owner = "TileDB-Inc";
28 repo = "TileDB";
29 rev = version;
30- sha256 = "00g8ibsbnl4wjfx3qg4qy6s7z6dsj898j0yqfhw1gjr1pb5dsapb";
31 };
3233 # (bundled) blosc headers have a warning on some archs that it will be using
···2122stdenv.mkDerivation rec {
23 pname = "tiledb";
24+ version = "2.1.2";
2526 src = fetchFromGitHub {
27 owner = "TileDB-Inc";
28 repo = "TileDB";
29 rev = version;
30+ sha256 = "12f3jvb9b6ji5w2n2k3sjn156ikaf06mriwbqlc54ii1zznaw43r";
31 };
3233 # (bundled) blosc headers have a warning on some archs that it will be using
···5let
6 # NOTE: bumping the version and updating the hash is insufficient;
7 # you must use bundix to generate a new gemset.nix in the Vagrant source.
8- version = "2.2.11";
9 url = "https://github.com/hashicorp/vagrant/archive/v${version}.tar.gz";
10- sha256 = "sha256-KDQDEMebqQYgsBroHmQrm/OJWTES9C9eGl0dDHTBpIc=";
1112 deps = bundlerEnv rec {
13 name = "${pname}-${version}";
···5let
6 # NOTE: bumping the version and updating the hash is insufficient;
7 # you must use bundix to generate a new gemset.nix in the Vagrant source.
8+ version = "2.2.13";
9 url = "https://github.com/hashicorp/vagrant/archive/v${version}.tar.gz";
10+ sha256 = "sha256-NN+8t08yycINbtxOjhOWU96nJ0fZKDAopEr3WyAeG8U=";
1112 deps = bundlerEnv rec {
13 name = "${pname}-${version}";
···203 # incompatibleKernelVersion = "4.19";
204205 # this package should point to a version / git revision compatible with the latest kernel release
206- version = "2.0.0-rc5";
207208- sha256 = "0vnldx95c36yy18v1hfr8r4cmmh3hw4n6pwz30drkwgywakjwnsd";
209 isUnstable = true;
210 };
211}
···203 # incompatibleKernelVersion = "4.19";
204205 # this package should point to a version / git revision compatible with the latest kernel release
206+ version = "2.0.0-rc6";
207208+ sha256 = "0p027x9hsawniwa9h3yayfbcx010anwcfy45rqgkg2r91zr2nfvw";
209 isUnstable = true;
210 };
211}
···1+diff --git a/meson.build b/meson.build
2+index 45df103f0..d57d13172 100644
3+--- a/meson.build
4++++ b/meson.build
5+@@ -342,7 +342,7 @@ cdata.set('MESON_BUILD', 1)
6+ # On ELF systems we don't want the libraries to be unloaded since we don't clean them up properly,
7+ # so we request the nodelete flag to be enabled.
8+ # On other systems, we don't really know how to do that, but it's welcome if somebody can tell.
9+-nodelete_link_args = ['-Wl,-z,nodelete']
10++nodelete_link_args = cc.get_supported_link_arguments(['-Wl,-z,nodelete'])
11+12+ # Code coverage
13+
+4
pkgs/servers/pulseaudio/default.nix
···124 --prefix GIO_EXTRA_MODULES : "${lib.getLib dconf}/lib/gio/modules"
125 '';
1260000127 meta = {
128 description = "Sound server for POSIX and Win32 systems";
129 homepage = "http://www.pulseaudio.org/";
···124 --prefix GIO_EXTRA_MODULES : "${lib.getLib dconf}/lib/gio/modules"
125 '';
126127+ passthru = {
128+ pulseDir = "lib/pulse-" + lib.versions.majorMinor version;
129+ };
130+131 meta = {
132 description = "Sound server for POSIX and Win32 systems";
133 homepage = "http://www.pulseaudio.org/";