diff --git a/pkgs/desktops/deepin/core/dde-polkit-agent/default.nix b/pkgs/desktops/deepin/core/dde-polkit-agent/default.nix new file mode 100644 index 000000000000..a1acab05cf1a --- /dev/null +++ b/pkgs/desktops/deepin/core/dde-polkit-agent/default.nix @@ -0,0 +1,61 @@ +{ stdenv +, lib +, fetchFromGitHub +, dtkwidget +, qt5integration +, qt5platform-plugins +, dde-qt-dbus-factory +, pkg-config +, cmake +, qttools +, wrapQtAppsHook +, polkit-qt +, qtbase +}: +stdenv.mkDerivation rec { + pname = "dde-polkit-agent"; + version = "5.5.22"; + + src = fetchFromGitHub { + owner = "linuxdeepin"; + repo = pname; + rev = version; + sha256 = "sha256-4wAqMymLPxKXbfAx2PtkEGfwenphPxBZn+qCdcyqNc0="; + }; + + postPatch = '' + substituteInPlace AuthDialog.cpp \ + --replace "/usr/share/dde-session-shell/dde-session-shell.conf" "/etc/dde-session-shell/dde-session-shell.conf" + ''; + + nativeBuildInputs = [ + cmake + pkg-config + qttools + wrapQtAppsHook + ]; + + buildInputs = [ + dtkwidget + qt5platform-plugins + dde-qt-dbus-factory + polkit-qt + ]; + + # qt5integration must be placed before qtsvg in QT_PLUGIN_PATH + qtWrapperArgs = [ + "--prefix QT_PLUGIN_PATH : ${qt5integration}/${qtbase.qtPluginPrefix}" + ]; + + postFixup = '' + wrapQtApp $out/lib/polkit-1-dde/dde-polkit-agent + ''; + + meta = with lib; { + description = "PolicyKit agent for Deepin Desktop Environment"; + homepage = "https://github.com/linuxdeepin/dde-polkit-agent"; + license = licenses.gpl3Plus; + platforms = platforms.linux; + maintainers = teams.deepin.members; + }; +} diff --git a/pkgs/desktops/deepin/core/dpa-ext-gnomekeyring/default.nix b/pkgs/desktops/deepin/core/dpa-ext-gnomekeyring/default.nix new file mode 100644 index 000000000000..f9b4e7592fb8 --- /dev/null +++ b/pkgs/desktops/deepin/core/dpa-ext-gnomekeyring/default.nix @@ -0,0 +1,51 @@ +{ stdenv +, lib +, fetchFromGitHub +, cmake +, pkg-config +, qttools +, wrapQtAppsHook +, dtkwidget +, dde-polkit-agent +, libsecret +, libgnome-keyring +}: + +stdenv.mkDerivation rec { + pname = "dpa-ext-gnomekeyring"; + version = "5.0.11"; + + src = fetchFromGitHub { + owner = "linuxdeepin"; + repo = pname; + rev = version; + sha256 = "sha256-mXaGwbtEwaqfOT0izK64zX4s3VFmsRpUGOVm6oSEhn8="; + }; + + postPatch = '' + substituteInPlace gnomekeyringextention.cpp \ + --replace "/usr/share/dpa-ext-gnomekeyring" "$out/share/dpa-ext-gnomekeyring" + ''; + + nativeBuildInputs = [ + cmake + pkg-config + qttools + wrapQtAppsHook + ]; + + buildInputs = [ + dtkwidget + dde-polkit-agent + libgnome-keyring + libsecret + ]; + + meta = with lib; { + description = "GNOME keyring extension for dde-polkit-agent"; + homepage = "https://github.com/linuxdeepin/dpa-ext-gnomekeyring"; + 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 5afb5e03059c..5f75e4267d9c 100644 --- a/pkgs/desktops/deepin/default.nix +++ b/pkgs/desktops/deepin/default.nix @@ -29,6 +29,10 @@ let image-editor = callPackage ./library/image-editor { }; udisks2-qt5 = callPackage ./library/udisks2-qt5 { }; + #### CORE + dde-polkit-agent = callPackage ./core/dde-polkit-agent { }; + dpa-ext-gnomekeyring = callPackage ./core/dpa-ext-gnomekeyring { }; + #### Dtk Application deepin-album = callPackage ./apps/deepin-album { }; deepin-calculator = callPackage ./apps/deepin-calculator { };