diff --git a/pkgs/by-name/op/openrgb-plugin-effects/package.nix b/pkgs/by-name/op/openrgb-plugin-effects/package.nix index 529bf06521f0..1d4f77c47537 100644 --- a/pkgs/by-name/op/openrgb-plugin-effects/package.nix +++ b/pkgs/by-name/op/openrgb-plugin-effects/package.nix @@ -2,41 +2,32 @@ lib, stdenv, fetchFromGitLab, - openrgb, glib, openal, + hidapi, + pipewire, pkg-config, qt6Packages, - fetchpatch, }: stdenv.mkDerivation (finalAttrs: { pname = "openrgb-plugin-effects"; - version = "0.9"; + version = "1.0rc2"; src = fetchFromGitLab { owner = "OpenRGBDevelopers"; repo = "OpenRGBEffectsPlugin"; - rev = "release_${finalAttrs.version}"; - hash = "sha256-8BnHifcFf7ESJgJi/q3ca38zuIVa++BoGlkWxj7gpog="; + tag = "release_candidate_${finalAttrs.version}"; + hash = "sha256-0W0hO3PSMpPLc0a7g/Nn7GWMcwBXhOxh1Y2flpdcnfE="; fetchSubmodules = true; }; - patches = [ - # Fix Qt6 issues in OpenRGBPluginsFont.cpp - (fetchpatch { - url = "https://gitlab.com/OpenRGBDevelopers/OpenRGBEffectsPlugin/-/commit/e952b0ed390045d4f4adec8e74b3126c2f8abcab.patch"; - hash = "sha256-xMsnVyrn/Cv2x2xQtAnPb5HJc+WolNx4v7h0TkTj9DU="; - }) - ./qt5compat.patch + qmakeFlags = [ + "CONFIG+=link_pkgconfig" + "PKGCONFIG+=libpipewire-0.3" + "QT_TOOL.lrelease.binary=${lib.getDev qt6Packages.qttools}/bin/lrelease" ]; - postPatch = '' - # Use the source of openrgb from nixpkgs instead of the submodule - rm -r OpenRGB - ln -s ${openrgb.src} OpenRGB - ''; - nativeBuildInputs = [ pkg-config qt6Packages.wrapQtAppsHook @@ -48,6 +39,8 @@ stdenv.mkDerivation (finalAttrs: { qt6Packages.qt5compat glib openal + hidapi + pipewire ]; meta = { diff --git a/pkgs/by-name/op/openrgb-plugin-effects/qt5compat.patch b/pkgs/by-name/op/openrgb-plugin-effects/qt5compat.patch deleted file mode 100644 index 926c34945419..000000000000 --- a/pkgs/by-name/op/openrgb-plugin-effects/qt5compat.patch +++ /dev/null @@ -1,114 +0,0 @@ -Commit ID: 20f227f4ef942e2ead5a3a684248c2da48c979bc -Change ID: rwlwzspvylkypuqoornwzvuvpuzorvso -Author : Alexey Sokolov (2025-07-21 22:34:37) -Committer: Marie Ramlow (2025-10-12 12:05:01) - - Fix build with Qt6 using core5compat - - Updated to add Qt5 backwards compatibility by Adam Honse - -diff --git a/Effects/Ambient/RectangleSelector.cpp b/Effects/Ambient/RectangleSelector.cpp -index 8f28ddcbcc..d8b4f56a1d 100644 ---- a/Effects/Ambient/RectangleSelector.cpp -+++ b/Effects/Ambient/RectangleSelector.cpp -@@ -1,6 +1,5 @@ - #include "RectangleSelector.h" - #include --#include - #include - - RectangleSelector::RectangleSelector(QWidget* parent) -@@ -57,7 +56,7 @@ - - QPainter painter(this); - -- texture.setDevicePixelRatio(devicePixelRatioF() / qApp->desktop()->devicePixelRatioF()); -+ texture.setDevicePixelRatio(devicePixelRatioF() / qApp->primaryScreen()->devicePixelRatio()); - - painter.setPen(QColor(0, 0, 0, 128)); - painter.setBrush(Qt::NoBrush); -@@ -69,7 +68,7 @@ - for(QScreen *screen : QApplication::screens()) - { - QRect geometry = screen->geometry(); -- qreal ratio = screen->devicePixelRatio() / qApp->desktop()->devicePixelRatioF(); -+ qreal ratio = screen->devicePixelRatio() / qApp->primaryScreen()->devicePixelRatio(); - QRect physical_geometry(geometry.x(), geometry.y(), std::lrint((qreal) geometry.width() * ratio), lrint((qreal) geometry.height() * ratio)); - - if(physical_geometry.contains(rect.center())) -@@ -92,7 +91,7 @@ - for(QScreen *screen : QApplication::screens()) - { - QRect geometry = screen->geometry(); -- qreal ratio = screen->devicePixelRatio() / qApp->desktop()->devicePixelRatioF(); -+ qreal ratio = screen->devicePixelRatio() / qApp->primaryScreen()->devicePixelRatio(); - - screen_geometries.emplace_back(geometry.x(), geometry.y(), - std::lrint((qreal) geometry.width() * ratio), -diff --git a/Effects/Shaders/GLSLHighlighter.h b/Effects/Shaders/GLSLHighlighter.h -index 7e9f21423b..ca9bf42c3c 100644 ---- a/Effects/Shaders/GLSLHighlighter.h -+++ b/Effects/Shaders/GLSLHighlighter.h -@@ -2,6 +2,7 @@ - #define GLSLHIGHLIGHTER_H - - #include -+#include - - class GLSLHighlighter : public QSyntaxHighlighter - { -diff --git a/OpenRGBEffectPage.cpp b/OpenRGBEffectPage.cpp -index 0d6e4ab0fb..4b756cf63c 100644 ---- a/OpenRGBEffectPage.cpp -+++ b/OpenRGBEffectPage.cpp -@@ -38,7 +38,7 @@ - | Extra options and custom widgets | - \*-----------------------------------------------*/ - ui->ExtraOptions->addWidget(effect); -- ui->ExtraOptions->setMargin(0); -+ ui->ExtraOptions->setContentsMargins(0, 0, 0, 0); - effect->setParent(ui->extra_settings); - - InitUi(); -diff --git a/OpenRGBEffectsPlugin.pro b/OpenRGBEffectsPlugin.pro -index 3e53316519..fec852f88c 100644 ---- a/OpenRGBEffectsPlugin.pro -+++ b/OpenRGBEffectsPlugin.pro -@@ -1,4 +1,10 @@ --QT += gui widgets core -+QT += gui widgets core opengl -+ -+if(greaterThan(QT_MAJOR_VERSION, 5)) { -+QT += \ -+ core5compat \ -+} -+ - DEFINES += OPEN_RGB_EFFECTS_PLUGIN_LIBRARY - TEMPLATE = lib - -diff --git a/SaveProfilePopup.cpp b/SaveProfilePopup.cpp -index 7297dad8b7..4fa837235f 100644 ---- a/SaveProfilePopup.cpp -+++ b/SaveProfilePopup.cpp -@@ -2,8 +2,8 @@ - #include "ui_SaveProfilePopup.h" - #include "OpenRGBEffectSettings.h" - --#include --#include -+#include -+#include - - SaveProfilePopup::SaveProfilePopup(QWidget *parent) : - QWidget(parent), -@@ -12,8 +12,8 @@ - ui->setupUi(this); - - // only letters or numbers, - _ and . -- QRegExp re("^[\\w\\-_.]+$"); -- QRegExpValidator *validator = new QRegExpValidator(re, this); -+ QRegularExpression re("^[\\w\\-_.]+$"); -+ QRegularExpressionValidator *validator = new QRegularExpressionValidator(re, this); - ui->filename->setValidator(validator); - - std::vector filenames = OpenRGBEffectSettings::ListProfiles();