git: bd0b0eec12d6 - main - net-p2p/transmission-components: Get transmission-web back

From: Fernando Apesteguía <fernape_at_FreeBSD.org>
Date: Fri, 24 May 2024 17:57:09 UTC
The branch main has been updated by fernape:

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

commit bd0b0eec12d655b9c8b87ace4503f6f36dc14e5f
Author:     Rafe <mondo.debater_0q@icloud.com>
AuthorDate: 2024-05-23 06:24:38 +0000
Commit:     Fernando Apesteguía <fernape@FreeBSD.org>
CommitDate: 2024-05-24 17:56:56 +0000

    net-p2p/transmission-components: Get transmission-web back
    
    After the reorganization of the port in ac3e39992e95659a5193a15d4cb873efb00fcb30
    the web interface was only available if the daemon component was selected.
    This is not right since the gtk version of transmission needs those files too,
    otherwise the setup is broken.
    
    Bring transmission-web option back.
    
    PR:             279214
    Reported by:    fernape@FreeBSD.org
---
 UPDATING                                         |  7 +++++++
 net-p2p/transmission-components/Makefile         | 24 ++++++++++++++++++------
 net-p2p/transmission-components/pkg-descr.daemon |  7 +------
 net-p2p/transmission-components/pkg-descr.gtk    |  4 +++-
 net-p2p/transmission-components/pkg-descr.qt     |  4 +++-
 net-p2p/transmission-components/pkg-descr.web    |  8 ++++++++
 net-p2p/transmission-components/pkg-plist.daemon |  7 -------
 net-p2p/transmission-components/pkg-plist.web    |  7 +++++++
 net-p2p/transmission/Makefile                    |  7 +++++--
 9 files changed, 52 insertions(+), 23 deletions(-)

diff --git a/UPDATING b/UPDATING
index c26e1f81b2cc..7a5fc11c35ec 100644
--- a/UPDATING
+++ b/UPDATING
@@ -5,6 +5,13 @@ they are unavoidable.
 You should get into the habit of checking this file for changes each time
 you update your ports collection, before attempting any port upgrades.
 
+20240522:
+  AFFECTS: net-p2p/transmission-daemon
+
+  The web interface has been separated from the daemon port into its own port.
+  This allows users of transmission-gtk and transmission-qt to install the web
+  interface.
+
 20240521:
   AFFECTS: www/gitlab
   AUTHOR: mfechner@FreeBSD.org
diff --git a/net-p2p/transmission-components/Makefile b/net-p2p/transmission-components/Makefile
index 409192b25755..366a4da0c741 100644
--- a/net-p2p/transmission-components/Makefile
+++ b/net-p2p/transmission-components/Makefile
@@ -1,6 +1,6 @@
 PORTNAME=	transmission
 DISTVERSION=	4.0.5
-PORTREVISION=	1
+PORTREVISION=	2
 CATEGORIES=	net-p2p
 MASTER_SITES=	https://github.com/${PORTNAME}/${PORTNAME}/releases/download/${DISTVERSION}/
 
@@ -25,7 +25,7 @@ LIB_DEPENDS=	libb64.so:converters/libb64 \
 		libpsl.so:dns/libpsl \
 		libutp.so:net-p2p/libutp
 
-FLAVORS=			cli docs daemon gtk qt utils
+FLAVORS=			cli docs daemon gtk qt utils web
 FLAVOR?=			${FLAVORS:[1]}
 .for flavor in ${FLAVORS}
 ${flavor}_PKGNAMESUFFIX=	-${flavor}
@@ -77,6 +77,13 @@ USE_RC_SUBR=	transmission
 USES=		cpe tar:xz
 .endif
 
+.if ${FLAVOR} == web
+USES=		cpe tar:xz
+NO_ARCH=	yes
+NO_BUILD=	yes
+#PORTDATA=	public_html
+.endif
+
 CMAKE_ON=	USE_SYSTEM_B64 USE_SYSTEM_DEFLATE USE_SYSTEM_DHT \
 		USE_SYSTEM_EVENT2 USE_SYSTEM_MINIUPNPC USE_SYSTEM_NATPMP \
 		USE_SYSTEM_PSL USE_SYSTEM_UTP
@@ -96,7 +103,7 @@ CMAKE_OFF+=	ENABLE_DAEMON ENABLE_GTK ENABLE_QT ENABLE_UTILS INSTALL_WEB
 
 .if ${FLAVOR} == daemon
 CMAKE_ON+=	ENABLE_DAEMON
-CMAKE_OFF+=	ENABLE_CLI ENABLE_GTK ENABLE_QT ENABLE_UTILS
+CMAKE_OFF+=	ENABLE_CLI ENABLE_GTK ENABLE_QT ENABLE_UTILS INSTALL_WEB
 .endif
 
 .if ${FLAVOR} == gtk
@@ -120,8 +127,8 @@ CMAKE_OFF+=	ENABLE_CLI ENABLE_DAEMON ENABLE_GTK ENABLE_QT ENABLE_TESTS \
 OPTIONS_FILE=	${PORT_DBDIR}/${OPTIONS_NAME}/${FLAVOR}-options
 
 .if ${FLAVOR:Mdaemon}
-OPTIONS_DEFINE=		NLS TESTS WEB
-OPTIONS_DEFAULT=	NLS WEB
+OPTIONS_DEFINE=		NLS TESTS
+OPTIONS_DEFAULT=	NLS 
 .endif
 
 .if ${FLAVOR:Mdocs}
@@ -142,7 +149,7 @@ qt_DESC=	Build QT client
 TESTS_DESC=	Build & run unit tests
 utils_DESC=	Build utilities (create, edit, remote, show)
 cli_DESC=	Build command-line client (deprecated)
-WEB_DESC=	Install web client (implies daemon)
+#web_DESC=	Install web interface
 
 NLS_USES=	gettext-runtime:lib
 NLS_CMAKE_BOOL=	ENABLE_NLS
@@ -181,6 +188,11 @@ post-install:
 	        ${MKDIR} ${STAGEDIR}${ETCDIR}/home
 .endif
 
+.if ${FLAVOR} == web
+do-install:
+		( cd ${WRKSRC}/web && ${COPYTREE_SHARE} public_html ${STAGEDIR}${DATADIR} )
+.endif
+
 post-install-TESTS-on:
 	@${ECHO_MSG} "Running tests..."
 	@cd ${BUILD_WRKSRC}/tests/libtransmission/ && \
diff --git a/net-p2p/transmission-components/pkg-descr.daemon b/net-p2p/transmission-components/pkg-descr.daemon
index e6851c0cae2a..cebb973da516 100644
--- a/net-p2p/transmission-components/pkg-descr.daemon
+++ b/net-p2p/transmission-components/pkg-descr.daemon
@@ -1,9 +1,4 @@
 The transmission-daemon is a daemon-based Transmission session that can be
 controlled via RPC by transmission-remote (see transmission-utils) and
 other Transmission BiTtorrent client such as GTK+ and CLI interface.
-
-Transmission Web Interface (Clutch) is a WebUI for the Transmission BitTorrent
-client. It allows you to manage your torrents from anywhere you can access the
-internet, and runs on OS X and various flavors of *nix. It provides most of
-the basic features of the desktop client, including torrent upload, torrent
-start/stop, file path selection, speed limiting etc.
+The daemon may also be controlled by installing the web interface.
diff --git a/net-p2p/transmission-components/pkg-descr.gtk b/net-p2p/transmission-components/pkg-descr.gtk
index 93fd677d59cf..d4d50f7fa419 100644
--- a/net-p2p/transmission-components/pkg-descr.gtk
+++ b/net-p2p/transmission-components/pkg-descr.gtk
@@ -1 +1,3 @@
-Transmission-gtk provides a native Transmission client for the GNOME desktop environment.
+Transmission-gtk provides a native Transmission client for the GNOME desktop
+environment. The gtk client may also be controlled by installing the web 
+interface.
diff --git a/net-p2p/transmission-components/pkg-descr.qt b/net-p2p/transmission-components/pkg-descr.qt
index 752b49dbb81b..f18cfbd6ec40 100644
--- a/net-p2p/transmission-components/pkg-descr.qt
+++ b/net-p2p/transmission-components/pkg-descr.qt
@@ -1 +1,3 @@
-Transmission-qt provides a native Transmission client for the KDE and GNOME desktop environments.
+Transmission-qt provides a native Transmission client for the KDE and GNOME 
+desktop environments. The daemon may also be controlled by installing the web 
+interface.
diff --git a/net-p2p/transmission-components/pkg-descr.web b/net-p2p/transmission-components/pkg-descr.web
new file mode 100644
index 000000000000..a80a76ae30db
--- /dev/null
+++ b/net-p2p/transmission-components/pkg-descr.web
@@ -0,0 +1,8 @@
+Transmission Web Interface (Clutch) is a WebUI for the Transmission BitTorrent
+client. It allows you to manage your torrents from anywhere you can access the
+internet, and runs on OS X and various flavors of *nix. It provides most of
+the basic features of the desktop client, including torrent upload, torrent
+start/stop, file path selection, speed limiting etc.
+
+Use of the Transmission Web Interface requires installation of 
+transmission-daemon, transmisssion-gtk, or transmission-qt.
diff --git a/net-p2p/transmission-components/pkg-plist.daemon b/net-p2p/transmission-components/pkg-plist.daemon
index 885520ec887e..799265b6e163 100644
--- a/net-p2p/transmission-components/pkg-plist.daemon
+++ b/net-p2p/transmission-components/pkg-plist.daemon
@@ -1,10 +1,3 @@
 bin/transmission-daemon
 @dir %%ETCDIR%%/home
 share/man/man1/transmission-daemon.1.gz
-%%WEB%%%%DATADIR%%/public_html/images/favicon.ico
-%%WEB%%%%DATADIR%%/public_html/images/favicon.png
-%%WEB%%%%DATADIR%%/public_html/images/webclip-icon.png
-%%WEB%%%%DATADIR%%/public_html/index.html
-%%WEB%%%%DATADIR%%/public_html/transmission-app.css
-%%WEB%%%%DATADIR%%/public_html/transmission-app.js
-%%WEB%%%%DATADIR%%/public_html/transmission-app.js.LEGAL.txt
diff --git a/net-p2p/transmission-components/pkg-plist.web b/net-p2p/transmission-components/pkg-plist.web
new file mode 100644
index 000000000000..729f6ea806de
--- /dev/null
+++ b/net-p2p/transmission-components/pkg-plist.web
@@ -0,0 +1,7 @@
+%%DATADIR%%/public_html/images/favicon.ico
+%%DATADIR%%/public_html/images/favicon.png
+%%DATADIR%%/public_html/images/webclip-icon.png
+%%DATADIR%%/public_html/index.html
+%%DATADIR%%/public_html/transmission-app.css
+%%DATADIR%%/public_html/transmission-app.js
+%%DATADIR%%/public_html/transmission-app.js.LEGAL.txt
diff --git a/net-p2p/transmission/Makefile b/net-p2p/transmission/Makefile
index 7009258d55d3..2e959e11fe6a 100644
--- a/net-p2p/transmission/Makefile
+++ b/net-p2p/transmission/Makefile
@@ -1,5 +1,6 @@
 PORTNAME=	transmission
 DISTVERSION=	4.0.5
+PORTREVISION=	1
 CATEGORIES=	net-p2p
 
 MAINTAINER=	mondo.debater_0q@icloud.com
@@ -10,8 +11,8 @@ LICENSE=	GPLv3+
 
 USES=		metaport
 
-OPTIONS_DEFINE=		CLI DAEMON DOCS GTK QT UTILS
-OPTIONS_DEFAULT=	CLI DAEMON GTK QT UTILS
+OPTIONS_DEFINE=		CLI DAEMON DOCS GTK QT UTILS WEB
+OPTIONS_DEFAULT=	CLI DAEMON GTK QT UTILS WEB
 
 CLI_DESC=	Build command-line client (deprecated)
 DAEMON_DESC=	Build daemon
@@ -19,6 +20,7 @@ DOCS_DESC=	Install documentation
 GTK_DESC=	Build GTK+ client
 QT_DESC=	Build QT client
 UTILS_DESC=	Build utilities (create, edit, remote, show)
+WEB_DESC=	Install web interface
 
 CLI_RUN_DEPENDS=	transmission-cli:net-p2p/transmission-components@cli
 DAEMON_RUN_DEPENDS=	transmission-daemon:net-p2p/transmission-components@daemon
@@ -26,5 +28,6 @@ DOCS_RUN_DEPENDS=	${DOCSDIR}/README.md:net-p2p/transmission-components@docs
 GTK_RUN_DEPENDS=	transmission-gtk:net-p2p/transmission-components@gtk
 QT_RUN_DEPENDS=		transmission-qt:net-p2p/transmission-components@qt
 UTILS_RUN_DEPENDS=	transmission-create:net-p2p/transmission-components@utils
+WEB_RUN_DEPENDS=	${DATADIR}/public_html/index.html:net-p2p/transmission-components@web
 
 .include <bsd.port.mk>