jiebi/CodeConvo huggingface dataset:
Change:
Project description Add Japanese Takao Gothic, Mincho, P Gothic, and P Mincho fonts. Metadata homepage URL: source URL: license: ipa platforms: all

Discussion:
<ins> { fetchzip, lib }: let version = "00303.01"; in fetchzip { name = "takao-${version}"; url = "mirror://ubuntu/pool/universe/f/fonts-takao/fonts-takao_${version}.orig.tar.gz"; sha256 = "sha256-TlPq3iIv8vHlxYu5dkX/Lf6ediYKQaQ5uMbFvypQM/w="; postFetch = '' unpackDir="$TMPDIR/unpack" mkdir "$unpackDir" cd "$unpackDir" tar xf "$downloadedFile" --strip-components=1 mkdir -p $out/share/fonts cp *.ttf $out/share/fonts ''; meta = with lib; { description = "Japanese TrueType Gothic, P Gothic, Mincho, P Mincho fonts"; homepage = "https://launchpad.net/takao-fonts"; license = licenses.ipa; maintainers = with lib.maintainers; [ serge ]; platforms = platforms.all; }; } </ins>

inherit (callPackages ../data/fonts/tai-languages { }) tai-ahom; <ins> takao = callPackage ../data/fonts/takao { }; </ins> taskspooler = callPackage ../tools/system/taskspooler { }; tamsyn = callPackage ../data/fonts/tamsyn { inherit (buildPackages.xorg) mkfontscale; };
Change:
XRootD failed to access the files following the URL, complaining that isn't found and the authentication handler couldn't be loaded. However, does present in the output directory. Steps to reproduce the behavior: Enter the top directory of Nixpkgs See Run See the detailed output A clear and concise description of what you expected to happen. If applicable, add screenshots to help explain your problem. Terminal output during execution: Short: Long: is packaged by myself, but I haven't found the solution. Suggestions and helps are more than welcom. Please run and paste the result.
This is probably because has the wrong . How to fix that though? No idea.

Discussion:
# suppress warnings from compilation of the vendored clang to avoid running into log limits on the Hydra NIX_CFLAGS_COMPILE = lib.optionals stdenv.cc.isGNU [ "-Wno-shadow" "-Wno-maybe-uninitialized" ]; <del> # Workaround the xrootd runpath bug #169677 by prefixing [DY]LD_LIBRARY_PATH with ${lib.makeLibraryPath xrootd}. # TODO: Remove the [DY]LDLIBRARY_PATH prefix for xrootd when #200830 get merged. </del> postInstall = '' for prog in rootbrowse rootcp rooteventselector rootls rootmkdir rootmv rootprint rootrm rootslimtree; do wrapProgram "$out/bin/$prog"  <del> --set PYTHONPATH "$out/lib"  --set ${lib.optionalString stdenv.isDarwin "DY"}LD_LIBRARY_PATH "$out/lib:${lib.makeLibraryPath [ xrootd ]}" </del> <ins> --set PYTHONPATH "$out/lib" </ins> done # Make ldd and sed available to the ROOT executable by prefixing PATH.

gnused # sed stdenv.cc # c++ ld etc. stdenv.cc.libc # ldd <del> ]}"  --prefix ${lib.optionalString stdenv.hostPlatform.isDarwin "DY"}LD_LIBRARY_PATH : "${lib.makeLibraryPath [ xrootd ]}" </del> <ins> ]}" </ins> # Patch thisroot.{sh,csh,fish}

"-DENABLE_VOMS=${if stdenv.isLinux then "TRUE" else "FALSE"}" ]; <del> # Workaround the library-not-found issue # happening to binaries compiled with xrootd libraries. # See #169677 preFixup = '' makeWrapperArgs+=("--prefix" "${lib.optionalString stdenv.hostPlatform.isDarwin "DY"}LD_LIBRARY_PATH" ":" "${placeholder "out"}/lib") ''; postFixup = '' while IFS= read -r FILE; do wrapProgram "$FILE" "''${makeWrapperArgs[@]}" done < <(find "$bin/bin" -mindepth 1 -maxdepth 1 -type f,l -perm -a+x) '' + lib.optionalString (externalEtc != null) '' </del> <ins> postFixup = lib.optionalString (externalEtc != null) '' </ins> moveToOutput etc "$etc" ln -s ${lib.escapeShellArg externalEtc} "$out/etc" ''; <ins> dontPatchELF = true; # shrinking rpath will cause runtime failures in dlopen </ins> meta = with lib; { description = "High performance, scalable fault tolerant data access"; homepage = "https://xrootd.slac.stanford.edu";
Change:
Bash aliases defined with the configuration option are defined in as — — where and (which are variables in Nix, not in Bash) correspond to, respectively, the keys and values of the attribute set that is the value of . No escaping is performed on these values, so if one uses the apostrophe character in an alias defined in , such as — — then the module will emit the following problematic line in — — which is equivalent to — — which first defines an alias , then queries the alias . No such alias exists, so "bash: alias: qux: not found" is printed each time one starts an interactive Bash instance. Use to define an alias containing an apostrophe, as above. System: NixOS Nix version: Nixpkgs version:
(triage) is this still reproducible? If yes, would you be willing to prepare a pull request? I can support you if you have questions.
I confirm that I still can reproduce this issue, but (my apologies) I haven't time to try to fix it. As you also encountered this issue, would you be willing to try to patch it?
I forgot to add the output for the system on which I reproduced the issue, which is as follows: system: host os: multi-user?: sandbox: version: channels(root): nixpkgs:
I think has fixed the same issue for zsh.
Fixed by in .
Huh, I wonder why this ticket didn't close automatically when was merged.
Because you have to use certain keywords github understands in either the PR description or the commit message, for example " would work.
I did, and GitHub puts a tooltip on the keyword in that would seem to imply that it understood me.
True, that is weird.

Discussion:
''; bashAliases = concatStringsSep "n" ( <del> mapAttrsFlatten (k: v: "alias ${k}='${v}'") cfg.shellAliases </del> <ins> mapAttrsFlatten (k: v: "alias ${k}=${escapeShellArg v}") cfg.shellAliases </ins> ); in
Change:
The NixOS module describes its configuration option as: From that description, I supposed that it would set the normal tmux options for using Vi-like or Emacs-like key-commands ( and ). It does do that , but it also sets additional, undocumented key-bindings , including some that override the standard bindings of (go to previous window) and (go to previous session). While I confess I was remiss in not confirming my supposition and using the option without first fully comprehending its effects, I might suggest that either the changes it makes to key-bindings be documented in the option's description, or those changes be given their own configuration option. System: NixOS Nix version: Nixpkgs version:
I think you are absolutely right. Having written that module, I will clean it up.
Thanks!

Discussion:
set -g status-keys ${cfg.keyMode} set -g mode-keys   ${cfg.keyMode} <del> ${if cfg.keyMode == "vi" then '' </del> <ins> ${if cfg.keyMode == "vi" && cfg.customPaneNavigationAndResize then '' </ins> bind h select-pane -L bind j select-pane -D bind k select-pane -U

description = "Use 24 hour clock."; }; <ins> customPaneNavigationAndResize = mkOption { default = false; example = true; type = types.bool; description = "Override the hjkl and HJKL bindings for pane navigation and resizing in VI mode."; }; </ins> escapeTime = mkOption { default = 500; example = 0;
Change:
Running leaves a result symlink in the current directory. According to the man page, this is only supposed to happen with and . However, it looks like for the flake builder, it only . Steps to reproduce the behavior: a flake system configuration result symlink in current directory No result symlink is left around in the current directory. <!-- Please @ people who are in the list of the offending package or module. If in doubt, check for whoever last touched something. --
I have some commits in but I am no maintainer.
Looks like intended behavior based on the source code: The reasoning seems to be that since does not touch the profiles unlike the other commands, it must create its own garbage-collector root.
Sorry! I looked at the 21.11 tree and there was no maintainer listed yet (should have looked in master) so I just picked the most recent committer. IMHO that is pretty annoying behavior, since I use frequently to test small changes to my configuration, pretty often also from different directories, so I end up having result symlinks all over my configuration which I then have to manually remove. Also, does it have to create its own garbage-collector root? If you mean, to prevent accidentally collecting the currently running system, I assumed that that's what /nix/var/nix/gcroots/current-system is for, to prevent exactly that.
If the GC quicks in before is set there is a race condition. I think would be enough to prevent that though, but I haven't looked at it in-depth.
Yeah, that's what I'd think as well. I haven't looked too closely yet either, but I would assume that for switch/boot, the temp link stays around until all the operations are done, which means there's always at least one gc root to the new configuration.
I've been using these patches since then and haven't encountered any issues, fwiw:
also leaves behind a symlink

Discussion:
nixFlakeBuild() { logVerbose "Building in flake mode." <del> if [[ -z "$buildHost" && -z "$targetHost" && "$action" != switch && "$action" != boot ]] </del> <ins> if [[ -z "$buildHost" && -z "$targetHost" && "$action" != switch && "$action" != boot && "$action" != test && "$action" != dry-activate ]] </ins> then runCmd nix "${flakeFlags[@]}" build "$@" readlink -f ./result
Change:
The python package tries to fetch , but the URL is ambiguous to GitHub, and does not point to the correct archive anymore. using the URL instead e.g. works as expected.

Discussion:
src = fetchFromGitHub { owner = pname; repo = pname; <del> rev = "v${version}"; </del> <ins> rev = "refs/tags/v${version}"; </ins> sha256 = "1irlp5sakbdfcf717qmrx0r9rjlmwk0vza6zm3y55d32zw5c1cxg"; };
Change:
I am new to Nix, but I am pretty sure there is a dependency missing. Run Docker container: Install bat- Execute bat- Install util-linux: <img width="832" alt="Screenshot 2022-04-24 at 11 01 19" src="https://user-"The Shell script itself uses the col command.

Discussion:
# batdiff , gitMinimal , withDelta ? delta != null, delta ? null <ins> # batman , util-linux </ins> }: let

{ batdiff = script "batdiff" ([ less coreutils gitMinimal ] ++ optionalDep withDelta delta); batgrep = script "batgrep" [ less coreutils ripgrep ]; <del> batman = script "batman" []; </del> <ins> batman = script "batman" [ util-linux ]; </ins> batwatch = script "batwatch" ([ less coreutils ] ++ optionalDep withEntr entr); prettybat = script "prettybat" ([] ++ optionalDep withShFmt shfmt
Change:
Looks like it lives and now. in nixpkgs hasn't been touched in 6 years. <!-- Note that these are hard requirements --<!-- You can use the "Go to file" functionality on GitHub to find the package Then you can go to the history for this package Find the latest "packagename: oldversion -newversion" commit The "newversion" is the current version of the package --- <!-- Type the name of your package and try to find an open pull request for the package If you find an open pull request, you can review it! There's a high chance that you'll have the new version right away while helping the community! --- name: <!-- The current version can be found easily with the same process as above for checking the master branch If an open PR is present for the package, take this version as the current one and link to the PR --current version: 0.6.169 desired version: ? <!-- Search your package here: If no maintainer is listed for your package, tag the person that last updated the package --maintainers: Please tag this issue in your PR.

Discussion:
<del> { lib, stdenv, fetchhg, cmake, glib, gst_all_1, makeWrapper, pkg-config </del> <ins> { lib, stdenv, fetchFromGitHub, cmake, glib, gst_all_1, makeWrapper, pkg-config </ins> , python2, SDL2, SDL2_image, SDL2_mixer, SDL2_ttf, sqlite, zlib, runtimeShell }: stdenv.mkDerivation { pname = "retrofe"; <del> version = "0.6.169"; </del> <ins> version = "0.10.31"; </ins> <del> src = fetchhg { url = "https://bitbucket.org/teamretro/retrofe"; rev = "8793e03"; sha256 = "0cvsg07ff0fdqh5zgiv2fs7s6c98hn150kpxmpw5fn6jilaszwkm"; </del> <ins> src = fetchFromGitHub { owner = "phulshof"; repo = "RetroFE"; rev = "2ddd65a76210d241031c4ac9268255f311df25d1"; sha256 = "sha256-uBfECbU2Df/pPpEXXq62S7Ec0YU4lPIsZ8k5UmKD7xQ="; </ins> }; nativeBuildInputs = [ cmake makeWrapper pkg-config python2 ];

glib gst_all_1.gstreamer SDL2 SDL2_image SDL2_mixer SDL2_ttf sqlite zlib ] ++ (with gst_all_1; [ gst-libav gst-plugins-base gst-plugins-good ]); <del> patches = [ ./include-paths.patch ]; </del> configurePhase = '' cmake RetroFE/Source -BRetroFE/Build -DCMAKE_BUILD_TYPE=Release  -DVERSION_MAJOR=0 -DVERSION_MINOR=0 -DVERSION_BUILD=0  <del> -DGSTREAMER_BASE_INCLUDE_DIRS='${gst_all_1.gst-plugins-base.dev}/include/gstreamer-1.0' </del> ''; buildPhase = ''

meta = with lib; { description = "A frontend for arcade cabinets and media PCs"; <del> homepage = "http://retrofe.com"; </del> <ins> homepage = "http://retrofe.nl/"; </ins> license = licenses.gpl3Plus; maintainers = with maintainers; [ hrdinka ]; platforms = with platforms; linux;

<del> diff -ur RetroFE.1/RetroFE/Source/CMakeLists.txt RetroFE.2/RetroFE/Source/CMakeLists.txt --- RetroFE.1/RetroFE/Source/CMakeLists.txt	2016-02-21 14:52:36.726070602 +0100 +++ RetroFE.2/RetroFE/Source/CMakeLists.txt	2016-02-21 14:38:43.036249029 +0100 @@ -59,6 +59,7 @@ set(RETROFE_INCLUDE_DIRS "${GLIB2_INCLUDE_DIRS}" "${GSTREAMER_INCLUDE_DIRS}" +	"${GSTREAMER_BASE_INCLUDE_DIRS}" "${SDL2_INCLUDE_DIRS}" "${SDL2_IMAGE_INCLUDE_DIRS}" "${SDL2_MIXER_INCLUDE_DIRS}" </del>
Change:
fails to build. Seems to be . A . That said, the project is mostly abandoned. The last release was 4 years ago, and they recommend building from a release since building from source is much harder. I can confirm, as I am unable to make it build from source (but then again for me autotools is like discovering ancient tablets in the sand with hieroglyphs on them). There are only a few packages that depend on . If it's too much hassle to get working may just want to retire these. Build works. End of log from building on current : End of log trying to build from source:
Thanks for having a look at it. I'm not sure what you mean by retiring the packages. I'd like to mark gstreamermm as broken first, before removing any packages. If nobody finds a fix for the build ofc.
does not actually seem to require at all. I'm working on a PR now to update and just have it depend on and
problem: generated sources are missing in git but these files are in the tarball release we need to exclude to make the patch work says next problem: is not executable is missing shebang line with perl interpreter needs perl module xml ... </details

Discussion:
<del> { lib, stdenv, fetchurl, pkg-config, file, glibmm, gst_all_1, gnome }: </del> <ins> { lib , stdenv , fetchurl , fetchpatch , pkg-config , file , glibmm , gst_all_1 , gnome }: </ins> stdenv.mkDerivation rec { pname = "gstreamermm"; version = "1.10.0";

sha256 = "0q4dx9sncqbwgpzma0zvj6zssc279yl80pn8irb95qypyyggwn5y"; }; <ins> patches = [ (fetchpatch { name = "${pname}-${version}.fix-build-against-glib-2.68.patch"; url = "https://gitlab.gnome.org/GNOME/gstreamermm/-/commit/37116547fb5f9066978e39b4cf9f79f2154ad425.patch"; sha256 = "sha256-YHtmOiOl4POwas3eWHsew3IyGK7Aq22MweBm3JPwyBM="; }) ]; </ins> outputs = [ "out" "dev" ]; <del> nativeBuildInputs = [ pkg-config file ]; </del> <ins> nativeBuildInputs = [ pkg-config file ]; </ins> <del> propagatedBuildInputs = [ glibmm gst_all_1.gst-plugins-base ]; </del> <ins> propagatedBuildInputs = [ glibmm gst_all_1.gst-plugins-base ]; </ins> enableParallelBuilding = true;

license = licenses.lgpl21Plus; platforms = platforms.linux; maintainers = with maintainers; [ romildo ]; <del> broken = true; # at 2022-09-24, logs at: https://termbin.com/n5hb # ../gstreamer/gstreamermm/register.h: In function 'GType Gst::register_mm_type(const gchar*)': # /nix/store/rwr0ly4girpnrq3sqvp3v2k40wb4hh3s-glib-2.72.3-dev/include/glib-2.0/glib/gatomic.h:113:19: #   error: argument 2 of '__atomic_load' must not be a pointer to a 'volatile' type #   113 |     __atomic_load (gapg_temp_atomic, &gapg_temp_newval, __ATOMIC_SEQ_CST); </del> }; }
Change:
Project description Cross platform file manager supporting cloud providers Metadata homepage URL: source URL: license: GPL-3.0 platforms: linux, darwin
Clicking "Download" on the website shows
They don't ship binaries yet since its in beta, but the repo is ready and has instructions to compile (cargo + pnpm)
It seems we can use binaries from
Alpha 0.1.0 was released 2h ago:
I've the binary version to my
haven't done nixpkgs contribution but appimage version plus it needs to add meta field too.
Combine the two above derivations, and it would be a quick merge into nixpkgs :+1:

Discussion:
<ins> { lib, appimageTools, fetchurl, pkgs }: let pname = "spacedrive"; version = "0.1.4"; src = fetchurl { url = "https://github.com/spacedriveapp/spacedrive/releases/download/${version}/Spacedrive-linux-x86_64.AppImage"; hash = "sha256-iBdW8iPuvztP0L5xLyVs7/K8yFe7kD7QwdTuKJLhB+c="; }; appimageContents = appimageTools.extractType2 { inherit pname version src; }; in appimageTools.wrapType2 { inherit pname version src; extraPkgs = pkgs: (appimageTools.defaultFhsEnvArgs.multiPkgs pkgs) ++ [ pkgs.libthai ]; extraInstallCommands = '' # Remove version from entrypoint mv $out/bin/spacedrive-"${version}" $out/bin/spacedrive # Install .desktop files install -Dm444 ${appimageContents}/spacedrive.desktop -t $out/share/applications install -Dm444 ${appimageContents}/spacedrive.png -t $out/share/pixmaps substituteInPlace $out/share/applications/spacedrive.desktop  --replace 'Exec=AppRun --no-sandbox %U' 'Exec=spacedrive' ''; meta = with lib; { description = "An open source file manager, powered by a virtual distributed filesystem"; homepage = "https://www.spacedrive.com/"; platforms = [ "x86_64-linux" ]; license = licenses.agpl3Plus; sourceProvenance = with sourceTypes; [ binaryNativeCode ]; maintainers = with maintainers; [ mikaelfangel heisfer ]; mainProgram = "spacedrive"; }; } </ins>
Change:
When trying to start gnome-secrets it fails with the message: Steps to reproduce the behavior: -shell -p gnome-secrets --run "secrets" Please run and paste the result.
Also gnome-secrets 6.4 is available. Updating it to the latest version doesn't solve the issue :(
Fixed by
Thank you for your work!

Discussion:
, gettext , fetchFromGitLab , python3Packages <del> , libpwquality </del> , wrapGAppsHook4 , gtk4 , glib

python3Packages.buildPythonApplication rec { pname = "gnome-secrets"; <del> version = "6.1"; </del> <ins> version = "6.4"; </ins> format = "other"; strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943

owner = "World"; repo = "secrets"; rev = version; <del> sha256 = "sha256-TBGNiiR0GW8s/Efi4/Qqvwd87Ir0gCLGPfBmmqqSwQ8="; </del> <ins> sha256 = "sha256-qO2DJ/Eb9+G1R3un2+n9Tf6oxpGrEuH3SBrajQ9tCPU="; </ins> }; nativeBuildInputs = [

glib gdk-pixbuf libadwaita <ins> python3Packages.libpwquality.dev # Use python-enabled libpwquality </ins> ]; propagatedBuildInputs = with python3Packages; [

construct pykeepass pyotp <del> ] ++ [ libpwquality # using the python bindings </del> <ins> libpwquality </ins> ]; <del> postPatch = '' substituteInPlace meson_post_install.py --replace "gtk-update-icon-cache" "gtk4-update-icon-cache"; ''; </del> # Prevent double wrapping, let the Python wrapper use the args in preFixup. dontWrapGApps = true;
Change:
Project description It'a a Unicode font for Ethiopian and Erythrean scripts. Metadata homepage URL: source URL: license: ofl platforms: all

Discussion:
<ins> { fetchzip, lib }: let version = "1.500"; in fetchzip { name = "sil-abyssinica-${version}"; url = "mirror://debian/pool/main/f/fonts-sil-abyssinica/fonts-sil-abyssinica_${version}.orig.tar.xz"; sha256 = "sha256-fCa88wG2JfHTaHaBkuvoncbcbrh3XNzc8ewS3W+W/fM="; postFetch = '' mkdir -p $out/share/fonts tar xf $downloadedFile --strip-components=1 -C $out/share/fonts AbyssinicaSIL-${version}/AbyssinicaSIL-R.ttf ''; meta = with lib; { description = "Unicode font for Ethiopian and Erythrean scripts (Amharic et al.)"; homepage = "https://software.sil.org/abyssinica/"; license = licenses.ofl; maintainers = with lib.maintainers; [ serge ]; platforms = platforms.all; }; } </ins>

sierra-gtk-theme = callPackage ../data/themes/sierra { }; <ins> sil-abyssinica = callPackage ../data/fonts/sil-abyssinica { }; </ins> sil-padauk = callPackage ../data/fonts/sil-padauk { }; snap7 = callPackage ../development/libraries/snap7 {};
Change:
Project description Add SIL Padauk - Burmese Unicode 6 TrueType font. Metadata homepage URL: source URL: license: ofl platforms: all

Discussion:
<ins> { fetchzip, lib }: let version = "3.003"; in fetchzip { name = "sil-padauk-${version}"; url = "mirror://debian/pool/main/f/fonts-sil-padauk/fonts-sil-padauk_${version}.orig.tar.xz"; sha256 = "sha256-oK+EufbvsqXunTgcWj+DiNdfpRl+VPO60Wc9KYjZv5A="; postFetch = '' unpackDir="$TMPDIR/unpack" mkdir "$unpackDir" cd "$unpackDir" tar xf "$downloadedFile" --strip-components=1 mkdir -p $out/share/fonts cp *.ttf $out/share/fonts ''; meta = with lib; { description = "Burmese Unicode 6 TrueType font"; homepage = "https://software.sil.org/padauk"; license = licenses.ofl; maintainers = with lib.maintainers; [ serge ]; platforms = platforms.all; }; } </ins>

sierra-gtk-theme = callPackage ../data/themes/sierra { }; <ins> sil-padauk = callPackage ../data/fonts/sil-padauk { }; </ins> snap7 = callPackage ../development/libraries/snap7 {}; snowblind = callPackage ../data/themes/snowblind { };
Change:
Project description describe the project a little Metadata homepage URL: source URL: license: gpl2Plus platforms: all

Discussion:
<ins> { fetchzip, lib }: let version = "0.6"; in fetchzip { name = "lklug-sinhala-${version}"; url = "mirror://debian/pool/main/f/fonts-lklug-sinhala/fonts-lklug-sinhala_${version}.orig.tar.xz"; sha256 = "sha256-Fy+QnAajA4yLf/I1vOQll5pRd0ZLfLe8UXq4XMC9qNc="; postFetch = '' mkdir -p $out/share/fonts tar xf $downloadedFile --strip-components=1 -C $out/share/fonts fonts-lklug-sinhala-${version}/lklug.ttf ''; meta = with lib; { description = "Unicode Sinhala font by Lanka Linux User Group"; homepage = "http://www.lug.lk/fonts/lklug"; license = licenses.gpl2Plus; maintainers = with lib.maintainers; [ serge ]; platforms = platforms.all; }; } </ins>

linux-manual = callPackage ../data/documentation/linux-manual { }; <ins> lklug-sinhala = callPackage ../data/fonts/lklug-sinhala {}; </ins> lmmath = callPackage ../data/fonts/lmmath {}; lmodern = callPackage ../data/fonts/lmodern { };
Change:
I see a lot of dev packages on my system: It seems, most of them are pulled by okteta and yakuake while dev package of gtk2 is pulled by pygtk2 (that is pulled by gimp on my system) Steps to reproduce the behavior: those packages via environment.systemPackages I don't think those packages are required for these applications and pygtk to work, so I expect they don't pull them :) (is pygtk unmaintained?)
Fix in
Now I see there's the same problem with teamviewer :(
if you check my fix I think you can easily make the fixes yourself for other packages where you encounter this issue.
why do they use propagateBuildInputs in first place though? It doesn't look like those applications (except of pygtk of course) are used as buildInputs in other packages.
It's due to how Qt works and how Qt is supported/packaged in Nixpkgs. Not ideal, but it's how it is currently.
Am I missing something? I maintain a Qt-based package myself and don't use propagateBuildInputs yet it works just fine.
That's good to know. It's possible then that these expressions have never been updated. The way Qt is supported has changed several times. I can't tell like this how it's working currently.
can you review ?

Discussion:
libwebp libheif python <ins> # Duplicated here because python.withPackages does not expose the dev output with pkg-config files python2.pkgs.pygtk </ins> libexif xorg.libXpm glib-networking

mkDerivation rec { pname = "teamviewer"; <ins> # teamviewer itself has not development files but the dev output removes propagated other dev outputs from runtime outputs = [ "out" "dev" ]; </ins> version = "15.29.4"; src = fetchurl {

buildPythonPackage rec { pname = "pygtk"; <ins> outputs = [ "out" "dev" ]; </ins> version = "2.24.0"; disabled = isPy3k;