at 24.11-pre 106 lines 2.4 kB view raw
1{ stdenv 2, lib 3, fetchurl 4, cmake 5, pkg-config 6, ninja 7, python3 8, qtbase 9, qt5compat 10, qtdeclarative 11, qtdoc 12, qtquick3d 13, qtquicktimeline 14, qtserialport 15, qtsvg 16, qttools 17, qtwebengine 18, qtwayland 19, qtshadertools 20, wrapQtAppsHook 21, yaml-cpp 22, litehtml 23, libsecret 24, gumbo 25, llvmPackages 26, rustc-demangle 27, elfutils 28, perf 29}: 30 31stdenv.mkDerivation rec { 32 pname = "qtcreator"; 33 version = "13.0.1"; 34 35 src = fetchurl { 36 url = "https://download.qt.io/official_releases/${pname}/${lib.versions.majorMinor version}/${version}/qt-creator-opensource-src-${version}.tar.xz"; 37 hash = "sha256-gZAG0ZIfYcxnWYC8ydeVoiSM/XlhFdrUZqRFR1nasy4="; 38 }; 39 40 nativeBuildInputs = [ 41 cmake 42 pkg-config 43 (qttools.override { withClang = true; }) 44 wrapQtAppsHook 45 python3 46 ninja 47 ]; 48 49 buildInputs = [ 50 qtbase 51 qtdoc 52 qtsvg 53 qtquick3d 54 qtwebengine 55 qtwayland 56 qtserialport 57 qtshadertools 58 qt5compat 59 qtdeclarative 60 qtquicktimeline 61 yaml-cpp 62 litehtml 63 libsecret 64 gumbo 65 llvmPackages.libclang 66 llvmPackages.llvm 67 rustc-demangle 68 elfutils 69 ]; 70 71 cmakeFlags = [ 72 # workaround for missing CMAKE_INSTALL_DATAROOTDIR 73 # in pkgs/development/tools/build-managers/cmake/setup-hook.sh 74 "-DCMAKE_INSTALL_DATAROOTDIR=${placeholder "out"}/share" 75 # qtdeclarative in nixpkgs does not provide qmlsc 76 # fix can't find Qt6QmlCompilerPlusPrivate 77 "-DQT_NO_FIND_QMLSC=TRUE" 78 "-DWITH_DOCS=ON" 79 "-DBUILD_DEVELOPER_DOCS=ON" 80 "-DBUILD_QBS=OFF" 81 "-DQTC_CLANG_BUILDMODE_MATCH=ON" 82 "-DCLANGTOOLING_LINK_CLANG_DYLIB=ON" 83 ]; 84 85 qtWrapperArgs = [ 86 "--set-default PERFPROFILER_PARSER_FILEPATH ${lib.getBin perf}/bin" 87 ]; 88 89 postInstall = '' 90 substituteInPlace $out/share/applications/org.qt-project.qtcreator.desktop \ 91 --replace "Exec=qtcreator" "Exec=$out/bin/qtcreator" 92 ''; 93 94 meta = with lib; { 95 description = "Cross-platform IDE tailored to the needs of Qt developers"; 96 longDescription = '' 97 Qt Creator is a cross-platform IDE (integrated development environment) 98 tailored to the needs of Qt developers. It includes features such as an 99 advanced code editor, a visual debugger and a GUI designer. 100 ''; 101 homepage = "https://wiki.qt.io/Qt_Creator"; 102 license = licenses.gpl3Only; # annotated with The Qt Company GPL Exception 1.0 103 maintainers = [ maintainers.rewine ]; 104 platforms = platforms.linux; 105 }; 106}