diff --git a/pkgs/applications/editors/codeblocks/default.nix b/pkgs/applications/editors/codeblocks/default.nix index 8a5f4cf4b3a4..032fd765b27f 100644 --- a/pkgs/applications/editors/codeblocks/default.nix +++ b/pkgs/applications/editors/codeblocks/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchurl, pkg-config, file, zip, wxGTK30-gtk3, gtk3 +{ lib, stdenv, fetchurl, fetchpatch, pkg-config, file, zip, wxGTK31-gtk3, gtk3 , contribPlugins ? false, hunspell, gamin, boost, wrapGAppsHook }: @@ -15,14 +15,55 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ pkg-config file zip wrapGAppsHook ]; - buildInputs = [ wxGTK30-gtk3 gtk3 ] + buildInputs = [ wxGTK31-gtk3 gtk3 ] ++ optionals contribPlugins [ hunspell gamin boost ]; enableParallelBuilding = true; - patches = [ ./writable-projects.patch ]; + patches = [ + ./writable-projects.patch + ./fix-clipboard-flush.patch + # Fix build on non-x86 machines + (fetchpatch { + name = "remove-int3.patch"; + url = "https://github.com/arnholm/codeblocks_sfmirror/commit/d76c015c456561d2c7987935a5f4dc6c0932b0c4.patch"; + sha256 = "sha256-dpH33vGf2aNdYTeLwxglYDNbvwoY2bGSG6YFRyoGw+A="; + }) + (fetchpatch { + name = "remove-pragmas.patch"; + url = "https://github.com/arnholm/codeblocks_sfmirror/commit/966949d5ab7f3cb86e2a2c7ef4e853ee209b5a1a.patch"; + sha256 = "sha256-XjejjGOvDk3gl1/n9R69XATGLj5n7tOZNyG8vIlwfyg="; + }) + # Fix build with GCC 11 + (fetchpatch { + name = "use-gcc11-openfilelist.patch"; + url = "https://github.com/arnholm/codeblocks_sfmirror/commit/a5ea6ff7ff301d739d3dc8145db1578f504ee4ca.patch"; + sha256 = "sha256-kATaLej8kJf4xm0VicHfRetOepX8O9gOhwdna0qylvQ="; + }) + (fetchpatch { + name = "use-gcc11-ccmanager.patch"; + url = "https://github.com/arnholm/codeblocks_sfmirror/commit/04b7c50fb8c6a29b2d84579ee448d2498414d855.patch"; + sha256 = "sha256-VPy/M6IvNBxUE4hZRbLExFm0DJf4gmertrqrvsXQNz4="; + }) + # Fix build with wxGTK 3.1.5 + (fetchpatch { + name = "use-wxgtk315.patch"; + url = "https://github.com/arnholm/codeblocks_sfmirror/commit/2345b020b862ec855038dd32a51ebb072647f28d.patch"; + sha256 = "sha256-RRjwZA37RllnG8cJdBEnASpEd8z0+ru96fjntO42OvU="; + }) + (fetchpatch { + name = "fix-getstring.patch"; + url = "https://github.com/arnholm/codeblocks_sfmirror/commit/dbdf5c5ea9e3161233f0588a7616b7e4fedc7870.patch"; + sha256 = "sha256-DrEMFluN8vs0LERa7ULGshl7HdejpsuvXAMjIr/K1fQ="; + }) + ]; preConfigure = "substituteInPlace ./configure --replace /usr/bin/file ${file}/bin/file"; postConfigure = optionalString stdenv.isLinux "substituteInPlace libtool --replace ldconfig ${stdenv.cc.libc.bin}/bin/ldconfig"; - configureFlags = [ "--enable-pch=no" ] - ++ optionals contribPlugins [ "--with-contrib-plugins" "--with-boost-libdir=${boost}/lib" ]; + configureFlags = [ "--enable-pch=no" ] ++ optionals contribPlugins [ + ("--with-contrib-plugins" + optionalString stdenv.isDarwin "=all,-FileManager,-NassiShneiderman") + "--with-boost-libdir=${boost}/lib" + ]; + postInstall = optionalString stdenv.isDarwin '' + ln -s $out/lib/codeblocks/plugins $out/share/codeblocks/plugins + ''; meta = { maintainers = [ maintainers.linquize ]; diff --git a/pkgs/applications/editors/codeblocks/fix-clipboard-flush.patch b/pkgs/applications/editors/codeblocks/fix-clipboard-flush.patch new file mode 100644 index 000000000000..ee4ebd61af0b --- /dev/null +++ b/pkgs/applications/editors/codeblocks/fix-clipboard-flush.patch @@ -0,0 +1,24 @@ +diff --git a/src/src/app.cpp b/src/src/app.cpp +index 81130fd..f98d37b 100644 +--- a/src/src/app.cpp ++++ b/src/src/app.cpp +@@ -602,7 +602,8 @@ bool CodeBlocksApp::OnInit() + m_BatchWindowAutoClose = true; + m_pSingleInstance = nullptr; + +- wxTheClipboard->Flush(); ++ if (wxTheClipboard->IsOpened()) ++ wxTheClipboard->Flush(); + + wxCmdLineParser& parser = *Manager::GetCmdLineParser(); + parser.SetDesc(cmdLineDesc); +@@ -851,7 +852,8 @@ bool CodeBlocksApp::OnInit() + + int CodeBlocksApp::OnExit() + { +- wxTheClipboard->Flush(); ++ if (wxTheClipboard->IsOpened()) ++ wxTheClipboard->Flush(); + + if (g_DDEServer) delete g_DDEServer; + diff --git a/pkgs/applications/editors/gnome-inform7/default.nix b/pkgs/applications/editors/gnome-inform7/default.nix index 534466db8d78..509eee06e2be 100644 --- a/pkgs/applications/editors/gnome-inform7/default.nix +++ b/pkgs/applications/editors/gnome-inform7/default.nix @@ -22,12 +22,12 @@ let pkg-config docbook2x docbook-xsl-nons + wrapGAppsHook ]; buildInputs = [ gtk3 gobject-introspection vala gtk-doc - wrapGAppsHook ]; }); diff --git a/pkgs/applications/networking/instant-messengers/matrix-recorder/composition.nix b/pkgs/applications/networking/instant-messengers/matrix-recorder/composition.nix index 2992bf22cb31..c1eafe304a9d 100644 --- a/pkgs/applications/networking/instant-messengers/matrix-recorder/composition.nix +++ b/pkgs/applications/networking/instant-messengers/matrix-recorder/composition.nix @@ -2,7 +2,7 @@ {pkgs ? import { inherit system; - }, system ? builtins.currentSystem, nodejs ? pkgs."nodejs-12_x"}: + }, system ? builtins.currentSystem, nodejs ? pkgs."nodejs-14_x"}: let nodeEnv = import ./node-env.nix { diff --git a/pkgs/applications/networking/instant-messengers/matrix-recorder/default.nix b/pkgs/applications/networking/instant-messengers/matrix-recorder/default.nix index 9e3527948818..f2b02ebdec4f 100644 --- a/pkgs/applications/networking/instant-messengers/matrix-recorder/default.nix +++ b/pkgs/applications/networking/instant-messengers/matrix-recorder/default.nix @@ -6,13 +6,13 @@ postInstall = '' mkdir "$out/bin" echo '#!/bin/sh' >> "$out/bin/matrix-recorder" - echo "'${pkgs.nodejs-12_x}/bin/node'" \ + echo "'${pkgs.nodejs-14_x}/bin/node'" \ "'$out/lib/node_modules/matrix-recorder/matrix-recorder.js'" \ '"$@"' >> "$out/bin/matrix-recorder" echo '#!/bin/sh' >> "$out/bin/matrix-recorder-to-html" echo 'cd "$1"' >> "$out/bin/matrix-recorder-to-html" echo "test -d templates/ || ln -sfT '$out/lib/node_modules/matrix-recorder/templates' templates" >> "$out/bin/matrix-recorder-to-html" - echo "'${pkgs.nodejs-12_x}/bin/node'" \ + echo "'${pkgs.nodejs-14_x}/bin/node'" \ "'$out/lib/node_modules/matrix-recorder/recorder-to-html.js'" \ '.' >> "$out/bin/matrix-recorder-to-html" chmod a+x "$out/bin/matrix-recorder" diff --git a/pkgs/applications/version-management/mercurial/default.nix b/pkgs/applications/version-management/mercurial/default.nix index 489872915990..96dc83024885 100644 --- a/pkgs/applications/version-management/mercurial/default.nix +++ b/pkgs/applications/version-management/mercurial/default.nix @@ -21,11 +21,11 @@ let self = python3Packages.buildPythonApplication rec { pname = "mercurial${lib.optionalString fullBuild "-full"}"; - version = "6.1.1"; + version = "6.1.2"; src = fetchurl { url = "https://mercurial-scm.org/release/mercurial-${version}.tar.gz"; - sha256 = "sha256-V7ikYdDOE9muOBfYqL35Ay407fqsPbzLO2a4NdzpM4g="; + sha256 = "sha256-pSgQ/AFAmCjEl00Lwsu1yA6UjVtYTPsadpliPpJKLyo="; }; format = "other"; @@ -35,7 +35,7 @@ let cargoDeps = if rustSupport then rustPlatform.fetchCargoTarball { inherit src; name = "mercurial-${version}"; - sha256 = "sha256-HYH7+OD11kdZdxFrx1KVle1NesS3fAgwVXJpAeiXDTo="; + sha256 = "sha256-OSaeOp+SjQ5n61jV8UthtQQqkneBYJhESoQDCwRSTco="; sourceRoot = "mercurial-${version}/rust"; } else null; cargoRoot = if rustSupport then "rust" else null; @@ -151,6 +151,8 @@ let EOF export HGTEST_REAL_HG="${mercurial}/bin/hg" + # include tests for native components + export HGMODULEPOLICY="rust+c" # extended timeout necessary for tests to pass on the busy CI workers export HGTESTFLAGS="--blacklist blacklists/nix --timeout 1800 -j$NIX_BUILD_CORES ${flags}" make check diff --git a/pkgs/build-support/skaware/build-skaware-package.nix b/pkgs/build-support/skaware/build-skaware-package.nix index cd6519654074..1988d95212c3 100644 --- a/pkgs/build-support/skaware/build-skaware-package.nix +++ b/pkgs/build-support/skaware/build-skaware-package.nix @@ -22,7 +22,7 @@ , postInstall # : list Maintainer , maintainers ? [ ] - # : passtrhu arguments (e.g. tests) + # : passthru arguments (e.g. tests) , passthru ? { } }: diff --git a/pkgs/development/compilers/nim/default.nix b/pkgs/development/compilers/nim/default.nix index f7250885f14c..2a65c3fc2ec9 100644 --- a/pkgs/development/compilers/nim/default.nix +++ b/pkgs/development/compilers/nim/default.nix @@ -98,12 +98,12 @@ in { nim-unwrapped = stdenv.mkDerivation rec { pname = "nim-unwrapped"; - version = "1.6.4"; + version = "1.6.6"; strictDeps = true; src = fetchurl { url = "https://nim-lang.org/download/nim-${version}.tar.xz"; - hash = "sha256-f8MJKFW1wiAM2f7tEz0EYFgj8lDXO01KxQEwA3DgoMI="; + hash = "sha256-Z7ERzm84YVA7n8wcrln8NNASJWbT7P7zoGSiF0EhpFI="; }; buildInputs = [ boehmgc openssl pcre readline sqlite ]; diff --git a/pkgs/development/libraries/vtk/9.x.nix b/pkgs/development/libraries/vtk/9.x.nix index b95bcb2b8693..5e918e8122fd 100644 --- a/pkgs/development/libraries/vtk/9.x.nix +++ b/pkgs/development/libraries/vtk/9.x.nix @@ -2,4 +2,13 @@ import ./generic.nix { majorVersion = "9.0"; minorVersion = "3"; sourceSha256 = "vD65Ylsrjb/stgUqKrCR/JFAXeQzOw7GjzMjgVFU7Yo="; + + patchesToFetch = [ + # Add missing header includes. + # https://gitlab.kitware.com/vtk/vtk/-/merge_requests/7611 + { + url = "https://gitlab.kitware.com/vtk/vtk/-/commit/e066c3f4fbbfe7470c6207db0fc3f3952db633cb.patch"; + sha256 = "ggmDisS3qoMquOqrmIYlCIT7TLxP/DUtW29ktjaEnlM="; + } + ]; } diff --git a/pkgs/development/python-modules/aioamqp/compat-pamqp-3.patch b/pkgs/development/python-modules/aioamqp/compat-pamqp-3.patch deleted file mode 100644 index 0d319eb2a0d4..000000000000 --- a/pkgs/development/python-modules/aioamqp/compat-pamqp-3.patch +++ /dev/null @@ -1,498 +0,0 @@ -From 17b5be250cb5ecf95cf4f77c8c930450d876efa6 Mon Sep 17 00:00:00 2001 -From: dzen -Date: Thu, 12 Mar 2020 08:32:29 +0100 -Subject: [PATCH 1/3] Moves to pamqp 3.0 - ---- - aioamqp/channel.py | 114 +++++++++++++++++++------------------- - aioamqp/frame.py | 1 - - aioamqp/protocol.py | 22 ++++---- - aioamqp/tests/testcase.py | 2 +- - 4 files changed, 69 insertions(+), 70 deletions(-) - -diff --git a/aioamqp/channel.py b/aioamqp/channel.py -index 7f0f402..ea164c4 100644 ---- a/aioamqp/channel.py -+++ b/aioamqp/channel.py -@@ -9,7 +9,7 @@ - from itertools import count - import warnings - --import pamqp.specification -+import pamqp.commands - - from . import frame as amqp_frame - from . import exceptions -@@ -78,35 +78,35 @@ def connection_closed(self, server_code=None, server_reason=None, exception=None - - async def dispatch_frame(self, frame): - methods = { -- pamqp.specification.Channel.OpenOk.name: self.open_ok, -- pamqp.specification.Channel.FlowOk.name: self.flow_ok, -- pamqp.specification.Channel.CloseOk.name: self.close_ok, -- pamqp.specification.Channel.Close.name: self.server_channel_close, -- -- pamqp.specification.Exchange.DeclareOk.name: self.exchange_declare_ok, -- pamqp.specification.Exchange.BindOk.name: self.exchange_bind_ok, -- pamqp.specification.Exchange.UnbindOk.name: self.exchange_unbind_ok, -- pamqp.specification.Exchange.DeleteOk.name: self.exchange_delete_ok, -- -- pamqp.specification.Queue.DeclareOk.name: self.queue_declare_ok, -- pamqp.specification.Queue.DeleteOk.name: self.queue_delete_ok, -- pamqp.specification.Queue.BindOk.name: self.queue_bind_ok, -- pamqp.specification.Queue.UnbindOk.name: self.queue_unbind_ok, -- pamqp.specification.Queue.PurgeOk.name: self.queue_purge_ok, -- -- pamqp.specification.Basic.QosOk.name: self.basic_qos_ok, -- pamqp.specification.Basic.ConsumeOk.name: self.basic_consume_ok, -- pamqp.specification.Basic.CancelOk.name: self.basic_cancel_ok, -- pamqp.specification.Basic.GetOk.name: self.basic_get_ok, -- pamqp.specification.Basic.GetEmpty.name: self.basic_get_empty, -- pamqp.specification.Basic.Deliver.name: self.basic_deliver, -- pamqp.specification.Basic.Cancel.name: self.server_basic_cancel, -- pamqp.specification.Basic.Ack.name: self.basic_server_ack, -- pamqp.specification.Basic.Nack.name: self.basic_server_nack, -- pamqp.specification.Basic.RecoverOk.name: self.basic_recover_ok, -- pamqp.specification.Basic.Return.name: self.basic_return, -- -- pamqp.specification.Confirm.SelectOk.name: self.confirm_select_ok, -+ pamqp.commands.Channel.OpenOk.name: self.open_ok, -+ pamqp.commands.Channel.FlowOk.name: self.flow_ok, -+ pamqp.commands.Channel.CloseOk.name: self.close_ok, -+ pamqp.commands.Channel.Close.name: self.server_channel_close, -+ -+ pamqp.commands.Exchange.DeclareOk.name: self.exchange_declare_ok, -+ pamqp.commands.Exchange.BindOk.name: self.exchange_bind_ok, -+ pamqp.commands.Exchange.UnbindOk.name: self.exchange_unbind_ok, -+ pamqp.commands.Exchange.DeleteOk.name: self.exchange_delete_ok, -+ -+ pamqp.commands.Queue.DeclareOk.name: self.queue_declare_ok, -+ pamqp.commands.Queue.DeleteOk.name: self.queue_delete_ok, -+ pamqp.commands.Queue.BindOk.name: self.queue_bind_ok, -+ pamqp.commands.Queue.UnbindOk.name: self.queue_unbind_ok, -+ pamqp.commands.Queue.PurgeOk.name: self.queue_purge_ok, -+ -+ pamqp.commands.Basic.QosOk.name: self.basic_qos_ok, -+ pamqp.commands.Basic.ConsumeOk.name: self.basic_consume_ok, -+ pamqp.commands.Basic.CancelOk.name: self.basic_cancel_ok, -+ pamqp.commands.Basic.GetOk.name: self.basic_get_ok, -+ pamqp.commands.Basic.GetEmpty.name: self.basic_get_empty, -+ pamqp.commands.Basic.Deliver.name: self.basic_deliver, -+ pamqp.commands.Basic.Cancel.name: self.server_basic_cancel, -+ pamqp.commands.Basic.Ack.name: self.basic_server_ack, -+ pamqp.commands.Basic.Nack.name: self.basic_server_nack, -+ pamqp.commands.Basic.RecoverOk.name: self.basic_recover_ok, -+ pamqp.commands.Basic.Return.name: self.basic_return, -+ -+ pamqp.commands.Confirm.SelectOk.name: self.confirm_select_ok, - } - - if frame.name not in methods: -@@ -144,7 +144,7 @@ async def _write_frame_awaiting_response(self, waiter_id, channel_id, request, - - async def open(self): - """Open the channel on the server.""" -- request = pamqp.specification.Channel.Open() -+ request = pamqp.commands.Channel.Open() - return (await self._write_frame_awaiting_response( - 'open', self.channel_id, request, no_wait=False, check_open=False)) - -@@ -159,7 +159,7 @@ async def close(self, reply_code=0, reply_text="Normal Shutdown"): - if not self.is_open: - raise exceptions.ChannelClosed("channel already closed or closing") - self.close_event.set() -- request = pamqp.specification.Channel.Close(reply_code, reply_text, class_id=0, method_id=0) -+ request = pamqp.commands.Channel.Close(reply_code, reply_text, class_id=0, method_id=0) - return (await self._write_frame_awaiting_response( - 'close', self.channel_id, request, no_wait=False, check_open=False)) - -@@ -169,7 +169,7 @@ async def close_ok(self, frame): - self.protocol.release_channel_id(self.channel_id) - - async def _send_channel_close_ok(self): -- request = pamqp.specification.Channel.CloseOk() -+ request = pamqp.commands.Channel.CloseOk() - await self._write_frame(self.channel_id, request) - - async def server_channel_close(self, frame): -@@ -183,7 +183,7 @@ async def server_channel_close(self, frame): - self.connection_closed(results['reply_code'], results['reply_text']) - - async def flow(self, active): -- request = pamqp.specification.Channel.Flow(active) -+ request = pamqp.commands.Channel.Flow(active) - return (await self._write_frame_awaiting_response( - 'flow', self.channel_id, request, no_wait=False, - check_open=False)) -@@ -201,7 +201,7 @@ async def flow_ok(self, frame): - - async def exchange_declare(self, exchange_name, type_name, passive=False, durable=False, - auto_delete=False, no_wait=False, arguments=None): -- request = pamqp.specification.Exchange.Declare( -+ request = pamqp.commands.Exchange.Declare( - exchange=exchange_name, - exchange_type=type_name, - passive=passive, -@@ -222,7 +222,7 @@ async def exchange_declare_ok(self, frame): - return future - - async def exchange_delete(self, exchange_name, if_unused=False, no_wait=False): -- request = pamqp.specification.Exchange.Delete(exchange=exchange_name, if_unused=if_unused, nowait=no_wait) -+ request = pamqp.commands.Exchange.Delete(exchange=exchange_name, if_unused=if_unused, nowait=no_wait) - return await self._write_frame_awaiting_response( - 'exchange_delete', self.channel_id, request, no_wait) - -@@ -235,7 +235,7 @@ async def exchange_bind(self, exchange_destination, exchange_source, routing_key - no_wait=False, arguments=None): - if arguments is None: - arguments = {} -- request = pamqp.specification.Exchange.Bind( -+ request = pamqp.commands.Exchange.Bind( - destination=exchange_destination, - source=exchange_source, - routing_key=routing_key, -@@ -255,7 +255,7 @@ async def exchange_unbind(self, exchange_destination, exchange_source, routing_k - if arguments is None: - arguments = {} - -- request = pamqp.specification.Exchange.Unbind( -+ request = pamqp.commands.Exchange.Unbind( - destination=exchange_destination, - source=exchange_source, - routing_key=routing_key, -@@ -297,7 +297,7 @@ async def queue_declare(self, queue_name=None, passive=False, durable=False, - - if not queue_name: - queue_name = 'aioamqp.gen-' + str(uuid.uuid4()) -- request = pamqp.specification.Queue.Declare( -+ request = pamqp.commands.Queue.Declare( - queue=queue_name, - passive=passive, - durable=durable, -@@ -327,7 +327,7 @@ async def queue_delete(self, queue_name, if_unused=False, if_empty=False, no_wai - if_empty: bool, the queue is deleted if it has no messages. Raise if not. - no_wait: bool, if set, the server will not respond to the method - """ -- request = pamqp.specification.Queue.Delete( -+ request = pamqp.commands.Queue.Delete( - queue=queue_name, - if_unused=if_unused, - if_empty=if_empty, -@@ -346,7 +346,7 @@ async def queue_bind(self, queue_name, exchange_name, routing_key, no_wait=False - if arguments is None: - arguments = {} - -- request = pamqp.specification.Queue.Bind( -+ request = pamqp.commands.Queue.Bind( - queue=queue_name, - exchange=exchange_name, - routing_key=routing_key, -@@ -367,7 +367,7 @@ async def queue_unbind(self, queue_name, exchange_name, routing_key, arguments=N - if arguments is None: - arguments = {} - -- request = pamqp.specification.Queue.Unbind( -+ request = pamqp.commands.Queue.Unbind( - queue=queue_name, - exchange=exchange_name, - routing_key=routing_key, -@@ -383,7 +383,7 @@ async def queue_unbind_ok(self, frame): - logger.debug("Queue unbound") - - async def queue_purge(self, queue_name, no_wait=False): -- request = pamqp.specification.Queue.Purge( -+ request = pamqp.commands.Queue.Purge( - queue=queue_name, nowait=no_wait - ) - return (await self._write_frame_awaiting_response( -@@ -406,7 +406,7 @@ async def basic_publish(self, payload, exchange_name, routing_key, - if properties is None: - properties = {} - -- method_request = pamqp.specification.Basic.Publish( -+ method_request = pamqp.commands.Basic.Publish( - exchange=exchange_name, - routing_key=routing_key, - mandatory=mandatory, -@@ -417,7 +417,7 @@ async def basic_publish(self, payload, exchange_name, routing_key, - - header_request = pamqp.header.ContentHeader( - body_size=len(payload), -- properties=pamqp.specification.Basic.Properties(**properties) -+ properties=pamqp.commands.Basic.Properties(**properties) - ) - await self._write_frame(self.channel_id, header_request, drain=False) - -@@ -446,7 +446,7 @@ async def basic_qos(self, prefetch_size=0, prefetch_count=0, connection_global=F - settings should apply per-consumer channel; and global=true to mean - that the QoS settings should apply per-channel. - """ -- request = pamqp.specification.Basic.Qos( -+ request = pamqp.commands.Basic.Qos( - prefetch_size, prefetch_count, connection_global - ) - return (await self._write_frame_awaiting_response( -@@ -490,7 +490,7 @@ async def basic_consume(self, callback, queue_name='', consumer_tag='', no_local - if arguments is None: - arguments = {} - -- request = pamqp.specification.Basic.Consume( -+ request = pamqp.commands.Basic.Consume( - queue=queue_name, - consumer_tag=consumer_tag, - no_local=no_local, -@@ -561,7 +561,7 @@ async def server_basic_cancel(self, frame): - callback, error) - - async def basic_cancel(self, consumer_tag, no_wait=False): -- request = pamqp.specification.Basic.Cancel(consumer_tag, no_wait) -+ request = pamqp.commands.Basic.Cancel(consumer_tag, no_wait) - return (await self._write_frame_awaiting_response( - 'basic_cancel', self.channel_id, request, no_wait=no_wait) - ) -@@ -575,7 +575,7 @@ async def basic_cancel_ok(self, frame): - logger.debug("Cancel ok") - - async def basic_get(self, queue_name='', no_ack=False): -- request = pamqp.specification.Basic.Get(queue=queue_name, no_ack=no_ack) -+ request = pamqp.commands.Basic.Get(queue=queue_name, no_ack=no_ack) - return (await self._write_frame_awaiting_response( - 'basic_get', self.channel_id, request, no_wait=False) - ) -@@ -606,11 +606,11 @@ async def basic_get_empty(self, frame): - future.set_exception(exceptions.EmptyQueue) - - async def basic_client_ack(self, delivery_tag, multiple=False): -- request = pamqp.specification.Basic.Ack(delivery_tag, multiple) -+ request = pamqp.commands.Basic.Ack(delivery_tag, multiple) - await self._write_frame(self.channel_id, request) - - async def basic_client_nack(self, delivery_tag, multiple=False, requeue=True): -- request = pamqp.specification.Basic.Nack(delivery_tag, multiple, requeue) -+ request = pamqp.commands.Basic.Nack(delivery_tag, multiple, requeue) - await self._write_frame(self.channel_id, request) - - async def basic_server_ack(self, frame): -@@ -620,15 +620,15 @@ async def basic_server_ack(self, frame): - fut.set_result(True) - - async def basic_reject(self, delivery_tag, requeue=False): -- request = pamqp.specification.Basic.Reject(delivery_tag, requeue) -+ request = pamqp.commands.Basic.Reject(delivery_tag, requeue) - await self._write_frame(self.channel_id, request) - - async def basic_recover_async(self, requeue=True): -- request = pamqp.specification.Basic.RecoverAsync(requeue) -+ request = pamqp.commands.Basic.RecoverAsync(requeue) - await self._write_frame(self.channel_id, request) - - async def basic_recover(self, requeue=True): -- request = pamqp.specification.Basic.Recover(requeue) -+ request = pamqp.commands.Basic.Recover(requeue) - return (await self._write_frame_awaiting_response( - 'basic_recover', self.channel_id, request, no_wait=False) - ) -@@ -681,7 +681,7 @@ async def publish(self, payload, exchange_name, routing_key, properties=None, ma - delivery_tag = next(self.delivery_tag_iter) # pylint: disable=stop-iteration-return - fut = self._set_waiter('basic_server_ack_{}'.format(delivery_tag)) - -- method_request = pamqp.specification.Basic.Publish( -+ method_request = pamqp.commands.Basic.Publish( - exchange=exchange_name, - routing_key=routing_key, - mandatory=mandatory, -@@ -689,7 +689,7 @@ async def publish(self, payload, exchange_name, routing_key, properties=None, ma - ) - await self._write_frame(self.channel_id, method_request, drain=False) - -- properties = pamqp.specification.Basic.Properties(**properties) -+ properties = pamqp.commands.Basic.Properties(**properties) - header_request = pamqp.header.ContentHeader( - body_size=len(payload), properties=properties - ) -@@ -710,7 +710,7 @@ async def publish(self, payload, exchange_name, routing_key, properties=None, ma - async def confirm_select(self, *, no_wait=False): - if self.publisher_confirms: - raise ValueError('publisher confirms already enabled') -- request = pamqp.specification.Confirm.Select(nowait=no_wait) -+ request = pamqp.commands.Confirm.Select(nowait=no_wait) - - return (await self._write_frame_awaiting_response( - 'confirm_select', self.channel_id, request, no_wait) -diff --git a/aioamqp/frame.py b/aioamqp/frame.py -index d70cfd7..af27ab5 100644 ---- a/aioamqp/frame.py -+++ b/aioamqp/frame.py -@@ -42,7 +42,6 @@ - import socket - - import pamqp.encode --import pamqp.specification - import pamqp.frame - - from . import exceptions -diff --git a/aioamqp/protocol.py b/aioamqp/protocol.py -index e111dea..f0b928d 100644 ---- a/aioamqp/protocol.py -+++ b/aioamqp/protocol.py -@@ -5,9 +5,9 @@ - import asyncio - import logging - -+import pamqp.commands - import pamqp.frame - import pamqp.heartbeat --import pamqp.specification - - from . import channel as amqp_channel - from . import constants as amqp_constants -@@ -159,7 +159,7 @@ async def close(self, no_wait=False, timeout=None): - """Close connection (and all channels)""" - await self.ensure_open() - self.state = CLOSING -- request = pamqp.specification.Connection.Close( -+ request = pamqp.commands.Connection.Close( - reply_code=0, - reply_text='', - class_id=0, -@@ -254,11 +254,11 @@ async def dispatch_frame(self, frame_channel=None, frame=None): - """Dispatch the received frame to the corresponding handler""" - - method_dispatch = { -- pamqp.specification.Connection.Close.name: self.server_close, -- pamqp.specification.Connection.CloseOk.name: self.close_ok, -- pamqp.specification.Connection.Tune.name: self.tune, -- pamqp.specification.Connection.Start.name: self.start, -- pamqp.specification.Connection.OpenOk.name: self.open_ok, -+ pamqp.commands.Connection.Close.name: self.server_close, -+ pamqp.commands.Connection.CloseOk.name: self.close_ok, -+ pamqp.commands.Connection.Tune.name: self.tune, -+ pamqp.commands.Connection.Start.name: self.start, -+ pamqp.commands.Connection.OpenOk.name: self.open_ok, - } - if frame_channel is None and frame is None: - frame_channel, frame = await self.get_frame() -@@ -395,7 +395,7 @@ async def start_ok(self, client_properties, mechanism, auth, locale): - def credentials(): - return '\0{LOGIN}\0{PASSWORD}'.format(**auth) - -- request = pamqp.specification.Connection.StartOk( -+ request = pamqp.commands.Connection.StartOk( - client_properties=client_properties, - mechanism=mechanism, - locale=locale, -@@ -417,7 +417,7 @@ async def server_close(self, frame): - self._stream_writer.close() - - async def _close_ok(self): -- request = pamqp.specification.Connection.CloseOk() -+ request = pamqp.commands.Connection.CloseOk() - await self._write_frame(0, request) - - async def tune(self, frame): -@@ -426,7 +426,7 @@ async def tune(self, frame): - self.server_heartbeat = frame.heartbeat - - async def tune_ok(self, channel_max, frame_max, heartbeat): -- request = pamqp.specification.Connection.TuneOk( -+ request = pamqp.commands.Connection.TuneOk( - channel_max, frame_max, heartbeat - ) - await self._write_frame(0, request) -@@ -436,7 +436,7 @@ async def secure_ok(self, login_response): - - async def open(self, virtual_host, capabilities='', insist=False): - """Open connection to virtual host.""" -- request = pamqp.specification.Connection.Open( -+ request = pamqp.commands.Connection.Open( - virtual_host, capabilities, insist - ) - await self._write_frame(0, request) -diff --git a/aioamqp/tests/testcase.py b/aioamqp/tests/testcase.py -index 120104b..d6d702b 100644 ---- a/aioamqp/tests/testcase.py -+++ b/aioamqp/tests/testcase.py -@@ -147,7 +147,7 @@ def server_version(self, amqp=None): - if amqp is None: - amqp = self.amqp - -- server_version = tuple(int(x) for x in amqp.server_properties['version'].decode().split('.')) -+ server_version = tuple(int(x) for x in amqp.server_properties['version'].split('.')) - return server_version - - async def check_exchange_exists(self, exchange_name): - -From c900f6d5e8ef273000d221d0e46ab81ed4aed2a2 Mon Sep 17 00:00:00 2001 -From: dzen -Date: Wed, 25 Mar 2020 11:02:04 +0100 -Subject: [PATCH 2/3] fix pamqp version for tests on travis - ---- - setup.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/setup.py b/setup.py -index a740243..2277b28 100644 ---- a/setup.py -+++ b/setup.py -@@ -25,7 +25,7 @@ - 'aioamqp', - ], - install_requires=[ -- 'pamqp>=2.2.0,<3', -+ 'pamqp>=3.0.0', # TODO(bcalvez): for tests purpose, until 3.0 is released - ], - classifiers=[ - "Development Status :: 4 - Beta", - -From 836340e8d881a93b0111b9aed6f2bb2926f38de6 Mon Sep 17 00:00:00 2001 -From: dzen -Date: Wed, 25 Mar 2020 11:37:45 +0100 -Subject: [PATCH 3/3] pamqp 3.0 is no more compatible with 3.5 - ---- - .travis.yml | 1 - - setup.cfg | 2 +- - setup.py | 2 +- - 3 files changed, 2 insertions(+), 3 deletions(-) - -diff --git a/.travis.yml b/.travis.yml -index 1069e7c..46d6fea 100644 ---- a/.travis.yml -+++ b/.travis.yml -@@ -1,7 +1,6 @@ - language: python - dist: bionic - python: --- 3.5 - - 3.6 - - 3.7-dev - - 3.8 -diff --git a/setup.cfg b/setup.cfg -index 0ab7d0b..d0ba16e 100644 ---- a/setup.cfg -+++ b/setup.cfg -@@ -1,2 +1,2 @@ - [bdist_wheel] --python-tag = py35.py36.py37.py38 -+python-tag = py36.py37.py38 -diff --git a/setup.py b/setup.py -index 2277b28..c413078 100644 ---- a/setup.py -+++ b/setup.py -@@ -27,6 +27,7 @@ - install_requires=[ - 'pamqp==3.0.0a6', # TODO(bcalvez): for tests purpose, until 3.0 is released - ], -+ python_requires=">=3.6", - classifiers=[ - "Development Status :: 4 - Beta", - "Intended Audience :: Developers", -@@ -34,7 +35,6 @@ - "Operating System :: OS Independent", - "Programming Language :: Python", - "Programming Language :: Python :: 3", -- "Programming Language :: Python :: 3.5", - "Programming Language :: Python :: 3.6", - "Programming Language :: Python :: 3.7", - "Programming Language :: Python :: 3.8", diff --git a/pkgs/development/python-modules/aioamqp/default.nix b/pkgs/development/python-modules/aioamqp/default.nix index a2882ce1288b..5d8c934e4275 100644 --- a/pkgs/development/python-modules/aioamqp/default.nix +++ b/pkgs/development/python-modules/aioamqp/default.nix @@ -2,43 +2,38 @@ , buildPythonPackage , fetchFromGitHub , pamqp -, pytest -, asynctest -, pyrabbit2 -, isPy27 +, pythonOlder }: buildPythonPackage rec { pname = "aioamqp"; - version = "0.14.0"; - disabled = isPy27; + version = "0.15.0"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = "Polyconseil"; repo = pname; rev = "${pname}-${version}"; - sha256 = "1gpfsrc2vi6w33c9zsycd2qn589pr7a222rb41r85m915283zy48"; + hash = "sha256-fssPknJn1tLtzb+2SFyZjfdhUdD8jqkwlInoi5uaplk="; }; - patches = [ ./compat-pamqp-3.patch ]; - propagatedBuildInputs = [ pamqp ]; - checkInputs = [ - pytest - asynctest - pyrabbit2 - ]; - - # tests assume rabbitmq server running + # Tests assume rabbitmq server running doCheck = false; + pythonImportsCheck = [ + "aioamqp" + ]; + meta = with lib; { - homepage = "https://github.com/polyconseil/aioamqp"; description = "AMQP implementation using asyncio"; + homepage = "https://github.com/polyconseil/aioamqp"; license = licenses.bsd3; - maintainers = [ maintainers.costrouc ]; + maintainers = with maintainers; [ costrouc ]; }; } diff --git a/pkgs/development/python-modules/ecos/default.nix b/pkgs/development/python-modules/ecos/default.nix index 35470cb8b60b..da1f9fa51069 100644 --- a/pkgs/development/python-modules/ecos/default.nix +++ b/pkgs/development/python-modules/ecos/default.nix @@ -1,50 +1,49 @@ { lib -, pythonOlder , buildPythonPackage , fetchFromGitHub -, pkgs -, numpy -, scipy - # check inputs , nose +, numpy +, pythonOlder +, scipy }: buildPythonPackage rec { pname = "ecos"; - version = "2.0.8"; + version = "2.0.10"; + format = "setuptools"; disabled = pythonOlder "3.6"; src = fetchFromGitHub { owner = "embotech"; repo = "ecos-python"; - rev = version; - sha256 = "sha256-2OJqbcOZceeD2fO5cu9fohuUVaA2LwQOQSWR4jRv3mk="; + rev = "v${version}"; + sha256 = "sha256-TPxrTyVZ1KXgPoDbZZqXT5+NEIEndg9qepujqFQwK+Q="; fetchSubmodules = true; }; - prePatch = '' - echo '__version__ = "${version}"' >> ./src/ecos/version.py - ''; - propagatedBuildInputs = [ numpy scipy ]; - checkInputs = [ nose ]; + checkInputs = [ + nose + ]; + checkPhase = '' - # Run tests cd ./src nosetests test_interface.py test_interface_bb.py ''; - pythonImportsCheck = [ "ecos" ]; + + pythonImportsCheck = [ + "ecos" + ]; meta = with lib; { description = "Python package for ECOS: Embedded Cone Solver"; - downloadPage = "https://github.com/embotech/ecos-python/releases"; - homepage = pkgs.ecos.meta.homepage; - license = licenses.asl20; + homepage = "https://github.com/embotech/ecos-python"; + license = licenses.gpl3Only; maintainers = with maintainers; [ drewrisinger ]; }; } diff --git a/pkgs/development/python-modules/elkm1-lib/default.nix b/pkgs/development/python-modules/elkm1-lib/default.nix index 57c51964fc8d..40f9aa451b69 100644 --- a/pkgs/development/python-modules/elkm1-lib/default.nix +++ b/pkgs/development/python-modules/elkm1-lib/default.nix @@ -11,16 +11,16 @@ buildPythonPackage rec { pname = "elkm1-lib"; - version = "1.3.6"; + version = "2.0.0"; format = "pyproject"; - disabled = pythonOlder "3.6"; + disabled = pythonOlder "3.9"; src = fetchFromGitHub { owner = "gwww"; repo = "elkm1"; rev = version; - hash = "sha256-aIqwb2YHw/kYHBqydelTRs2+75WimgJ+4X0BYcwogh8="; + hash = "sha256-o0RQgAP38W7paVJonrfj54y2OhMmTihT9xiipEyNVaM="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/http-sfv/default.nix b/pkgs/development/python-modules/http-sfv/default.nix index 264065b6efa1..0e5407420cac 100644 --- a/pkgs/development/python-modules/http-sfv/default.nix +++ b/pkgs/development/python-modules/http-sfv/default.nix @@ -7,7 +7,7 @@ buildPythonPackage rec { pname = "http-sfv"; - version = "0.9.5"; + version = "0.9.6"; format = "pyproject"; disabled = pythonOlder "3.7"; @@ -16,7 +16,7 @@ buildPythonPackage rec { owner = "mnot"; repo = "http_sfv"; rev = "http_sfv-${version}"; - hash = "sha256-hzg5vRX0vNKS/hYLF6n8mLK5qiwP7do4M8YMlBAA66I="; + hash = "sha256-S+cbcDx+cXwN2TpfiUpr6xK1GFRxSYgfHdUavfzeyAE="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/meilisearch/default.nix b/pkgs/development/python-modules/meilisearch/default.nix index 73f1c75a5192..b7f0f049db70 100644 --- a/pkgs/development/python-modules/meilisearch/default.nix +++ b/pkgs/development/python-modules/meilisearch/default.nix @@ -7,7 +7,7 @@ buildPythonPackage rec { pname = "meilisearch"; - version = "0.18.2"; + version = "0.18.3"; format = "setuptools"; disabled = pythonOlder "3.7"; @@ -16,7 +16,7 @@ buildPythonPackage rec { owner = "meilisearch"; repo = "meilisearch-python"; rev = "v${version}"; - hash = "sha256-U9fdMcxPdtLiUStgTez99SPRh93WLZNVn8uIj4lNWh4="; + hash = "sha256-Ym3AbIEf8eMSrtP8W1dPXqL0mTVN2bd8hlxdFhW/dkQ="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/nettigo-air-monitor/default.nix b/pkgs/development/python-modules/nettigo-air-monitor/default.nix index 9fbb336c3867..b9bfb95e2e8c 100644 --- a/pkgs/development/python-modules/nettigo-air-monitor/default.nix +++ b/pkgs/development/python-modules/nettigo-air-monitor/default.nix @@ -12,7 +12,7 @@ buildPythonPackage rec { pname = "nettigo-air-monitor"; - version = "1.2.3"; + version = "1.2.4"; format = "setuptools"; disabled = pythonOlder "3.8"; @@ -21,7 +21,7 @@ buildPythonPackage rec { owner = "bieniu"; repo = pname; rev = version; - sha256 = "sha256-aCDw3JwX8LVrJp3jYvuYQ3ycRHjSnWU0n1LdTjV08VA="; + sha256 = "sha256-zmmJ3F2Fl4u7vOx1h5Z0LtWL0/5xmZiFRY2NU8Tc0MY="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/prox-tv/default.nix b/pkgs/development/python-modules/prox-tv/default.nix index 1af942b92675..0aaf105a52f5 100644 --- a/pkgs/development/python-modules/prox-tv/default.nix +++ b/pkgs/development/python-modules/prox-tv/default.nix @@ -6,6 +6,7 @@ , fetchFromGitHub , nose , numpy +, stdenv }: buildPythonPackage { @@ -28,6 +29,11 @@ buildPythonPackage { cffi ]; + # this test is known to fail on darwin + checkPhase = '' + nosetests ${lib.optionalString stdenv.isDarwin " --exclude=test_tv2_1d"} + ''; + propagatedNativeBuildInputs = [ cffi ]; buildInputs = [ blas lapack ]; diff --git a/pkgs/development/python-modules/pydeck/default.nix b/pkgs/development/python-modules/pydeck/default.nix index 6626ee19d920..9ca7638538a5 100644 --- a/pkgs/development/python-modules/pydeck/default.nix +++ b/pkgs/development/python-modules/pydeck/default.nix @@ -1,11 +1,33 @@ -{ lib, buildPythonPackage, fetchPypi, ipykernel, ipywidgets, pythonOlder, pytestCheckHook, pandas }: +{ lib +, buildPythonPackage +, fetchPypi +, fetchpatch +, ipykernel +, ipywidgets +, pythonOlder +, pytestCheckHook +, pandas +, jinja2 +, numpy +, traitlets +}: buildPythonPackage rec { pname = "pydeck"; version = "0.7.1"; + format = "pyproject"; disabled = pythonOlder "3.7"; + patches = [ + # fixes build with latest setuptools + (fetchpatch { + url = "https://github.com/visgl/deck.gl/commit/9e68f73b28aa3bf0f2a887a4d8ccd2dc35677039.patch"; + sha256 = "sha256-YVVoVbVdY5nV+17OwYIs9AwKGyzgKZHi655f4BLcdMU="; + stripLen = 2; + }) + ]; + src = fetchPypi { inherit pname version; sha256 = "907601c99f7510e16d27d7cb62bfa145216d166a2b5c9c50cfe2b65b032ebd2e"; @@ -14,12 +36,16 @@ buildPythonPackage rec { pythonImportsCheck = [ "pydeck" ]; checkInputs = [ pytestCheckHook pandas ]; + # tries to start a jupyter server disabledTests = [ "test_nbconvert" ]; propagatedBuildInputs = [ ipykernel ipywidgets + jinja2 + numpy + traitlets ]; meta = with lib; { diff --git a/pkgs/development/python-modules/scmrepo/default.nix b/pkgs/development/python-modules/scmrepo/default.nix index 5b80bb00dd63..cfb84743ff3a 100644 --- a/pkgs/development/python-modules/scmrepo/default.nix +++ b/pkgs/development/python-modules/scmrepo/default.nix @@ -14,7 +14,7 @@ buildPythonPackage rec { pname = "scmrepo"; - version = "0.0.20"; + version = "0.0.22"; format = "pyproject"; disabled = pythonOlder "3.7"; @@ -23,7 +23,7 @@ buildPythonPackage rec { owner = "iterative"; repo = pname; rev = "refs/tags/${version}"; - hash = "sha256-3gNHWncP9laevuX3EcnmNJ825eQehoLp75WJ5V5/R9w="; + hash = "sha256-hV0BusvuJUEGfmue7OHR3YYmpBcFTgbQE7UuHmTUBo0="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/tools/knightos/scas/default.nix b/pkgs/development/tools/knightos/scas/default.nix index 255ecf798d86..221c5a0d12d5 100644 --- a/pkgs/development/tools/knightos/scas/default.nix +++ b/pkgs/development/tools/knightos/scas/default.nix @@ -1,4 +1,8 @@ -{ fetchFromGitHub, lib, stdenv, cmake }: +{ fetchFromGitHub, lib, stdenv, cmake, buildPackages, asciidoc, libxslt }: + +let + isCrossCompiling = stdenv.hostPlatform != stdenv.buildPlatform; +in stdenv.mkDerivation rec { pname = "scas"; @@ -12,10 +16,18 @@ stdenv.mkDerivation rec { }; cmakeFlags = [ "-DSCAS_LIBRARY=1" ]; - + postPatch = '' + substituteInPlace CMakeLists.txt \ + --replace "TARGETS scas scdump scwrap" "TARGETS scas scdump scwrap generate_tables" + ''; strictDeps = true; - nativeBuildInputs = [ cmake ]; + depsBuildBuild = lib.optionals isCrossCompiling [ buildPackages.knightos-scas ]; + nativeBuildInputs = [ asciidoc libxslt.bin cmake ]; + postInstall = '' + cd .. + make DESTDIR=$out install_man + ''; meta = with lib; { homepage = "https://knightos.org/"; diff --git a/pkgs/development/tools/rust/cargo-geiger/default.nix b/pkgs/development/tools/rust/cargo-geiger/default.nix index 28511223be04..808fa580db3b 100644 --- a/pkgs/development/tools/rust/cargo-geiger/default.nix +++ b/pkgs/development/tools/rust/cargo-geiger/default.nix @@ -1,7 +1,14 @@ -{ stdenv, lib, fetchFromGitHub -, rustPlatform, pkg-config, openssl -# darwin dependencies -, Security, CoreFoundation, libiconv +{ stdenv +, lib +, fetchFromGitHub +, rustPlatform +, pkg-config +, openssl + # darwin dependencies +, Security +, CoreFoundation +, libiconv +, curl }: rustPlatform.buildRustPackage rec { @@ -16,15 +23,11 @@ rustPlatform.buildRustPackage rec { }; cargoSha256 = "sha256-i7xDEzZAN2ubW1Q6MhY+xsb9XiUajNDHLdtDuO5r6jA="; - buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security libiconv ]; - nativeBuildInputs = [ pkg-config ]; - - # FIXME: Use impure version of CoreFoundation because of missing symbols. - # CFURLSetResourcePropertyForKey is defined in the headers but there's no - # corresponding implementation in the sources from opensource.apple.com. - preConfigure = lib.optionalString stdenv.isDarwin '' - export NIX_CFLAGS_COMPILE="-F${CoreFoundation}/Library/Frameworks $NIX_CFLAGS_COMPILE" - ''; + buildInputs = [ openssl ] + ++ lib.optionals stdenv.isDarwin [ CoreFoundation Security libiconv curl ]; + nativeBuildInputs = [ pkg-config ] + # curl-sys wants to run curl-config on darwin + ++ lib.optionals stdenv.isDarwin [ curl.dev ]; # skip tests with networking or other failures checkFlags = [ diff --git a/pkgs/misc/drivers/xow/default.nix b/pkgs/misc/drivers/xow/default.nix index b095d61d9876..c084b45d151c 100644 --- a/pkgs/misc/drivers/xow/default.nix +++ b/pkgs/misc/drivers/xow/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "xow"; - version = "0.5"; + version = "unstable-2022-04-24"; src = fetchFromGitHub { owner = "medusalix"; repo = "xow"; - rev = "v${version}"; - sha256 = "071r2kx44k1sc49cad3i607xg618mf34ki1ykr5lnfx9y6qyz075"; + rev = "d335d6024f8380f52767a7de67727d9b2f867871"; + sha256 = "0q5nr21p4dlx2a99hiivwz6qj9anrqqsdhiz6xi375yqkxis4251"; }; firmware = fetchurl { @@ -18,7 +18,7 @@ stdenv.mkDerivation rec { makeFlags = [ "BUILD=RELEASE" - "VERSION=${version}" + "VERSION=${version}-${src.rev}" "BINDIR=${placeholder "out"}/bin" "UDEVDIR=${placeholder "out"}/lib/udev/rules.d" "MODLDIR=${placeholder "out"}/lib/modules-load.d" diff --git a/pkgs/os-specific/darwin/goku/default.nix b/pkgs/os-specific/darwin/goku/default.nix index af392e535da9..32a7f20befda 100644 --- a/pkgs/os-specific/darwin/goku/default.nix +++ b/pkgs/os-specific/darwin/goku/default.nix @@ -1,14 +1,22 @@ -{lib, stdenv, fetchurl }: +{ lib +, stdenv +, fetchurl +, unzip +}: stdenv.mkDerivation rec { pname = "goku"; version = "0.5.1"; src = fetchurl { - url = "https://github.com/yqrashawn/GokuRakuJoudo/releases/download/v${version}/goku.tar.gz"; + url = "https://github.com/yqrashawn/GokuRakuJoudo/releases/download/v${version}/goku.zip"; sha256 = "7c9304a5b4265575ca154bc0ebc04fcf812d14981775966092946cf82f65c782"; }; + nativeBuildInputs = [ + unzip + ]; + sourceRoot = "."; installPhase = '' diff --git a/pkgs/os-specific/linux/firejail/default.nix b/pkgs/os-specific/linux/firejail/default.nix index 3caf41cfca56..bbb3a1daab69 100644 --- a/pkgs/os-specific/linux/firejail/default.nix +++ b/pkgs/os-specific/linux/firejail/default.nix @@ -47,6 +47,12 @@ stdenv.mkDerivation rec { # Upstream fix https://github.com/netblue30/firejail/pull/5131 # Upstream hopefully fixed in later versions > 0.9.68 ./whitelist-nix-profile.patch + + # Fix OpenGL support for various applications including Firefox + # Issue: https://github.com/NixOS/nixpkgs/issues/55191 + # Upstream fix: https://github.com/netblue30/firejail/pull/5132 + # Hopefully fixed upstream in version > 0.9.68 + ./fix-opengl-support.patch ]; prePatch = '' diff --git a/pkgs/os-specific/linux/firejail/fix-opengl-support.patch b/pkgs/os-specific/linux/firejail/fix-opengl-support.patch new file mode 100644 index 000000000000..9fd18aad3fd9 --- /dev/null +++ b/pkgs/os-specific/linux/firejail/fix-opengl-support.patch @@ -0,0 +1,7 @@ +--- a/etc/inc/whitelist-run-common.inc.org 2022-05-07 11:27:32.264849186 +0200 ++++ b/etc/inc/whitelist-run-common.inc 2022-05-07 11:27:55.577778211 +0200 +@@ -13,3 +13,4 @@ + whitelist /run/systemd/resolve/resolv.conf + whitelist /run/systemd/resolve/stub-resolv.conf + whitelist /run/udev/data ++whitelist /run/opengl-driver # NixOS diff --git a/pkgs/tools/cd-dvd/cdrkit/default.nix b/pkgs/tools/cd-dvd/cdrkit/default.nix index e3d53297193f..e28d4f8b9c7e 100644 --- a/pkgs/tools/cd-dvd/cdrkit/default.nix +++ b/pkgs/tools/cd-dvd/cdrkit/default.nix @@ -23,6 +23,8 @@ stdenv.mkDerivation rec { ln -s $out/bin/wodim $out/bin/cdrecord ''; + cmakeFlags = lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [ "-DBITFIELDS_HTOL=0" ]; + makeFlags = [ "PREFIX=\$(out)" ]; meta = { diff --git a/pkgs/tools/filesystems/dosfstools/default.nix b/pkgs/tools/filesystems/dosfstools/default.nix index 75a39fdfe92e..e15b4ad1f645 100644 --- a/pkgs/tools/filesystems/dosfstools/default.nix +++ b/pkgs/tools/filesystems/dosfstools/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, libiconv, gettext, xxd }: +{ lib, stdenv, fetchFromGitHub, fetchpatch, autoreconfHook, pkg-config, libiconv, gettext, xxd }: stdenv.mkDerivation rec { pname = "dosfstools"; @@ -11,6 +11,15 @@ stdenv.mkDerivation rec { sha256 = "sha256-2gxB0lQixiHOHw8uTetHekaM57fvUd9zOzSxWnvUz/c="; }; + patches = [ + # macOS build fixes backported from master + # TODO: remove on the next release + (fetchpatch { + url = "https://github.com/dosfstools/dosfstools/commit/77ffb87e8272760b3bb2dec8f722103b0effb801.patch"; + sha256 = "sha256-xHxIs3faHK/sK3vAVoG8JcTe4zAV+ZtkozWIIFBvPWI="; + }) + ]; + nativeBuildInputs = [ autoreconfHook pkg-config ] ++ lib.optional stdenv.isDarwin libiconv; diff --git a/pkgs/tools/misc/gotify-desktop/default.nix b/pkgs/tools/misc/gotify-desktop/default.nix index e34afda94241..dd0af48ec64f 100644 --- a/pkgs/tools/misc/gotify-desktop/default.nix +++ b/pkgs/tools/misc/gotify-desktop/default.nix @@ -1,4 +1,4 @@ -{ lib, fetchFromGitHub, rustPlatform, openssl, pkg-config}: +{ lib, fetchFromGitHub, rustPlatform, openssl, pkg-config, stdenv}: rustPlatform.buildRustPackage rec { pname = "gotify-desktop"; @@ -22,5 +22,6 @@ rustPlatform.buildRustPackage rec { homepage = "https://github.com/desbma/gotify-desktop"; license = licenses.gpl3Plus; maintainers = with maintainers; [ bryanasdev000 genofire ]; + broken = stdenv.isDarwin; }; } diff --git a/pkgs/tools/misc/nbench/default.nix b/pkgs/tools/misc/nbench/default.nix index 16e67b848d65..744ce314ec4e 100644 --- a/pkgs/tools/misc/nbench/default.nix +++ b/pkgs/tools/misc/nbench/default.nix @@ -16,6 +16,10 @@ stdenv.mkDerivation rec { substituteInPlace Makefile --replace "-static" "" ''; + buildInputs = lib.optionals stdenv.hostPlatform.isGnu [ + stdenv.glibc.static + ]; + makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ]; installPhase = '' diff --git a/pkgs/tools/system/netdata/default.nix b/pkgs/tools/system/netdata/default.nix index d1e3065efd2a..c9e93d42738a 100644 --- a/pkgs/tools/system/netdata/default.nix +++ b/pkgs/tools/system/netdata/default.nix @@ -27,7 +27,9 @@ in stdenv.mkDerivation rec { fetchSubmodules = true; }; - nativeBuildInputs = [ autoreconfHook pkg-config makeWrapper ]; + strictDeps = true; + + nativeBuildInputs = [ autoreconfHook pkg-config makeWrapper protobuf ]; buildInputs = [ curl.dev zlib.dev protobuf ] ++ optionals stdenv.isDarwin [ CoreFoundation IOKit libossp_uuid ] ++ optionals (!stdenv.isDarwin) [ libcap.dev libuuid.dev ] @@ -80,6 +82,7 @@ in stdenv.mkDerivation rec { configureFlags = [ "--localstatedir=/var" "--sysconfdir=/etc" + "--disable-ebpf" ] ++ optionals withCloud [ "--enable-cloud" "--with-aclk-ng"