diff --git a/pkgs/desktops/deepin/apps/deepin-draw/default.nix b/pkgs/desktops/deepin/apps/deepin-draw/default.nix new file mode 100644 index 000000000000..2138d910960f --- /dev/null +++ b/pkgs/desktops/deepin/apps/deepin-draw/default.nix @@ -0,0 +1,65 @@ +{ stdenv +, lib +, fetchFromGitHub +, fetchpatch +, dtkwidget +, qt5integration +, qt5platform-plugins +, cmake +, qttools +, pkg-config +, wrapQtAppsHook +, qtbase +}: + +stdenv.mkDerivation rec { + pname = "deepin-draw"; + version = "5.11.4"; + + src = fetchFromGitHub { + owner = "linuxdeepin"; + repo = pname; + rev = version; + sha256 = "sha256-49RQQ52HR5aqzeVEjGm9vQpTOxhY7I0X724x/Bboo90="; + }; + + patches = [ + (fetchpatch { + name = "chore: use GNUInstallDirs in CmakeLists"; + url = "https://github.com/linuxdeepin/deepin-draw/commit/dac714fe603e1b77fc39952bfe6949852ee6c2d5.patch"; + sha256 = "sha256-zajxmKkZJT1lcyvPv/PRPMxcstF69PB1tC50gYKDlWA="; + }) + ]; + + postPatch = '' + substituteInPlace com.deepin.Draw.service \ + --replace "/usr/bin/deepin-draw" "$out/bin/deepin-draw" + ''; + + nativeBuildInputs = [ + cmake + qttools + pkg-config + wrapQtAppsHook + ]; + + buildInputs = [ + dtkwidget + qt5platform-plugins + ]; + + cmakeFlags = [ "-DVERSION=${version}" ]; + + # qt5integration must be placed before qtsvg in QT_PLUGIN_PATH + qtWrapperArgs = [ + "--prefix QT_PLUGIN_PATH : ${qt5integration}/${qtbase.qtPluginPrefix}" + ]; + + meta = with lib; { + description = "Lightweight drawing tool for users to freely draw and simply edit images"; + homepage = "https://github.com/linuxdeepin/deepin-draw"; + license = licenses.gpl3Plus; + platforms = platforms.linux; + maintainers = teams.deepin.members; + }; +} diff --git a/pkgs/desktops/deepin/default.nix b/pkgs/desktops/deepin/default.nix index f40a44b193ec..d76de6e01e74 100644 --- a/pkgs/desktops/deepin/default.nix +++ b/pkgs/desktops/deepin/default.nix @@ -23,6 +23,7 @@ let #### Dtk Application deepin-calculator = callPackage ./apps/deepin-calculator { }; deepin-compressor = callPackage ./apps/deepin-compressor { }; + deepin-draw = callPackage ./apps/deepin-draw { }; deepin-editor = callPackage ./apps/deepin-editor { }; deepin-terminal = callPackage ./apps/deepin-terminal { };