Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 22 Jan 2024 19:46:38 GMT
From:      Dima Panov <fluffy@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: a311aa78c162 - main - graphics/spectacle-devel: add KDE6 screen capture program
Message-ID:  <202401221946.40MJkcoW044340@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by fluffy:

URL: https://cgit.FreeBSD.org/ports/commit/?id=a311aa78c162fbdd2f3319e8775c33c72b56affc

commit a311aa78c162fbdd2f3319e8775c33c72b56affc
Author:     Dima Panov <fluffy@FreeBSD.org>
AuthorDate: 2024-01-22 19:44:24 +0000
Commit:     Dima Panov <fluffy@FreeBSD.org>
CommitDate: 2024-01-22 19:44:24 +0000

    graphics/spectacle-devel: add KDE6 screen capture program
---
 graphics/Makefile                                  |   1 +
 graphics/spectacle-devel/Makefile                  |  33 +++++++
 graphics/spectacle-devel/distinfo                  |   3 +
 .../spectacle-devel/files/extra-patch-pipewire-off | 108 +++++++++++++++++++++
 graphics/spectacle-devel/pkg-descr                 |   1 +
 graphics/spectacle-devel/pkg-plist                 |  78 +++++++++++++++
 6 files changed, 224 insertions(+)

diff --git a/graphics/Makefile b/graphics/Makefile
index 18436c49af3f..152c2723e3aa 100644
--- a/graphics/Makefile
+++ b/graphics/Makefile
@@ -1115,6 +1115,7 @@
     SUBDIR += skanlite
     SUBDIR += skanpage
     SUBDIR += spectacle
+    SUBDIR += spectacle-devel
     SUBDIR += spirv-tools
     SUBDIR += springgraph
     SUBDIR += squish
diff --git a/graphics/spectacle-devel/Makefile b/graphics/spectacle-devel/Makefile
new file mode 100644
index 000000000000..84ccb96031b5
--- /dev/null
+++ b/graphics/spectacle-devel/Makefile
@@ -0,0 +1,33 @@
+PORTNAME=	spectacle
+DISTVERSION=	${KDE_APPLICATIONS_VERSION}
+CATEGORIES=	graphics kde kde-applications kde-devel
+
+MAINTAINER=	kde@FreeBSD.org
+COMMENT=	KDE screen capture program
+WWW=		https://projects.kde.org/projects/kde/kdegraphics/spectacle
+
+LIB_DEPENDS=	libxcb-cursor.so:x11/xcb-util-cursor \
+		libxcb-image.so:x11/xcb-util-image \
+		libxcb-util.so:x11/xcb-util \
+		libxkbcommon.so:x11/libxkbcommon \
+		libwayland-server.so:graphics/wayland
+
+USES=		cmake compiler:c++11-lang gettext gl kde:6 pkgconfig qt:6 tar:xz \
+		xorg
+USE_GL=		gl opengl
+USE_KDE=	attica5 auth codecs colorscheme completion config configwidgets coreaddons \
+		dbusaddons globalaccel guiaddons i18n jobwidgets kdeclarative \
+		kio kirigami2 layer-shell-qt newstuff notifications package purpose \
+		service solid wayland widgetsaddons windowsystem xmlgui \
+		doctools:build ecm:build plasma-wayland-protocols:build
+USE_QT=		base declarative multimedia wayland
+USE_XORG=	x11 xcb xext xfixes
+
+OPTIONS_DEFINE=			DOCS PIPEWIRE
+OPTIONS_DEFAULT=		PIPEWIRE
+PIPEWIRE_DESC=			Screen capture via PipeWire
+PIPEWIRE_USE=			KDE=kpipewire
+PIPEWIRE_CMAKE_BOOL_OFF=	DISABLE_PIPEWIRE
+PIPEWIRE_EXTRA_PATCHES_OFF=	${FILESDIR}/extra-patch-pipewire-off
+
+.include <bsd.port.mk>
diff --git a/graphics/spectacle-devel/distinfo b/graphics/spectacle-devel/distinfo
new file mode 100644
index 000000000000..c07b96940122
--- /dev/null
+++ b/graphics/spectacle-devel/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1705948395
+SHA256 (KDE/release-service/24.01.90/spectacle-24.01.90.tar.xz) = 73f410eb8f0985404ca367d1b109cc3a54b3ae1ef212167771d052a2c410f5dd
+SIZE (KDE/release-service/24.01.90/spectacle-24.01.90.tar.xz) = 1403668
diff --git a/graphics/spectacle-devel/files/extra-patch-pipewire-off b/graphics/spectacle-devel/files/extra-patch-pipewire-off
new file mode 100644
index 000000000000..2b5bad100878
--- /dev/null
+++ b/graphics/spectacle-devel/files/extra-patch-pipewire-off
@@ -0,0 +1,108 @@
+--- CMakeLists.txt.orig	2024-01-09 02:09:50 UTC
++++ CMakeLists.txt
+@@ -77,10 +77,14 @@ find_package(LayerShellQt REQUIRED)
+ find_package(Wayland REQUIRED COMPONENTS Client)
+ find_package(PlasmaWaylandProtocols REQUIRED)
+ find_package(LayerShellQt REQUIRED)
+-find_package(KPipeWire)
++option(DISABLE_PIPEWIRE "Disable PipeWire support." OFF)
++if(NOT DISABLE_PIPEWIRE)
++    find_package(KPipeWire REQUIRED)
++    set(PIPEWIRE_FOUND 1)
++endif()
+ set_package_properties(KPipeWire PROPERTIES DESCRIPTION
+     "Used to record pipewire streams into a file"
+-    TYPE REQUIRED
++    TYPE OPTIONAL
+ )
+ 
+ # optional components
+--- src/CMakeLists.txt.orig	2024-01-09 02:09:50 UTC
++++ src/CMakeLists.txt
+@@ -11,6 +11,10 @@ ecm_qt_declare_logging_category(SPECTACLE_SRCS HEADER 
+ ecm_qt_declare_logging_category(SPECTACLE_SRCS HEADER spectacle_core_debug.h IDENTIFIER SPECTACLE_CORE_LOG CATEGORY_NAME org.kde.spectacle.core DESCRIPTION "spectacle (core)" EXPORT SPECTACLE)
+ ecm_qt_declare_logging_category(SPECTACLE_SRCS HEADER spectacle_gui_debug.h IDENTIFIER SPECTACLE_GUI_LOG CATEGORY_NAME org.kde.spectacle.gui DESCRIPTION "spectacle (gui)" EXPORT SPECTACLE)
+ 
++if(PIPEWIRE_FOUND)
++    list(APPEND SPECTACLE_SRCS Platforms/VideoPlatformWayland.cpp)
++endif()
++
+ add_executable(spectacle
+     ${SPECTACLE_SRCS}
+     Main.cpp
+@@ -49,7 +53,6 @@ add_executable(spectacle
+     Platforms/PlatformNull.cpp
+     Platforms/ImagePlatformKWin.cpp
+     Platforms/VideoPlatform.cpp
+-    Platforms/VideoPlatformWayland.cpp
+     Platforms/screencasting.cpp
+ )
+ 
+@@ -80,6 +83,10 @@ ki18n_wrap_ui(spectacle
+     Gui/SettingsDialog/VideoSaveOptions.ui
+ )
+ 
++if(PIPEWIRE_FOUND)
++    target_link_libraries(spectacle K::KPipeWireRecord)
++endif()
++
+ target_link_libraries(spectacle PRIVATE
+     Qt::Concurrent
+     Qt::DBus
+@@ -102,7 +109,6 @@ target_link_libraries(spectacle PRIVATE
+     KF6::XmlGui
+     KF6::GuiAddons
+     KF6::KirigamiPlatform
+-    K::KPipeWireRecord
+     Wayland::Client
+     LayerShellQt::Interface
+ )
+--- src/Config.h.in.orig	2024-01-09 02:09:50 UTC
++++ src/Config.h.in
+@@ -7,6 +7,9 @@
+ /* Define to 1 if we have Purpose */
+ #cmakedefine PURPOSE_FOUND 1
+ 
++/* Define to 1 if we are building with PIPEWIRE */
++#cmakedefine PIPEWIRE_FOUND 1
++
+ /* Set the Spectacle version from CMake */
+ #cmakedefine SPECTACLE_VERSION "@SPECTACLE_VERSION@"
+ 
+--- src/Platforms/PlatformLoader.cpp.orig	2024-01-09 02:09:50 UTC
++++ src/Platforms/PlatformLoader.cpp
+@@ -11,7 +11,9 @@
+ 
+ #include "ImagePlatformKWin.h"
+ #include "PlatformNull.h"
++#ifdef PIPEWIRE_FOUND
+ #include "VideoPlatformWayland.h"
++#endif
+ 
+ #ifdef XCB_FOUND
+ #include "ImagePlatformXcb.h"
+@@ -73,9 +75,12 @@ VideoPlatformPtr getForcedVideoPlatform()
+         return nullptr;
+     }
+ 
++#ifdef PIPEWIRE_FOUND
+     if (platformName == VideoPlatformWayland::staticMetaObject.className()) {
+         return std::make_unique<VideoPlatformWayland>();
+-    } else if (platformName == VideoPlatformNull::staticMetaObject.className()) {
++    } else 
++#endif
++    if (platformName == VideoPlatformNull::staticMetaObject.className()) {
+         return std::make_unique<VideoPlatformNull>();
+     } else if (!platformName.isEmpty()) {
+         qWarning() << "SPECTACLE_VIDEO_PLATFORM:" << platformName << "is invalid";
+@@ -89,8 +94,10 @@ VideoPlatformPtr loadVideoPlatform()
+     if (auto platform = getForcedVideoPlatform()) {
+         return platform;
+     }
++#ifdef PIPEWIRE_FOUND
+     if (KWindowSystem::isPlatformWayland()) {
+         return std::make_unique<VideoPlatformWayland>();
+     }
++#endif
+     return std::make_unique<VideoPlatformNull>();
+ }
diff --git a/graphics/spectacle-devel/pkg-descr b/graphics/spectacle-devel/pkg-descr
new file mode 100644
index 000000000000..b9438708d8db
--- /dev/null
+++ b/graphics/spectacle-devel/pkg-descr
@@ -0,0 +1 @@
+The new screenshot capture utility, replaces KSnapshot
diff --git a/graphics/spectacle-devel/pkg-plist b/graphics/spectacle-devel/pkg-plist
new file mode 100644
index 000000000000..7304829ea94f
--- /dev/null
+++ b/graphics/spectacle-devel/pkg-plist
@@ -0,0 +1,78 @@
+bin/spectacle
+lib/kconf_update_bin/spectacle-%%KDE_APPLICATIONS_VERSION_SHORT%%.02.0-change_placeholder_format
+lib/kconf_update_bin/spectacle-%%KDE_APPLICATIONS_VERSION_SHORT%%.02.0-keep_old_filename_templates
+lib/kconf_update_bin/spectacle-%%KDE_APPLICATIONS_VERSION_SHORT%%.02.0-keep_old_save_location
+lib/kconf_update_bin/spectacle-%%KDE_APPLICATIONS_VERSION_SHORT%%.02.0-rename_settings
+lib/kconf_update_bin/spectacle-%%KDE_APPLICATIONS_VERSION_SHORT%%.02.0-video_format
+lib/systemd/user/app-org.kde.spectacle.service
+man/ca/man1/spectacle.1.gz
+man/de/man1/spectacle.1.gz
+man/es/man1/spectacle.1.gz
+man/it/man1/spectacle.1.gz
+man/man1/spectacle.1.gz
+man/nl/man1/spectacle.1.gz
+man/sv/man1/spectacle.1.gz
+man/tr/man1/spectacle.1.gz
+man/uk/man1/spectacle.1.gz
+share/applications/org.kde.spectacle.desktop
+share/dbus-1/interfaces/org.kde.Spectacle.xml
+share/dbus-1/services/org.kde.Spectacle.service
+share/dbus-1/services/org.kde.spectacle.service
+share/icons/hicolor/scalable/apps/spectacle.svg
+share/kconf_update/spectacle.upd
+share/kglobalaccel/org.kde.spectacle.desktop
+share/knotifications6/spectacle.notifyrc
+share/locale/ar/LC_MESSAGES/spectacle.mo
+share/locale/ast/LC_MESSAGES/spectacle.mo
+share/locale/az/LC_MESSAGES/spectacle.mo
+share/locale/bg/LC_MESSAGES/spectacle.mo
+share/locale/ca/LC_MESSAGES/spectacle.mo
+share/locale/ca@valencia/LC_MESSAGES/spectacle.mo
+share/locale/cs/LC_MESSAGES/spectacle.mo
+share/locale/da/LC_MESSAGES/spectacle.mo
+share/locale/de/LC_MESSAGES/spectacle.mo
+share/locale/el/LC_MESSAGES/spectacle.mo
+share/locale/en_GB/LC_MESSAGES/spectacle.mo
+share/locale/eo/LC_MESSAGES/spectacle.mo
+share/locale/es/LC_MESSAGES/spectacle.mo
+share/locale/et/LC_MESSAGES/spectacle.mo
+share/locale/eu/LC_MESSAGES/spectacle.mo
+share/locale/fi/LC_MESSAGES/spectacle.mo
+share/locale/fr/LC_MESSAGES/spectacle.mo
+share/locale/gl/LC_MESSAGES/spectacle.mo
+share/locale/he/LC_MESSAGES/spectacle.mo
+share/locale/hsb/LC_MESSAGES/spectacle.mo
+share/locale/hu/LC_MESSAGES/spectacle.mo
+share/locale/ia/LC_MESSAGES/spectacle.mo
+share/locale/id/LC_MESSAGES/spectacle.mo
+share/locale/ie/LC_MESSAGES/spectacle.mo
+share/locale/is/LC_MESSAGES/spectacle.mo
+share/locale/it/LC_MESSAGES/spectacle.mo
+share/locale/ja/LC_MESSAGES/spectacle.mo
+share/locale/ka/LC_MESSAGES/spectacle.mo
+share/locale/ko/LC_MESSAGES/spectacle.mo
+share/locale/lt/LC_MESSAGES/spectacle.mo
+share/locale/lv/LC_MESSAGES/spectacle.mo
+share/locale/ml/LC_MESSAGES/spectacle.mo
+share/locale/nl/LC_MESSAGES/spectacle.mo
+share/locale/nn/LC_MESSAGES/spectacle.mo
+share/locale/pa/LC_MESSAGES/spectacle.mo
+share/locale/pl/LC_MESSAGES/spectacle.mo
+share/locale/pt/LC_MESSAGES/spectacle.mo
+share/locale/pt_BR/LC_MESSAGES/spectacle.mo
+share/locale/ro/LC_MESSAGES/spectacle.mo
+share/locale/ru/LC_MESSAGES/spectacle.mo
+share/locale/sk/LC_MESSAGES/spectacle.mo
+share/locale/sl/LC_MESSAGES/spectacle.mo
+share/locale/sr/LC_MESSAGES/spectacle.mo
+share/locale/sr@ijekavian/LC_MESSAGES/spectacle.mo
+share/locale/sr@ijekavianlatin/LC_MESSAGES/spectacle.mo
+share/locale/sr@latin/LC_MESSAGES/spectacle.mo
+share/locale/sv/LC_MESSAGES/spectacle.mo
+share/locale/ta/LC_MESSAGES/spectacle.mo
+share/locale/tr/LC_MESSAGES/spectacle.mo
+share/locale/uk/LC_MESSAGES/spectacle.mo
+share/locale/zh_CN/LC_MESSAGES/spectacle.mo
+share/locale/zh_TW/LC_MESSAGES/spectacle.mo
+share/metainfo/org.kde.spectacle.appdata.xml
+share/qlogging-categories6/spectacle.categories



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202401221946.40MJkcoW044340>