Merge master into staging-next

This commit is contained in:
Frederik Rietdijk 2020-11-13 20:58:35 +01:00
commit 463f738cc6
251 changed files with 2203 additions and 1359 deletions

View file

@ -7,8 +7,8 @@
<warning> <warning>
<para> <para>
The following section is a draft, and the policy for reviewing is still being discussed in issues such as <link The following section is a draft, and the policy for reviewing is still being discussed in issues such as <link
xlink:href="https://github.com/NixOS/nixpkgs/issues/11166">#11166 </link> and <link xlink:href="https://github.com/NixOS/nixpkgs/issues/11166">#11166 </link> and <link
xlink:href="https://github.com/NixOS/nixpkgs/issues/20836">#20836 </link>. xlink:href="https://github.com/NixOS/nixpkgs/issues/20836">#20836 </link>.
</para> </para>
</warning> </warning>
<para> <para>

View file

@ -64,9 +64,9 @@ $ dotnet --info
The `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. The `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.
## dotnetCorePackages.sdk vs dotnetCorePackages.netcore vs dotnetCorePackages.aspnetcore ## dotnetCorePackages.sdk vs vs dotnetCorePackages.net vs dotnetCorePackages.netcore vs dotnetCorePackages.aspnetcore
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. 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.
## Packaging a Dotnet Application ## Packaging a Dotnet Application

View file

@ -189,8 +189,7 @@ hello-2.3 A program that produces a familiar, friendly greeting
</term> </term>
<listitem> <listitem>
<para> <para>
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 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>.
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>.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>

View file

@ -2023,6 +2023,16 @@
githubId = 49904992; githubId = 49904992;
name = "Dawid Sowa"; name = "Dawid Sowa";
}; };
dbirks = {
email = "david@birks.dev";
github = "dbirks";
githubId = 7545665;
name = "David Birks";
keys = [{
longkeyid = "ed25519/0xBB999F83D9A19A36";
fingerprint = "B26F 9AD8 DA20 3392 EF87 C61A BB99 9F83 D9A1 9A36";
}];
};
dbohdan = { dbohdan = {
email = "dbohdan@dbohdan.com"; email = "dbohdan@dbohdan.com";
github = "dbohdan"; github = "dbohdan";
@ -3883,6 +3893,8 @@
}; };
jcumming = { jcumming = {
email = "jack@mudshark.org"; email = "jack@mudshark.org";
github = "jcumming";
githubId = 1982341;
name = "Jack Cummings"; name = "Jack Cummings";
}; };
jD91mZM2 = { jD91mZM2 = {
@ -9970,4 +9982,10 @@
githubId = 19290397; githubId = 19290397;
name = "Tunc Uzlu"; name = "Tunc Uzlu";
}; };
pulsation = {
name = "Philippe Sam-Long";
email = "1838397+pulsation@users.noreply.github.com";
github = "pulsation";
githubId = 1838397;
};
} }

View file

@ -65,16 +65,16 @@ Platform Vendor Advanced Micro Devices, Inc.</screen>
<title>AMD</title> <title>AMD</title>
<para> <para>
Modern AMD <link Modern AMD <link
xlink:href="https://en.wikipedia.org/wiki/Graphics_Core_Next">Graphics xlink:href="https://en.wikipedia.org/wiki/Graphics_Core_Next">Graphics
Core Next</link> (GCN) GPUs are supported through the Core Next</link> (GCN) GPUs are supported through the
<package>rocm-opencl-icd</package> package. Adding this package to <package>rocm-opencl-icd</package> package. Adding this package to
<xref linkend="opt-hardware.opengl.extraPackages"/> enables OpenCL <xref linkend="opt-hardware.opengl.extraPackages"/> enables OpenCL
support: support:
<programlisting><xref linkend="opt-hardware.opengl.extraPackages"/> = [ <programlisting><xref linkend="opt-hardware.opengl.extraPackages"/> = [
rocm-opencl-icd rocm-opencl-icd
];</programlisting> ];</programlisting>
</para> </para>
</section> </section>
@ -100,9 +100,9 @@ Platform Vendor Advanced Micro Devices, Inc.</screen>
support. For example, for Gen8 and later GPUs, the following support. For example, for Gen8 and later GPUs, the following
configuration can be used: configuration can be used:
<programlisting><xref linkend="opt-hardware.opengl.extraPackages"/> = [ <programlisting><xref linkend="opt-hardware.opengl.extraPackages"/> = [
intel-compute-runtime intel-compute-runtime
];</programlisting> ];</programlisting>
</para> </para>
</section> </section>
@ -173,31 +173,31 @@ GPU1:
<title>AMD</title> <title>AMD</title>
<para> <para>
Modern AMD <link Modern AMD <link
xlink:href="https://en.wikipedia.org/wiki/Graphics_Core_Next">Graphics xlink:href="https://en.wikipedia.org/wiki/Graphics_Core_Next">Graphics
Core Next</link> (GCN) GPUs are supported through either radv, which is Core Next</link> (GCN) GPUs are supported through either radv, which is
part of <package>mesa</package>, or the <package>amdvlk</package> package. part of <package>mesa</package>, or the <package>amdvlk</package> package.
Adding the <package>amdvlk</package> package to Adding the <package>amdvlk</package> package to
<xref linkend="opt-hardware.opengl.extraPackages"/> makes both drivers <xref linkend="opt-hardware.opengl.extraPackages"/> makes both drivers
available for applications and lets them choose. A specific driver can available for applications and lets them choose. A specific driver can
be forced as follows: be forced as follows:
<programlisting><xref linkend="opt-hardware.opengl.extraPackages"/> = [ <programlisting><xref linkend="opt-hardware.opengl.extraPackages"/> = [
pkgs.<package>amdvlk</package> pkgs.<package>amdvlk</package>
]; ];
# To enable Vulkan support for 32-bit applications, also add: # To enable Vulkan support for 32-bit applications, also add:
<xref linkend="opt-hardware.opengl.extraPackages32"/> = [ <xref linkend="opt-hardware.opengl.extraPackages32"/> = [
pkgs.driversi686Linux.<package>amdvlk</package> pkgs.driversi686Linux.<package>amdvlk</package>
]; ];
# For amdvlk # For amdvlk
<xref linkend="opt-environment.variables"/>.VK_ICD_FILENAMES = <xref linkend="opt-environment.variables"/>.VK_ICD_FILENAMES =
"/run/opengl-driver/share/vulkan/icd.d/amd_icd64.json"; "/run/opengl-driver/share/vulkan/icd.d/amd_icd64.json";
# For radv # For radv
<xref linkend="opt-environment.variables"/>.VK_ICD_FILENAMES = <xref linkend="opt-environment.variables"/>.VK_ICD_FILENAMES =
"/run/opengl-driver/share/vulkan/icd.d/radeon_icd.x86_64.json"; "/run/opengl-driver/share/vulkan/icd.d/radeon_icd.x86_64.json";
</programlisting> </programlisting>
</para> </para>
</section> </section>
</section> </section>

View file

@ -12,7 +12,7 @@ xlink:href="https://github.com/NixOS/nixpkgs">Nixpkgs</link> repository.
You can quickly check your edits with the following: You can quickly check your edits with the following:
</para> </para>
<screen> <screen>
<prompt>$ </prompt>cd /path/to/nixpkgs/nixos/doc/manual <prompt>$ </prompt>cd /path/to/nixpkgs
<prompt>$ </prompt>nix-build nixos/release.nix -A manual.x86_64-linux <prompt>$ </prompt>nix-build nixos/release.nix -A manual.x86_64-linux
</screen> </screen>
<para> <para>

View file

@ -161,6 +161,13 @@ nixpkgs https://nixos.org/channels/nixpkgs-unstable</screen>
existing systems without the help of a rescue USB drive or similar. existing systems without the help of a rescue USB drive or similar.
</para> </para>
</warning> </warning>
<note>
<para>
On some distributions there are separate PATHS for programs intended only for root.
In order for the installation to succeed, you might have to use <literal>PATH="$PATH:/usr/sbin:/sbin"</literal>
in the following command.
</para>
</note>
<screen><prompt>$ </prompt>sudo PATH="$PATH" NIX_PATH="$NIX_PATH" `which nixos-install` --root /mnt</screen> <screen><prompt>$ </prompt>sudo PATH="$PATH" NIX_PATH="$NIX_PATH" `which nixos-install` --root /mnt</screen>
<para> <para>
Again, please refer to the <literal>nixos-install</literal> step in Again, please refer to the <literal>nixos-install</literal> step in

View file

@ -234,7 +234,17 @@
</listitem> </listitem>
</itemizedlist> </itemizedlist>
</listitem> </listitem>
<listitem>
<para>
Starting with this release, the hydra-build-result
<literal>nixos-<replaceable>YY.MM</replaceable></literal>
branches no longer exist in the <link
xlink:href="https://github.com/nixos/nixpkgs-channels">deprecated
nixpkgs-channels repository</link>. These branches are now in
<link xlink:href="https://github.com/nixos/nixpkgs">the main nixpkgs
repository</link>.
</para>
</listitem>
</itemizedlist> </itemizedlist>
</section> </section>
@ -1593,30 +1603,30 @@ services.transmission.settings.rpc-bind-address = "0.0.0.0";
<para> <para>
Agda has been heavily reworked. Agda has been heavily reworked.
<itemizedlist> <itemizedlist>
<listitem> <listitem>
<para> <para>
<literal>agda.mkDerivation</literal> has been heavily changed and <literal>agda.mkDerivation</literal> has been heavily changed and
is now located at <package>agdaPackages.mkDerivation</package>. is now located at <package>agdaPackages.mkDerivation</package>.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
New top-level packages <package>agda</package> and New top-level packages <package>agda</package> and
<literal>agda.withPackages</literal> have been added, the second <literal>agda.withPackages</literal> have been added, the second
of which sets up agda with access to chosen libraries. of which sets up agda with access to chosen libraries.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
All agda libraries now live under All agda libraries now live under
<literal>agdaPackages</literal>. <literal>agdaPackages</literal>.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Many broken libraries have been removed. Many broken libraries have been removed.
</para> </para>
</listitem> </listitem>
</itemizedlist> </itemizedlist>
See the <link See the <link
xlink:href="https://nixos.org/nixpkgs/manual/#agda">new xlink:href="https://nixos.org/nixpkgs/manual/#agda">new

View file

@ -163,6 +163,15 @@
<literal>vim</literal> switched to Python 3, dropping all Python 2 support. <literal>vim</literal> switched to Python 3, dropping all Python 2 support.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
<link linkend="opt-boot.zfs.forceImportAll">boot.zfs.forceImportAll</link>
previously did nothing, but has been fixed. However its default has been
changed to <literal>false</literal> to preserve the existing default
behaviour. If you have this explicitly set to <literal>true</literal>,
please note that your non-root pools will now be forcibly imported.
</para>
</listitem>
</itemizedlist> </itemizedlist>
</section> </section>

View file

@ -15,8 +15,8 @@ require "rexml/document"
include REXML include REXML
if ARGV.length < 1 then if ARGV.length < 1 then
$stderr.puts "Needs a filename." $stderr.puts "Needs a filename."
exit 1 exit 1
end end
filename = ARGV.shift filename = ARGV.shift
@ -51,17 +51,17 @@ $touched = false
# Generates: --optionnamevalue # Generates: --optionnamevalue
# ^^ ^^ # ^^ ^^
doc.elements.each("//varlistentry/term") do |term| doc.elements.each("//varlistentry/term") do |term|
["varname", "function", "option", "replaceable"].each do |prev_name| ["varname", "function", "option", "replaceable"].each do |prev_name|
term.elements.each(prev_name) do |el| term.elements.each(prev_name) do |el|
if el.next_element and if el.next_element and
el.next_element.name == "replaceable" and el.next_element.name == "replaceable" and
el.next_sibling_node.class == Element el.next_sibling_node.class == Element
then then
$touched = true $touched = true
term.insert_after(el, Text.new(" ")) term.insert_after(el, Text.new(" "))
end end
end end
end end
end end
@ -75,17 +75,17 @@ end
# Generates: -Ipath # Generates: -Ipath
# ^^ # ^^
doc.elements.each("//cmdsynopsis/arg") do |term| doc.elements.each("//cmdsynopsis/arg") do |term|
["option", "replaceable"].each do |prev_name| ["option", "replaceable"].each do |prev_name|
term.elements.each(prev_name) do |el| term.elements.each(prev_name) do |el|
if el.next_element and if el.next_element and
el.next_element.name == "replaceable" and el.next_element.name == "replaceable" and
el.next_sibling_node.class == Element el.next_sibling_node.class == Element
then then
$touched = true $touched = true
term.insert_after(el, Text.new(" ")) term.insert_after(el, Text.new(" "))
end end
end end
end end
end end
# <cmdsynopsis> # <cmdsynopsis>
@ -104,21 +104,21 @@ end
# Generates: [{--profile-name | -p }name] # Generates: [{--profile-name | -p }name]
# ^^^^ # ^^^^
doc.elements.each("//cmdsynopsis/arg") do |term| doc.elements.each("//cmdsynopsis/arg") do |term|
["group"].each do |prev_name| ["group"].each do |prev_name|
term.elements.each(prev_name) do |el| term.elements.each(prev_name) do |el|
if el.next_element and if el.next_element and
el.next_element.name == "replaceable" and el.next_element.name == "replaceable" and
el.next_sibling_node.class == Element el.next_sibling_node.class == Element
then then
$touched = true $touched = true
term.insert_after(el, Text.new(" ")) term.insert_after(el, Text.new(" "))
end end
end end
end end
end end
if $touched then if $touched then
doc.context[:attribute_quote] = :quote doc.context[:attribute_quote] = :quote
doc.write(output: File.open(filename, "w")) doc.write(output: File.open(filename, "w"))
end end

View file

@ -263,7 +263,7 @@ in {
(drv: drv.override { pulseaudio = overriddenPackage; }) (drv: drv.override { pulseaudio = overriddenPackage; })
cfg.extraModules; cfg.extraModules;
modulePaths = builtins.map modulePaths = builtins.map
(drv: "${drv}/lib/pulse-${overriddenPackage.version}/modules") (drv: "${drv}/${overriddenPackage.pulseDir}/modules")
# User-provided extra modules take precedence # User-provided extra modules take precedence
(overriddenModules ++ [ overriddenPackage ]); (overriddenModules ++ [ overriddenPackage ]);
in lib.concatStringsSep ":" modulePaths; in lib.concatStringsSep ":" modulePaths;

View file

@ -19,6 +19,7 @@ in
}; };
config = mkIf cfg.enable { config = mkIf cfg.enable {
environment.systemPackages = with pkgs; [ acpilight ];
services.udev.packages = with pkgs; [ acpilight ]; services.udev.packages = with pkgs; [ acpilight ];
}; };
} }

View file

@ -15,6 +15,8 @@ in {
hardware.bluetooth = { hardware.bluetooth = {
enable = mkEnableOption "support for Bluetooth"; enable = mkEnableOption "support for Bluetooth";
hsphfpd.enable = mkEnableOption "support for hsphfpd[-prototype] implementation";
powerOnBoot = mkOption { powerOnBoot = mkOption {
type = types.bool; type = types.bool;
default = true; default = true;
@ -72,7 +74,8 @@ in {
}; };
}; };
environment.systemPackages = [ bluez-bluetooth ]; environment.systemPackages = [ bluez-bluetooth ]
++ optionals cfg.hsphfpd.enable [ pkgs.hsphfpd ];
environment.etc."bluetooth/main.conf"= { environment.etc."bluetooth/main.conf"= {
source = pkgs.writeText "main.conf" source = pkgs.writeText "main.conf"
@ -80,7 +83,8 @@ in {
}; };
services.udev.packages = [ bluez-bluetooth ]; services.udev.packages = [ bluez-bluetooth ];
services.dbus.packages = [ bluez-bluetooth ]; services.dbus.packages = [ bluez-bluetooth ]
++ optionals cfg.hsphfpd.enable [ pkgs.hsphfpd ];
systemd.packages = [ bluez-bluetooth ]; systemd.packages = [ bluez-bluetooth ];
systemd.services = { systemd.services = {
@ -90,11 +94,31 @@ in {
# restarting can leave people without a mouse/keyboard # restarting can leave people without a mouse/keyboard
unitConfig.X-RestartIfChanged = false; unitConfig.X-RestartIfChanged = false;
}; };
}; }
// (optionalAttrs cfg.hsphfpd.enable {
hsphfpd = {
after = [ "bluetooth.service" ];
requires = [ "bluetooth.service" ];
wantedBy = [ "multi-user.target" ];
description = "A prototype implementation used for connecting HSP/HFP Bluetooth devices";
serviceConfig.ExecStart = "${pkgs.hsphfpd}/bin/hsphfpd.pl";
};
})
;
systemd.user.services = { systemd.user.services = {
obex.aliases = [ "dbus-org.bluez.obex.service" ]; obex.aliases = [ "dbus-org.bluez.obex.service" ];
}; }
// (optionalAttrs cfg.hsphfpd.enable {
telephony_client = {
wantedBy = [ "default.target"];
description = "telephony_client for hsphfpd";
serviceConfig.ExecStart = "${pkgs.hsphfpd}/bin/telephony_client.pl";
};
})
;
}; };

View file

@ -175,14 +175,10 @@ in
forceImportAll = mkOption { forceImportAll = mkOption {
type = types.bool; type = types.bool;
default = true; default = false;
description = '' description = ''
Forcibly import all ZFS pool(s). Forcibly import all ZFS pool(s).
This is enabled by default for backwards compatibility purposes, but it is highly
recommended to disable this option, as it bypasses some of the safeguards ZFS uses
to protect your ZFS pools.
If you set this option to <literal>false</literal> and NixOS subsequently fails to If you set this option to <literal>false</literal> and NixOS subsequently fails to
import your non-root ZFS pool(s), you should manually import each pool with import your non-root ZFS pool(s), you should manually import each pool with
"zpool import -f &lt;pool-name&gt;", and then reboot. You should only need to do "zpool import -f &lt;pool-name&gt;", and then reboot. You should only need to do
@ -507,6 +503,7 @@ in
Type = "oneshot"; Type = "oneshot";
RemainAfterExit = true; RemainAfterExit = true;
}; };
environment.ZFS_FORCE = optionalString cfgZfs.forceImportAll "-f";
script = (importLib { script = (importLib {
# See comments at importLib definition. # See comments at importLib definition.
zpoolCmd="${packages.zfsUser}/sbin/zpool"; zpoolCmd="${packages.zfsUser}/sbin/zpool";

View file

@ -11,9 +11,9 @@ import ./make-test-python.nix {
enable = true; enable = true;
enableSubmission = true; enableSubmission = true;
enableSubmissions = true; enableSubmissions = true;
sslCACert = certs.ca.cert; tlsTrustedAuthorities = "${certs.ca.cert}";
sslCert = certs.${domain}.cert; sslCert = "${certs.${domain}.cert}";
sslKey = certs.${domain}.key; sslKey = "${certs.${domain}.key}";
submissionsOptions = { submissionsOptions = {
smtpd_sasl_auth_enable = "yes"; smtpd_sasl_auth_enable = "yes";
smtpd_client_restrictions = "permit"; smtpd_client_restrictions = "permit";

View file

@ -18,7 +18,7 @@ let
maintainers = [ adisbladis ]; maintainers = [ adisbladis ];
}; };
machine = { pkgs, ... }: { machine = { pkgs, lib, ... }: {
virtualisation.emptyDiskImages = [ 4096 ]; virtualisation.emptyDiskImages = [ 4096 ];
networking.hostId = "deadbeef"; networking.hostId = "deadbeef";
boot.kernelPackages = kernelPackage; boot.kernelPackages = kernelPackage;
@ -26,6 +26,24 @@ let
boot.zfs.enableUnstable = enableUnstable; boot.zfs.enableUnstable = enableUnstable;
environment.systemPackages = [ pkgs.parted ]; environment.systemPackages = [ pkgs.parted ];
# Setup regular fileSystems machinery to ensure forceImportAll can be
# tested via the regular service units.
fileSystems = lib.mkVMOverride {
"/forcepool" = {
device = "forcepool";
fsType = "zfs";
options = [ "noauto" ];
};
};
# forcepool doesn't exist at first boot, and we need to manually test
# the import after tweaking the hostId.
systemd.services.zfs-import-forcepool.wantedBy = lib.mkVMOverride [];
systemd.targets.zfs.wantedBy = lib.mkVMOverride [];
boot.zfs.forceImportAll = true;
# /dev/disk/by-id doesn't get populated in the NixOS test framework
boot.zfs.devNodes = "/dev/disk/by-uuid";
}; };
testScript = '' testScript = ''
@ -57,6 +75,21 @@ let
"zpool destroy rpool", "zpool destroy rpool",
"udevadm settle", "udevadm settle",
) )
with subtest("boot.zfs.forceImportAll works"):
machine.succeed(
"rm /etc/hostid",
"zgenhostid deadcafe",
"zpool create forcepool /dev/vdb1 -O mountpoint=legacy",
)
machine.shutdown()
machine.start()
machine.succeed("udevadm settle")
machine.fail("zpool import forcepool")
machine.succeed(
"systemctl start zfs-import-forcepool.service",
"mount -t zfs forcepool /tmp/mnt",
)
'' + extraTest; '' + extraTest;
}; };

View file

@ -3,7 +3,6 @@
, fetchFromGitHub , fetchFromGitHub
, qmake , qmake
, qtbase , qtbase
, qtmultimedia
, qttools , qttools
, alsaSupport ? stdenv.hostPlatform.isLinux , alsaSupport ? stdenv.hostPlatform.isLinux
, alsaLib , alsaLib
@ -19,20 +18,20 @@ let
in in
mkDerivation rec { mkDerivation rec {
pname = "bambootracker"; pname = "bambootracker";
version = "0.4.4"; version = "0.4.5";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "rerrahkr"; owner = "rerrahkr";
repo = "BambooTracker"; repo = "BambooTracker";
rev = "v${version}"; rev = "v${version}";
sha256 = "0d0f4jqzknsiq725pvfndarfjg183f92rb0lim3wzshnsixr5vdc"; sha256 = "0ibi0sykxf6cp5la2c4pgxf5gvy56yv259fbmdwdrdyv6vlddf42";
}; };
sourceRoot = "source/BambooTracker"; sourceRoot = "source/BambooTracker";
nativeBuildInputs = [ qmake qttools ]; nativeBuildInputs = [ qmake qttools ];
buildInputs = [ qtbase qtmultimedia ] buildInputs = [ qtbase ]
++ optional alsaSupport alsaLib ++ optional alsaSupport alsaLib
++ optional pulseSupport libpulseaudio ++ optional pulseSupport libpulseaudio
++ optional jackSupport libjack2; ++ optional jackSupport libjack2;

View file

@ -17,13 +17,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "musikcube"; pname = "musikcube";
version = "0.93.1"; version = "0.94.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "clangen"; owner = "clangen";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "05qsxyr7x8l0vlmn4yjg4gglxvcw9raf6vfzvblsl2ngsdsrnizy"; sha256 = "0hifyawsr38vsx12aqw38nms4kzbaghihib1r80x56f1jjsdhww0";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -18,8 +18,12 @@
let let
pulseSources = runCommand "pulseaudio-sources" {} '' pulseSources = runCommand "pulseaudio-sources" {} ''
mkdir $out mkdir $out
tar -xf ${pulseaudio.src} if [ -d ${pulseaudio.src} ]; then
mv pulseaudio*/* $out/ ln -s ${pulseaudio.src}/* $out/
else
tar -xf ${pulseaudio.src}
mv pulseaudio*/* $out/
fi
''; '';
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
@ -61,7 +65,7 @@ in stdenv.mkDerivation rec {
# Pulseaudio version is detected with a -rebootstrapped suffix which build system assumptions # Pulseaudio version is detected with a -rebootstrapped suffix which build system assumptions
substituteInPlace config.h.in --replace PulseAudio_VERSION ${pulseaudio.version} substituteInPlace config.h.in --replace PulseAudio_VERSION ${pulseaudio.version}
substituteInPlace CMakeLists.txt --replace '${"\${PulseAudio_VERSION}"}' ${pulseaudio.version} substituteInPlace CMakeLists.txt --replace '${"\${PULSE_DIR}"}' ${pulseaudio.pulseDir}
# Fraunhofer recommends to enable afterburner but upstream has it set to false by default # Fraunhofer recommends to enable afterburner but upstream has it set to false by default
substituteInPlace src/modules/bluetooth/a2dp/a2dp_aac.c \ substituteInPlace src/modules/bluetooth/a2dp/a2dp_aac.c \
@ -72,7 +76,7 @@ in stdenv.mkDerivation rec {
for so in $out/lib/pulse-${pulseaudio.version}/modules/*.so; do for so in $out/lib/pulse-${pulseaudio.version}/modules/*.so; do
orig_rpath=$(patchelf --print-rpath "$so") orig_rpath=$(patchelf --print-rpath "$so")
patchelf \ patchelf \
--set-rpath "${ldacbt}/lib:${lib.getLib ffmpeg}/lib:$out/lib/pulse-${pulseaudio.version}/modules:$orig_rpath" \ --set-rpath "${ldacbt}/lib:${lib.getLib ffmpeg}/lib:$out/${pulseaudio.pulseDir}/modules:$orig_rpath" \
"$so" "$so"
done done
''; '';

View file

@ -8,4 +8,4 @@ index 8d20dbf..63fe7ba 100644
module-bluetooth-policy module-bluetooth-policy
- LIBRARY DESTINATION ${PulseAudio_modlibexecdir}) - LIBRARY DESTINATION ${PulseAudio_modlibexecdir})
- -
+ LIBRARY DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/pulse-${PulseAudio_VERSION}/modules/) + LIBRARY DESTINATION ${CMAKE_INSTALL_PREFIX}/${PULSE_DIR}/modules/)

View file

@ -1,19 +1,22 @@
{ stdenv, fetchurl, cmake, pkgconfig, alsaLib, libjack2, qt4 }: { mkDerivation, lib, fetchurl, cmake, pkg-config
, qttools, qtx11extras, drumstick
, docbook-xsl-nons
}:
stdenv.mkDerivation rec { mkDerivation rec {
pname = "vmpk"; pname = "vmpk";
version = "0.5.1"; version = "0.7.2";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/${pname}/${version}/${pname}-${version}.tar.bz2"; url = "mirror://sourceforge/${pname}/${version}/${pname}-${version}.tar.bz2";
sha256 = "11fqnxgs9hr9255d93n7lazxzjwn8jpmn23nywdksh0pb1ffvfrc"; sha256 = "5oLrjQADg59Mxpb0CNLQAE574IOSYLDLJNaQ/9q2cMQ=";
}; };
nativeBuildInputs = [ cmake pkgconfig ]; nativeBuildInputs = [ cmake pkg-config qttools docbook-xsl-nons ];
buildInputs = [ alsaLib libjack2 qt4 ]; buildInputs = [ qtx11extras drumstick ];
meta = with stdenv.lib; { meta = with lib; {
description = "Virtual MIDI Piano Keyboard"; description = "Virtual MIDI Piano Keyboard";
homepage = "http://vmpk.sourceforge.net/"; homepage = "http://vmpk.sourceforge.net/";
license = licenses.gpl3Plus; license = licenses.gpl3Plus;

View file

@ -5,23 +5,23 @@
, llvmPackages , llvmPackages
, openssl , openssl
, pkg-config , pkg-config
, stdenv
, systemd , systemd
, darwin
}: }:
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "openethereum"; pname = "openethereum";
version = "3.0.1"; version = "3.1.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "openethereum"; owner = "openethereum";
repo = "openethereum"; repo = "openethereum";
rev = "v${version}"; rev = "v${version}";
sha256 = "08dkcrga1x18csh6pw6f54x5xwijppyjhg46cf4p452xc1l3a6ir"; sha256 = "cs84Zz0nhagGDu5sDFTaFZF3SPEgJU8F4vGX7KLihOM=";
}; };
cargoSha256 = "1xliragihwjfc5qmfm0ng519bw8a28m1w1yqcl9mpk8zywiybaah"; cargoSha256 = "6suNkHw1BbISb0MkYkUaD+mpUal+kn3y1SFVqzJFqJc=";
cargoPatches = [ ./lock.patch ];
LIBCLANG_PATH = "${llvmPackages.libclang}/lib"; LIBCLANG_PATH = "${llvmPackages.libclang}/lib";
nativeBuildInputs = [ nativeBuildInputs = [
@ -31,7 +31,9 @@ rustPlatform.buildRustPackage rec {
pkg-config pkg-config
]; ];
buildInputs = [ openssl systemd ]; buildInputs = [ openssl ]
++ stdenv.lib.optionals stdenv.isLinux [ systemd ]
++ stdenv.lib.optionals stdenv.isDarwin [ darwin.Security ];
cargoBuildFlags = [ "--features final" ]; cargoBuildFlags = [ "--features final" ];
@ -43,6 +45,6 @@ rustPlatform.buildRustPackage rec {
homepage = "http://parity.io/ethereum"; homepage = "http://parity.io/ethereum";
license = licenses.gpl3; license = licenses.gpl3;
maintainers = with maintainers; [ akru xrelkd ]; maintainers = with maintainers; [ akru xrelkd ];
platforms = platforms.linux; platforms = stdenv.lib.platforms.unix;
}; };
} }

View file

@ -1,20 +0,0 @@
--- /nix/store/hv764a65zmfzw5scjhz5839agv10da6x-source/Cargo.lock 1969-12-31 16:00:01.000000000 -0800
+++ ./Cargo.lock 2020-07-31 21:30:31.146750066 -0700
@@ -3113,7 +3113,7 @@
[[package]]
name = "openethereum"
-version = "3.0.0"
+version = "3.0.1"
dependencies = [
"ansi_term",
"atty",
@@ -3562,7 +3562,7 @@
[[package]]
name = "parity-version"
-version = "3.0.0"
+version = "3.0.1"
dependencies = [
"parity-bytes",
"rlp",

View file

@ -7,16 +7,16 @@
}: }:
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "polkadot"; pname = "polkadot";
version = "0.8.26"; version = "0.8.26-1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "paritytech"; owner = "paritytech";
repo = "polkadot"; repo = "polkadot";
rev = "v${version}"; rev = "v${version}";
sha256 = "1bvma6k3gsjqh8w76k4kf52sjg8wxn1b7a409kmnmmvmd9j6z5ia"; sha256 = "17ji1gjrx3gzw4msaz9kgvm132y14wgh8z183l3mfw1cj44a6kqk";
}; };
cargoSha256 = "0pacmmvvjgzmaxgg47qbfhqwl02jxj3i6vnmkjbj9npzqfmqf72d"; cargoSha256 = "07zwlwx02xw1y20br2c4grwv7bprhynqy7gav4qh3vw117ijpiqk";
nativeBuildInputs = [ clang ]; nativeBuildInputs = [ clang ];

View file

@ -0,0 +1,29 @@
{ stdenv, buildGoModule, fetchFromGitHub }:
buildGoModule rec {
pname = "turbo-geth";
version = "2020.11.01";
src = fetchFromGitHub {
owner = "ledgerwatch";
repo = pname;
rev = "v${version}";
sha256 = "0hm8kqd0w231mlclsmsghf15r8pbrs5g064mkpx59qpqzk37lgss";
};
vendorSha256 = "0b7ldrnwkz3r1d4fw95hvvpi3bz56d9v8p2mjzdvlpk5zhl2a37p";
runVend = true;
subPackages = [
"cmd/tg"
"cmd/restapi"
"cmd/rpcdaemon"
];
meta = with stdenv.lib; {
homepage = "https://github.com/ledgerwatch/turbo-geth/";
description = "Ethereum node and geth fork focused on scalability and modularity";
license = with licenses; [ lgpl3 gpl3 ];
maintainers = with maintainers; [ xwvvvvwx ];
};
}

View file

@ -24,11 +24,11 @@ let
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "wasabiwallet"; pname = "wasabiwallet";
version = "1.1.12"; version = "1.1.12.2";
src = fetchurl { src = fetchurl {
url = "https://github.com/zkSNACKs/WalletWasabi/releases/download/v${version}/Wasabi-${version}.tar.gz"; url = "https://github.com/zkSNACKs/WalletWasabi/releases/download/v${version}/Wasabi-${version}.tar.gz";
sha256 = "0nfd0pwsgrkaxcxfs8wb3i8kslfcqnc91iahw3rmlcxdzb81kjs4"; sha256 = "0nl7n24nsy3gyzrxa6llx81pvsjqcwi0a4qdv34dpcq483aclp2r";
}; };
dontBuild = true; dontBuild = true;

View file

@ -9,9 +9,9 @@ let
inherit buildFHSUserEnv; inherit buildFHSUserEnv;
}; };
stableVersion = { stableVersion = {
version = "4.1.0.19"; # "Android Studio 4.1.0" version = "4.1.1.0"; # "Android Studio 4.1.1"
build = "201.6858069"; build = "201.6953283";
sha256Hash = "sha256-S5Uh/EpjE61l/z4UsPP7UEJ9Rk/hQidVVWX0bg/60gI="; sha256Hash = "sha256-aAMhhJWcVFdvEZt8fI3tF12Eg3TzlU+kUFMNeCYN1os=";
}; };
betaVersion = { betaVersion = {
version = "4.1.0.18"; # "Android Studio 4.1 RC 3" version = "4.1.0.18"; # "Android Studio 4.1 RC 3"

View file

@ -163,8 +163,10 @@ in stdenv.mkDerivation rec {
# The declarations for `gimp-with-plugins` wrapper, # The declarations for `gimp-with-plugins` wrapper,
# used for determining plug-in installation paths # used for determining plug-in installation paths
majorVersion = "${lib.versions.major version}.0"; majorVersion = "${lib.versions.major version}.0";
targetPluginDir = "lib/gimp/${majorVersion}/plug-ins"; targetLibDir = "lib/gimp/${majorVersion}";
targetScriptDir = "share/gimp/${majorVersion}/scripts"; targetDataDir = "share/gimp/${majorVersion}";
targetPluginDir = "${targetLibDir}/plug-ins";
targetScriptDir = "${targetDataDir}/scripts";
# probably its a good idea to use the same gtk in plugins ? # probably its a good idea to use the same gtk in plugins ?
gtk = gtk2; gtk = gtk2;

View file

@ -1,33 +1,51 @@
# install these packages into your profile. Then add # Use `gimp-with-plugins` package for GIMP with all plug-ins.
# ~/.nix-profile/gimp-version-plugins to your plugin list you can find at # If you just want a subset of plug-ins, you can specify them explicitly:
# preferences -> Folders -> Plug-ins # `gimp-with-plugins.override { plugins = with gimpPlugins; [ gap ]; }`.
# same applies for the scripts
{ config, lib, pkgs }:
{ config, pkgs, gimp }:
let let
inherit (pkgs) stdenv fetchurl pkgconfig intltool glib fetchFromGitHub; inherit (pkgs) stdenv fetchurl pkg-config intltool glib fetchFromGitHub;
inherit (gimp) targetPluginDir targetScriptDir; in
pluginDerivation = a: let lib.makeScope pkgs.newScope (self:
name = a.name or "${a.pname}-${a.version}";
let
# Use GIMP from the scope.
inherit (self) gimp;
pluginDerivation = attrs: let
name = attrs.name or "${attrs.pname}-${attrs.version}";
in stdenv.mkDerivation ({ in stdenv.mkDerivation ({
prePhases = "extraLib"; prePhases = "extraLib";
extraLib = '' extraLib = ''
installScripts(){ installScripts(){
mkdir -p $out/${targetScriptDir}/${name}; mkdir -p $out/${gimp.targetScriptDir}/${name};
for p in "$@"; do cp "$p" -r $out/${targetScriptDir}/${name}; done for p in "$@"; do cp "$p" -r $out/${gimp.targetScriptDir}/${name}; done
} }
installPlugins(){ installPlugins(){
mkdir -p $out/${targetPluginDir}/${name}; mkdir -p $out/${gimp.targetPluginDir}/${name};
for p in "$@"; do cp "$p" -r $out/${targetPluginDir}/${name}; done for p in "$@"; do cp "$p" -r $out/${gimp.targetPluginDir}/${name}; done
} }
''; '';
# Override installation paths.
PKG_CONFIG_GIMP_2_0_GIMPLIBDIR = "${placeholder "out"}/${gimp.targetLibDir}";
PKG_CONFIG_GIMP_2_0_GIMPDATADIR = "${placeholder "out"}/${gimp.targetDataDir}";
} }
// a // attrs
// { // {
name = "gimp-plugin-${name}"; name = "gimp-plugin-${name}";
buildInputs = [ gimp gimp.gtk glib ] ++ (a.buildInputs or []); buildInputs = [
nativeBuildInputs = [ pkgconfig intltool ] ++ (a.nativeBuildInputs or []); gimp
gimp.gtk
glib
] ++ (attrs.buildInputs or []);
nativeBuildInputs = [
pkg-config
intltool
] ++ (attrs.nativeBuildInputs or []);
} }
); );
@ -35,10 +53,11 @@ let
phases = [ "extraLib" "installPhase" ]; phases = [ "extraLib" "installPhase" ];
installPhase = "installScripts ${src}"; installPhase = "installScripts ${src}";
} // attrs); } // attrs);
in in
{
# Allow overriding GIMP package in the scope.
inherit (pkgs) gimp;
stdenv.lib.makeScope pkgs.newScope (self: with self; {
gap = pluginDerivation { gap = pluginDerivation {
/* menu: /* menu:
Video Video
@ -49,10 +68,6 @@ stdenv.lib.makeScope pkgs.newScope (self: with self; {
sha256 = "1jic7ixcmsn4kx2cn32nc5087rk6g8xsrz022xy11yfmgvhzb0ql"; sha256 = "1jic7ixcmsn4kx2cn32nc5087rk6g8xsrz022xy11yfmgvhzb0ql";
}; };
NIX_LDFLAGS = "-lm"; NIX_LDFLAGS = "-lm";
patchPhase = ''
sed -e 's,^\(GIMP_PLUGIN_DIR=\).*,\1'"$out/${gimp.name}-plugins", \
-e 's,^\(GIMP_DATA_DIR=\).*,\1'"$out/share/${gimp.name}", -i configure
'';
hardeningDisable = [ "format" ]; hardeningDisable = [ "format" ];
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "The GIMP Animation Package"; description = "The GIMP Animation Package";
@ -99,7 +114,7 @@ stdenv.lib.makeScope pkgs.newScope (self: with self; {
version = "2.0.3"; version = "2.0.3";
buildInputs = with pkgs; [ fftw ]; buildInputs = with pkgs; [ fftw ];
nativeBuildInputs = with pkgs; [ autoreconfHook ]; nativeBuildInputs = with pkgs; [ autoreconfHook ];
makeFlags = [ "GIMP_LIBDIR=${placeholder "out"}/lib/gimp/2.0" ]; makeFlags = [ "GIMP_LIBDIR=${placeholder "out"}/${gimp.targetLibDir}" ];
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "bootchk"; owner = "bootchk";
repo = "resynthesizer"; repo = "resynthesizer";
@ -138,14 +153,14 @@ stdenv.lib.makeScope pkgs.newScope (self: with self; {
Layer/Liquid Rescale Layer/Liquid Rescale
*/ */
pname = "lqr-plugin"; pname = "lqr-plugin";
version = "0.7.1"; version = "0.7.2";
buildInputs = with pkgs; [ liblqr1 ]; buildInputs = with pkgs; [ liblqr1 ];
src = fetchurl { src = fetchFromGitHub {
url = "https://github.com/pixlsus/registry.gimp.org_static/raw/master/registry.gimp.org/files/gimp-lqr-plugin-${version}.tar.bz2"; owner = "carlobaldassi";
sha256 = "sha256-YpgYPjHZkueJWS51QGmugXavGS+1x4o20St31qoRng4="; repo = "gimp-lqr-plugin";
rev = "v${version}";
sha256 = "81ajdZ2zQi/THxnBlSeT36tVTEzrS1YqLGpHMhFTKAo=";
}; };
#postInstall = ''mkdir -p $out/nix-support; echo "${liblqr1}" > "$out/nix-support/propagated-user-env-packages"'';
installPhase = "installPlugins src/gimp-lqr-plugin";
}; };
gmic = pkgs.gmic-qt.override { gmic = pkgs.gmic-qt.override {
@ -201,9 +216,4 @@ stdenv.lib.makeScope pkgs.newScope (self: with self; {
sha256 = "c14a8f4f709695ede3f77348728a25b3f3ded420da60f3f8de3944b7eae98a49"; sha256 = "c14a8f4f709695ede3f77348728a25b3f3ded420da60f3f8de3944b7eae98a49";
}; };
}; };
} // stdenv.lib.optionalAttrs (config.allowAliases or true) {
resynthesizer2 = resynthesizer;
}) })

View file

@ -2,7 +2,7 @@
let let
allPlugins = lib.filter (pkg: lib.isDerivation pkg && !pkg.meta.broken or false) (lib.attrValues gimpPlugins); allPlugins = lib.filter (pkg: lib.isDerivation pkg && !pkg.meta.broken or false) (lib.attrValues gimpPlugins);
selectedPlugins = if plugins == null then allPlugins else plugins; selectedPlugins = lib.filter (pkg: pkg != gimpPlugins.gimp) (if plugins == null then allPlugins else plugins);
extraArgs = map (x: x.wrapArgs or "") selectedPlugins; extraArgs = map (x: x.wrapArgs or "") selectedPlugins;
versionBranch = stdenv.lib.versions.majorMinor gimp.version; versionBranch = stdenv.lib.versions.majorMinor gimp.version;

View file

@ -6,7 +6,7 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "lightburn"; pname = "lightburn";
version = "0.9.16"; version = "0.9.18";
nativeBuildInputs = [ nativeBuildInputs = [
p7zip p7zip
@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
src = fetchurl { src = fetchurl {
url = "https://github.com/LightBurnSoftware/deployment/releases/download/${version}/LightBurn-Linux64-v${version}.7z"; url = "https://github.com/LightBurnSoftware/deployment/releases/download/${version}/LightBurn-Linux64-v${version}.7z";
sha256 = "0xmpglfzff3jpxbr304czsa24fbp497b69yd8kjkjdp2cd0l70qc"; sha256 = "0inl6zmc1726gmj85jbvq3ra4zphd2ikhrnqphgy2b0c72yh4pf7";
}; };
buildInputs = [ buildInputs = [

View file

@ -2,16 +2,16 @@
buildGoModule rec { buildGoModule rec {
pname = "pdfcpu"; pname = "pdfcpu";
version = "0.3.6"; version = "0.3.7";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "pdfcpu"; owner = "pdfcpu";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "0cbbbf93gxx768fs6pldy25xk46k7mc8k94r3f7cd83f1qd3s5zn"; sha256 = "13b1ncpx189ca0h70j5cdp0jwlj95kasysryz1l6g13cwn9n6mii";
}; };
vendorSha256 = "1i0w4284icbl40yrjny9qd5iqrq18x63lrs7p1gz58nybc606azx"; vendorSha256 = "11w9i1829hk1qb9w24dyxv1bi49358a274g60x11fp5x5cw7bqa7";
# No tests # No tests
doCheck = false; doCheck = false;

View file

@ -1,6 +1,5 @@
{ mkDerivation, lib { mkDerivation, lib
, extra-cmake-modules, kdoctools, makeWrapper, shared-mime-info , extra-cmake-modules, kdoctools, makeWrapper, shared-mime-info
, qtwebkit
, libkcddb, karchive, kcmutils, kfilemetadata, knewstuff, knotifyconfig, solid, kxmlgui , libkcddb, karchive, kcmutils, kfilemetadata, knewstuff, knotifyconfig, solid, kxmlgui
, flac, lame, libmad, libmpcdec, libvorbis , flac, lame, libmad, libmpcdec, libvorbis
, libsamplerate, libsndfile, taglib , libsamplerate, libsndfile, taglib
@ -17,8 +16,6 @@ mkDerivation {
}; };
nativeBuildInputs = [ extra-cmake-modules kdoctools makeWrapper ]; nativeBuildInputs = [ extra-cmake-modules kdoctools makeWrapper ];
buildInputs = [ buildInputs = [
# qt
qtwebkit
# kde # kde
libkcddb karchive kcmutils kfilemetadata knewstuff knotifyconfig solid kxmlgui libkcddb karchive kcmutils kfilemetadata knewstuff knotifyconfig solid kxmlgui
# formats # formats

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "batsignal"; pname = "batsignal";
version = "1.1.3"; version = "1.2.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "electrickite"; owner = "electrickite";
repo = "batsignal"; repo = "batsignal";
rev = version; rev = version;
sha256 = "12hj0j18db34x0xzgj6xmhvxm966d05z0rl3d9rlrcd2q96lilwf"; sha256 = "0yc7xgwb3i4m8m9kg2xspqig3s2qgh2i9bkalvnkziayjb7y59qn";
}; };
buildInputs = [ libnotify glib ]; buildInputs = [ libnotify glib ];

View file

@ -19,7 +19,7 @@
}: }:
let let
version = "4.0.3"; version = "4.0.4";
# electrum is not compatible with dnspython 2.0.0 yet # electrum is not compatible with dnspython 2.0.0 yet
# use the latest 1.x release instead # use the latest 1.x release instead
@ -43,7 +43,7 @@ let
owner = "spesmilo"; owner = "spesmilo";
repo = "electrum"; repo = "electrum";
rev = version; rev = version;
sha256 = "1r40i0v7nm35m3pzbd0l5z4qphl13s31l9v5njmyvpfjirdmhjbv"; sha256 = "0bzvyfqnd0r0l8syf95hr3nsh8rmmmcs74bvc7v04v0nm5m0fmf1";
extraPostFetch = '' extraPostFetch = ''
mv $out ./all mv $out ./all
@ -58,7 +58,7 @@ py.pkgs.buildPythonApplication {
src = fetchurl { src = fetchurl {
url = "https://download.electrum.org/${version}/Electrum-${version}.tar.gz"; url = "https://download.electrum.org/${version}/Electrum-${version}.tar.gz";
sha256 = "0q891fgzxvyzjxfczynx92hvclfs8i3nr5nr9sgbvz13hsg4s6lg"; sha256 = "03dc5jwgp18sism5v4lbqfyn2zljchng8j2yi07yf8i01ivy2mmv";
}; };
postUnpack = '' postUnpack = ''

View file

@ -2,13 +2,13 @@
mkDerivation rec { mkDerivation rec {
pname = "gpxsee"; pname = "gpxsee";
version = "7.35"; version = "7.36";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "tumic0"; owner = "tumic0";
repo = "GPXSee"; repo = "GPXSee";
rev = version; rev = version;
sha256 = "1schmymcsd8s0r26qwyx56z107ql8pgrk1pnqy19mc7fyirdwmp5"; sha256 = "18vsw6hw6kn5wmr4iarhx1v8q455j60fhf0hq69jkfyarl56b99j";
}; };
patches = (substituteAll { patches = (substituteAll {

View file

@ -2,10 +2,10 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "gremlin-console"; pname = "gremlin-console";
version = "3.3.4"; version = "3.4.8";
src = fetchzip { src = fetchzip {
url = "http://www-eu.apache.org/dist/tinkerpop/${version}/apache-tinkerpop-gremlin-console-${version}-bin.zip"; url = "http://www-eu.apache.org/dist/tinkerpop/${version}/apache-tinkerpop-gremlin-console-${version}-bin.zip";
sha256 = "14xr0yqklmm4jvj1hnkj89lj83zzs2l1375ni0jbf12gy31jlb2w"; sha256 = "13ycr6ppyrz9rq7dasabjdk8lcsxdj3krb4j7d2jmbh2hij1rdvf";
}; };
buildInputs = [ makeWrapper ]; buildInputs = [ makeWrapper ];

View file

@ -2,7 +2,7 @@
let let
pname = "joplin-desktop"; pname = "joplin-desktop";
version = "1.2.6"; version = "1.3.18";
name = "${pname}-${version}"; name = "${pname}-${version}";
inherit (stdenv.hostPlatform) system; inherit (stdenv.hostPlatform) system;
@ -16,8 +16,8 @@ let
src = fetchurl { src = fetchurl {
url = "https://github.com/laurent22/joplin/releases/download/v${version}/Joplin-${version}.${suffix}"; url = "https://github.com/laurent22/joplin/releases/download/v${version}/Joplin-${version}.${suffix}";
sha256 = { sha256 = {
x86_64-linux = "14svzfhszb0pnsajbydsic0rdc64zp6csqjp6k2p2i20jf0c0im6"; x86_64-linux = "1dldy137ia8qxhf7d5xzq5slm12bhnmw4kx7fm37n1ajjdcn5sf7";
x86_64-darwin = "1wdv8idnvn5567xdmsaa3f7skv48i9q6jqd4pgv8pz1zkhiqj0wi"; x86_64-darwin = "0zm9vhxlfs1ldd8za4yha54psqwl0al4hzdfxjfp7ir98i9a4cj7";
}.${system} or throwSystem; }.${system} or throwSystem;
}; };

View file

@ -5,13 +5,13 @@
mkDerivation rec { mkDerivation rec {
pname = "klayout"; pname = "klayout";
version = "0.26.6"; version = "0.26.8";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "KLayout"; owner = "KLayout";
repo = "klayout"; repo = "klayout";
rev = "v${version}"; rev = "v${version}";
sha256 = "0z17pdjdc2r2m5yi5bfz504dzzs978z8p6bhlf08v2npvigp8vz1"; sha256 = "0pkhvxcfk70dnmgczyyq585mxrfwqai44ikshs4c1imh92z25llq";
}; };
postPatch = '' postPatch = ''

View file

@ -17,10 +17,10 @@ let
pname = "simplenote"; pname = "simplenote";
version = "1.21.1"; version = "2.0.0";
sha256 = { sha256 = {
x86_64-linux = "00qx82d17yrrg2mxwhm40av0mpf5hy14j338i5ijhwp79yc8fk8x"; x86_64-linux = "18alzsl1y9pvd5rs6gfnzv0py8ha0im33ylg7h6dicil5vii4l05";
}.${system} or throwSystem; }.${system} or throwSystem;
meta = with stdenv.lib; { meta = with stdenv.lib; {

View file

@ -20,14 +20,14 @@
}: }:
mkDerivation rec { mkDerivation rec {
version = "1.0.0"; version = "1.0.1";
pname = "syncthingtray"; pname = "syncthingtray";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "Martchus"; owner = "Martchus";
repo = "syncthingtray"; repo = "syncthingtray";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-mB23UOUrOfEmbFfVsAXyi3iod0NAfp/sl7Gkklqfmbo="; sha256 = "1dln5gh3p8nz9qmg07cw2s0lpzp3rfhyrwdhczj89g27bwk0lr4k";
}; };
buildInputs = [ qtbase cpp-utilities qtutilities ] buildInputs = [ qtbase cpp-utilities qtutilities ]

View file

@ -2,12 +2,12 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "wofi"; pname = "wofi";
version = "1.2.1"; version = "1.2.3";
src = fetchhg { src = fetchhg {
url = "https://hg.sr.ht/~scoopta/wofi"; url = "https://hg.sr.ht/~scoopta/wofi";
rev = "v${version}"; rev = "v${version}";
sha256 = "0hx61br19dlmc3lay23ww3n9ry06m7b6xrkjx7sk4vrg1422iq99"; sha256 = "0glpb2gf5n78s01z3rn614ak8ibxhfr824gy6xlljbxclgds264i";
}; };
nativeBuildInputs = [ pkg-config meson ninja wrapGAppsHook installShellFiles ]; nativeBuildInputs = [ pkg-config meson ninja wrapGAppsHook installShellFiles ];

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "xmenu"; pname = "xmenu";
version = "4.3.1"; version = "4.4.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "phillbush"; owner = "phillbush";
repo = "xmenu"; repo = "xmenu";
rev = "v${version}"; rev = "v${version}";
sha256 = "0m97w1nwak5drcxxlyisqb73fxkapy2rlph9mg531kbx3k2h30r1"; sha256 = "1s70zvsaqnsjqs298vw3py0vcvia68xlks1wcz37pb88bwligz1x";
}; };
buildInputs = [ imlib2 libX11 libXft libXinerama ]; buildInputs = [ imlib2 libX11 libXft libXinerama ];
@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "A menu utility for X"; description = "A menu utility for X";
homepage = "https://github.com/phillbush/xmenu"; homepage = "https://github.com/phillbush/xmenu";
license = licenses.publicDomain; license = licenses.mit;
maintainers = with maintainers; [ neonfuz ]; maintainers = with maintainers; [ neonfuz ];
platforms = platforms.all; platforms = platforms.all;
}; };

View file

@ -4,13 +4,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "xmrig-proxy"; pname = "xmrig-proxy";
version = "6.3.0"; version = "6.4.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "xmrig"; owner = "xmrig";
repo = "xmrig-proxy"; repo = "xmrig-proxy";
rev = "v${version}"; rev = "v${version}";
sha256 = "1jh527bcl74018jd0qi32y4pcgmnbm21dyfhj4kg0j0ip15mx9j6"; sha256 = "0bcbil9b5z95haqbmdqaslckvjflw7h77fqrcdxc6lrn29575nnf";
}; };
nativeBuildInputs = [ cmake ]; nativeBuildInputs = [ cmake ];

View file

@ -10,11 +10,11 @@ with stdenv.lib;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "zathura"; pname = "zathura";
version = "0.4.5"; version = "0.4.7";
src = fetchurl { src = fetchurl {
url = "https://pwmt.org/projects/${pname}/download/${pname}-${version}.tar.xz"; url = "https://pwmt.org/projects/${pname}/download/${pname}-${version}.tar.xz";
sha256 = "0b3nrcvykkpv2vm99kijnic2gpfzva520bsjlihaxandzfm9ff8c"; sha256 = "1rx1fk9s556fk59lmqgvhwrmv71ashh89bx9adjq46wq5gzdn4p0";
}; };
outputs = [ "bin" "man" "dev" "out" ]; outputs = [ "bin" "man" "dev" "out" ];

View file

@ -1,29 +1,45 @@
{ stdenv, lib, meson, ninja, fetchurl, fetchpatch { stdenv, lib, meson, ninja, fetchurl, fetchpatch
, pkgconfig, zathura_core, cairo , gtk-mac-integration, girara, mupdf }: , cairo
, girara
, gtk-mac-integration
, gumbo
, jbig2dec
, libjpeg
, mupdf
, openjpeg_2
, pkgconfig
, zathura_core
}:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "0.3.5"; version = "0.3.6";
pname = "zathura-pdf-mupdf"; pname = "zathura-pdf-mupdf";
src = fetchurl { src = fetchurl {
url = "https://pwmt.org/projects/${pname}/download/${pname}-${version}.tar.xz"; url = "https://pwmt.org/projects/${pname}/download/${pname}-${version}.tar.xz";
sha256 = "1pjwsb7zwclxsvz229fl7y2saf1pv3ifwv3ay8viqxgrp9x3z9hq"; sha256 = "1r3v37k9fl2rxipvacgxr36llywvy7n20a25h3ajlyk70697sa66";
}; };
patches = [
# compatibility with MuPDF 1.17
(fetchpatch {
url = "https://git.pwmt.org/pwmt/zathura-pdf-mupdf/-/commit/c7f341addb76d5e6fd8c24c666d8fe97c451a4cb.patch";
sha256 = "12rikx2j7dpngfma9x4i504w58a8xx3rc0gmyz183v19hn54c075";
})
];
nativeBuildInputs = [ meson ninja pkgconfig ]; nativeBuildInputs = [ meson ninja pkgconfig ];
buildInputs = [ buildInputs = [
zathura_core girara mupdf cairo cairo
girara
gumbo
jbig2dec
libjpeg
mupdf
openjpeg_2
zathura_core
] ++ lib.optional stdenv.isDarwin gtk-mac-integration; ] ++ lib.optional stdenv.isDarwin gtk-mac-integration;
mesonFlags = [
"-Dlink-external=true"
];
# avoid: undefined symbol: gumbo_destroy_output
NIX_LDFLAGS = [ "-lgumbo" ];
PKG_CONFIG_ZATHURA_PLUGINDIR= "lib/zathura"; PKG_CONFIG_ZATHURA_PLUGINDIR= "lib/zathura";
meta = with lib; { meta = with lib; {

View file

@ -86,11 +86,11 @@ in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "brave"; pname = "brave";
version = "1.15.76"; version = "1.16.72";
src = fetchurl { src = fetchurl {
url = "https://github.com/brave/brave-browser/releases/download/v${version}/brave-browser_${version}_amd64.deb"; url = "https://github.com/brave/brave-browser/releases/download/v${version}/brave-browser_${version}_amd64.deb";
sha256 = "3b054584c2272a9eeb9029f754cabaf4804db295fd0e6b84ead680b08af38d48"; sha256 = "0gcmbqkrkdrjj0cc34bp56iqawhyfz46k7q8x82pw9b1rbjp1x6k";
}; };
dontConfigure = true; dontConfigure = true;

View file

@ -1,8 +1,8 @@
{ {
"stable": { "stable": {
"version": "86.0.4240.183", "version": "86.0.4240.198",
"sha256": "1g39i82js7fm4fqb8i66d6xs0kzqjxzi4vzvvwz5y9rkbikcc4ma", "sha256": "0i3s1il0x5yi3528gdsg3bhnyhs2x24zh7p1nd5apv3va9g85ax0",
"sha256bin64": "1r0dxqsx6j19hgwr3v2sdlb2vd7gb961c4wba4ymd8wy8j8pzly9", "sha256bin64": "0qfhs73r6j0r3nyqbnscnf7h1rs1s68lfl5ndsyd32dmip7ma01x",
"deps": { "deps": {
"gn": { "gn": {
"version": "2020-08-07", "version": "2020-08-07",
@ -13,9 +13,9 @@
} }
}, },
"beta": { "beta": {
"version": "87.0.4280.40", "version": "87.0.4280.47",
"sha256": "07xh76fl257np68way6i5rf64qbvirkfddy7m5gvqb0fzcqd7dp3", "sha256": "0a3c4kz85857wrbcxqknbqmai250d36nq332l66a83r8sidhbxfq",
"sha256bin64": "1b2z0aqlh28pqrk6dmabxp1d4mvp9iyfmi4kqmns4cdpg0qgaf41", "sha256bin64": "0bjls2airr4p448rx7im1a7gff68yfnfb5vymr4bin4kz0s38mpw",
"deps": { "deps": {
"gn": { "gn": {
"version": "2020-09-09", "version": "2020-09-09",
@ -26,15 +26,15 @@
} }
}, },
"dev": { "dev": {
"version": "88.0.4300.0", "version": "88.0.4315.5",
"sha256": "00cfs2rp4h8ybn2snr1d8ygg635hx7q5gv2aqriy1j6f8a1pgh1b", "sha256": "0k6man2xq8vmnk73dqv3fcc9929agqq8j6s6nvc9z653q4jdphkw",
"sha256bin64": "110r1m14h91212nx6pfhn8wkics7wlwx1608l5cqsxxcpvpzl3pv", "sha256bin64": "0m139w8lwaawridk8in24ss1g1i6ah5298xky226k3vhk5i4mn3j",
"deps": { "deps": {
"gn": { "gn": {
"version": "2020-09-09", "version": "2020-10-21",
"url": "https://gn.googlesource.com/gn", "url": "https://gn.googlesource.com/gn",
"rev": "e002e68a48d1c82648eadde2f6aafa20d08c36f2", "rev": "f5f465b52e5df6d4de9fbe67cc79f1914ba4dbfc",
"sha256": "0x4c7amxwzxs39grqs3dnnz0531mpf1p75niq7zhinyfqm86i4dk" "sha256": "1xb31vsvg27ivvcdyiq93h8wj4d90qdrpagfh1dvm6xszkajsca1"
} }
} }
} }

View file

@ -91,19 +91,19 @@ let
fteLibPath = makeLibraryPath [ stdenv.cc.cc gmp ]; fteLibPath = makeLibraryPath [ stdenv.cc.cc gmp ];
# Upstream source # Upstream source
version = "10.0.2"; version = "10.0.4";
lang = "en-US"; lang = "en-US";
srcs = { srcs = {
x86_64-linux = fetchurl { x86_64-linux = fetchurl {
url = "https://dist.torproject.org/torbrowser/${version}/tor-browser-linux64-${version}_${lang}.tar.xz"; url = "https://dist.torproject.org/torbrowser/${version}/tor-browser-linux64-${version}_${lang}.tar.xz";
sha256 = "sha256-JBJDMC44VSh1ekXPxsVvFk5nOB8Ro4UGtD32pG1weP8="; sha256 = "sha256-2Ye1+mhFnkZnAYQXgKZ5YIOiIVaiunTCyCOM+ZExw2I==";
}; };
i686-linux = fetchurl { i686-linux = fetchurl {
url = "https://dist.torproject.org/torbrowser/${version}/tor-browser-linux32-${version}_${lang}.tar.xz"; url = "https://dist.torproject.org/torbrowser/${version}/tor-browser-linux32-${version}_${lang}.tar.xz";
sha256 = "sha256-EanW2Q8TtCPY5FSp8zfgBXMte9+RfKE24fu8ROtArK0="; sha256 = "sha256-B0WGkIt8KDtma/WGyenQ04ctKE7AantUtYnwsjAZZb0=";
}; };
}; };
in in
@ -231,9 +231,10 @@ stdenv.mkDerivation rec {
# Preload extensions by moving into the runtime instead of storing under the # Preload extensions by moving into the runtime instead of storing under the
# user's profile directory. # user's profile directory.
mkdir -p "$TBB_IN_STORE/browser/extensions" # See https://support.mozilla.org/en-US/kb/deploying-firefox-with-extensions
mkdir -p "$TBB_IN_STORE/distribution/extensions"
mv "$TBB_IN_STORE/TorBrowser/Data/Browser/profile.default/extensions/"* \ mv "$TBB_IN_STORE/TorBrowser/Data/Browser/profile.default/extensions/"* \
"$TBB_IN_STORE/browser/extensions" "$TBB_IN_STORE/distribution/extensions"
# Hard-code paths to geoip data files. TBB resolves the geoip files # Hard-code paths to geoip data files. TBB resolves the geoip files
# relative to torrc-defaults_path but if we do not hard-code them # relative to torrc-defaults_path but if we do not hard-code them
@ -409,6 +410,5 @@ stdenv.mkDerivation rec {
# the compound is "libre" in a strict sense (some components place certain # the compound is "libre" in a strict sense (some components place certain
# restrictions on redistribution), it's free enough for our purposes. # restrictions on redistribution), it's free enough for our purposes.
license = licenses.free; license = licenses.free;
broken = true;
}; };
} }

View file

@ -344,7 +344,12 @@ let
patchelf --set-rpath "${libGL}/lib:$origRpath" "$chromiumBinary" patchelf --set-rpath "${libGL}/lib:$origRpath" "$chromiumBinary"
''; '';
passthru.updateScript = ./update.py; passthru = {
updateScript = ./update.py;
chromiumDeps = {
gn = gnChromium;
};
};
}; };
# Remove some extraAttrs we supplied to the base attributes already. # Remove some extraAttrs we supplied to the base attributes already.

View file

@ -37,26 +37,15 @@ let
inherit channel gnome gnomeSupport gnomeKeyringSupport proprietaryCodecs inherit channel gnome gnomeSupport gnomeKeyringSupport proprietaryCodecs
cupsSupport pulseSupport useOzone; cupsSupport pulseSupport useOzone;
inherit ungoogled; inherit ungoogled;
# TODO: Remove after we can update gn for the stable channel (backward incompatible changes):
gnChromium = gn.overrideAttrs (oldAttrs: { gnChromium = gn.overrideAttrs (oldAttrs: {
version = "2020-07-20"; inherit (upstream-info.deps.gn) version;
src = fetchgit { src = fetchgit {
url = "https://gn.googlesource.com/gn"; inherit (upstream-info.deps.gn) url rev sha256;
rev = "3028c6a426a4aaf6da91c4ebafe716ae370225fe";
sha256 = "0h3wf4152zdvrbb0jbj49q6814lfl3rcy5mj8b2pl9s0ahvkbc6q";
}; };
}); });
} // lib.optionalAttrs (lib.versionAtLeast upstream-info.version "87") { } // lib.optionalAttrs (lib.versionAtLeast upstream-info.version "87") {
useOzone = true; # YAY: https://chromium-review.googlesource.com/c/chromium/src/+/2382834 \o/ useOzone = true; # YAY: https://chromium-review.googlesource.com/c/chromium/src/+/2382834 \o/
useVaapi = !stdenv.isAarch64; # TODO: Might be best to not set use_vaapi anymore (default is fine) useVaapi = !stdenv.isAarch64; # TODO: Might be best to not set use_vaapi anymore (default is fine)
gnChromium = gn.overrideAttrs (oldAttrs: {
version = "2020-08-17";
src = fetchgit {
url = "https://gn.googlesource.com/gn";
rev = "6f13aaac55a977e1948910942675c69f2b4f7a94";
sha256 = "01hpma1sllpdx09mvr4d6073sg6zmk6iv44kd3r28khymcj4s251";
};
});
}); });
browser = callPackage ./browser.nix { inherit channel enableWideVine; }; browser = callPackage ./browser.nix { inherit channel enableWideVine; };

View file

@ -1,6 +1,6 @@
{ {
"86.0.4240.111" = { "86.0.4240.183" = {
rev = "86.0.4240.111-1"; rev = "86.0.4240.183-1";
sha256 = "0fkk0lxbvik8q8d5njxmwiam64qz5g74hlb56w24nh5mh1jm59a8"; sha256 = "0528l2wr5bpl1cwsxzl5zxz1gw91kffkh5j1kzmc5n7m4mscqxyc";
}; };
} }

View file

@ -1,13 +1,15 @@
#! /usr/bin/env nix-shell #! /usr/bin/env nix-shell
#! nix-shell -i python -p python3 nix #! nix-shell -i python -p python3 nix nix-prefetch-git
import csv import csv
import json import json
import re
import subprocess import subprocess
import sys import sys
from codecs import iterdecode from codecs import iterdecode
from collections import OrderedDict from collections import OrderedDict
from datetime import datetime
from os.path import abspath, dirname from os.path import abspath, dirname
from urllib.request import urlopen from urllib.request import urlopen
@ -26,6 +28,30 @@ def nix_prefetch_url(url, algo='sha256'):
out = subprocess.check_output(['nix-prefetch-url', '--type', algo, url]) out = subprocess.check_output(['nix-prefetch-url', '--type', algo, url])
return out.decode('utf-8').rstrip() return out.decode('utf-8').rstrip()
def nix_prefetch_git(url, rev):
print(f'nix-prefetch-git {url} {rev}')
out = subprocess.check_output(['nix-prefetch-git', '--quiet', '--url', url, '--rev', rev])
return json.loads(out)
def get_file_revision(revision, file_path):
url = f'https://raw.githubusercontent.com/chromium/chromium/{revision}/{file_path}'
with urlopen(url) as http_response:
return http_response.read()
def get_channel_dependencies(channel):
deps = get_file_revision(channel['version'], 'DEPS')
gn_pattern = b"'gn_version': 'git_revision:([0-9a-f]{40})'"
gn_commit = re.search(gn_pattern, deps).group(1).decode()
gn = nix_prefetch_git('https://gn.googlesource.com/gn', gn_commit)
return {
'gn': {
'version': datetime.fromisoformat(gn['date']).date().isoformat(),
'url': gn['url'],
'rev': gn['rev'],
'sha256': gn['sha256']
}
}
channels = {} channels = {}
last_channels = load_json(JSON_PATH) last_channels = load_json(JSON_PATH)
@ -58,6 +84,8 @@ with urlopen(HISTORY_URL) as resp:
# the next one. # the next one.
continue continue
channel['deps'] = get_channel_dependencies(channel)
channels[channel_name] = channel channels[channel_name] = channel
with open(JSON_PATH, 'w') as out: with open(JSON_PATH, 'w') as out:

View file

@ -1,17 +1,41 @@
{ {
"stable": { "stable": {
"version": "86.0.4240.111", "version": "86.0.4240.183",
"sha256": "05y7lwr89awkhvgmwkx3br9j4ap2aypg2wsc0nz8mi7kxc1dnyzj", "sha256": "1g39i82js7fm4fqb8i66d6xs0kzqjxzi4vzvvwz5y9rkbikcc4ma",
"sha256bin64": "10aqiiydw4i3jxnw8xxdgkgcqbfqc67n1fbrg40y54kg0v5dz8l6" "sha256bin64": "1r0dxqsx6j19hgwr3v2sdlb2vd7gb961c4wba4ymd8wy8j8pzly9",
"deps": {
"gn": {
"version": "2020-08-07",
"url": "https://gn.googlesource.com/gn",
"rev": "e327ffdc503815916db2543ec000226a8df45163",
"sha256": "0kvlfj3www84zp1vmxh76x8fdjm9hyk8lkh2vdsidafpmm75fphr"
}
}
}, },
"beta": { "beta": {
"version": "87.0.4280.27", "version": "87.0.4280.40",
"sha256": "0w0asxj7jlsw69cssfia8km4q9cx1c2mliks2rmhf4jk0hsghasm", "sha256": "07xh76fl257np68way6i5rf64qbvirkfddy7m5gvqb0fzcqd7dp3",
"sha256bin64": "1lsx4mhy8nachfb8c9f3mrx5nqw2bi046dqirb4lnv7y80jjjs1k" "sha256bin64": "1b2z0aqlh28pqrk6dmabxp1d4mvp9iyfmi4kqmns4cdpg0qgaf41",
"deps": {
"gn": {
"version": "2020-09-09",
"url": "https://gn.googlesource.com/gn",
"rev": "e002e68a48d1c82648eadde2f6aafa20d08c36f2",
"sha256": "0x4c7amxwzxs39grqs3dnnz0531mpf1p75niq7zhinyfqm86i4dk"
}
}
}, },
"dev": { "dev": {
"version": "88.0.4298.4", "version": "88.0.4300.0",
"sha256": "0ka11gmpkyrmifajaxm66c16hrj3xakdvhjqg04slyp2sv0nlhrl", "sha256": "00cfs2rp4h8ybn2snr1d8ygg635hx7q5gv2aqriy1j6f8a1pgh1b",
"sha256bin64": "0768y31jqbl1znp7yp6mvl5j12xl1nwjkh2l8zdga81q0wz52hh6" "sha256bin64": "110r1m14h91212nx6pfhn8wkics7wlwx1608l5cqsxxcpvpzl3pv",
"deps": {
"gn": {
"version": "2020-09-09",
"url": "https://gn.googlesource.com/gn",
"rev": "e002e68a48d1c82648eadde2f6aafa20d08c36f2",
"sha256": "0x4c7amxwzxs39grqs3dnnz0531mpf1p75niq7zhinyfqm86i4dk"
}
}
} }
} }

View file

@ -2,13 +2,13 @@
buildGoModule rec { buildGoModule rec {
pname = "cloudflared"; pname = "cloudflared";
version = "2020.10.2"; version = "2020.11.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "cloudflare"; owner = "cloudflare";
repo = "cloudflared"; repo = "cloudflared";
rev = version; rev = version;
sha256 = "0ppl74gb46r2x65hl7z1hjdqlr8la0pvhy8af8isk11sbxmprqjj"; sha256 = "1v262wr1z0z3frb9avg6bgsv973cn6gmn4w6wghpcjwsm6jld575";
}; };
vendorSha256 = null; vendorSha256 = null;

View file

@ -2,13 +2,13 @@
buildGoModule rec { buildGoModule rec {
pname = "k9s"; pname = "k9s";
version = "0.23.3"; version = "0.23.10";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "derailed"; owner = "derailed";
repo = "k9s"; repo = "k9s";
rev = "v${version}"; rev = "v${version}";
sha256 = "0jdrjsv6miprw0bj964rgkbci4xdwfi536z3px93i2n9zrhhawpn"; sha256 = "0nfgi67ja36mymhcyh4902680pkfnk4g8j8nbajksx9nfp53n91v";
}; };
buildFlagsArray = '' buildFlagsArray = ''
@ -18,7 +18,7 @@ buildGoModule rec {
-X github.com/derailed/k9s/cmd.commit=${src.rev} -X github.com/derailed/k9s/cmd.commit=${src.rev}
''; '';
vendorSha256 = "105vmy8agl3ppgi28wg7djx0jrfam7nxfvvlps9ycgyrv2qpjh2n"; vendorSha256 = "116aidry55917ays7rn5r5kj17nbgb9qi16bplml9kxfkjv072kz";
doCheck = false; doCheck = false;

View file

@ -2,13 +2,13 @@
buildGoModule rec { buildGoModule rec {
pname = "kubelogin"; pname = "kubelogin";
version = "0.0.6"; version = "0.0.7";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "Azure"; owner = "Azure";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "18rkjdl8asr5c1kgdm2iqb5qwkfcrv2sk3nns3hhfqzs2v9mxmha"; sha256 = "0jw8v6ff0iwkwxlhcr35cvhy4zg31dsm1s3q4fxgi901yj1wn6zy";
}; };
vendorSha256 = "0al8y65xvnwl34jkpqyf6zwr21xn30zswknlym9nnn1n47fyayxb"; vendorSha256 = "0al8y65xvnwl34jkpqyf6zwr21xn30zswknlym9nnn1n47fyayxb";

View file

@ -15,13 +15,13 @@ with lib;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "kubernetes"; pname = "kubernetes";
version = "1.19.3"; version = "1.19.4";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "kubernetes"; owner = "kubernetes";
repo = "kubernetes"; repo = "kubernetes";
rev = "v${version}"; rev = "v${version}";
sha256 = "0fpkgrykkjmkrh327g6zf3r6s39bnv5w1wlqsvvzyp2zsswgw81v"; sha256 = "05gisihrklkzsdsrrmvmqlfwfdx73jbwd5668n5wa5hp432qyvwi";
}; };
nativeBuildInputs = [ removeReferencesTo makeWrapper which go rsync go-bindata ]; nativeBuildInputs = [ removeReferencesTo makeWrapper which go rsync go-bindata ];

View file

@ -0,0 +1,49 @@
{ stdenv, fetchurl }:
let
version = "0.16.0";
system = stdenv.hostPlatform.system;
suffix = {
x86_64-linux = "Linux-64bit";
aarch64-linux = "Linux-arm64";
x86_64-darwin = "macOS-64bit";
}."${system}" or (throw "Unsupported system: ${system}");
baseurl = "https://github.com/vmware-tanzu/octant/releases/download";
fetchsrc = sha256: fetchurl {
url = "${baseurl}/v${version}/octant_${version}_${suffix}.tar.gz";
sha256 = sha256."${system}";
};
in
stdenv.mkDerivation rec {
pname = "octant";
inherit version;
src = fetchsrc {
x86_64-linux = "1i6i42hwxaczkfv8ldxn3wp6bslgwfkycvh88khfmapw2f5f9mhr";
aarch64-linux = "1ka5vscyqxckxnhnymp06yi0r2ljw42q0g62yq7qv4safljd452p";
x86_64-darwin = "1c50c2r2hq2fi8jcijq6vn336w96ar7b6qccv5w2240i0szsxxql";
};
doBuild = false;
doCheck = false;
installPhase = ''
mkdir -p "$out/bin"
mv octant $out/bin
'';
meta = with stdenv.lib; {
description = "Highly extensible platform for developers to better understand the complexity of Kubernetes clusters.";
longDescription = ''
Octant is a tool for developers to understand how applications run on a Kubernetes cluster.
It aims to be part of the developer's toolkit for gaining insight and approaching complexity found in Kubernetes.
Octant offers a combination of introspective tooling, cluster navigation, and object management along with a
plugin system to further extend its capabilities.
'';
homepage = "https://octant.dev/";
license = licenses.asl20;
platforms = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" ];
maintainers = with maintainers; [ jk ];
};
}

View file

@ -2,16 +2,16 @@
buildGoModule rec { buildGoModule rec {
pname = "tanka"; pname = "tanka";
version = "0.11.1"; version = "0.12.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "grafana"; owner = "grafana";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "0hp10qgalglsdhh6z6v4azh2hsr89mdrv1g5lssfl5jyink409yd"; sha256 = "1f67b236njz1qdxjyf2568vkigjmpylqlra29jlgm6vhd5qky7ia";
}; };
vendorSha256 = "15x8fqz2d2793ivgxpd9jyr34njzi1xpyxdlfyj1b01n2vr3xg4m"; vendorSha256 = "1pr265g11lcviqw974lf05q52qrfpwnpn9a64q6088g0nfp4ly06";
doCheck = false; doCheck = false;

View file

@ -114,7 +114,7 @@ let
(orig: { passthru = orig.passthru // passthru; }) (orig: { passthru = orig.passthru // passthru; })
else else
lib.appendToName "with-plugins" (stdenv.mkDerivation { lib.appendToName "with-plugins" (stdenv.mkDerivation {
inherit (terraform) name; inherit (terraform) name meta;
buildInputs = [ makeWrapper ]; buildInputs = [ makeWrapper ];
buildCommand = pluginDir + '' buildCommand = pluginDir + ''

View file

@ -2,13 +2,13 @@
buildGoModule rec { buildGoModule rec {
pname = "terragrunt"; pname = "terragrunt";
version = "0.25.5"; version = "0.26.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "gruntwork-io"; owner = "gruntwork-io";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "19rsnhws4cvssxjmm22j746jck0wzrhwi24hnlwxkdaaw92yd36l"; sha256 = "0bp43rsnkq2ysdl0v28i9agan738m0zk5yn8zza6js28sx0y7kns";
}; };
vendorSha256 = "0l85jx02dj9qvxs8l0ln5fln8vssi0fisblm5i1scz9x4a1jqg9n"; vendorSha256 = "0l85jx02dj9qvxs8l0ln5fln8vssi0fisblm5i1scz9x4a1jqg9n";

View file

@ -1,7 +1,7 @@
{ callPackage, libsForQt5 }: { callPackage, libsForQt5 }:
let let
stableVersion = "2.2.15"; stableVersion = "2.2.16";
previewVersion = stableVersion; previewVersion = stableVersion;
addVersion = args: addVersion = args:
let version = if args.stable then stableVersion else previewVersion; let version = if args.stable then stableVersion else previewVersion;
@ -26,8 +26,8 @@ let
}; };
mkGui = args: libsForQt5.callPackage (import ./gui.nix (addVersion args // extraArgs)) { }; mkGui = args: libsForQt5.callPackage (import ./gui.nix (addVersion args // extraArgs)) { };
mkServer = args: callPackage (import ./server.nix (addVersion args // extraArgs)) { }; mkServer = args: callPackage (import ./server.nix (addVersion args // extraArgs)) { };
guiSrcHash = "149yphmxc47bhc2f942lp4bx354qj3cyrpn10s1xabkn2hwrsm0d"; guiSrcHash = "1kz5gr5rwqp1hn9fw17v6sy2467506zks574nqcd2vgxzhr6cy6x";
serverSrcHash = "03cfg48xzgz362ra5x853k8r244dgbrmszcprs2lg70i3m722345"; serverSrcHash = "1r6qj1l8jgyjm67agn83zp9c2n7pgfzwyh8a5q314zxi18nm6rqp";
in { in {
guiStable = mkGui { guiStable = mkGui {
stable = true; stable = true;

View file

@ -18,24 +18,15 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "dino"; pname = "dino";
version = "0.1.0"; version = "0.2.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "dino"; owner = "dino";
repo = "dino"; repo = "dino";
rev = "v${version}"; rev = "v${version}";
sha256 = "1k5cgj5n8s40i71wqdh6m1q0njl45ichfdbbywx9rga5hljz1c54"; sha256 = "0wy1hb3kz3k4gqqwx308n37cqag2d017jwfz0b5s30nkx2pbwspw";
}; };
patches = [
(fetchpatch {
# Allow newer versions of libsignal-protocol-c
url = "https://github.com/dino/dino/commit/fbd70ceaac5ebbddfa21a580c61165bf5b861303.patch";
sha256 = "0ydpwsmwrzfsry89fsffkfalhki4n1dw99ixjvpiingdrhjmwyl2";
excludes = [ "plugins/signal-protocol/libsignal-protocol-c" ];
})
];
nativeBuildInputs = [ nativeBuildInputs = [
vala vala
cmake cmake

View file

@ -2,12 +2,12 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "signal-cli"; pname = "signal-cli";
version = "0.6.10"; version = "0.6.11";
# Building from source would be preferred, but is much more involved. # Building from source would be preferred, but is much more involved.
src = fetchurl { src = fetchurl {
url = "https://github.com/AsamK/signal-cli/releases/download/v${version}/signal-cli-${version}.tar.gz"; url = "https://github.com/AsamK/signal-cli/releases/download/v${version}/signal-cli-${version}.tar.gz";
sha256 = "0zglcx5ylqjc3hjkzi84mjhp9dchnnkv12qq75q5pqkx1w45rmim"; sha256 = "0gkaxhx87yn8gmkqjdn78m1axfnfkw07sw9qsn7821966fd5l5ax";
}; };
buildInputs = lib.optionals stdenv.isLinux [ libmatthew_java dbus dbus_java ]; buildInputs = lib.optionals stdenv.isLinux [ libmatthew_java dbus dbus_java ];

View file

@ -4,13 +4,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "toxic"; pname = "toxic";
version = "0.8.3"; version = "0.8.4";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "Tox"; owner = "Tox";
repo = "toxic"; repo = "toxic";
rev = "v${version}"; rev = "v${version}";
sha256 = "09l2j3lwvrq7bf3051vjsnml9w63790ly3iylgf26gkrmld6k31w"; sha256 = "0p1cmj1kyp506y5xm04mhlznhf5wcylvgsn6b307ms91vjqs3fg2";
}; };
makeFlags = [ "PREFIX=$(out)"]; makeFlags = [ "PREFIX=$(out)"];

View file

@ -27,12 +27,12 @@ let
in in
assert lib.all (p: p.enabled -> ! (builtins.elem null p.buildInputs)) plugins; assert lib.all (p: p.enabled -> ! (builtins.elem null p.buildInputs)) plugins;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "2.9"; version = "3.0";
pname = "weechat"; pname = "weechat";
src = fetchurl { src = fetchurl {
url = "https://weechat.org/files/src/weechat-${version}.tar.bz2"; url = "https://weechat.org/files/src/weechat-${version}.tar.bz2";
sha256 = "12h4m4ag8cdab7q6f5n357mfg0fdayab1gcikncjkkid3bjd4r4g"; sha256 = "0ciddvyhyp38fnfsi1plj3z8d76f28lbzbxib2857vw7rzyqfcky";
}; };
outputs = [ "out" "man" ] ++ map (p: p.name) enabledPlugins; outputs = [ "out" "man" ] ++ map (p: p.name) enabledPlugins;

View file

@ -64,7 +64,7 @@ mkDerivation rec {
description = "Nextcloud themed desktop client"; description = "Nextcloud themed desktop client";
homepage = "https://nextcloud.com"; homepage = "https://nextcloud.com";
license = licenses.gpl2; license = licenses.gpl2;
maintainers = with maintainers; [ caugner ma27 ]; maintainers = with maintainers; [ caugner ];
platforms = platforms.linux; platforms = platforms.linux;
}; };
} }

View file

@ -2,16 +2,16 @@
buildGoModule rec { buildGoModule rec {
pname = "seaweedfs"; pname = "seaweedfs";
version = "2.07"; version = "2.09";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "chrislusf"; owner = "chrislusf";
repo = "seaweedfs"; repo = "seaweedfs";
rev = version; rev = version;
sha256 = "0yrfpj4ph9f321vqfn1zadv44pqa3ivjq9rx6gsz9hlv50gfaqn1"; sha256 = "0yy5a7hr597vj6xbn7f5vzqdwnr637b3l1d62cmk0h7qbmh4anji";
}; };
vendorSha256 = "1ysqagi4y25bi84h5fhkdimnsigy43klf6hrcqn7q75382fb4bzn"; vendorSha256 = "1r7k0rzizs61r4gqqll7l2j7mdpi3w1ja6l4w6vxgzb45h2sjhi7";
subPackages = [ "weed" ]; subPackages = [ "weed" ];

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "sngrep"; pname = "sngrep";
version = "1.4.7"; version = "1.4.8";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "irontec"; owner = "irontec";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "1dx5l48m4634y0zi6wjky412g80lfxqq1nphv7pi1kwvm1k5m5ri"; sha256 = "0lnwsw9x4y4lr1yh749y24f71p5zsghwh5lp28zqfanw025mipf2";
}; };
buildInputs = [ buildInputs = [

View file

@ -1,52 +0,0 @@
From 29fa058c3127f3b47c347dcaa4a94f4c0e888308 Mon Sep 17 00:00:00 2001
From: Jaap Boender <jaapb@kerguelen.org>
Date: Thu, 21 Mar 2019 12:26:51 +0000
Subject: [PATCH] Compatibility with OCaml 4.08
---
src/files.ml | 2 +-
src/recon.ml | 4 ++--
src/system/system_generic.ml | 2 +-
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/src/files.ml b/src/files.ml
index ba42ad57..5babf21e 100644
--- a/src/files.ml
+++ b/src/files.ml
@@ -722,7 +722,7 @@ let get_files_in_directory dir =
with End_of_file ->
dirh.System.closedir ()
end;
- Sort.list (<) !files
+ List.sort String.compare !files
let ls dir pattern =
Util.convertUnixErrorsToTransient
diff --git a/src/recon.ml b/src/recon.ml
index 5ed358d7..0df2cfe4 100644
--- a/src/recon.ml
+++ b/src/recon.ml
@@ -651,8 +651,8 @@ let rec reconcile
(* Sorts the paths so that they will be displayed in order *)
let sortPaths pathUpdatesList =
- Sort.list
- (fun (p1, _) (p2, _) -> Path.compare p1 p2 <= 0)
+ List.sort
+ Path.compare
pathUpdatesList
let rec enterPath p1 p2 t =
diff --git a/src/system/system_generic.ml b/src/system/system_generic.ml
index ed8e18f3..0e28a781 100755
--- a/src/system/system_generic.ml
+++ b/src/system/system_generic.ml
@@ -47,7 +47,7 @@ let open_out_gen = open_out_gen
let chmod = Unix.chmod
let chown = Unix.chown
let utimes = Unix.utimes
-let link = Unix.link
+let link s d = Unix.link s d
let openfile = Unix.openfile
let opendir f =
let h = Unix.opendir f in

View file

@ -6,12 +6,12 @@ let inherit (ocamlPackages) ocaml lablgtk; in
stdenv.mkDerivation (rec { stdenv.mkDerivation (rec {
pname = "unison"; pname = "unison";
version = "2.51.2"; version = "2.51.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "bcpierce00"; owner = "bcpierce00";
repo = "unison"; repo = "unison";
rev = "v${version}"; rev = "v${version}";
sha256 = "1bykiyc0dc5pkw8x370qkg2kygq9pq7yqzsgczd3y13b6ivm4sdq"; sha256 = "sha256-42hmdMwOYSWGiDCmhuqtpCWtvtyD2l+kA/bhHD/Qh5Y=";
}; };
buildInputs = [ ocaml makeWrapper ncurses ]; buildInputs = [ ocaml makeWrapper ncurses ];
@ -27,12 +27,6 @@ stdenv.mkDerivation (rec {
"UISTYLE=${if enableX11 then "gtk2" else "text"}" "UISTYLE=${if enableX11 then "gtk2" else "text"}"
] ++ stdenv.lib.optional (!ocaml.nativeCompilers) "NATIVE=false"; ] ++ stdenv.lib.optional (!ocaml.nativeCompilers) "NATIVE=false";
patches = [
# NOTE: Only needed until Unison 2.51.3 is released!
./4.08-compatibility.patch
./lablgtk.patch
];
preInstall = "mkdir -p $out/bin"; preInstall = "mkdir -p $out/bin";
postInstall = if enableX11 then '' postInstall = if enableX11 then ''

View file

@ -1,31 +0,0 @@
From 2e7ea9481c6c3ff2ec513c39f73cfe15c0763c06 Mon Sep 17 00:00:00 2001
From: daviddavid <geiger.david68210@gmail.com>
Date: Mon, 26 Feb 2018 13:36:36 +0100
Subject: [PATCH] Fix for lablgtk >= 2.18.6
---
src/uigtk2.ml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/uigtk2.ml b/src/uigtk2.ml
index 2ba6d79..04c4da4 100644
--- a/src/uigtk2.ml
+++ b/src/uigtk2.ml
@@ -89,12 +89,12 @@ let fontItalic = lazy (Pango.Font.from_string "italic")
(* This does not work with the current version of Lablgtk, due to a bug
let icon =
GdkPixbuf.from_data ~width:48 ~height:48 ~has_alpha:true
- (Gpointer.region_of_string Pixmaps.icon_data)
+ (Gpointer.region_of_bytes Pixmaps.icon_data)
*)
let icon =
let p = GdkPixbuf.create ~width:48 ~height:48 ~has_alpha:true () in
Gpointer.blit
- (Gpointer.region_of_string Pixmaps.icon_data) (GdkPixbuf.get_pixels p);
+ (Gpointer.region_of_bytes Pixmaps.icon_data) (GdkPixbuf.get_pixels p);
p
let leftPtrWatch =
--
2.25.1

View file

@ -9,13 +9,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "dump1090"; pname = "dump1090";
version = "3.8.1"; version = "4.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "flightaware"; owner = "flightaware";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "0xg8rzrxqklx1m9ncxsd96dlkbjcsxfi2mrb859v50f07xysdyd8"; sha256 = "1zacsqaqsiapljhzw31dwc4nld2rp98jm3ivkyznrhzk9n156p42";
}; };
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [ pkgconfig ];

View file

@ -9,13 +9,13 @@ assert pulseaudioSupport -> libpulseaudio != null;
mkDerivation rec { mkDerivation rec {
pname = "gqrx"; pname = "gqrx";
version = "2.13.2"; version = "2.13.5";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "csete"; owner = "csete";
repo = "gqrx"; repo = "gqrx";
rev = "v${version}"; rev = "v${version}";
sha256 = "1lcy9gqb1x9fwq550bywj7h66rdacq5893wsax1p7qvqa27d945b"; sha256 = "168wjad5g0ka555hwsciwbj7fqx1c89q59hq1yxj8aiyp5kfcahx";
}; };
nativeBuildInputs = [ cmake ]; nativeBuildInputs = [ cmake ];

View file

@ -0,0 +1,39 @@
{ stdenv, python38Packages, fetchPypi
, fftw, alsaLib, pulseaudio, wxPython_4_0 }:
python38Packages.buildPythonApplication rec {
pname = "quisk";
version = "4.1.72";
src = fetchPypi {
inherit pname version;
sha256 = "0qw00b9d0l3ysdrmd3nr5a2zlwg9ygdil7krnk2gjp5g8bb778k7";
};
buildInputs = [ fftw alsaLib pulseaudio ];
propagatedBuildInputs = [ wxPython_4_0 ];
doCheck = false;
meta = with stdenv.lib; {
description = "A SDR transceiver for radios that use the Hermes protocol";
longDescription = ''
QUISK is a Software Defined Radio (SDR) transceiver. You supply radio
hardware that converts signals at the antenna to complex (I/Q) data at an
intermediate frequency (IF). Data can come from a sound card, Ethernet or
USB. Quisk then filters and demodulates the data and sends the audio to
your speakers or headphones. For transmit, Quisk takes the microphone
signal, converts it to I/Q data and sends it to the hardware.
Quisk can be used with SoftRock, Hermes Lite 2, HiQSDR, Odyssey and many
radios that use the Hermes protocol. Quisk can connect to digital
programs like Fldigi and WSJT-X. Quisk can be connected to other software
like N1MM+ and software that uses Hamlib.
'';
license = licenses.gpl2Plus;
homepage = "https://james.ahlstrom.name/quisk/";
maintainers = with maintainers; [ pulsation ];
platforms = platforms.linux;
};
}

View file

@ -1,16 +1,20 @@
{ stdenv, fetchurl, m4, tcsh, libX11, tcl, tk, cairo, ncurses, mesa_glu, python3 }: { stdenv, fetchurl
, m4, tcsh, libX11, tcl, tk
, cairo, ncurses, mesa_glu, python3
}:
stdenv.mkDerivation { stdenv.mkDerivation rec {
pname = "magic-vlsi"; pname = "magic-vlsi";
version = "8.3.5"; version = "8.3.80";
src = fetchurl { src = fetchurl {
url = "http://opencircuitdesign.com/magic/archive/magic-8.3.5.tgz"; url = "http://opencircuitdesign.com/magic/archive/magic-${version}.tgz";
sha256 = "0wv4zmxlqjfaakgp802icn0cd9f8ylkz2sppix83axq8p5cg90yq"; sha256 = "0a5x4sh5xsr79pqbgv6221jc4fvaxkg2pvrdhy1cs4bmsc1sbm9j";
}; };
buildInputs = [ m4 tcsh libX11 tcl tk cairo ncurses mesa_glu ]; buildInputs = [ m4 tcsh libX11 tcl tk cairo ncurses mesa_glu ];
nativeBuildInputs = [ python3 ]; nativeBuildInputs = [ python3 ];
enableParallelBuilding = true;
configureFlags = [ configureFlags = [
"--with-tcl=${tcl}" "--with-tcl=${tcl}"
@ -22,6 +26,8 @@ stdenv.mkDerivation {
patchShebangs scripts/* patchShebangs scripts/*
''; '';
NIX_CFLAGS_COMPILE = "-Wno-implicit-function-declaration";
patches = [ patches = [
./0001-strip-bin-prefix.patch ./0001-strip-bin-prefix.patch
./0002-fix-format-security.patch ./0002-fix-format-security.patch
@ -29,8 +35,8 @@ stdenv.mkDerivation {
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "VLSI layout tool written in Tcl"; description = "VLSI layout tool written in Tcl";
homepage = "http://opencircuitdesign.com/magic/"; homepage = "http://opencircuitdesign.com/magic/";
license = licenses.mit; license = licenses.mit;
maintainers = [ maintainers.anna328p ]; maintainers = with maintainers; [ anna328p thoughtpolice ];
}; };
} }

View file

@ -6,40 +6,35 @@
let let
iverilog-test = fetchFromGitHub { iverilog-test = fetchFromGitHub {
owner = "steveicarus"; owner = "steveicarus";
repo = "ivtest"; repo = "ivtest";
rev = "6882cb8ec08926c4e356c6092f0c5f8c23328d5c"; rev = "d4c80beb845cad92136c05074b3910b822a9315f";
sha256 = "04sj5nqzwls1y760kgnd9c2whkcrr8kvj9lisd5rvk0w580kjb2x"; sha256 = "13cpnkki3xmhsh2v4bp2s35mhwknapcikdh85g4q6925ka940r45";
}; };
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "iverilog"; pname = "iverilog";
version = "unstable-2020-08-24"; version = "unstable-2020-10-24";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "steveicarus"; owner = "steveicarus";
repo = pname; repo = pname;
rev = "d8556e4c86e1465b68bdc8d5ba2056ba95a42dfd"; rev = "d6e01d0c557253414109a4dde46b2966a5a3fb08";
sha256 = "sha256-sT9j/0Q2FD5MOGpH/quMGvAuM7t7QavRHKD9lX7Elfs="; sha256 = "1bl75mbycj9zpjbpay8z12384yk9ih5q9agsrjh9pva0vv3h4y4y";
}; };
enableParallelBuilding = true;
preConfigure = ''
chmod +x $PWD/autoconf.sh
$PWD/autoconf.sh
'';
nativeBuildInputs = [ autoconf gperf flex bison ]; nativeBuildInputs = [ autoconf gperf flex bison ];
buildInputs = [ readline ncurses bzip2 zlib ]; buildInputs = [ readline ncurses bzip2 zlib ];
# tests from .travis.yml preConfigure = "bash $PWD/autoconf.sh";
doCheck = true; # runs ``make check``
# most tests pass, but some that rely on exact text of floating-point numbers fail on aarch64. enableParallelBuilding = true;
doCheck = true;
# most tests pass, but some that rely on exact text of floating-point numbers
# fail on aarch64.
doInstallCheck = !stdenv.isAarch64; doInstallCheck = !stdenv.isAarch64;
installCheckInputs = [ perl ]; installCheckInputs = [ perl ];
installCheckPhase = '' installCheckPhase = ''
# copy tests to allow writing results # copy tests to allow writing results
export TESTDIR=$(mktemp -d) export TESTDIR=$(mktemp -d)
@ -58,9 +53,9 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "Icarus Verilog compiler"; description = "Icarus Verilog compiler";
homepage = "http://iverilog.icarus.com/"; homepage = "http://iverilog.icarus.com/";
license = with licenses; [ gpl2Plus lgpl21Plus] ; license = with licenses; [ gpl2Plus lgpl21Plus ];
maintainers = with maintainers; [ winden ]; maintainers = with maintainers; [ winden thoughtpolice ];
platforms = platforms.all; platforms = platforms.all;
}; };
} }

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "lean"; pname = "lean";
version = "3.21.0"; version = "3.23.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "leanprover-community"; owner = "leanprover-community";
repo = "lean"; repo = "lean";
rev = "v${version}"; rev = "v${version}";
sha256 = "1c7f2x6hdamjkr50761gcb5mg8hhlc75k1mf18vn1k9zsy1gxlgz"; sha256 = "09mklc1p6ms1jayg2f89hqfmhca3h5744lli936l38ypn1d00sxx";
}; };
nativeBuildInputs = [ cmake ]; nativeBuildInputs = [ cmake ];

View file

@ -2,16 +2,16 @@
buildGoModule rec { buildGoModule rec {
pname = "gh"; pname = "gh";
version = "1.2.0"; version = "1.2.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "cli"; owner = "cli";
repo = "cli"; repo = "cli";
rev = "v${version}"; rev = "v${version}";
sha256 = "17hbgi1jh4p07r4p5mr7w7p01i6zzr28mn5i4jaki7p0jwfqbvvi"; sha256 = "1lk3lhw598v966c553a3j0bp6vhf03xg7ggv827vzs1s8gnhxshz";
}; };
vendorSha256 = "0ybbwbw4vdsxdq4w75s1i0dqad844sfgs69b3vlscwfm6g3i9h51"; vendorSha256 = "0bkd2ndda6w8pdpvw8hhlb60g8r6gbyymgfb69dvanw5i5shsp5q";
nativeBuildInputs = [ installShellFiles ]; nativeBuildInputs = [ installShellFiles ];
@ -30,9 +30,8 @@ buildGoModule rec {
done done
''; '';
checkPhase = '' # fails with `unable to find git executable in PATH`
make test doCheck = false;
'';
meta = with lib; { meta = with lib; {
description = "GitHub CLI tool"; description = "GitHub CLI tool";

View file

@ -1,64 +1,44 @@
{ stdenv, fetchurl, rustPlatform, darwin, openssl, libsodium, nettle, clang, libclang, pkgconfig }: { stdenv
, fetchCrate
, rustPlatform
, pkg-config
, clang
, libclang
, libsodium
, openssl
, xxHash
, zstd
, darwin
, gitImportSupport ? true
, libgit2 ? null
}:
let rustPlatform.buildRustPackage rec {
# nettle-sys=1.0.1 requires the des-compat.h header, but it was removed in
# nettle 3.5. See https://nest.pijul.com/pijul_org/pijul/discussions/416
# Remove with the next release
nettle_34 = nettle.overrideAttrs (_oldAttrs: rec {
version = "3.4.1";
src = fetchurl {
url = "mirror://gnu/nettle/nettle-${version}.tar.gz";
sha256 = "1bcji95n1iz9p9vsgdgr26v6s7zhpsxfbjjwpqcihpfd6lawyhgr";
};
});
in rustPlatform.buildRustPackage rec {
pname = "pijul"; pname = "pijul";
version = "0.12.0"; version = "1.0.0-alpha";
src = fetchurl { src = fetchCrate {
url = "https://pijul.org/releases/${pname}-${version}.tar.gz"; inherit version pname;
sha256 = "1rm787kkh3ya8ix0rjvj7sbrg9armm0rnpkga6gjmsbg5bx20y4q"; sha256 = "0dnw2cxsxb20my81szyqjsmmnkakxawvsk6cnd1fi88k4lr0z2xh";
}; };
cargoSha256 = "0rf8qmgzgyl718yznbskzafyg963ygibjmqncd93zdandgl9nj5v"; cargoSha256 = "130vryqs0g4a0328ivqafdylwqs64g4mp8vgmz6nz4c9l3h9wgcx";
# N.B. The cargo depfile checker expects us to have unpacked the src tarball cargoBuildFlags = stdenv.lib.optional gitImportSupport "--features=git";
# into the standard dirname "source". LIBCLANG_PATH = "${libclang}/lib";
cargoDepsHook = ''
ln -s ${pname}-${version} source
'';
# TODO: Delete once pijul fixes upstream:
# https://nest.pijul.com/pijul_org/pijul/discussions/447
postPatch = ''
pushd ../${pname}-${version}-vendor.tar.gz/thrussh/
patch -p1 < ${./thrussh-build-fix.patch}
substituteInPlace .cargo-checksum.json --replace \
9696ed2422a483cd8de48ac241178a0441be6636909c76174c536b8b1cba9d45 \
a199f2bba520d56e11607b77be4dde0cfae576c90badb9fbd39af4784e8120d1
popd
'';
nativeBuildInputs = [ pkgconfig clang ];
postInstall = ''
mkdir -p $out/share/{bash-completion/completions,zsh/site-functions,fish/vendor_completions.d}
$out/bin/pijul generate-completions --bash > $out/share/bash-completion/completions/pijul
$out/bin/pijul generate-completions --zsh > $out/share/zsh/site-functions/_pijul
$out/bin/pijul generate-completions --fish > $out/share/fish/vendor_completions.d/pijul.fish
'';
LIBCLANG_PATH = libclang + "/lib";
buildInputs = [ openssl libsodium nettle_34 libclang ] ++ stdenv.lib.optionals stdenv.isDarwin
(with darwin.apple_sdk.frameworks; [ CoreServices Security ]);
doCheck = false; doCheck = false;
nativeBuildInputs = [ pkg-config clang ];
buildInputs = [ openssl libclang libsodium xxHash zstd ]
++ (stdenv.lib.optionals gitImportSupport [ libgit2 ])
++ (stdenv.lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
CoreServices Security SystemConfiguration
]));
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "A distributed version control system"; description = "A distributed version control system";
homepage = "https://pijul.org"; homepage = "https://pijul.org";
license = with licenses; [ gpl2Plus ]; license = with licenses; [ gpl2Plus ];
maintainers = [ maintainers.gal_bolle ]; maintainers = with maintainers; [ gal_bolle dywedir ];
}; };
} }

View file

@ -1,12 +0,0 @@
--- a/src/client/connection.rs 2020-02-04 12:48:43.845299096 +0100
+++ b/src/client/connection.rs 2020-02-04 12:50:00.140329310 +0100
@@ -546,8 +546,8 @@
&[msg::NEWKEYS],
&mut session.0.write_buffer,
);
- session.0.kex = Some(Kex::NewKeys(newkeys));
newkeys.sent = true;
+ session.0.kex = Some(Kex::NewKeys(newkeys));
}
Ok(())
}

View file

@ -1,23 +1,33 @@
{ stdenv, mkDerivation, fetchurl, autoPatchelfHook { stdenv
, ffmpeg_3, openssl, qtbase, zlib, pkgconfig , mkDerivation
, fetchurl
, autoPatchelfHook
, pkg-config
, ffmpeg_3
, openssl
, qtbase
, zlib
, withJava ? true
, jre_headless
}: }:
let let
version = "1.15.2"; version = "1.15.3";
# Using two URLs as the first one will break as soon as a new version is released # Using two URLs as the first one will break as soon as a new version is released
src_bin = fetchurl { src_bin = fetchurl {
urls = [ urls = [
"http://www.makemkv.com/download/makemkv-bin-${version}.tar.gz" "http://www.makemkv.com/download/makemkv-bin-${version}.tar.gz"
"http://www.makemkv.com/download/old/makemkv-bin-${version}.tar.gz" "http://www.makemkv.com/download/old/makemkv-bin-${version}.tar.gz"
]; ];
sha256 = "1dbips0qllbwhak44c50nlwn8n3kx8i6773cal5zl3dv4v2nf6ql"; hash = "sha256-Y23aetnwqLGaBIgJ/AP0oCrh8P5jpVrcMJgmc0Oe+i8=";
}; };
src_oss = fetchurl { src_oss = fetchurl {
urls = [ urls = [
"http://www.makemkv.com/download/makemkv-oss-${version}.tar.gz" "http://www.makemkv.com/download/makemkv-oss-${version}.tar.gz"
"http://www.makemkv.com/download/old/makemkv-oss-${version}.tar.gz" "http://www.makemkv.com/download/old/makemkv-oss-${version}.tar.gz"
]; ];
sha256 = "1wnhzlz5fw6qwh82hjcpimg60xb3a9a54zb6gcjhqr9zdly2zphy"; hash = "sha256-Qruq9YKAaNF1pDtOhptP95UjFL2NA4EuROR4v6XZHEw=";
}; };
in mkDerivation { in mkDerivation {
pname = "makemkv"; pname = "makemkv";
@ -27,10 +37,17 @@ in mkDerivation {
sourceRoot = "makemkv-oss-${version}"; sourceRoot = "makemkv-oss-${version}";
nativeBuildInputs = [ autoPatchelfHook pkgconfig ]; nativeBuildInputs = [ autoPatchelfHook pkg-config ];
buildInputs = [ ffmpeg_3 openssl qtbase zlib ]; buildInputs = [ ffmpeg_3 openssl qtbase zlib ];
qtWrapperArgs =
let
binPath = stdenv.lib.makeBinPath [ jre_headless ];
in stdenv.lib.optionals withJava [
''--prefix PATH : ${binPath}''
];
installPhase = '' installPhase = ''
runHook preInstall runHook preInstall

View file

@ -32,6 +32,7 @@
, alsaLib , alsaLib
, pulseaudioSupport ? config.pulseaudio or stdenv.isLinux , pulseaudioSupport ? config.pulseaudio or stdenv.isLinux
, libpulseaudio , libpulseaudio
, libcef
}: }:
let let
@ -44,8 +45,9 @@ in mkDerivation rec {
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "obsproject"; owner = "obsproject";
repo = "obs-studio"; repo = "obs-studio";
rev = version; rev = "refs/tags/${version}";
sha256 = "1d502f80whh686mvq0yn6zpa5nvmnlzxwp5sjz43vpbbvhpbrdqj"; sha256 = "1bf56z2yb7gq1knqwcqj369c3wl9jr3wll5vlngmfy2gwqrczjmw";
fetchSubmodules = true;
}; };
nativeBuildInputs = [ addOpenGLRunpath cmake pkgconfig ]; nativeBuildInputs = [ addOpenGLRunpath cmake pkgconfig ];
@ -55,6 +57,7 @@ in mkDerivation rec {
fdk_aac fdk_aac
ffmpeg ffmpeg
jansson jansson
libcef
libjack2 libjack2
libv4l libv4l
libxkbcommon libxkbcommon
@ -73,6 +76,18 @@ in mkDerivation rec {
++ optional alsaSupport alsaLib ++ optional alsaSupport alsaLib
++ optional pulseaudioSupport libpulseaudio; ++ optional pulseaudioSupport libpulseaudio;
# Copied from the obs-linuxbrowser
postUnpack = ''
mkdir -p cef/Release cef/Resources cef/libcef_dll_wrapper/
for i in ${libcef}/share/cef/*; do
cp -r $i cef/Release/
cp -r $i cef/Resources/
done
cp -r ${libcef}/lib/libcef.so cef/Release/
cp -r ${libcef}/lib/libcef_dll_wrapper.a cef/libcef_dll_wrapper/
cp -r ${libcef}/include cef/
'';
# obs attempts to dlopen libobs-opengl, it fails unless we make sure # obs attempts to dlopen libobs-opengl, it fails unless we make sure
# DL_OPENGL is an explicit path. Not sure if there's a better way # DL_OPENGL is an explicit path. Not sure if there's a better way
# to handle this. # to handle this.
@ -80,6 +95,9 @@ in mkDerivation rec {
"-DCMAKE_CXX_FLAGS=-DDL_OPENGL=\\\"$(out)/lib/libobs-opengl.so\\\"" "-DCMAKE_CXX_FLAGS=-DDL_OPENGL=\\\"$(out)/lib/libobs-opengl.so\\\""
"-DOBS_VERSION_OVERRIDE=${version}" "-DOBS_VERSION_OVERRIDE=${version}"
"-Wno-dev" # kill dev warnings that are useless for packaging "-Wno-dev" # kill dev warnings that are useless for packaging
# Add support for browser source
"-DBUILD_BROWSER=ON"
"-DCEF_ROOT_DIR=../../cef"
]; ];
postInstall = '' postInstall = ''

View file

@ -1,49 +0,0 @@
# We don't have a wrapper which can supply obs-studio plugins so you have to
# somewhat manually install this:
# nix-env -f . -iA obs-linuxbrowser
# mkdir -p ~/.config/obs-studio/plugins
# ln -s ~/.nix-profile/share/obs/obs-plugins/obs-linuxbrowser ~/.config/obs-studio/plugins/
{ stdenv, fetchFromGitHub, obs-studio, cmake, libcef }:
stdenv.mkDerivation rec {
pname = "obs-linuxbrowser";
version = "0.6.1-6-gf86dba6";
src = fetchFromGitHub {
owner = "bazukas";
repo = "obs-linuxbrowser";
rev = version;
sha256 = "08d7qz0721va88bcyia8p0ycw50f6x3yk97s3vzhsc9xpq691kpi";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ obs-studio ];
postUnpack = ''
mkdir -p cef/Release cef/Resources cef/libcef_dll_wrapper/
for i in ${libcef}/share/cef/*; do
ln -s $i cef/Release/
ln -s $i cef/Resources/
done
ln -s ${libcef}/lib/libcef.so cef/Release/
ln -s ${libcef}/lib/libcef_dll_wrapper.a cef/libcef_dll_wrapper/
ln -s ${libcef}/include cef/
'';
cmakeFlags = [
"-DCEF_ROOT_DIR=../../cef"
"-DOBS_INCLUDE_SEARCH_DIR=${obs-studio}/include/obs"
];
installPhase = ''
mkdir -p $out/share/obs/obs-plugins
cp -r build/obs-linuxbrowser $out/share/obs/obs-plugins/
'';
meta = with stdenv.lib; {
description = "Browser source plugin for obs-studio based on Chromium Embedded Framework";
homepage = "https://github.com/bazukas/obs-linuxbrowser";
maintainers = with maintainers; [ puffnfresh ];
license = licenses.gpl2;
platforms = with platforms; linux;
};
}

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "gnome-shell-extension-clipboard-indicator"; pname = "gnome-shell-extension-clipboard-indicator";
version = "34"; version = "37";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "Tudmotu"; owner = "Tudmotu";
repo = "gnome-shell-extension-clipboard-indicator"; repo = "gnome-shell-extension-clipboard-indicator";
rev = "v${version}"; rev = "v${version}";
sha256 = "0i00psc1ky70zljd14jzr627y7nd8xwnwrh4xpajl1f6djabh12s"; sha256 = "0npxhaam2ra2b9zh2gk2q0n5snlhx6glz86m3jf8hz037w920k41";
}; };
uuid = "clipboard-indicator@tudmotu.com"; uuid = "clipboard-indicator@tudmotu.com";

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "gnome-shell-extension-material-shell"; pname = "gnome-shell-extension-material-shell";
version = "9"; version = "10";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "material-shell"; owner = "material-shell";
repo = "material-shell"; repo = "material-shell";
rev = version; rev = version;
sha256 = "154ids72hkkvibqpq3522wf6h9qw7zkjnf8dgz50vxbkiiy015xn"; sha256 = "18d813n8s7ns8xp75zmlna7a8mi23rn9yqps51xvdd0sdgn72a1c";
}; };
# This package has a Makefile, but it's used for building a zip for # This package has a Makefile, but it's used for building a zip for

View file

@ -0,0 +1,39 @@
{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
pname = "4th";
version = "3.62.5";
src = fetchurl {
url = "https://sourceforge.net/projects/forth-4th/files/${pname}-${version}/${pname}-${version}-unix.tar.gz";
sha256 = "sha256-+CL33Yz7CxdEpi1lPG7+kzV4rheJ7GCgiFCaOLyktPw=";
};
dontConfigure = true;
makeFlags = [
"-C sources"
"CC=${stdenv.cc}/bin/cc"
];
preInstall = ''
install -d ${placeholder "out"}/bin \
${placeholder "out"}/lib \
${placeholder "out"}/share/doc/${pname} \
${placeholder "out"}/share/man
'';
installFlags = [
"BINARIES=${placeholder "out"}/bin"
"LIBRARIES=${placeholder "out"}/lib"
"DOCDIR=${placeholder "out"}/share/doc"
"MANDIR=${placeholder "out"}/share/man"
];
meta = with stdenv.lib; {
description = "A portable Forth compiler";
homepage = "https://thebeez.home.xs4all.nl/4tH/index.html";
license = licenses.lgpl3;
platforms = platforms.linux;
};
}

View file

@ -90,6 +90,6 @@ in stdenv.mkDerivation rec {
platforms = [ "x86_64-linux" ]; platforms = [ "x86_64-linux" ];
# darwin fails at https://github.com/B-Lang-org/bsc/pull/35#issuecomment-583731562 # darwin fails at https://github.com/B-Lang-org/bsc/pull/35#issuecomment-583731562
# aarch64 fails, as GHC fails with "ghc: could not execute: opt" # aarch64 fails, as GHC fails with "ghc: could not execute: opt"
maintainers = with stdenv.lib.maintainers; [ flokli thoughtpolice ]; maintainers = with stdenv.lib.maintainers; [ jcumming thoughtpolice ];
}; };
} }

View file

@ -3,9 +3,6 @@
, tools ? stdenv.cc , tools ? stdenv.cc
}: }:
assert lib.versionAtLeast ocamlPackages.ocaml.version "4.02";
assert lib.versionAtLeast coq.coq-version "8.8.0";
let let
ocaml-pkgs = with ocamlPackages; [ ocaml findlib menhir ]; ocaml-pkgs = with ocamlPackages; [ ocaml findlib menhir ];
ccomp-platform = if stdenv.isDarwin then "x86_64-macosx" else "x86_64-linux"; ccomp-platform = if stdenv.isDarwin then "x86_64-macosx" else "x86_64-linux";

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "dasm"; pname = "dasm";
version = "2.20.14"; version = "2.20.14.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "dasm-assembler"; owner = "dasm-assembler";
repo = "dasm"; repo = "dasm";
rev = version; rev = version;
sha256 = "09hzw228j43a78624bmq9cam7y1fjs48d3hpjqh2gn8iwnyk0pnp"; sha256 = "1bna0bj503xyn5inwzzsrsgi9qg8p20by4dfk7azj91ynw56pl41";
}; };
configurePhase = false; configurePhase = false;

View file

@ -105,12 +105,30 @@ rec {
# v5.0.0 # v5.0.0
sdk_5_0 = buildNetCoreSdk { aspnetcore_5_0 = buildAspNetCore {
version = "5.0.100-rc.1.20452.10"; version = "5.0.0";
sha512 = { sha512 = {
x86_64-linux = "d7e709dacc4bb188c2380060d24bfb5b791240dc33af8499fb4a31e1885a9377dad1d1ebc76847432ea67d5e4ac832a31679dc293e09fa6dade28f5fbbe4db9b"; x86_64-linux = "402046ee144915ef7d75a788cf19552eea56cf897681721b74bfc403fd366f71eb7e56f6b83ea299b6b812c6b87378c15e7bfe249415427dcd147dfeacd084d0";
aarch64-linux = "2d04890c71e845d1eb08f5dfbbb9c93024d7a52fb1cc3fd50bd51bc6bd44e455c5c82abc8f04eef23bd012984ae5f86143c600ceb49c4c733935d95d5b68785f"; aarch64-linux = "13e174de1cf10135531468c2a76852de2c37253f4d8b487ff25d249c2d7a1c590475545ca246515338baff2950422ec6c5ffe2180e8327f25cb5f9fede696ccc";
x86_64-darwin = "06bb40273071f3dd1e84ebf58abc7798795d5f1ac298f24bf7109d1597fd52ff31bcbf2b81f86d91d37ae293678d07f8da0469d7cbd318d19a8d718b6629dcac"; x86_64-darwin = "b47a9958f5412b22edb2cb47702ad442c389901ede3ca2a7f75d901f8ed608494431849f498c2191327065ff1db52a1658b1a8c0feb53aaec4c814fb0baf6818";
};
};
net_5_0 = buildNetCore {
version = "5.0.0";
sha512 = {
x86_64-linux = "d4d67df5ff5f6dde0d865a6e87559955bd57429df396cf7d05fe77f09e6220c67dc5e66439b1801ca4d301a62f81f666122bf4b623b31a46b861677dcafc62a4";
aarch64-linux = "c7a5ae2bd4e0edbd3b681c2997ebf1633bfa1cd30a4333cb63fc9945b4e7c9278282516fb5bc22c710ce6fb59dc2e28230c07b0e99826165fa148406ab8afb0f";
x86_64-darwin = "eba97211e158a0c1c15b03a79b42027319d83456dc377a2513c32defb560cd43fcfa1e84154a43243b77ca6b454c4dbc32be4153f0ba9c954c7b1e69ab5d7c53";
};
};
sdk_5_0 = buildNetCoreSdk {
version = "5.0.100";
sha512 = {
x86_64-linux = "bec37bfb327c45cc01fd843ef93b22b556f753b04724bba501622df124e7e144c303a4d7e931b5dbadbd4f7b39e5adb8f601cb6293e317ad46d8fe7d52aa9a09";
aarch64-linux = "5fceac0a9468097d66af25516da597eb4836b294ed1647ba272ade5c8faea2ed977a95d9ce720c44d71607fa3a0cf9de55afe0e66c0c89ab1cc6736945978204";
x86_64-darwin = "69ccc7c686ac06f6c658d118f59cf1a0e7284b4570375dd88d3e3043098e311745922301f2650d159624d09c4d39a1f3cbdd5daee0e408eef915de839e3bce8f";
}; };
}; };
} }

View file

@ -36,11 +36,11 @@ in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "go"; pname = "go";
version = "1.14.11"; version = "1.14.12";
src = fetchurl { src = fetchurl {
url = "https://dl.google.com/go/go${version}.src.tar.gz"; url = "https://dl.google.com/go/go${version}.src.tar.gz";
sha256 = "05hgnyda5bpm29gnx1956syq54jmpk4k9cf976vypw8ckg9g6w8q"; sha256 = "0wdr85l3rr6w50dmlbsib895gs9cc19z5piblp0v9slrsxx4nkxk";
}; };
# perl is used for testing go vet # perl is used for testing go vet

View file

@ -36,11 +36,11 @@ in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "go"; pname = "go";
version = "1.15.4"; version = "1.15.5";
src = fetchurl { src = fetchurl {
url = "https://dl.google.com/go/go${version}.src.tar.gz"; url = "https://dl.google.com/go/go${version}.src.tar.gz";
sha256 = "0rr3gp99bmdzg381x5fdwa15brllihn57175l0c82sqqljlscg86"; sha256 = "1wc43h3pmi92r6ypmh58vq13vm44rl1di09assz3xdwlry86n1y1";
}; };
# perl is used for testing go vet # perl is used for testing go vet

View file

@ -14,14 +14,14 @@ let
in in
with stdenv; mkDerivation rec { with stdenv; mkDerivation rec {
pname = "nextpnr"; pname = "nextpnr";
version = "2020.08.22"; version = "2020.11.10";
srcs = [ srcs = [
(fetchFromGitHub { (fetchFromGitHub {
owner = "YosysHQ"; owner = "YosysHQ";
repo = "nextpnr"; repo = "nextpnr";
rev = "c8ecb8341ca766e1e7565cc2b652b63eaba67508"; rev = "cf331ca2a7fa92d3414fabf003ce6fc7b515f76b";
sha256 = "1cf9ad7w5x452qdc6m9c3in6v9yzip3n1as978lbdh76f5mc00fv"; sha256 = "0ka8ncfq3v8v70m3gwb3nd2rb39sy4vz0lx9hi277cbdsprmf55j";
name = "nextpnr"; name = "nextpnr";
}) })
(fetchFromGitHub { (fetchFromGitHub {

View file

@ -10,13 +10,13 @@ let
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "souffle"; pname = "souffle";
version = "2.0.1"; version = "2.0.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "souffle-lang"; owner = "souffle-lang";
repo = "souffle"; repo = "souffle";
rev = version; rev = version;
sha256 = "0f7jwmgv83m85lrb2qwvr4cfwzbqww7pik884xd2593fsfqhpnkn"; sha256 = "1fa6yssgndrln8qbbw2j7j199glxp63irfrz1c2y424rq82mm2r5";
}; };
nativeBuildInputs = [ autoreconfHook bison flex mcpp doxygen graphviz makeWrapper perl ]; nativeBuildInputs = [ autoreconfHook bison flex mcpp doxygen graphviz makeWrapper perl ];

View file

@ -14,15 +14,32 @@
, zlib , zlib
}: }:
# NOTE: as of late 2020, yosys has switched to an automation robot that
# automatically tags their repository Makefile with a new build number every
# day when changes are committed. please MAKE SURE that the version number in
# the 'version' field exactly matches the YOSYS_VER field in the Yosys
# makefile!
#
# if a change in yosys isn't yet available under a build number like this (i.e.
# it was very recently merged, within an hour), wait a few hours for the
# automation robot to tag the new version, like so:
#
# https://github.com/YosysHQ/yosys/commit/71ca9a825309635511b64b3ec40e5e5e9b6ad49b
#
# note that while most nix packages for "unstable versions" use a date-based
# version scheme, synchronizing the nix package version here with the unstable
# yosys version number helps users report better bugs upstream, and is
# ultimately less confusing than using dates.
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "yosys"; pname = "yosys";
version = "2020.10.20"; version = "0.9+3675";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "YosysHQ"; owner = "YosysHQ";
repo = "yosys"; repo = "yosys";
rev = "06347b119b08257eff37cdd10ed802e794c1a3cf"; rev = "71ca9a825309635511b64b3ec40e5e5e9b6ad49b";
sha256 = "07058r8095192gwkiy2yyvj9vxv09fcw9bqi2b39wn85lh5kx2k2"; sha256 = "03jlhfvm5rxx8yybf94nqd3ld2y6brp8r0k6gfi56chv3iqqavy3";
}; };
enableParallelBuilding = true; enableParallelBuilding = true;
@ -55,11 +72,17 @@ stdenv.mkDerivation rec {
(cd misc && ${protobuf}/bin/protoc --cpp_out ../backends/protobuf/ ./yosys.proto) (cd misc && ${protobuf}/bin/protoc --cpp_out ../backends/protobuf/ ./yosys.proto)
if ! grep -q "ABCREV = ${shortAbcRev}" Makefile; then if ! grep -q "ABCREV = ${shortAbcRev}" Makefile; then
echo "yosys isn't compatible with the provided abc (${shortAbcRev}), failing." echo "ERROR: yosys isn't compatible with the provided abc (${shortAbcRev}), failing."
exit 1
fi
if ! grep -q "YOSYS_VER := ${version}" Makefile; then
echo "ERROR: yosys version in Makefile isn't equivalent to version of the nix package (${version}), failing."
exit 1 exit 1
fi fi
''; '';
checkTarget = "test";
doCheck = true; doCheck = true;
checkInputs = [ verilog ]; checkInputs = [ verilog ];
@ -68,10 +91,10 @@ stdenv.mkDerivation rec {
# they just assume that 'yosys-abc' is available -- but it's not installed # they just assume that 'yosys-abc' is available -- but it's not installed
# when using ABCEXTERNAL # when using ABCEXTERNAL
# #
# add a symlink to fake things so that both variants work the same way. # add a symlink to fake things so that both variants work the same way. this
postInstall = '' # is also needed at build time for the test suite.
ln -sfv ${abc-verifier}/bin/abc $out/bin/yosys-abc postBuild = "ln -sfv ${abc-verifier}/bin/abc ./yosys-abc";
''; postInstall = "ln -sfv ${abc-verifier}/bin/abc $out/bin/yosys-abc";
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "Open RTL synthesis framework and tools"; description = "Open RTL synthesis framework and tools";

View file

@ -1110,9 +1110,9 @@ self: super: {
}) })
(pkgs.fetchpatch { (pkgs.fetchpatch {
# Relax dependency constraints, # Relax dependency constraints,
# upstream PR: https://github.com/james-preston/hail/pull/15 # upstream PR: https://github.com/james-preston/hail/pull/16
url = "https://patch-diff.githubusercontent.com/raw/james-preston/hail/pull/15.patch"; url = "https://patch-diff.githubusercontent.com/raw/james-preston/hail/pull/16.patch";
sha256 = "03kdvr8hxi6isb8yxp5rgcmz855n19m1yacn3d56a4i58j2mldjw"; sha256 = "0dpagpn654zjrlklihsg911lmxjj8msylbm3c68xa5aad1s9gcf7";
}) })
]; ];
}); });

View file

@ -5717,7 +5717,6 @@ broken-packages:
- Haggressive - Haggressive
- hahp - hahp
- haiji - haiji
- hail
- hailgun-send - hailgun-send
- hairy - hairy
- hakaru - hakaru

View file

@ -2,22 +2,30 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "evcxr"; pname = "evcxr";
version = "0.5.3"; version = "0.6.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "google"; owner = "google";
repo = "evcxr"; repo = "evcxr";
rev = "v${version}"; rev = "v${version}";
sha256 = "144xqi19d2nj9qgmhpx6d1kfhx9vfkmk7rnq6nzybpx4mbbl3ki2"; sha256 = "sha256-QpUhUE65/IuT/VenziPX6z+CbJswbPPIv/ZnTthZpEU=";
}; };
cargoSha256 = "07lzxh0wh6azrlzfaacg29zmkn8jdnkdqbwgd5ajy79y8nii3c7z"; cargoSha256 = "sha256-iUzVd4XtD+41yTV/BmqWLenzAUNPfS7vIHm1KfuPe9A=";
RUST_SRC_PATH = "${rustPlatform.rustLibSrc}";
nativeBuildInputs = [ pkgconfig makeWrapper cmake ]; nativeBuildInputs = [ pkgconfig makeWrapper cmake ];
buildInputs = stdenv.lib.optional stdenv.isDarwin Security; buildInputs = stdenv.lib.optional stdenv.isDarwin Security;
postInstall = '' postInstall = let
wrapProgram $out/bin/evcxr --prefix PATH : ${stdenv.lib.makeBinPath [ cargo gcc ]} wrap = exe: ''
wrapProgram $out/bin/evcxr_jupyter --prefix PATH : ${stdenv.lib.makeBinPath [ cargo gcc ]} wrapProgram $out/bin/${exe} \
--prefix PATH : ${stdenv.lib.makeBinPath [ cargo gcc ]} \
--set-default RUST_SRC_PATH "$RUST_SRC_PATH"
'';
in ''
${wrap "evcxr"}
${wrap "evcxr_jupyter"}
rm $out/bin/testing_runtime rm $out/bin/testing_runtime
''; '';

Some files were not shown because too many files have changed in this diff Show more