I’m trying to build gershwin-components, a GNUstep project, using nix and I keep running into this error.
> Linking tool dshelper ...
> /nix/store/8lkj89binl0xhraqxb8bwmv0q4p3pnlr-binutils-2.46/bin/ld.bfd: cannot find -lcrypt: No such file or directory
> clang: error: linker command failed with exit code 1 (use -v to see invocation)
The issue as far as I can tell is that I’m missing the libcrypt lib, and the source code of the project seems to confirm this, however adding libgcrypt, libmcrypt, libscrypt, libxcrypt etc to buildInputs doesn’t seem to resolve anything. What am I missing here?
Here is my package definition so far:
{
clangStdenv,
curl,
fetchFromGitHub,
gnustep-back,
gnustep-systempreferences,
lib,
libarchive,
libgcrypt,
libx11,
swift-corelibs-libdispatch,
wrapGNUstepAppsHook,
}:
clangStdenv.mkDerivation {
strictDeps = true;
pname = "gershwin-components";
name = "gershwin-components";
version = "0-unstable-2026-07-16";
src = fetchFromGitHub {
owner = "gershwin-desktop";
repo = "gershwin-components";
rev = "a2069c294e750da4ba71d63a191374fe129ba960";
hash = "sha256-gdj/h/mo3rGzbjh1dil/38atN3/ofMfLA68PjO5xJc8=";
};
nativeBuildInputs = [
wrapGNUstepAppsHook
];
# TODO: replace with the gershwin-systempreferences manager later.
buildInputs = [
curl
gnustep-back
gnustep-systempreferences
libarchive
libgcrypt
libx11
swift-corelibs-libdispatch
];
env.DESTDIR = placeholder "out";
platforms = lib.platforms.linux;
}