[Nix-dev] Trouble building with pkgconfig (dwm, current nixos)

James Felix Black jfb at homonculus.net
Wed Jul 8 01:21:32 CEST 2015


Hi, all,

I’m enjoying my time with NixOS so far, but I’m having a devil of a time building a patched version of the dwm window manager. I’ve been able to successfully apply the dwm+pango patch, by adding the following to configuration.nix:

  nixpkgs.config.dwm = { patches = let pp = pkgs.fetchurl {
                                              url = "http://dwm.suckless.org/patches/dwm-6.0-pango.diff";
                                              sha256 = "3bd45a8b4e28258002ffa2f62f5dece7913ef476ea76e2eb6d3d85817ac8cc9e";
                                            };
                                   in
                                     [pp]; };

This applies the patch correctly, but then dwm fails to build; it needs pkgconfig, libXft, and pango in addition to the dependencies declared in the dwm/default.nix expression. So I’ve overridden the buildInputs as such:

  environment.systemPackages = with pkgs; [
      # stuff elided ...
      (lib.overrideDerivation dwm (attrs: { buildInputs = attrs.buildInputs ++ [xlibs.libXft xlibs.libXinerama pango pkgconfig]; }))
  ];

OK, this now seems to pull in the required libraries; but now, the build error is that the pkg_config binary (which gets called in the patched Makefile) can’t find any of the .pc files. I’m not 100% sure how to proceed here; I was operating under the assumption that having pkgconfig in the buildInputs would ensure that the various paths are correctly setup in the PKG_CONFIG_PATH. Is there something obvious I’m missing, here?

Thanks in advance! 
jfb



More information about the nix-dev mailing list