Merge pull request #224016 from wineee/dde-core

This commit is contained in:
Sandro 2023-04-09 02:20:16 +02:00 committed by GitHub
commit fecdeaabb8
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 596 additions and 0 deletions

View file

@ -0,0 +1,56 @@
{ stdenv
, lib
, fetchFromGitHub
, dtkwidget
, qt5integration
, qt5platform-plugins
, cmake
, wrapQtAppsHook
, qtbase
}:
stdenv.mkDerivation rec {
pname = "dde-app-services";
version = "0.0.20";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "sha256-M9XXNV3N4CifOXitT6+UxaGsLoVuoNGqC5SO/mF+bLw=";
};
postPatch = ''
substituteInPlace dconfig-center/dde-dconfig-daemon/services/org.desktopspec.ConfigManager.service \
--replace "/usr/bin/dde-dconfig-daemon" "$out/bin/dde-dconfig-daemon"
substituteInPlace dconfig-center/dde-dconfig/main.cpp \
--replace "/bin/dde-dconfig-editor" "dde-dconfig-editor"
substituteInPlace dconfig-center/CMakeLists.txt \
--replace 'add_subdirectory("example")' " " \
--replace 'add_subdirectory("tests")' " "
'';
nativeBuildInputs = [
cmake
wrapQtAppsHook
];
buildInputs = [
dtkwidget
qt5integration
qt5platform-plugins
];
cmakeFlags = [
"-DDVERSION=${version}"
"-DDSG_DATA_DIR=/run/current-system/sw/share/dsg"
];
meta = with lib; {
description = "Provids dbus service for reading and writing DSG configuration";
homepage = "https://github.com/linuxdeepin/dde-app-services";
license = licenses.lgpl3Plus;
platforms = platforms.linux;
maintainers = teams.deepin.members;
};
}

View file

@ -0,0 +1,73 @@
{ stdenv
, lib
, fetchFromGitHub
, dtkwidget
, qt5integration
, qt5platform-plugins
, dde-qt-dbus-factory
, gio-qt
, cmake
, qttools
, kwayland
, pkg-config
, wrapQtAppsHook
, glibmm
, gtest
}:
stdenv.mkDerivation rec {
pname = "dde-clipboard";
version = "5.4.25";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "sha256-oFATOBXf4NvGxjVMlfxwfQkBffeKut8ao+X6T9twb/I=";
};
postPatch = ''
substituteInPlace CMakeLists.txt \
--replace "/etc/xdg" "$out/etc/xdg" \
--replace "/lib/systemd/user" "$out/lib/systemd/user" \
--replace "/usr/share" "$out/share"
substituteInPlace misc/com.deepin.dde.Clipboard.service \
--replace "/usr/bin/qdbus" "${lib.getBin qttools}/bin/qdbus"
substituteInPlace misc/{dde-clipboard.desktop,dde-clipboard-daemon.service,com.deepin.dde.Clipboard.service} \
--replace "/usr" "$out"
patchShebangs translate_generation.sh generate_gtest_report.sh
'';
nativeBuildInputs = [
cmake
pkg-config
qttools
wrapQtAppsHook
];
buildInputs = [
dtkwidget
qt5integration
qt5platform-plugins
dde-qt-dbus-factory
gio-qt
kwayland
glibmm
gtest
];
cmakeFlags = [
"-DUSE_DEEPIN_WAYLAND=OFF"
];
meta = with lib; {
description = "DDE optional clipboard manager componment";
homepage = "https://github.com/linuxdeepin/dde-clipboard";
license = licenses.gpl3Plus;
platforms = platforms.linux;
maintainers = teams.deepin.members;
};
}

View file

@ -0,0 +1,89 @@
{ stdenv
, lib
, fetchFromGitHub
, dtkwidget
, dde-qt-dbus-factory
, qt5integration
, qt5platform-plugins
, dde-control-center
, deepin-desktop-schemas
, cmake
, qttools
, qtx11extras
, pkg-config
, wrapQtAppsHook
, wrapGAppsHook
, gsettings-qt
, libdbusmenu
, xorg
, gtest
, qtbase
}:
stdenv.mkDerivation rec {
pname = "dde-dock";
version = "5.5.81";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "sha256-x8U5QPfIykaQLjwbErZiYbZC+JyPQQ+jd6MBjDQyUjs=";
};
postPatch = ''
substituteInPlace plugins/tray/system-trays/systemtrayscontroller.cpp frame/controller/dockpluginscontroller.cpp \
--replace "/usr/lib/dde-dock/plugins" "/run/current-system/sw/lib/dde-dock/plugins"
substituteInPlace plugins/show-desktop/showdesktopplugin.cpp frame/window/components/desktop_widget.cpp \
--replace "/usr/lib/deepin-daemon" "/run/current-system/sw/lib/deepin-daemon"
substituteInPlace plugins/{dcc-dock-plugin/settings_module.cpp,tray/system-trays/systemtrayscontroller.cpp} \
--replace "/usr" "$out"
'';
nativeBuildInputs = [
cmake
qttools
pkg-config
wrapQtAppsHook
wrapGAppsHook
];
dontWrapGApps = true;
buildInputs = [
dtkwidget
qt5platform-plugins
dde-qt-dbus-factory
dde-control-center
deepin-desktop-schemas
qtx11extras
gsettings-qt
libdbusmenu
xorg.libXcursor
xorg.libXtst
xorg.libXdmcp
gtest
];
outputs = [ "out" "dev" ];
cmakeFlags = [ "-DVERSION=${version}" ];
# qt5integration must be placed before qtsvg in QT_PLUGIN_PATH
qtWrapperArgs = [
"--prefix QT_PLUGIN_PATH : ${qt5integration}/${qtbase.qtPluginPrefix}"
];
preFixup = ''
qtWrapperArgs+=("''${gappsWrapperArgs[@]}")
'';
meta = with lib; {
description = "Deepin desktop-environment - dock module";
homepage = "https://github.com/linuxdeepin/dde-dock";
platforms = platforms.linux;
license = licenses.lgpl3Plus;
maintainers = teams.deepin.members;
};
}

View file

@ -0,0 +1,73 @@
{ stdenv
, lib
, fetchFromGitHub
, dtkwidget
, dde-qt-dbus-factory
, qt5integration
, qt5platform-plugins
, cmake
, qttools
, qtx11extras
, pkg-config
, wrapQtAppsHook
, wrapGAppsHook
, gsettings-qt
, gtest
, qtbase
}:
stdenv.mkDerivation rec {
pname = "dde-launcher";
version = "5.6.1";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "sha256-Td8R91892tgJx7FLV2IZ/aPBzDb+o6EYKpk3D8On7Ag=";
};
postPatch = ''
substituteInPlace src/boxframe/{backgroundmanager.cpp,boxframe.cpp} \
--replace "/usr/share/backgrounds" "/run/current-system/sw/share/backgrounds"
substituteInPlace dde-launcher.desktop dde-launcher-wapper src/dbusservices/com.deepin.dde.Launcher.service \
--replace "/usr" "$out"
'';
nativeBuildInputs = [
cmake
qttools
pkg-config
wrapQtAppsHook
wrapGAppsHook
];
dontWrapGApps = true;
buildInputs = [
dtkwidget
qt5platform-plugins
dde-qt-dbus-factory
qtx11extras
gsettings-qt
gtest
];
cmakeFlags = [ "-DVERSION=${version}" ];
# qt5integration must be placed before qtsvg in QT_PLUGIN_PATH
qtWrapperArgs = [
"--prefix QT_PLUGIN_PATH : ${qt5integration}/${qtbase.qtPluginPrefix}"
];
preFixup = ''
qtWrapperArgs+=("''${gappsWrapperArgs[@]}")
'';
meta = with lib; {
description = "Deepin desktop-environment - Launcher module";
homepage = "https://github.com/linuxdeepin/dde-launcher";
license = licenses.gpl3Plus;
platforms = platforms.linux;
maintainers = teams.deepin.members;
};
}

View file

@ -0,0 +1,78 @@
{ stdenv
, lib
, fetchFromGitHub
, cmake
, qttools
, pkg-config
, wrapQtAppsHook
, dtkwidget
, dde-dock
, dde-control-center
, dde-session-shell
, dde-qt-dbus-factory
, gsettings-qt
, gio-qt
, networkmanager-qt
, glib
, pcre
, util-linux
, libselinux
, libsepol
, dbus
, gtest
, qtbase
}:
stdenv.mkDerivation rec {
pname = "dde-network-core";
version = "1.1.8";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "sha256-ysmdB9CT7mhN/0r8CRT4FQsK12HkhjbezGXwWiNScqg=";
};
postPatch = ''
substituteInPlace dock-network-plugin/networkplugin.cpp dcc-network-plugin/dccnetworkmodule.cpp dss-network-plugin/network_module.cpp \
--replace "/usr/share" "$out/share"
substituteInPlace dss-network-plugin/notification/bubbletool.cpp \
--replace "/usr/share" "/run/current-system/sw/share"
'';
nativeBuildInputs = [
cmake
qttools
pkg-config
wrapQtAppsHook
];
buildInputs = [
dtkwidget
dde-dock
dde-control-center
dde-session-shell
dde-qt-dbus-factory
gsettings-qt
gio-qt
networkmanager-qt
glib
pcre
util-linux
libselinux
libsepol
gtest
];
cmakeFlags = [
"-DVERSION=${version}"
];
meta = with lib; {
description = "DDE network library framework";
homepage = "https://github.com/linuxdeepin/dde-network-core";
license = licenses.gpl3Plus;
platforms = platforms.linux;
maintainers = teams.deepin.members;
};
}

View file

@ -0,0 +1,112 @@
{ stdenv
, lib
, fetchFromGitHub
, linkFarm
, dtkwidget
, qt5integration
, qt5platform-plugins
, dde-qt-dbus-factory
, cmake
, pkg-config
, qttools
, qtx11extras
, wrapQtAppsHook
, wrapGAppsHook
, gsettings-qt
, lightdm_qt
, linux-pam
, xorg
, kwayland
, gtest
, xkeyboard_config
, dbus
, qtbase
, dde-session-shell
}:
stdenv.mkDerivation rec {
pname = "dde-session-shell";
version = "5.6.4";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "sha256-mrdGu4t86d3No23IrnjypVLx1jxaySatr0xPMY9l5S4";
};
postPatch = ''
substituteInPlace src/lightdm-deepin-greeter/greeterworker.cpp \
--replace "/usr/include/shadow.h" "shadow.h"
substituteInPlace scripts/lightdm-deepin-greeter files/wayland/lightdm-deepin-greeter-wayland \
--replace "/usr/lib/deepin-daemon" "/run/current-system/sw/lib/deepin-daemon"
substituteInPlace src/session-widgets/auth_module.h \
--replace "/usr/lib/dde-control-center" "/run/current-system/sw/lib/dde-control-center"
substituteInPlace src/global_util/plugin_manager/modules_loader.cpp \
--replace "/usr/lib/dde-session-shell/modules" "/run/current-system/sw/lib/dde-session-shell/modules"
substituteInPlace src/{session-widgets/{lockcontent.cpp,userinfo.cpp},widgets/fullscreenbackground.cpp} \
--replace "/usr/share/backgrounds" "/run/current-system/sw/share/backgrounds"
substituteInPlace src/global_util/xkbparser.h \
--replace "/usr/share/X11/xkb/rules/base.xml" "${xkeyboard_config}/share/X11/xkb/rules/base.xml"
substituteInPlace files/{com.deepin.dde.shutdownFront.service,com.deepin.dde.lockFront.service} \
--replace "/usr/bin/dbus-send" "${dbus}/bin/dbus-send" \
--replace "/usr/share" "$out/share"
substituteInPlace src/global_util/{public_func.cpp,constants.h} scripts/lightdm-deepin-greeter files/{dde-lock.desktop,lightdm-deepin-greeter.desktop,wayland/lightdm-deepin-greeter-wayland.desktop} \
--replace "/usr" "$out"
patchShebangs files/deepin-greeter
'';
nativeBuildInputs = [
cmake
pkg-config
qttools
wrapQtAppsHook
wrapGAppsHook
];
dontWrapGApps = true;
buildInputs = [
dtkwidget
qt5platform-plugins
dde-qt-dbus-factory
gsettings-qt
lightdm_qt
qtx11extras
linux-pam
kwayland
xorg.libXcursor
xorg.libXtst
xorg.libXrandr
xorg.libXdmcp
gtest
];
# qt5integration must be placed before qtsvg in QT_PLUGIN_PATH
qtWrapperArgs = [
"--prefix QT_PLUGIN_PATH : ${qt5integration}/${qtbase.qtPluginPrefix}"
];
preFixup = ''
qtWrapperArgs+=("''${gappsWrapperArgs[@]}")
'';
passthru.xgreeters = linkFarm "deepin-greeter-xgreeters" [{
path = "${dde-session-shell}/share/xgreeters/lightdm-deepin-greeter.desktop";
name = "lightdm-deepin-greeter.desktop";
}];
meta = with lib; {
description = "Deepin desktop-environment - session-shell module";
homepage = "https://github.com/linuxdeepin/dde-session-shell";
license = licenses.gpl3Plus;
platforms = platforms.linux;
maintainers = teams.deepin.members;
};
}

View file

@ -0,0 +1,108 @@
{ stdenv
, lib
, fetchFromGitHub
, dtkwidget
, qt5integration
, qt5platform-plugins
, pkg-config
, cmake
, dde-dock
, dde-qt-dbus-factory
, deepin-gettext-tools
, gsettings-qt
, lightdm_qt
, qttools
, qtx11extras
, util-linux
, xorg
, pcre
, libselinux
, libsepol
, wrapQtAppsHook
, gtest
, xkeyboard_config
, qtbase
, dbus
}:
stdenv.mkDerivation rec {
pname = "dde-session-ui";
version = "5.6.2";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "sha256-3lW/M07b6gXzGcvQYB+Ojqdq7TfJBaMIKfmfG7o3wWg=";
};
postPatch = ''
substituteInPlace widgets/fullscreenbackground.cpp \
--replace "/usr/share/backgrounds" "/run/current-system/sw/share/backgrounds" \
--replace "/usr/share/wallpapers" "/run/current-system/sw/share/wallpapers"
substituteInPlace global_util/xkbparser.h \
--replace "/usr/share/X11/xkb/rules/base.xml" "${xkeyboard_config}/share/X11/xkb/rules/base.xml"
substituteInPlace dde-warning-dialog/com.deepin.dde.WarningDialog.service dde-osd/files/dde-osd.desktop dde-welcome/com.deepin.dde.welcome.service \
--replace "/usr/lib/deepin-daemon" "/run/current-system/sw/lib/deepin-daemon"
substituteInPlace dde-osd/notification/bubbletool.cpp \
--replace "/usr/share" "/run/current-system/sw/share"
substituteInPlace dde-osd/files/{com.deepin.dde.Notification.service,com.deepin.dde.freedesktop.Notification.service,com.deepin.dde.osd.service} \
--replace "/usr/bin/dbus-send" "${dbus}/bin/dbus-send" \
--replace "/usr/share" "$out/share"
substituteInPlace dde-lowpower/main.cpp dmemory-warning-dialog/main.cpp dde-touchscreen-dialog/main.cpp dnetwork-secret-dialog/main.cpp dde-suspend-dialog/main.cpp \
dde-warning-dialog/main.cpp dde-bluetooth-dialog/main.cpp dde-welcome/main.cpp dde-hints-dialog/main.cpp dde-osd/main.cpp dde-wm-chooser/main.cpp \
dde-license-dialog/{content.cpp,main.cpp} dmemory-warning-dialog/com.deepin.dde.MemoryWarningDialog.service \
--replace "/usr" "$out"
'';
nativeBuildInputs = [
cmake
pkg-config
qttools
deepin-gettext-tools
wrapQtAppsHook
];
buildInputs = [
dtkwidget
qt5platform-plugins
dde-dock
dde-qt-dbus-factory
gsettings-qt
qtx11extras
pcre
xorg.libXdmcp
util-linux
libselinux
libsepol
gtest
];
# qt5integration must be placed before qtsvg in QT_PLUGIN_PATH
qtWrapperArgs = [
"--prefix QT_PLUGIN_PATH : ${qt5integration}/${qtbase.qtPluginPrefix}"
];
preFixup = ''
qtWrapperArgs+=("''${gappsWrapperArgs[@]}")
'';
postFixup = ''
for binary in $out/lib/deepin-daemon/*; do
wrapProgram $binary "''${qtWrapperArgs[@]}"
done
'';
meta = with lib; {
description = "Deepin desktop-environment - Session UI module";
homepage = "https://github.com/linuxdeepin/dde-session-ui";
license = licenses.gpl3Plus;
platforms = platforms.linux;
maintainers = teams.deepin.members;
};
}

View file

@ -32,8 +32,15 @@ let
util-dfm = callPackage ./library/util-dfm { };
#### CORE
dde-app-services = callPackage ./core/dde-app-services { };
dde-control-center = callPackage ./core/dde-control-center { };
dde-calendar = callPackage ./core/dde-calendar { };
dde-clipboard = callPackage ./core/dde-clipboard { };
dde-dock = callPackage ./core/dde-dock { };
dde-launcher = callPackage ./core/dde-launcher { };
dde-network-core = callPackage ./core/dde-network-core { };
dde-session-shell = callPackage ./core/dde-session-shell { };
dde-session-ui = callPackage ./core/dde-session-ui { };
dde-polkit-agent = callPackage ./core/dde-polkit-agent { };
dpa-ext-gnomekeyring = callPackage ./core/dpa-ext-gnomekeyring { };