diff --git a/pkgs/desktops/deepin/core/dde-control-center/default.nix b/pkgs/desktops/deepin/core/dde-control-center/default.nix index a8625084ba12..f397e9ca2837 100644 --- a/pkgs/desktops/deepin/core/dde-control-center/default.nix +++ b/pkgs/desktops/deepin/core/dde-control-center/default.nix @@ -1,86 +1,47 @@ { stdenv , lib , fetchFromGitHub +, cmake +, pkg-config +, qttools +, doxygen +, wrapQtAppsHook +, wrapGAppsHook , dtkwidget , qt5integration , qt5platform-plugins -, dde-qt-dbus-factory , deepin-pw-check -, udisks2-qt5 -, cmake -, qttools , qtbase -, pkg-config , qtx11extras , qtmultimedia -, wrapQtAppsHook -, wrapGAppsHook -, gsettings-qt -, wayland -, kwayland -, qtwayland , polkit-qt -, pcre -, xorg -, libselinux -, libsepol , libxcrypt , librsvg -, networkmanager-qt -, glib , runtimeShell -, tzdata , dbus -, gtest }: stdenv.mkDerivation rec { pname = "dde-control-center"; - version = "5.6.3"; + version = "6.0.28"; src = fetchFromGitHub { owner = "linuxdeepin"; repo = pname; rev = version; - sha256 = "sha256-/gzS+IbopIDRpufsa9cEfFBOqehPUnF4IozvwW8UEbY="; + hash = "sha256-kgQ4ySiYtaklOqER56QtKD9lk1CnRSEAU4QPHycl9eI="; }; - patches = [ - # UserExperienceProgramLicenseAgreement comes from a non-open source component(deepin-deepinid-client) - # If we don't block it, only an empty page will be displayed here - # Remove this patch when dde-control-center is upgraded to 6.0.0 - ./dont-show-endUserLicenseAgreement-for-deepinos.patch - ]; - postPatch = '' - substituteInPlace src/frame/window/{mainwindow.cpp,insertplugin.cpp} com.deepin.controlcenter.develop.policy \ - --replace "/usr/lib/dde-control-center" "/run/current-system/sw/lib/dde-control-center" - - substituteInPlace src/frame/modules/datetime/timezone_dialog/timezone.cpp \ - --replace "/usr/share/zoneinfo" "${tzdata}/share/zoneinfo" - - substituteInPlace src/frame/modules/accounts/accountsworker.cpp \ + substituteInPlace src/plugin-accounts/operation/accountsworker.cpp \ --replace "/bin/bash" "${runtimeShell}" - - substituteInPlace dde-control-center-autostart.desktop \ - --replace "/usr" "$out" - - substituteInPlace com.deepin.dde.ControlCenter.service \ - --replace "/usr/bin/dbus-send" "${dbus}/bin/dbus-send" \ - --replace "/usr/share" "$out/share" - - substituteInPlace include/widgets/utils.h src/{reboot-reminder-dialog/main.cpp,frame/main.cpp,reset-password-dialog/main.cpp} \ - --replace "/usr/share/dde-control-center" "$out/share/dde-control-center" - - substituteInPlace dde-control-center-wapper \ - --replace "qdbus" "${qttools.bin}/bin/qdbus" \ - --replace "/usr/share" "$out/share" ''; nativeBuildInputs = [ cmake - qttools pkg-config + qttools + doxygen wrapQtAppsHook wrapGAppsHook ]; @@ -89,35 +50,31 @@ stdenv.mkDerivation rec { buildInputs = [ dtkwidget qt5platform-plugins - dde-qt-dbus-factory deepin-pw-check qtbase qtx11extras qtmultimedia - gsettings-qt - udisks2-qt5 - wayland - kwayland - qtwayland polkit-qt - pcre - xorg.libXdmcp - libselinux - libsepol libxcrypt librsvg - networkmanager-qt - gtest ]; cmakeFlags = [ "-DCVERSION=${version}" "-DDISABLE_AUTHENTICATION=YES" - "-DDISABLE_ACTIVATOR=YES" - "-DDISABLE_SYS_UPDATE=YES" - "-DDISABLE_RECOVERY=YES" + "-DDISABLE_UPDATE=YES" + "-DDISABLE_LANGUAGE=YES" + "-DBUILD_DOCS=OFF" + "-DMODULE_READ_DIR=/run/current-system/sw/lib/dde-control-center/modules" + "-DLOCALSTATE_READ_DIR=/var" ]; + preConfigure = '' + # qt.qpa.plugin: Could not find the Qt platform plugin "minimal" + # A workaround is to set QT_PLUGIN_PATH explicitly + export QT_PLUGIN_PATH=${qtbase.bin}/${qtbase.qtPluginPrefix} + ''; + # qt5integration must be placed before qtsvg in QT_PLUGIN_PATH qtWrapperArgs = [ "--prefix QT_PLUGIN_PATH : ${qt5integration}/${qtbase.qtPluginPrefix}" @@ -125,10 +82,11 @@ stdenv.mkDerivation rec { ]; preFixup = '' - glib-compile-schemas ${glib.makeSchemaPath "$out" "${pname}-${version}"} qtWrapperArgs+=("''${gappsWrapperArgs[@]}") ''; + outputs = [ "out" "dev" ]; + meta = with lib; { description = "Control panel of Deepin Desktop Environment"; homepage = "https://github.com/linuxdeepin/dde-control-center"; diff --git a/pkgs/desktops/deepin/core/dde-control-center/dont-show-endUserLicenseAgreement-for-deepinos.patch b/pkgs/desktops/deepin/core/dde-control-center/dont-show-endUserLicenseAgreement-for-deepinos.patch deleted file mode 100644 index 491007ea2bf3..000000000000 --- a/pkgs/desktops/deepin/core/dde-control-center/dont-show-endUserLicenseAgreement-for-deepinos.patch +++ /dev/null @@ -1,29 +0,0 @@ -From adcc5eb58e2dcd06810a40c237bc7984c2c5af4b Mon Sep 17 00:00:00 2001 -From: rewine -Date: Sun, 8 Jan 2023 13:46:17 +0800 -Subject: [PATCH] dont show endUserLicenseAgreement for deepinos - ---- - src/frame/window/modules/systeminfo/systeminfowidget.cpp | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/src/frame/window/modules/systeminfo/systeminfowidget.cpp b/src/frame/window/modules/systeminfo/systeminfowidget.cpp -index 8e62604fb..0f443ee20 100644 ---- a/src/frame/window/modules/systeminfo/systeminfowidget.cpp -+++ b/src/frame/window/modules/systeminfo/systeminfowidget.cpp -@@ -78,6 +78,12 @@ void SystemInfoWidget::initData() - m_listView->setRowHidden(i, true); - } - } -+ -+ if (IsNotDeepinUos) { -+ if (m.gsettingsName == "endUserLicenseAgreement") { -+ m_listView->setRowHidden(i, true); -+ } -+ } - } - - if (InsertPlugin::instance()->updatePluginInfo("systeminfo")) --- -2.38.1 -