diff --git a/pkgs/applications/editors/jetbrains/default.nix b/pkgs/applications/editors/jetbrains/default.nix index fff9c8a2de6c..1da4a24b3eae 100644 --- a/pkgs/applications/editors/jetbrains/default.nix +++ b/pkgs/applications/editors/jetbrains/default.nix @@ -1,6 +1,9 @@ { lib, stdenv, callPackage, fetchurl , jdk, cmake, libxml2, zlib, python3, ncurses5 , dotnet-sdk_3 +, autoPatchelfHook +, glib +, libdbusmenu , vmopts ? null }: @@ -25,6 +28,15 @@ let platforms = platforms.linux; }; }).overrideAttrs (attrs: { + nativeBuildInputs = (attrs.nativeBuildInputs or []) ++ optionals (stdenv.isLinux) [ + autoPatchelfHook + ]; + buildInputs = (attrs.buildInputs or []) ++ optionals (stdenv.isLinux) [ + python3 + stdenv.cc.cc + libdbusmenu + ]; + dontAutoPatchelf = true; postFixup = (attrs.postFixup or "") + optionalString (stdenv.isLinux) '' ( cd $out/clion-${version} @@ -32,45 +44,7 @@ let rm -rf bin/cmake/linux ln -s ${cmake} bin/cmake/linux - lldbLibPath=$out/clion-${version}/bin/lldb/linux/lib - interp="$(cat $NIX_CC/nix-support/dynamic-linker)" - ln -s ${ncurses5.out}/lib/libtinfo.so.5 $lldbLibPath/libtinfo.so.5 - - patchelf --set-interpreter $interp \ - --set-rpath "${lib.makeLibraryPath [ libxml2 zlib stdenv.cc.cc.lib ]}:$lldbLibPath" \ - bin/lldb/linux/bin/lldb-server - - for i in LLDBFrontend lldb lldb-argdumper; do - patchelf --set-interpreter $interp \ - --set-rpath "${lib.makeLibraryPath [ stdenv.cc.cc.lib ]}:$lldbLibPath" \ - "bin/lldb/linux/bin/$i" - done - - patchelf \ - --set-rpath "${lib.makeLibraryPath [ stdenv.cc.cc.lib ]}:$lldbLibPath" \ - bin/lldb/linux/lib/python3.*/lib-dynload/zlib.cpython-*-x86_64-linux-gnu.so - - patchelf \ - --set-rpath "${lib.makeLibraryPath [ libxml2 zlib stdenv.cc.cc.lib python3 ]}:$lldbLibPath" \ - bin/lldb/linux/lib/liblldb.so - - gdbLibPath=$out/clion-${version}/bin/gdb/linux/lib - patchelf \ - --set-rpath "$gdbLibPath" \ - bin/gdb/linux/lib/python3.*/lib-dynload/zlib.cpython-*-x86_64-linux-gnu.so - patchelf --set-interpreter $interp \ - --set-rpath "${lib.makeLibraryPath [ stdenv.cc.cc.lib zlib ]}:$gdbLibPath" \ - bin/gdb/linux/bin/gdb - patchelf --set-interpreter $interp \ - --set-rpath "${lib.makeLibraryPath [ stdenv.cc.cc.lib ]}:$gdbLibPath" \ - bin/gdb/linux/bin/gdbserver - - patchelf --set-interpreter $interp \ - --set-rpath "${lib.makeLibraryPath [ stdenv.cc.cc.lib zlib ]}" \ - bin/clang/linux/clangd - patchelf --set-interpreter $interp \ - --set-rpath "${lib.makeLibraryPath [ stdenv.cc.cc.lib zlib ]}" \ - bin/clang/linux/clang-tidy + autoPatchelf $PWD/bin wrapProgram $out/bin/clion \ --set CL_JDK "${jdk}"