aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Beich <jbeich@FreeBSD.org>2021-10-14 15:47:28 +0000
committerJan Beich <jbeich@FreeBSD.org>2021-11-04 23:16:52 +0000
commit6dd08776b7cfe8b48668bd638567b26929601599 (patch)
treef33d0b82650e3906e99f1007e21d7ad1077cb7fd
parentb468e890e52a85bf97f5f06107d7e3797c6ea71b (diff)
downloadports-6dd08776b7cfe8b48668bd638567b26929601599.tar.gz
ports-6dd08776b7cfe8b48668bd638567b26929601599.zip
x11/kdisplay: add new port
KDisplay is a small display management app. It provides a simple and straightforward UI for managing an arbitrary number of displays. Features: * Displays can be repositioned with drag-and-drop. * An optimal resolution and refresh rate are automatically selected. Manual override is possible. * Displays can be seemlessly "replicated". * The settings of a display is by default remembered globally but can be overridden for specific combinations of displays. * Provides additional integration for the KDE Plasma Workspace through a plasmoid and an OSD activated by hardware key for quick configuration changes. https://gitlab.com/kwinft/kdisplay
-rw-r--r--x11/Makefile1
-rw-r--r--x11/kdisplay/Makefile29
-rw-r--r--x11/kdisplay/distinfo3
-rw-r--r--x11/kdisplay/files/patch-CMakeLists.txt39
-rw-r--r--x11/kdisplay/pkg-descr15
-rw-r--r--x11/kdisplay/pkg-plist44
6 files changed, 131 insertions, 0 deletions
diff --git a/x11/Makefile b/x11/Makefile
index dfeb6e84da91..87a2d1c53e85 100644
--- a/x11/Makefile
+++ b/x11/Makefile
@@ -123,6 +123,7 @@
SUBDIR += kb2mb2
SUBDIR += kde-baseapps
SUBDIR += kde5
+ SUBDIR += kdisplay
SUBDIR += keybinder
SUBDIR += keybinder-gtk3
SUBDIR += keyboardcast
diff --git a/x11/kdisplay/Makefile b/x11/kdisplay/Makefile
new file mode 100644
index 000000000000..7768ee19ef31
--- /dev/null
+++ b/x11/kdisplay/Makefile
@@ -0,0 +1,29 @@
+PORTNAME= kdisplay
+DISTVERSIONPREFIX= ${PORTNAME}@
+DISTVERSION= 5.23.0
+CATEGORIES= x11
+
+MAINTAINER= jbeich@FreeBSD.org
+COMMENT= App and daemon for display managing
+
+LICENSE= GPLv2+ LGPL21+
+LICENSE_COMB= multi
+LICENSE_FILE_GPLv2+ = ${WRKSRC}/COPYING
+LICENSE_FILE_LGPL21+ = ${WRKSRC}/COPYING.LGPL
+
+LIB_DEPENDS= libDisman.so:x11/disman
+TEST_DEPENDS= ${qt-testlib_PORT:T}>0:${qt-testlib_PORT}
+
+USES= cmake:testing kde:5 qt:5
+USE_GITLAB= yes
+USE_KDE= ecm_build config coreaddons dbusaddons globalaccel i18n \
+ kcmutils kdeclarative plasma-framework xmlgui
+USE_LDCONFIG= yes
+USE_QT= qmake_build buildtools_build core dbus declarative gui \
+ sensors widgets
+GL_ACCOUNT= kwinft
+GL_COMMIT= b64cf06bf9945b550a965126c750440a6617e4ef
+PLIST_SUB= VERSION=${PORTVERSION}
+LDFLAGS+= -Wl,--as-needed # Qt5*, KF5*
+
+.include <bsd.port.mk>
diff --git a/x11/kdisplay/distinfo b/x11/kdisplay/distinfo
new file mode 100644
index 000000000000..ee005bbfdbe3
--- /dev/null
+++ b/x11/kdisplay/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1634226448
+SHA256 (kwinft-kdisplay-b64cf06bf9945b550a965126c750440a6617e4ef_GL0.tar.gz) = b0bf424cbed05766ce3295ec8e2939fbde0b6887caeec22c66b1083393e80fa6
+SIZE (kwinft-kdisplay-b64cf06bf9945b550a965126c750440a6617e4ef_GL0.tar.gz) = 184686
diff --git a/x11/kdisplay/files/patch-CMakeLists.txt b/x11/kdisplay/files/patch-CMakeLists.txt
new file mode 100644
index 000000000000..0c782fa6927e
--- /dev/null
+++ b/x11/kdisplay/files/patch-CMakeLists.txt
@@ -0,0 +1,39 @@
+CMake Error at /usr/local/lib/cmake/Qt5/Qt5Config.cmake:28 (find_package):
+ find_package for module Qt5Test called with REQUIRED, but
+ CMAKE_DISABLE_FIND_PACKAGE_Qt5Test is enabled. A REQUIRED package cannot
+ be disabled.
+Call Stack (most recent call first):
+ CMakeLists.txt:26 (find_package)
+
+--- CMakeLists.txt.orig 2021-10-14 15:47:28 UTC
++++ CMakeLists.txt
+@@ -23,19 +23,27 @@ include(FeatureSummary)
+ set(CMAKE_CXX_STANDARD 17)
+ set(CMAKE_CXX_STANDARD_REQUIRED ON)
+
+-find_package(Qt5 ${QT_MIN_VERSION} REQUIRED COMPONENTS Test Sensors)
++find_package(Qt5 ${QT_MIN_VERSION} REQUIRED COMPONENTS Sensors)
+ find_package(KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS
+ DBusAddons
+ Declarative
+ I18n
+ )
+
++find_package(Qt5Test ${QT_MIN_VERSION})
++set_package_properties(Qt5Test PROPERTIES
++ PURPOSE "Required for tests"
++ TYPE OPTIONAL
++)
++
+ set(MIN_DISMAN_VERSION "0.519.80")
+ find_package(Disman ${MIN_DISMAN_VERSION} REQUIRED)
+
+ add_subdirectory(kcm)
+ add_subdirectory(plasma-integration)
+-add_subdirectory(tests)
++if (BUILD_TESTING)
++ add_subdirectory(tests)
++endif()
+
+ install(FILES kdisplay.categories DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR})
+
diff --git a/x11/kdisplay/pkg-descr b/x11/kdisplay/pkg-descr
new file mode 100644
index 000000000000..ab47dd53d749
--- /dev/null
+++ b/x11/kdisplay/pkg-descr
@@ -0,0 +1,15 @@
+KDisplay is a small display management app. It provides a simple and
+straightforward UI for managing an arbitrary number of displays.
+
+Features:
+* Displays can be repositioned with drag-and-drop.
+* An optimal resolution and refresh rate are automatically selected.
+ Manual override is possible.
+* Displays can be seemlessly "replicated".
+* The settings of a display is by default remembered globally
+ but can be overridden for specific combinations of displays.
+* Provides additional integration for the KDE Plasma Workspace through
+ a plasmoid and an OSD activated by hardware key for quick
+ configuration changes.
+
+WWW: https://gitlab.com/kwinft/kdisplay
diff --git a/x11/kdisplay/pkg-plist b/x11/kdisplay/pkg-plist
new file mode 100644
index 000000000000..5814795aad4b
--- /dev/null
+++ b/x11/kdisplay/pkg-plist
@@ -0,0 +1,44 @@
+bin/kdisplay
+%%QT_PLUGINDIR%%/kcms/kcm_kdisplay.so
+%%QT_PLUGINDIR%%/kf5/kded/kdisplayd.so
+%%QT_PLUGINDIR%%/plasma/applets/plasma_applet_kdisplay.so
+share/applications/org.kwinft.kdisplay.desktop
+share/kded_kdisplay/qml/Osd.qml
+share/kded_kdisplay/qml/OsdItem.qml
+share/kded_kdisplay/qml/OsdSelector.qml
+share/kded_kdisplay/qml/OutputIdentifier.qml
+share/kpackage/kcms/kcm_kdisplay/contents/ui/Orientation.qml
+share/kpackage/kcms/kcm_kdisplay/contents/ui/Output.qml
+share/kpackage/kcms/kcm_kdisplay/contents/ui/OutputIdentifier.qml
+share/kpackage/kcms/kcm_kdisplay/contents/ui/OutputPanel.qml
+share/kpackage/kcms/kcm_kdisplay/contents/ui/Panel.qml
+share/kpackage/kcms/kcm_kdisplay/contents/ui/RotationButton.qml
+share/kpackage/kcms/kcm_kdisplay/contents/ui/Screen.qml
+share/kpackage/kcms/kcm_kdisplay/contents/ui/main.qml
+share/kpackage/kcms/kcm_kdisplay/metadata.desktop
+share/kpackage/kcms/kcm_kdisplay/metadata.json
+share/kservices5/kcm_kdisplay.desktop
+share/locale/de/LC_MESSAGES/kcm_kdisplay.mo
+share/locale/de/LC_MESSAGES/kdisplay-plasma.mo
+share/locale/el/LC_MESSAGES/kcm_kdisplay.mo
+share/locale/el/LC_MESSAGES/kdisplay-plasma.mo
+share/locale/fr/LC_MESSAGES/kcm_kdisplay.mo
+share/locale/fr/LC_MESSAGES/kdisplay-plasma.mo
+share/locale/hr/LC_MESSAGES/kcm_kdisplay.mo
+share/locale/hr/LC_MESSAGES/kdisplay-plasma.mo
+share/locale/it/LC_MESSAGES/kcm_kdisplay.mo
+share/locale/it/LC_MESSAGES/kdisplay-plasma.mo
+share/locale/nb_NO/LC_MESSAGES/kcm_kdisplay.mo
+share/locale/nb_NO/LC_MESSAGES/kdisplay-plasma.mo
+share/locale/pt_BR/LC_MESSAGES/kcm_kdisplay.mo
+share/locale/pt_BR/LC_MESSAGES/kdisplay-plasma.mo
+share/locale/rm/LC_MESSAGES/kcm_kdisplay.mo
+share/locale/ru/LC_MESSAGES/kcm_kdisplay.mo
+share/locale/ru/LC_MESSAGES/kdisplay-plasma.mo
+share/metainfo/org.kwinft.kdisplay.appdata.xml
+share/plasma/plasmoids/org.kwinft.kdisplay/contents/ui/PresentationModeItem.qml
+share/plasma/plasmoids/org.kwinft.kdisplay/contents/ui/ScreenLayoutSelection.qml
+share/plasma/plasmoids/org.kwinft.kdisplay/contents/ui/main.qml
+share/plasma/plasmoids/org.kwinft.kdisplay/metadata.desktop
+share/plasma/plasmoids/org.kwinft.kdisplay/metadata.json
+share/qlogging-categories5/kdisplay.categories