jiebi/CodeConvo huggingface dataset:
Code change:
This expression fails to build on 19.03: The problem is that its checkPhase is not correct as the command cannot be found. I believe that should be in the for it to succeed. Run the below inside The error is: Please run and paste the results.
It can be put in as is usual for pytest because we have multiple versions of it within . However, the tests fail:
Not sure what is causing that error, but I use it fine for my purposes.
How do you use it if it doesn't build? Would you mind making a PR with the fix?
It does build, I use a custom pytest- because I was using it before asking it for inclusion in nixpkgs. Anyway it's now being addressed in:

Related discussion:
text: <del> { stdenv, buildPythonPackage, fetchPypi, pytest }: </del> <ins> { stdenv, buildPythonPackage, fetchPypi, fetchpatch, pytest }: </ins> buildPythonPackage rec { version = "0.4.0";
Code change:
This expression fails to build on 19.03: The problem is that its checkPhase is not correct as the command cannot be found. I believe that should be in the for it to succeed. Run the below inside The error is: Please run and paste the results.
It can be put in as is usual for pytest because we have multiple versions of it within . However, the tests fail:
Not sure what is causing that error, but I use it fine for my purposes.
How do you use it if it doesn't build? Would you mind making a PR with the fix?
It does build, I use a custom pytest- because I was using it before asking it for inclusion in nixpkgs. Anyway it's now being addressed in:

Related discussion:
text: sha256 = "bda0ef48e6a44c091399b12ab4a7e580d2dd8294c222b301f88d7d57f47ba142"; }; <ins> patches = [ # Fix tests for pytest>=4.2.0. Remove with the next release (fetchpatch { url = "https://github.com/RKrahl/pytest-dependency/commit/089395bf77e629ee789666361ee12395d840252c.patch"; sha256 = "1nkha2gndrr3mx11kx2ipxhphqd6wr25hvkrfwzyrispqfhgl0wm"; excludes = [ "doc/src/changelog.rst" ]; }) ]; </ins> propagatedBuildInputs = [ pytest ]; <ins> checkInputs = [ pytest ]; </ins> checkPhase = '' pytest '';
Code change:
build of gpgme-1.13.0 fails on macosx . . . nix-env -i gpgme Please run and paste the results.
I can reproduce this on , but it builds fine on current master
Closing since seems to be fixed after , but feel free to reopen if you continue having issues
i am seeing this again on
bisecting suggests it started with or (in the latter commit, indent fails to build, rather than getting the File name too long error, though)
Same here (seeing this again)
It seems like this is caused by a of unix socket path length limit (which is just 104 on darwin). A workaround that works for me is to build it with a different TMPDIR:
Related to
Thanks for the workaround using it, gpgme install gets stuck at
I had the same problem. I think this might be an unrelated issue. It did build successfully on the second attempt for me.
It would be nice if somebody could investigate how to disable just the problematic tests instead of completely turning them off with .
Turning off the tests didn’t work for me, it seemed to fail on the build step
we could add a patch to disable these tests on darwin:

Related discussion:
text: "--enable-fixed-path=${gnupg}/bin" "--with-libgpg-error-prefix=${libgpgerror.dev}" "--with-libassuan-prefix=${libassuan.dev}" <del> ] ++ lib.optional pythonSupport "--enable-languages=python"; </del> <ins> ] ++ lib.optional pythonSupport "--enable-languages=python" # Tests will try to communicate with gpg-agent instance via a UNIX socket # which has a path length limit. Nix on darwin is using a build directory # that already has quite a long path and the resulting socket path doesn't # fit in the limit. https://github.com/NixOS/nix/pull/1085 ++ lib.optionals stdenv.isDarwin [ "--disable-gpg-test" ]; </ins> NIX_CFLAGS_COMPILE = # qgpgme uses Q_ASSERT which retains build inputs at runtime unless
Code change:
application can't find help files Install from nixos release channel, go to main application screen, click on Help menu and select either "tutorial and concepts guide" or "contents". Application complains with a modal reporting "GnuCash could not find the files for the help documentation. This is likely because 'gnucash-docs' package is not installed." system: host os: multi-user?: sandbox: version: channels(root): channels(zarel): nixpkgs:
As a workaround: the very same documentation is available online at this address:
Thank you for your contributions. This has been automatically marked as stale because it has had no activity for 180 days. If this is still important to you, we ask that you leave a comment below. Your comment can be as simple as "still important to me". This lets people see that at least one person still cares about this. Someone will have to do this at most twice a year if there is no other activity. Here are suggestions that might help resolve this more quickly: for maintainers and people that previously touched the related code and @ mention them in a comment. on the . on the on .
still happening
Pinging maintainers
There is more to it. Gnucash installs its document files into plain without subdirectory. Because of that common files like do have collisions with analogous files in other packages. Edit: Ah, that's another issue. Which was resolved in
Documentation for Gnucash is a separate project: It should be separately build and installed in order for help files to be available.
I marked this as stale due to inactivity. &rarr;
I've built the documentation and put the documentation in the XDGDATADIRS. I can browse the manual and the tutorial via but running gnucash in debug mode says "Unsupported action" and according to strace the application doesn't try to open the documentation directories... and the same happens for evince (can see the documentation in yelp but the application won't display it), maybe it's the same issue
Not stale, I'm still having this issue
I marked this as stale due to inactivity. &rarr;
issue remains.
Thank you for the fix! Do you think is there a way to warn the user about not having yelp in a profile?
I don't think there are any convenient/good ways to tell the user about it. At best, we could add it to the description?
If gnucash documentation depends on yelp, would it make sense to express this dependency in the gnucash derivation?
Apparently, it must also be in MIME. This sort of stupid behaviour looks like an upstream bug to me.
If an application shipped its help files as HTML and required you to have a web browser installed to view them, I think it would be silly to add a dependency on any specific web browser. Likewise with help files - if (at least theoretically) Yelp is just one of several possible help file viewers, I don't think it makes sense to add a dependency on it. A better indication of what's wrong ("you need to install a help viewer" rather than "couldn't find the docs") would be nice, though, which I presume is only really doable upstream.

Related discussion:
text: { lib , stdenv <ins> , fetchFromGitHub </ins> , fetchurl , fetchpatch , aqbanking
Code change:
. The short of it is that doesn't have a flag on OS X.
The in use is from .
It seems that removing from solves this issue. I'll drop that in a PR to continue the discussion.

Related discussion:
text: <ins> --- crypto++/GNUmakefile 2013-02-20 10:30:52.000000000 -0500 +++ crypto++/GNUmakefile 2015-05-07 18:34:25.000000000 -0500 @@ -87,8 +87,8 @@ endif ifeq ($(UNAME),Darwin) -AR = libtool -ARFLAGS = -static -o +AR = ar +ARFLAGS = cru CXX = c++ IS_GCC2 = $(shell $(CXX) -v 2>&1 | $(EGREP) -c gcc-932) ifeq ($(IS_GCC2),1) </ins>
Code change:
. The short of it is that doesn't have a flag on OS X.
The in use is from .
It seems that removing from solves this issue. I'll drop that in a PR to continue the discussion.

Related discussion:
text: sha256 = "0x1mqpz1v071cfrw4grbw7z734cxnpry1qh2b6rsmcx6nkyd5gsw"; }; <del> patches = stdenv.lib.optional (stdenv.system != "i686-cygwin") ./dll.patch; </del> <ins> patches = (stdenv.lib.optional (stdenv.system != "i686-cygwin") ./dll.patch) ++ (stdenv.lib.optional stdenv.isDarwin ./GNUmakefile.patch); </ins> buildInputs = [ unzip libtool ];
Code change:
Right now if you update the unstable tree and install ddclient the shebang patch is not applied properly and the first line of the script starts with: This reference doesn't exist so the actual binary cannot be started. ) Install ddclient ) Attempt to start ddclient

Related discussion:
text: <del> { stdenv, fetchurl, perlPackages, iproute }: </del> <ins> { stdenv, fetchurl, perlPackages, iproute, perl }: </ins> perlPackages.buildPerlPackage rec { name = "ddclient-${version}";
Code change:
Right now if you update the unstable tree and install ddclient the shebang patch is not applied properly and the first line of the script starts with: This reference doesn't exist so the actual binary cannot be started. ) Install ddclient ) Attempt to start ddclient

Related discussion:
text: substituteInPlace ddclient  --replace 'in the output of ifconfig' 'in the output of ip addr show'  --replace 'ifconfig -a'               '${iproute}/sbin/ip addr show'  <del> --replace 'ifconfig $arg'             '${iproute}/sbin/ip addr show $arg' </del> <ins> --replace 'ifconfig $arg'             '${iproute}/sbin/ip addr show $arg'  # Until we get the patchShebangs fixed (issue #55786) we need to patch this manually --replace '/usr/bin/perl'		    '${perl}/bin/perl' </ins> ''; installPhase = ''
Code change:
In there was an option introduced that indefinitely tries to restart the wireguard service until all peer hostnames are resolved. Instead it should use as introduced by instead. This feature will be available in the next snapshot release of wireguard. cc
Alright 0.0. has been released for the purpose of this disaster being fixed. care to cleanup the mess?
I fail to see what mess/disaster you're refering to.

Related discussion:
text: ''; }; <ins> generatePeerUnit = { interfaceName, interfaceCfg, peer }: let keyToUnitName = replaceChars [ "/" "-"    " "     "+"     "="      ] [ "-" "x2d" "x20" "x2b" "x3d" ]; unitName = keyToUnitName peer.publicKey; psk = if peer.presharedKey != null then pkgs.writeText "wg-psk" peer.presharedKey else peer.presharedKeyFile; in nameValuePair "wireguard-${interfaceName}-peer-${unitName}" { description = "WireGuard Peer - ${interfaceName} - ${peer.publicKey}"; requires = [ "wireguard-${interfaceName}.service" ]; after = [ "wireguard-${interfaceName}.service" ]; wantedBy = [ "multi-user.target" ]; environment.DEVICE = interfaceName; environment.WG_ENDPOINT_RESOLUTION_RETRIES = "infinity"; path = with pkgs; [ iproute wireguard-tools ]; serviceConfig = { Type = "oneshot"; RemainAfterExit = true; }; script = let wg_setup = "wg set ${interfaceName} peer ${peer.publicKey}" + optionalString (psk != null) " preshared-key ${psk}" + optionalString (peer.endpoint != null) " endpoint ${peer.endpoint}" + optionalString (peer.persistentKeepalive != null) " persistent-keepalive ${toString peer.persistentKeepalive}" + optionalString (peer.allowedIPs != []) " allowed-ips ${concatStringsSep "," peer.allowedIPs}"; route_setup = optionalString (interfaceCfg.allowedIPsAsRoutes != false) (concatMapStringsSep "n" (allowedIP: "ip route replace ${allowedIP} dev ${interfaceName} table ${interfaceCfg.table}" ) peer.allowedIPs); in '' ${wg_setup} ${route_setup} ''; </ins> <del> generateSetupServiceUnit = name: values: </del> <ins> postStop = let route_destroy = optionalString (interfaceCfg.allowedIPsAsRoutes != false) (concatMapStringsSep "n" (allowedIP: "ip route delete ${allowedIP} dev ${interfaceName} table ${interfaceCfg.table}" ) peer.allowedIPs); in '' wg set ${interfaceName} peer ${peer.publicKey} remove ${route_destroy} ''; }; generateInterfaceUnit = name: values: </ins> # exactly one way to specify the private key must be set #assert (values.privateKey != null) != (values.privateKeyFile != null); let privKey = if values.privateKeyFile != null then values.privateKeyFile else pkgs.writeText "wg-key" values.privateKey;
Code change:
In there was an option introduced that indefinitely tries to restart the wireguard service until all peer hostnames are resolved. Instead it should use as introduced by instead. This feature will be available in the next snapshot release of wireguard. cc
Alright 0.0. has been released for the purpose of this disaster being fixed. care to cleanup the mess?
I fail to see what mess/disaster you're refering to.

Related discussion:
text: path = with pkgs; [ kmod iproute wireguard-tools ]; serviceConfig = { <del> Type = "simple"; Restart = "on-failure"; RestartSec = "5s"; </del> <ins> Type = "oneshot"; </ins> RemainAfterExit = true; };
Code change:
In there was an option introduced that indefinitely tries to restart the wireguard service until all peer hostnames are resolved. Instead it should use as introduced by instead. This feature will be available in the next snapshot release of wireguard. cc
Alright 0.0. has been released for the purpose of this disaster being fixed. care to cleanup the mess?
I fail to see what mess/disaster you're refering to.

Related discussion:
text: wg set ${name} private-key ${privKey} ${ optionalString (values.listenPort != null) " listen-port ${toString values.listenPort}"} <del> ${concatMapStringsSep "n" (peer: assert (peer.presharedKeyFile == null) || (peer.presharedKey == null); # at most one of the two must be set let psk = if peer.presharedKey != null then pkgs.writeText "wg-psk" peer.presharedKey else peer.presharedKeyFile; in "wg set ${name} peer ${peer.publicKey}" + optionalString (psk != null) " preshared-key ${psk}" + optionalString (peer.endpoint != null) " endpoint ${peer.endpoint}" + optionalString (peer.persistentKeepalive != null) " persistent-keepalive ${toString peer.persistentKeepalive}" + optionalString (peer.allowedIPs != []) " allowed-ips ${concatStringsSep "," peer.allowedIPs}" ) values.peers} </del> ip link set up dev ${name} <del> ${optionalString (values.allowedIPsAsRoutes != false) (concatStringsSep "n" (concatMap (peer: (map (allowedIP: "ip route replace ${allowedIP} dev ${name} table ${values.table}" ) peer.allowedIPs) ) values.peers))} </del> ${values.postSetup} '';
Code change:
In there was an option introduced that indefinitely tries to restart the wireguard service until all peer hostnames are resolved. Instead it should use as introduced by instead. This feature will be available in the next snapshot release of wireguard. cc
Alright 0.0. has been released for the purpose of this disaster being fixed. care to cleanup the mess?
I fail to see what mess/disaster you're refering to.

Related discussion:
text: ###### implementation <del> config = mkIf cfg.enable { </del> <ins> config = mkIf cfg.enable (let all_peers = flatten (mapAttrsToList (interfaceName: interfaceCfg: map (peer: { inherit interfaceName interfaceCfg peer;}) interfaceCfg.peers ) cfg.interfaces); in { </ins> assertions = (attrValues ( mapAttrs (name: value: {
Code change:
In there was an option introduced that indefinitely tries to restart the wireguard service until all peer hostnames are resolved. Instead it should use as introduced by instead. This feature will be available in the next snapshot release of wireguard. cc
Alright 0.0. has been released for the purpose of this disaster being fixed. care to cleanup the mess?
I fail to see what mess/disaster you're refering to.

Related discussion:
text: mapAttrs (name: value: { assertion = value.generatePrivateKeyFile -> (value.privateKey == null); message = "networking.wireguard.interfaces.${name}.generatePrivateKey must not be set if networking.wireguard.interfaces.${name}.privateKey is set."; <del> }) cfg.interfaces)); </del> <ins> }) cfg.interfaces)) ++ map ({ interfaceName, peer, ... }: { assertion = (peer.presharedKey == null) || (peer.presharedKeyFile == null); message = "networking.wireguard.interfaces.${interfaceName} peer «${peer.publicKey}» has both presharedKey and presharedKeyFile set, but only one can be used."; }) all_peers; </ins> boot.extraModulePackages = [ kernel.wireguard ]; environment.systemPackages = [ pkgs.wireguard-tools ]; <del> systemd.services = (mapAttrs' generateSetupServiceUnit cfg.interfaces) </del> <ins> systemd.services = (mapAttrs' generateInterfaceUnit cfg.interfaces) // (listToAttrs (map generatePeerUnit all_peers)) </ins> // (mapAttrs' generateKeyServiceUnit (filterAttrs (name: value: value.generatePrivateKeyFile) cfg.interfaces)); systemd.paths = mapAttrs' generatePathUnit (filterAttrs (name: value: value.privateKeyFile != null) cfg.interfaces); <del> }; </del> <ins> }); </ins> }
Code change:
In there was an option introduced that indefinitely tries to restart the wireguard service until all peer hostnames are resolved. Instead it should use as introduced by instead. This feature will be available in the next snapshot release of wireguard. cc
Alright 0.0. has been released for the purpose of this disaster being fixed. care to cleanup the mess?
I fail to see what mess/disaster you're refering to.

Related discussion:
text: stdenv.mkDerivation rec { name = "wireguard-tools-${version}"; <del> version = "0.0.20190406"; </del> <ins> version = "0.0.20190531"; </ins> src = fetchzip { url = "https://git.zx2c4.com/WireGuard/snapshot/WireGuard-${version}.tar.xz"; <del> sha256 = "1rqyyyx7j41vpp4jigagqs2qdyfngh15y48ghdqfrkv7v93vwdak"; </del> <ins> sha256 = "0caw6kc0lqsvzvdjpdbdn3r9ff93vdl46616pwlig0rsdjrqnklj"; </ins> }; sourceRoot = "source/src/tools";
Code change:
aborts and produces the following error: I suspect it's due to , but when I started building a NixOS vm with the merge commit checked out, Nix started building ; I just don't have the computing resources to build from such a starting point. What I do know is that the problem exists in but not in
It's indeed likely due to that PR. As mentioned in the message, its up to the maintainers/community to fix the usage of the wrapper in the various packages.
Yep. I have a fix for the "Qt platform plugin" error, but the missing Qtml module has stumped me. I've -ed my way toward the culprit, but I'm not there yet; Compiling LLVM, Qt, PyQt... takes a LONG time on my computer ;)
According to git bisect, the first bad commit is This implies that somewhere within that commit the PyQt build changed such that the Qtml module is no longer being built.
Can confirm the issue.
I dug into this further yesterday, and though I don't have a solution, the problem points to three things: package needs to be modified to use . That part is easy, and I already have a commit for it. is building in such a way that not all of its modules are included, namely the QtQml module. This results in another runtime error; visible after has been applied. reason is building with missing modules is because during the build process it uses tooling to determine whether said modules should be built. In the past, the tooling would return in the affirmative, causing the module to be build. However, as of late the tooling returns in the negative, thus the modules don't get built. This can be seen in the trunk/master python37Packages.pyqt5 builds on Hydra; just search for QtQml. It is number 3 above where I'm stuck. It seems like it's due to a change in , but I don't know what that change could be, nor how to test for it. Note: I ruled out the mismatch between PyQt 5.11 and Qt 5.22 as a potential cause by forcing PyQt 5.11 to build against Qt 5.11.
Yeah, I've been at least aware that we needed to update PyQt I think is working on this.
Fix in
Unfortunately, did not fix it. I: out a vm with qutebrowser within the vm The error is the same as I originally reported. I noticed that adds as a dependency to qutebrowser, but doesn't utilize nor . In contrast, my workaround is to --after applying a hack to PyQt 5.11 -- change qutebrowser as follows:
I think the cases were working for me because my environment has the right plugins. But indeed, wrapping should fix this.

Related discussion:
text: { stdenv, lib, fetchurl, fetchzip, python3Packages <del> , makeWrapper, wrapGAppsHook, qtbase, glib-networking </del> <ins> , mkDerivationWith, wrapQtAppsHook, wrapGAppsHook, qtbase, glib-networking </ins> , asciidoc, docbook_xml_dtd_45, docbook_xsl, libxml2 , libxslt, gst_all_1 ? null , withPdfReader        ? true
Code change:
aborts and produces the following error: I suspect it's due to , but when I started building a NixOS vm with the merge commit checked out, Nix started building ; I just don't have the computing resources to build from such a starting point. What I do know is that the problem exists in but not in
It's indeed likely due to that PR. As mentioned in the message, its up to the maintainers/community to fix the usage of the wrapper in the various packages.
Yep. I have a fix for the "Qt platform plugin" error, but the missing Qtml module has stumped me. I've -ed my way toward the culprit, but I'm not there yet; Compiling LLVM, Qt, PyQt... takes a LONG time on my computer ;)
According to git bisect, the first bad commit is This implies that somewhere within that commit the PyQt build changed such that the Qtml module is no longer being built.
Can confirm the issue.
I dug into this further yesterday, and though I don't have a solution, the problem points to three things: package needs to be modified to use . That part is easy, and I already have a commit for it. is building in such a way that not all of its modules are included, namely the QtQml module. This results in another runtime error; visible after has been applied. reason is building with missing modules is because during the build process it uses tooling to determine whether said modules should be built. In the past, the tooling would return in the affirmative, causing the module to be build. However, as of late the tooling returns in the negative, thus the modules don't get built. This can be seen in the trunk/master python37Packages.pyqt5 builds on Hydra; just search for QtQml. It is number 3 above where I'm stuck. It seems like it's due to a change in , but I don't know what that change could be, nor how to test for it. Note: I ruled out the mismatch between PyQt 5.11 and Qt 5.22 as a potential cause by forcing PyQt 5.11 to build against Qt 5.11.
Yeah, I've been at least aware that we needed to update PyQt I think is working on this.
Fix in
Unfortunately, did not fix it. I: out a vm with qutebrowser within the vm The error is the same as I originally reported. I noticed that adds as a dependency to qutebrowser, but doesn't utilize nor . In contrast, my workaround is to --after applying a hack to PyQt 5.11 -- change qutebrowser as follows:
I think the cases were working for me because my environment has the right plugins. But indeed, wrapping should fix this.

Related discussion:
text: ]); nativeBuildInputs = [ <del> makeWrapper wrapGAppsHook asciidoc </del> <ins> wrapQtAppsHook wrapGAppsHook asciidoc </ins> docbook_xml_dtd_45 docbook_xsl libxml2 libxslt ];