From e5fcc046321cca432ea1b0175059fe85666c4f2c Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Thu, 8 May 2014 11:09:47 -0500 Subject: [PATCH 1/2] qtcurve version bump 1.8.17 -> 1.8.18 --- pkgs/misc/themes/qtcurve/default.nix | 16 ++++++------ .../qtcurve-1.8.17-install-paths.patch | 25 ------------------- .../qtcurve-1.8.18-install-paths.patch | 24 ++++++++++++++++++ 3 files changed, 33 insertions(+), 32 deletions(-) delete mode 100644 pkgs/misc/themes/qtcurve/qtcurve-1.8.17-install-paths.patch create mode 100644 pkgs/misc/themes/qtcurve/qtcurve-1.8.18-install-paths.patch diff --git a/pkgs/misc/themes/qtcurve/default.nix b/pkgs/misc/themes/qtcurve/default.nix index ec5feb27c85..78f2a594569 100644 --- a/pkgs/misc/themes/qtcurve/default.nix +++ b/pkgs/misc/themes/qtcurve/default.nix @@ -1,11 +1,13 @@ -{ stdenv, fetchurl, cmake, gettext, gtk2, kde_workspace, kdelibs, libpthreadstubs, libXdmcp -, libxcb, pkgconfig, xlibs }: +{ stdenv, fetchurl, cmake, gettext, pkgconfig # Build tools +, gtk2, kde_workspace, kdelibs # Toolkit dependencies +, libpthreadstubs, libXdmcp, libxcb, xlibs # X11 dependencies +}: stdenv.mkDerivation { - name = "qtcurve-1.8.17"; + name = "qtcurve-1.8.18"; src = fetchurl { - url = "https://github.com/QtCurve/qtcurve/archive/1.8.17.tar.gz"; - sha256 = "1ixgill9lfhmcfsk5csk6ww3ljzbvb4x48m73apprv949xgr4wyn"; + url = "https://github.com/QtCurve/qtcurve/archive/1.8.18.tar.gz"; + sha256 = "19kk11hgi6md1cl0hr0pklcczbl66jczahlkf5fr8j59ljgpr6c5"; }; buildInputs = [ @@ -18,10 +20,10 @@ stdenv.mkDerivation { libXdmcp libxcb pkgconfig - xlibs.xcbutilimage + xlibs.libxshmfence ]; - patches = [ ./qtcurve-1.8.17-install-paths.patch ]; + patches = [ ./qtcurve-1.8.18-install-paths.patch ]; cmakeFlags = '' -DENABLE_QT5=OFF diff --git a/pkgs/misc/themes/qtcurve/qtcurve-1.8.17-install-paths.patch b/pkgs/misc/themes/qtcurve/qtcurve-1.8.17-install-paths.patch deleted file mode 100644 index bb8fd185c77..00000000000 --- a/pkgs/misc/themes/qtcurve/qtcurve-1.8.17-install-paths.patch +++ /dev/null @@ -1,25 +0,0 @@ -diff -ur qtcurve-1.8.17-a/CMakeLists.txt qtcurve-1.8.17-b/CMakeLists.txt ---- qtcurve-1.8.17-a/CMakeLists.txt 2013-10-18 07:35:20.000000000 -0500 -+++ qtcurve-1.8.17-b/CMakeLists.txt 2013-12-30 10:58:43.303808246 -0600 -@@ -135,8 +135,9 @@ - if(ENABLE_GTK2) - find_package(PkgConfig REQUIRED) - pkg_check_modules(GTK2 REQUIRED gtk+-2.0) -+ set(GTK2_THEME_PREFIX "${CMAKE_INSTALL_PREFIX}") - if(GTK2_THEME_PREFIX) -- set(GTK2_PREIX "${GTK2_THEME_PREFIX}") -+ set(GTK2_PREFIX "${GTK2_THEME_PREFIX}") - elseif(NOT GTK2_PREFIX) - set(GTK2_PREFIX "${CMAKE_INSTALL_PREFIX}") - endif() -diff -ur qtcurve-1.8.17-a/gtk2/style/CMakeLists.txt qtcurve-1.8.17-b/gtk2/style/CMakeLists.txt ---- qtcurve-1.8.17-a/gtk2/style/CMakeLists.txt 2013-10-18 07:35:20.000000000 -0500 -+++ qtcurve-1.8.17-b/gtk2/style/CMakeLists.txt 2013-12-30 11:23:41.370548328 -0600 -@@ -88,6 +88,6 @@ - m ${QTC_X11_LIBRARIES} qtcurve-utils) - - install(TARGETS qtcurve-gtk2 LIBRARY DESTINATION -- ${GTK2_LIBDIR}/gtk-2.0/${GTK2_BIN_VERSION}/engines) -+ lib/gtk-2.0/${GTK2_BIN_VERSION}/engines) - install(FILES gtkrc icons3 icons4 map_kde_icons.pl kdeglobals - DESTINATION ${GTK2_THEME_DIR}/gtk-2.0) diff --git a/pkgs/misc/themes/qtcurve/qtcurve-1.8.18-install-paths.patch b/pkgs/misc/themes/qtcurve/qtcurve-1.8.18-install-paths.patch new file mode 100644 index 00000000000..345ac25bbbb --- /dev/null +++ b/pkgs/misc/themes/qtcurve/qtcurve-1.8.18-install-paths.patch @@ -0,0 +1,24 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index b2be588..4cb9115 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -116,6 +116,7 @@ if(ENABLE_GTK2) + find_package(PkgConfig REQUIRED) + unset(__pkg_config_checked_GTK2 CACHE) + pkg_check_modules(GTK2 REQUIRED gtk+-2.0) ++ set(GTK2_THEME_PREFIX "${CMAKE_INSTALL_PREFIX}") + if(GTK2_THEME_PREFIX) + set(GTK2_PREFIX "${GTK2_THEME_PREFIX}") + elseif(NOT GTK2_PREFIX) +diff --git a/gtk2/style/CMakeLists.txt b/gtk2/style/CMakeLists.txt +index 01e8891..a2c767e 100644 +--- a/gtk2/style/CMakeLists.txt ++++ b/gtk2/style/CMakeLists.txt +@@ -88,6 +88,6 @@ target_link_libraries(qtcurve-gtk2 + qtcurve-utils qtcurve-cairo m) + + install(TARGETS qtcurve-gtk2 LIBRARY DESTINATION +- ${GTK2_LIBDIR}/gtk-2.0/${GTK2_BIN_VERSION}/engines) ++ lib/gtk-2.0/${GTK2_BIN_VERSION}/engines) + install(FILES gtkrc icons3 icons4 map_kde_icons.pl kdeglobals + DESTINATION ${GTK2_THEME_DIR}/gtk-2.0) From 119414ddcded64aa6db0cec87a517fc9fe64716b Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Thu, 8 May 2014 12:54:36 -0500 Subject: [PATCH 2/2] qtcurve: add toolbar alpha patch --- pkgs/misc/themes/qtcurve/default.nix | 5 ++- .../qtcurve-1.8.18-toolbar-alpha.patch | 34 +++++++++++++++++++ 2 files changed, 38 insertions(+), 1 deletion(-) create mode 100644 pkgs/misc/themes/qtcurve/qtcurve-1.8.18-toolbar-alpha.patch diff --git a/pkgs/misc/themes/qtcurve/default.nix b/pkgs/misc/themes/qtcurve/default.nix index 78f2a594569..e63f6846002 100644 --- a/pkgs/misc/themes/qtcurve/default.nix +++ b/pkgs/misc/themes/qtcurve/default.nix @@ -23,7 +23,10 @@ stdenv.mkDerivation { xlibs.libxshmfence ]; - patches = [ ./qtcurve-1.8.18-install-paths.patch ]; + patches = [ + ./qtcurve-1.8.18-install-paths.patch + ./qtcurve-1.8.18-toolbar-alpha.patch + ]; cmakeFlags = '' -DENABLE_QT5=OFF diff --git a/pkgs/misc/themes/qtcurve/qtcurve-1.8.18-toolbar-alpha.patch b/pkgs/misc/themes/qtcurve/qtcurve-1.8.18-toolbar-alpha.patch new file mode 100644 index 00000000000..85400e6f0f6 --- /dev/null +++ b/pkgs/misc/themes/qtcurve/qtcurve-1.8.18-toolbar-alpha.patch @@ -0,0 +1,34 @@ +diff --git a/qt4/style/qtcurve.cpp b/qt4/style/qtcurve.cpp +index d7659f5..aede882 100644 +--- a/qt4/style/qtcurve.cpp ++++ b/qt4/style/qtcurve.cpp +@@ -12436,7 +12436,12 @@ Style::drawMenuOrToolBarBackground(const QWidget *widget, QPainter *p, + if (!qtcIsCustomBgnd(&opts) || !qtcIsFlat(app) || + (menu && SHADE_NONE != opts.shadeMenubars)) { + p->save(); ++#if 0 ++ // Revert for now ++ // This is necessary for correct opacity on the menubar but may ++ // break transparent gradient. + p->setCompositionMode(QPainter::CompositionMode_Source); ++#endif + QRect rx(r); + QColor col(menu && (option->state & State_Enabled || + SHADE_NONE != opts.shadeMenubars) ? +diff --git a/qt5/style/qtcurve.cpp b/qt5/style/qtcurve.cpp +index c43b8a3..135eddc 100644 +--- a/qt5/style/qtcurve.cpp ++++ b/qt5/style/qtcurve.cpp +@@ -3398,7 +3398,12 @@ Style::drawMenuOrToolBarBackground(const QWidget *widget, QPainter *p, + if (!qtcIsCustomBgnd(&opts) || !qtcIsFlat(app) || + (menu && opts.shadeMenubars != SHADE_NONE)) { + p->save(); ++#if 0 ++ // Revert for now ++ // This is necessary for correct opacity on the menubar but may ++ // break transparent gradient. + p->setCompositionMode(QPainter::CompositionMode_Source); ++#endif + QRect rx(r); + QColor col(menu && (option->state & State_Enabled || + opts.shadeMenubars != SHADE_NONE) ?