jiebi/CodeConvo huggingface dataset:
Change:
When adding a local directory to spotify client, it always fails due to missing gsettings schema(s) and spotify crashes. This issue is the same as the one from 2021 Works as expected on arch based distros indicating that this an issue with nixpkgs Steps to reproduce the behavior: spotify Settings on Show Local Files ADD A SOURCE button Open a file chooser to select which directory to be . <!-- Please @ people who are in the list of the offending package or module. If in doubt, check for whoever last touched something. --Please run and paste the result. Add a :+1: [reaction] to [issues you find important]. [reaction]: [issues you find important]:
I can't actually reproduce the issue, but I do see some inherent packaging issues that I attempted to address. Can you test the linked PR?
I also cannot reproduce the issue. However, I have never actually had local files appear after I have their directories (without crashing).
Yes your PR solves the issue!!! Thanks a lot for the fast reply :) I would really like to learn more about packaging programs for nixpkgs so I can contribute more myself. Do you have any recommendations on how to learn the different options for mkDerivation, the different phases, wrapping programs and libraries, etc.? I feel like the documentation is basically non-existend. If anything comes to mind (including workshops, etc.) feel free to just send me an email (this issue is probably the wrong place to discuss this)

Discussion:
# Prevent double wrapping dontWrapGApps = true; <ins> env = rec { libdir = "${placeholder "out"}/lib/spotify"; librarypath = "${lib.makeLibraryPath deps}:${libdir}"; }; </ins> installPhase = '' runHook preInstall <del> libdir=$out/lib/spotify </del> mkdir -p $libdir mv ./usr/* $out/

--interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)"  --set-rpath $rpath $out/share/spotify/spotify <del> librarypath="${lib.makeLibraryPath deps}:$libdir" wrapProgramShell $out/share/spotify/spotify  ''${gappsWrapperArgs[@]}  ${lib.optionalString (deviceScaleFactor != null) '' --add-flags "--force-device-scale-factor=${toString deviceScaleFactor}"  ''}  --prefix LD_LIBRARY_PATH : "$librarypath"  --prefix PATH : "${gnome.zenity}/bin"  --add-flags "''${NIXOS_OZONE_WL:+''${WAYLAND_DISPLAY:+--enable-features=UseOzonePlatform --ozone-platform=wayland}}" </del> # fix Icon line in the desktop file (#48062) sed -i "s:^Icon=.*:Icon=spotify-client:" "$out/share/spotify/spotify.desktop"

runHook postInstall ''; <ins> fixupPhase = '' runHook preFixup wrapProgramShell $out/share/spotify/spotify  ''${gappsWrapperArgs[@]}  ${lib.optionalString (deviceScaleFactor != null) '' --add-flags "--force-device-scale-factor=${toString deviceScaleFactor}"  ''}  --prefix LD_LIBRARY_PATH : "$librarypath"  --prefix PATH : "${gnome.zenity}/bin"  --add-flags "''${NIXOS_OZONE_WL:+''${WAYLAND_DISPLAY:+--enable-features=UseOzonePlatform --ozone-platform=wayland}}" runHook postFixup ''; </ins> meta = meta // { maintainers = with lib.maintainers; [ eelco ftrvxmtrx sheenobu timokau ma27 ]; };
Change:
, AWS automatically provides NTP over the unroutable 169.254.169.123 address, so I think we should just default our NTP settings to point there for our AMIs. any objections?
Note this won't work (yet) on C5 or M5 instance types.

Discussion:
environment.systemPackages = [ pkgs.cryptsetup ]; boot.initrd.supportedFilesystems = [ "unionfs-fuse" ]; <ins> # EC2 has its own NTP server provided by the hypervisor networking.timeServers = [ "169.254.169.123" ]; </ins> }; }
Change:
I'm trying to use vagrant with virtualbox after the 4.14 kernel upgrade, which with the 4.14 kernel upgrade forced a newer version of virtualbox which forced a newer version of vagrant. And somewhere in that vagrant upgrade this happened. I'm on the latest nixos-unstable from nixpkgs. So I have this Vagrantfile (that I can't share and haven't had time to write a simpler one to be able to share) but it begins with and then there's a bunch of ruby to describe this host. I have enabled vbox and installed relevant packages like this: And when I run in the directory with the I get the following message: The warnings (Ignoring ffi, unfext, wdm) doesn't seem to be an error in itself looking at this: , so this might as well be related: ldd seems to think that two libs are missing at least. And if I look around in that package for the libs: It seems like the expected is the wrong version, the isn't though. Funny things with the dates on my files in nix-store, should it be like that? system: host os: multi-user?: sandbox: version: channels(root): nixpkgs: On commit on

Discussion:
universal-ctags = callPackage ../development/tools/misc/universal-ctags { }; vagrant = callPackage ../development/tools/vagrant { <del> ruby = ruby_2_3; </del> <ins> ruby = ruby_2_4; </ins> }; bashdb = callPackage ../development/tools/misc/bashdb { };
Change:
In the e16 (enlightenment) window manager, menus are not generated dynamically, but rather via a script called . The version build by current nixpkgs has the following issues on NixOS: The script fails to run from the menu, as it hard-codes the interpreter path as The script does not find files for most Nix-installed applications, as it does not search in , so even if the script is manually run with the menu is quite empty I'll be submitting an MR to address this problem, as I already have a locally-tested fix. Steps to reproduce the behavior: an X session with as the window manager error on launch that menus could not be generated The correct behaviour is that should run without error, and pick up any files for applications installed via Nix. The generated menu file should then populate the menu list with installed applications. Add a :+1: [reaction] to [issues you find important]. [reaction]: [issues you find important]:

Discussion:
, libsndfile , pango , perl <ins> , python3 </ins> , gitUpdater }:

libsndfile pango perl <ins> python3 </ins> ]; postPatch = '' substituteInPlace scripts/e_gen_menu --replace "/usr/local:" "/run/current-system/sw:/usr/local:" <ins> substituteInPlace scripts/e_gen_menu --replace "'/opt'" "'/opt', '/run/current-system/sw'" substituteInPlace scripts/e_gen_menu --replace "'/.local'" "'/.nix-profile', '/.local'" </ins> ''; passthru.updateScript = gitUpdater {
Change:
Greetings. I'm trying to run gpt4all in cuda acceleration, but there is no option for CUDA acceleration in app. Launching from terminal give me this error:failed to initialize CUDA: CUDA driver is a stub library Steps to reproduce the behavior: gpt4all-cuda -Applictiation-Device device section, there is only CPU and Auto Cuda device should be detectable. Exporting resolve this issue and gpt4all detect cuda device. <!-- Please @ people who are in the list of the offending package or module. If in doubt, check for whoever last touched something. --Please run and paste the result. Add a :+1: [reaction] to [issues you find important]. [reaction]: [issues you find important]:
I'm sorry I won't be able to help since I don't particularly use it anymore and I don't have any NVidia devices.
Understandable. Maybe can take are look here then, because not only this app affected by this bug as far as i can see.
Small overlay wrapper in case anyone have this issue also: Probably something similar required for amd card.
Hi thanks for reporting the issue and finding the fix. Could you please submit a PR? Instead of using the wrapper you can add to the package's (best in the part of the list conditioned on ). That's the nice thing about ROCm: nothing of the sort is required; you can just link the driver directly, no need to play hide-n-seek with nvidia. However I don't see any references in the gpt4all expression or in the upstream repo, I'm not sure they support ROCm. One could still use the cuda version with amd devices, via in
same issue, but with AMD card. About sumbiting a PR. I don't feel confident enough in nixos to do such thing for now.
Do as you feel is best for you, but do know that we'd guide you and that the entry threshold is meant to be kept low
the PR that adds if is enabled in if you could take a look at it pls.

Discussion:
, wayland , cudaSupport ? config.cudaSupport , cudaPackages ? { } <ins> , autoAddDriverRunpath </ins> }: stdenv.mkDerivation (finalAttrs: {

qt6.wrapQtAppsHook ] ++ lib.optionals cudaSupport [ cudaPackages.cuda_nvcc <ins> autoAddDriverRunpath </ins> ]; buildInputs = [

vulkan-headers wayland ] ++ lib.optionals cudaSupport ( <del> with cudaPackages; [ cuda_cccl cuda_cudart libcublas ]); </del> <ins> with cudaPackages; [ cuda_cccl cuda_cudart libcublas ] ); </ins> cmakeFlags = [ "-DKOMPUTE_OPT_USE_BUILT_IN_VULKAN_HEADER=OFF"
Change:
Project description An unofficial version of qBittorrent featuring community enhancements such as: automatic banning of Xunlei, QQ, Baidu, Xfplay, DLBT, and Offline downloader; an option to automatically ban unknown peers from China; automatic updating of public trackers list; an option to automatically ban BitTorrent media player peers; and peer whitelisting/blacklisting. Metadata homepage URL: source URL: license: gpl2/gpl3, See platforms: unix, linux, darwin, windows
It is currently available in berberman's flake:

Discussion:
<ins> { lib , stdenv , fetchFromGitHub , cmake , pkg-config , boost , libtorrent-rasterbar , openssl , qt5 , zlib }: stdenv.mkDerivation rec { pname = "qbittorrent-enhanced"; version = "4.6.5.10"; src = fetchFromGitHub { owner = "c0re100"; repo = "qBittorrent-Enhanced-Edition"; rev = "release-${version}"; hash = "sha256-Yy0DUTz1lWkseh9x1xnHJCI89BKqi/D7zUn/S+qC+kM="; }; nativeBuildInputs = [ pkg-config cmake qt5.wrapQtAppsHook ]; buildInputs = [ openssl.dev boost zlib libtorrent-rasterbar qt5.qtbase qt5.qttools ]; meta = { description = "Unofficial enhanced version of qBittorrent, a BitTorrent client"; homepage = "https://github.com/c0re100/qBittorrent-Enhanced-Edition"; changelog = "https://github.com/c0re100/qBittorrent-Enhanced-Edition/blob/${src.rev}/Changelog"; license = with lib.licenses; [ gpl2Only gpl3Only ]; maintainers = with lib.maintainers; [ ByteSudoer ]; mainProgram = "qBittorrent-enhanced"; platforms = lib.platforms.linux; }; } </ins>
Change:
A clear and concise description of what the bug is. Steps to reproduce the behavior: wayfire with wayfire from the terminal (it doesn't need a display manager, and I couldn't get one to work but that's irrelevant here) Wayfire launches It gives the following error However, if I also enable sway: Then wayfire launches as intended. Clearly sway installs some dependencies (e.g. wlroots or something) that are required by wayfire that the package does not. It would be cleaner to allow only installing wayfire and not have to also install sway. <!-- Please @ people who are in the list of the offending package or module. If in doubt, check for whoever last touched something. --Please run and paste the result. Add a :+1: [reaction] to [issues you find important]. [reaction]: [issues you find important]:
This seems not to be a bug in the wayfire package, but with the nixos wayfire module. It seems is the relevant maintainer for programs.wayfire. wayfire does not import wayland-, that sets up required services like graphics and xdg, but sway does. See for a quick fix
This issue has been mentioned on NixOS Discourse. There might be relevant details there:

Discussion:
<del> { config, lib, pkgs, ...}: </del> <ins> { config, lib, pkgs, ... }: </ins> let cfg = config.programs.wayfire; in

plugins = lib.mkOption { type = lib.types.listOf lib.types.package; <del> default = with pkgs.wayfirePlugins; [ wcm wf-shell ]; </del> <ins> default = with pkgs.wayfirePlugins; [ wcm wf-shell ]; </ins> defaultText = lib.literalExpression "with pkgs.wayfirePlugins; [ wcm wf-shell ]"; example = lib.literalExpression '' with pkgs.wayfirePlugins; [

Additional plugins to use with the wayfire window manager. ''; }; <ins> xwayland.enable = lib.mkEnableOption "XWayland" // { default = true; }; </ins> }; <del> config = let finalPackage = pkgs.wayfire-with-plugins.override { wayfire = cfg.package; plugins = cfg.plugins; }; in lib.mkIf cfg.enable { environment.systemPackages = [ finalPackage ]; </del> <ins> config = let finalPackage = pkgs.wayfire-with-plugins.override { wayfire = cfg.package; plugins = cfg.plugins; }; in lib.mkIf cfg.enable ( lib.mkMerge [ { environment.systemPackages = [ finalPackage ]; </ins> <del> services.displayManager.sessionPackages = [ finalPackage ]; </del> <ins> services.displayManager.sessionPackages = [ finalPackage ]; </ins> <del> xdg.portal = { enable = lib.mkDefault true; wlr.enable = lib.mkDefault true; # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1050914 config.wayfire.default = lib.mkDefault [ "wlr" "gtk" ]; }; }; </del> <ins> xdg.portal = { enable = lib.mkDefault true; wlr.enable = lib.mkDefault true; # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1050914 config.wayfire.default = lib.mkDefault [ "wlr" "gtk" ]; }; } (import ./wayland-session.nix { inherit lib pkgs; enableXWayland = cfg.xwayland.enable; }) ] ); </ins> }
Change:
Package name: wash-cli Latest released version: 0.29 Current version on the unstable channel: 0.24 Current version on the stable/release channel: 0.24 only 0.24-0.28 is available... for 0.29, the maintainers now have wash-cli as part of the mono-repo which will take a different approach to get the right part of the repository for wash-cli which is now in I don't know how to do this without a bunch of pre and postfetch nonsense, I am sure someone does.
Not a problem actually, we fetch it from , not the github repo.

Discussion:
let wasiPreviewCommandComponentAdapter = fetchurl { <del> url = "https://github.com/bytecodealliance/wasmtime/releases/download/v13.0.0/wasi_snapshot_preview1.command.wasm"; hash = "sha256-QihT0Iaq9VJs2mLL9CdS32lVMtDc9M952k/ZZ4tO6qs="; </del> <ins> url = "https://github.com/bytecodealliance/wasmtime/releases/download/v22.0.0/wasi_snapshot_preview1.command.wasm"; hash = "sha256-UVBFddlI0Yh1ZNs0b2jSnKsHvGGAS5U09yuwm8Q6lxw="; </ins> }; wasiPreviewReactorComponentAdapter = fetchurl { <del> url = "https://github.com/bytecodealliance/wasmtime/releases/download/v13.0.0/wasi_snapshot_preview1.reactor.wasm"; hash = "sha256-bNmx/IqYPkA7YHvlYvHPmIMF/fkKtSXlZx1bjR3Neow="; </del> <ins> url = "https://github.com/bytecodealliance/wasmtime/releases/download/v22.0.0/wasi_snapshot_preview1.reactor.wasm"; hash = "sha256-oE53IRMZgysSWT7RhrpZJjdaIyzCRf0h4d1yjqj/PSk="; </ins> }; in rustPlatform.buildRustPackage rec { pname = "wash-cli"; <del> version = "0.24.0"; </del> <ins> version = "0.29.2"; </ins> src = fetchCrate { inherit version pname; <del> hash = "sha256-exhN+44Sikcn2JiIry/jHOpYrPG2oQOpwq/Mq+0VK0U="; </del> <ins> hash = "sha256-A66KSDYFbByguhnlzzU5nf8pE3lhnYQjI3h73SKB2Zo="; </ins> }; <del> cargoHash = "sha256-eEfkMoi4BPpKWkiTshHj59loFPzyrhFN/S8HKdMCGFM="; </del> <ins> cargoHash = "sha256-2mo30xHQ3aCExdI0ITDY9g/C5peN48PdUNFVVxM//+c="; </ins> nativeBuildInputs = [ pkg-config ];
Change:
While updating NixOS, this error orccurs: Here is my
Probably store corruption
Ran: However the error still persists.
In that case, please provide a repo to reproduce the issue
Heres:
seems to work fine on my end. I'm still leaning towards something being broken in your store
What should I do to resolve this error?
If you run the exact command I ran, does that also result in an error?
Yes it does, same error.
Not sure then, honestly. Maybe someone else has more insights.
Is there a way for me to tell how it ends up in the
Seems to be an input of nix-citizen if I read that correctly That commit here seems to have override their lock file with a store path
Good catch, this is why I avoid using others' flakes when possible. But the linked PR should fix it. You can also fix it on your end by adding the following to the attrset: followed by or , depending on your version of .

Discussion:
{ stdenv, fetchurl, gmp }: stdenv.mkDerivation rec { <del> name = "ikarus-0.0.3"; </del> <ins> version = "0.0.3"; name = "ikarus-${version}"; </ins> src = fetchurl { <del> url = "http://ikarus-scheme.org/${name}.tar.gz"; </del> <ins> url = "http://launchpad.net/ikarus/0.0/${version}/+download/${name}.tar.gz"; </ins> sha256 = "0d4vqwqfnj39l0gar2di021kcf6bfpkc6g40yapkmxm6sxpdcvjv"; };
Change:
The currently recommended way of overriding Python packages seem to be using . Yet, was overridable. Am I missing something? Would it be hard to make overridable? Works with import &lt;nixpkgs{}; ((old: { name = "pillow-override"; })).overrideDerivation(old: { }) Does not with import &lt;nixpkgs{}; ((old: { name = "pillow-override"; })).overridePythonAttrs(old: { })
I tried to look into how this is done for, but this seem be still beyond my Nix skills.
Could you test

Discussion:
overrideWith = newArgs: origArgs // (if builtins.isFunction newArgs then newArgs origArgs else newArgs); in if builtins.isAttrs ff then (ff // { <del> overridePythonAttrs = newArgs: makeOverridable f (overrideWith newArgs); </del> <ins> overridePythonAttrs = newArgs: makeOverridablePythonPackage f (overrideWith newArgs); </ins> }) else if builtins.isFunction ff then { <del> overridePythonAttrs = newArgs: makeOverridable f (overrideWith newArgs); </del> <ins> overridePythonAttrs = newArgs: makeOverridablePythonPackage f (overrideWith newArgs); </ins> __functor = self: ff; } else ff;
Change:
The program from the package segfaults. Run: type anything, then return:
I can confirm this, but the package may be obsolete. You can use (and also prebuilt , , or source-based , or compose your own set of packages).
You're right, but building auctex depends on tetex somehow. I hit the problem when trying to build :

Discussion:
find ./ -name "config.guess" -exec rm {} ; -exec ln -s ${automake}/share/automake-*/config.guess {} ; '' else null; <del> patches = [ ./environment.patch ./getline.patch ./clang.patch ]; </del> <ins> patches = [ ./environment.patch ./getline.patch ./clang.patch ./extramembot.patch ]; </ins> setupHook = ./setup-hook.sh;

<ins> diff -up texlive-2007/texk/web2c/tex.ch.extramembot texlive-2007/texk/web2c/tex.ch --- texlive-2007/texk/web2c/tex.ch.extramembot	2006-12-19 02:11:11.000000000 +0100 +++ texlive-2007/texk/web2c/tex.ch	2011-11-30 12:03:32.052795763 +0100 @@ -365,7 +365,7 @@ for i:=@'177 to @'377 do xchr[i]:=i; {Initialize encTeX data.} for i:=0 to 255 do mubyte_read[i]:=null; for i:=0 to 255 do mubyte_write[i]:=0; -for i:=0 to 128 do mubyte_cswrite[i]:=null; +for i:=0 to 127 do mubyte_cswrite[i]:=null; mubyte_keep := 0; mubyte_start := false; write_noexpanding := false; cs_converting := false; special_printing := false; message_printing := false; </ins>
Change:
Steps to reproduce the behavior: sc-im on nixpkgs-24.05-darwin I only tested on darwin 24.5, I haven't tested if the build is successful on any other archs Please run and paste the result. Add a :+1: [reaction] to [issues you find important]. [reaction]: [issues you find important]:
Please change your Github-related secrets immediately!
why?
We do not want to draw attention to it than we should, so please change your GitHub secrets first.
righto i've done it
Right, this is also a lesson for me, I'd check twice before posting logs in a PR from now on.
still no idea what you're talking about, the logs I posted look fine to me. My email address is on my profile if there's something specific you want to tell me about and btw thanks for opening the pull request to fix the issue with sc-im
Since you updated your secrets, it should be fine to tell you to check the history of your PR comment (edited by you should be able to delete/hide the revision from public view of your own comment.
I see it now, how did that happen :( many thanks for editing the comment and letting me know

Discussion:
makeFlags = [ "prefix=${placeholder "out"}" ]; <ins> env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang "-Wno-error=implicit-function-declaration"; </ins> postInstall = '' wrapProgram "$out/bin/sc-im" --prefix PATH : "${lib.makeBinPath [ gnuplot ]}" '';
Change:
, which is offered by most Linux distributions where is installed, is not present in NixOS. Its systemd services aren't available either. I'd like to be able to have an easy way to play sounds on boot and shutdown and this seems like the usual way to do it on other Linux distributions :grin: Steps to reproduce the behavior: (whether via , option, etc) should be available and executable. systemd services such as , , and should be available to enable. Add a :+1: [reaction] to [issues you find important]. [reaction]: [issues you find important]:
Probably a NixOS module would be good so it'll be easy to customize.
That doesn't really have a bearing on the PR, as libcanberra would still need to be built with systemd support anyway.
woot! thank you for your work on this! i'm so excited to get this working on my PC
FYI it'll take a couple of weeks to end up in unstable (you can follow for the progress), and you'll then have to add it to as well, but it should work at that point.

Discussion:
{ stdenv, lib, fetchurl, fetchpatch, pkg-config, libtool , gtk2-x11, gtk3-x11 , gtkSupport ? null <del> , libpulseaudio, gst_all_1, libvorbis, libcap </del> <ins> , libpulseaudio, gst_all_1, libvorbis, libcap, systemd </ins> , Carbon, CoreServices, AppKit , withAlsa ? stdenv.isLinux, alsa-lib }:

++ lib.optional (gtkSupport == "gtk2") gtk2-x11 ++ lib.optional (gtkSupport == "gtk3") gtk3-x11 ++ lib.optionals stdenv.isDarwin [ Carbon CoreServices AppKit ] <del> ++ lib.optional stdenv.isLinux libcap </del> <ins> ++ lib.optionals stdenv.isLinux [ libcap systemd ] </ins> ++ lib.optional withAlsa alsa-lib; <del> configureFlags = [ "--disable-oss" ]; </del> <ins> configureFlags = [ "--disable-oss" ] ++ lib.optional stdenv.isLinux "--with-systemdsystemunitdir=${placeholder "out"}/lib/systemd/system"; </ins> patches = [ (fetchpatch {
Change:
There should really be no need to propagate , it is only used for generating the gir files. We should encounter only minor issues with packages like or , which do not list the dependency explicitly. Yet when I try to build the depending packages, fails with the following, seemingly unrelated error: We need to find out why this error happens before removing the dependency.
Apparently, the issue is that its files from are not to . setup hook does that. Should we add a similar setup hook to ? What about other derivations providing files?
Since the command that fails without files is from — see its — I think that derivation is responsible either for populating , or, less likely, for propagating a build dependency that does nothing but populate .
Still need to do the actual unpropagation, basically build everything and see what’s broken. WIP branch:

Discussion:
# HACK, see #10874 (and 14664) buildInputs = stdenv.lib.optional (!stdenv.isLinux && !hostPlatform.isCygwin) libiconv; <ins> setupHook = ./gettext-setup-hook.sh; </ins> enableParallelBuilding = true; meta = {

<ins> gettextDataDirsHook() { if [ -d "$1/share/gettext" ]; then addToSearchPath GETTEXTDATADIRS "$1/share/gettext" fi } envHooks+=(gettextDataDirsHook) </ins>
Change:
I've to my . itself works fine: But the man pages are all missing: As far as I can tell, upstream provides them in DocBook format: and also provides a Makefile to build them: so this should hopefully be easily fixable. Steps to reproduce the behavior: . to read a man page for any of the binaries. Man pages should be provided. Please run and paste the result. Add a :+1: [reaction] to [issues you find important]. [reaction]: [issues you find important]:
Thanks for reporting I have opened PR to fix it.

Discussion:
cabal2nix = self.generateOptparseApplicativeCompletions [ "cabal2nix" ] super.cabal2nix; arbtt = overrideCabal (drv: { <ins> buildTools = drv.buildTools or [] ++ [ pkgs.buildPackages.installShellFiles pkgs.buildPackages.libxslt ]; postBuild = '' xsl=${pkgs.buildPackages.docbook_xsl}/share/xml/docbook-xsl make -C doc man XSLTPROC_MAN_STYLESHEET=$xsl/manpages/profile-docbook.xsl ''; postInstall = '' for f in doc/man/man[1-9]/*; do installManPage $f done ''; </ins> # The test suite needs the packages's executables in $PATH to succeed. preCheck = '' for i in $PWD/dist/build/*; do