git: f9221320b8a3 - main - multimedia/pipe-viewer: new port

From: Neel Chauhan <nc_at_FreeBSD.org>
Date: Sat, 20 Aug 2022 03:16:36 UTC
The branch main has been updated by nc:

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

commit f9221320b8a35feb7fa201630ce077ae4ce5ba7b
Author:     Jesús Daniel Colmenares Oviedo <DtxdF@riseup.net>
AuthorDate: 2022-08-16 19:21:02 +0000
Commit:     Neel Chauhan <nc@FreeBSD.org>
CommitDate: 2022-08-20 03:15:52 +0000

    multimedia/pipe-viewer: new port
    
    pipe-viewer is a lightweight application (fork of straw-viewer) for
    searching and playing videos from YouTube.
    
    This fork parses the YouTube website directly and relies on the
    invidious instances only as a fallback method.
    
    WWW: https://github.com/trizen/pipe-viewer
    
    PR:     265887
---
 multimedia/Makefile              |  1 +
 multimedia/pipe-viewer/Makefile  | 54 ++++++++++++++++++++++++++++++++++++++++
 multimedia/pipe-viewer/distinfo  |  3 +++
 multimedia/pipe-viewer/pkg-descr |  7 ++++++
 multimedia/pipe-viewer/pkg-plist | 49 ++++++++++++++++++++++++++++++++++++
 5 files changed, 114 insertions(+)

diff --git a/multimedia/Makefile b/multimedia/Makefile
index 793460ef4852..8cda4bca5d84 100644
--- a/multimedia/Makefile
+++ b/multimedia/Makefile
@@ -294,6 +294,7 @@
     SUBDIR += phonon-vlc
     SUBDIR += photofilmstrip
     SUBDIR += php-pHash
+    SUBDIR += pipe-viewer
     SUBDIR += pipewire
     SUBDIR += pitivi
     SUBDIR += playerctl
diff --git a/multimedia/pipe-viewer/Makefile b/multimedia/pipe-viewer/Makefile
new file mode 100644
index 000000000000..b151b95df220
--- /dev/null
+++ b/multimedia/pipe-viewer/Makefile
@@ -0,0 +1,54 @@
+PORTNAME=	pipe-viewer
+PORTVERSION=	0.2.3
+CATEGORIES=	multimedia perl5
+
+MAINTAINER?=	DtxdF@riseup.net
+COMMENT?=	Application for searching and playing videos from YouTube
+
+LICENSE=	ART20
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+RUN_DEPENDS=	p5-Data-Dump>0:devel/p5-Data-Dump \
+		p5-IO-Compress-Brotli>0:archivers/p5-IO-Compress-Brotli \
+		p5-JSON>0:converters/p5-JSON \
+		p5-libwww>0:www/p5-libwww \
+		p5-LWP-Protocol-https>0:www/p5-LWP-Protocol-https
+
+USES=	perl5
+USE_PERL5=	modbuild
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	trizen
+
+CONFLICTS_INSTALL?=	multimedia/gtk-pipe-viewer
+
+OPTIONS_DEFINE=	GTK3 JSON_XS LOCAL_CACHE READLINE SHARE_DIR
+OPTIONS_DEFAULT?=	JSON_XS LINE_BREAK LOCAL_CACHE READLINE YT_DLP
+OPTIONS_RADIO=	FIXED_WIDTH YOUTUBE
+OPTIONS_RADIO_FIXED_WIDTH=	CHAR_WIDTH LINE_BREAK
+OPTIONS_RADIO_YOUTUBE=	YOUTUBE_DL YT_DLP
+
+OPTIONS_SUB=	yes
+
+LOCAL_CACHE_DESC=	Local cache support
+JSON_XS_DESC=	Faster JSON deserialization
+SHARE_DIR_DESC=	Install with p5-File-ShareDir
+FIXED_WIDTH_DESC=	Fixed-width formatting
+LINE_BREAK_DESC=	Install with p5-Text-CharWidth
+CHAR_WIDTH_DESC=	Install with p5-Unicode-LineBreak
+YOUTUBE_DESC=	Youtube support
+YT_DLP_DESC=	Enable Youtube support with yt-dlp
+YOUTUBE_DL_DESC=	Enable Youtube support with youtube_dl
+
+GTK3_RUN_DEPENDS=	p5-Gtk3>0:x11-toolkits/p5-Gtk3
+GTK3_CONFIGURE_ON=	--gtk
+SHARE_DIR_RUN_DEPENDS=	p5-File-ShareDir>0:devel/p5-File-ShareDir
+LOCAL_CACHE_RUN_DEPENDS=	p5-LWP-UserAgent-WithCache>0:www/p5-LWP-UserAgent-WithCache
+READLINE_RUN_DEPENDS=	p5-Term-ReadLine-Gnu>0:devel/p5-Term-ReadLine-Gnu
+JSON_XS_RUN_DEPENDS=	p5-JSON-XS>0:converters/p5-JSON-XS
+LINE_BREAK_RUN_DEPENDS=	p5-Unicode-LineBreak>0:textproc/p5-Unicode-LineBreak
+CHAR_WIDTH_RUN_DEPENDS=	p5-Text-CharWidth>0:textproc/p5-Text-CharWidth
+YT_DLP_RUN_DEPENDS=	yt-dlp>0:www/yt-dlp
+YOUTUBE_DL_RUN_DEPENDS=	youtube_dl>0:www/youtube_dl
+
+.include <bsd.port.mk>
diff --git a/multimedia/pipe-viewer/distinfo b/multimedia/pipe-viewer/distinfo
new file mode 100644
index 000000000000..2aed47b1155a
--- /dev/null
+++ b/multimedia/pipe-viewer/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1660516896
+SHA256 (trizen-pipe-viewer-0.2.3_GH0.tar.gz) = 08d585c6e07236975d6cb8275fc8c1f42996e0755246207a5b0197e19739ecdd
+SIZE (trizen-pipe-viewer-0.2.3_GH0.tar.gz) = 266301
diff --git a/multimedia/pipe-viewer/pkg-descr b/multimedia/pipe-viewer/pkg-descr
new file mode 100644
index 000000000000..11ce70a5eafb
--- /dev/null
+++ b/multimedia/pipe-viewer/pkg-descr
@@ -0,0 +1,7 @@
+pipe-viewer is a lightweight application (fork of straw-viewer) for
+searching and playing videos from YouTube.
+
+This fork parses the YouTube website directly and relies on the
+invidious instances only as a fallback method.
+
+WWW: https://github.com/trizen/pipe-viewer
diff --git a/multimedia/pipe-viewer/pkg-plist b/multimedia/pipe-viewer/pkg-plist
new file mode 100644
index 000000000000..c08b96909ca5
--- /dev/null
+++ b/multimedia/pipe-viewer/pkg-plist
@@ -0,0 +1,49 @@
+bin/pipe-viewer
+%%SITE_PERL%%/WWW/PipeViewer.pm
+%%SITE_PERL%%/WWW/PipeViewer/Activities.pm
+%%SITE_PERL%%/WWW/PipeViewer/Authentication.pm
+%%SITE_PERL%%/WWW/PipeViewer/Channels.pm
+%%SITE_PERL%%/WWW/PipeViewer/CommentThreads.pm
+%%SITE_PERL%%/WWW/PipeViewer/GetCaption.pm
+%%SITE_PERL%%/WWW/PipeViewer/GuideCategories.pm
+%%SITE_PERL%%/WWW/PipeViewer/InitialData.pm
+%%SITE_PERL%%/WWW/PipeViewer/Itags.pm
+%%SITE_PERL%%/WWW/PipeViewer/ParseJSON.pm
+%%SITE_PERL%%/WWW/PipeViewer/ParseXML.pm
+%%SITE_PERL%%/WWW/PipeViewer/PlaylistItems.pm
+%%SITE_PERL%%/WWW/PipeViewer/Playlists.pm
+%%SITE_PERL%%/WWW/PipeViewer/RegularExpressions.pm
+%%SITE_PERL%%/WWW/PipeViewer/Search.pm
+%%SITE_PERL%%/WWW/PipeViewer/Subscriptions.pm
+%%SITE_PERL%%/WWW/PipeViewer/Utils.pm
+%%SITE_PERL%%/WWW/PipeViewer/VideoCategories.pm
+%%SITE_PERL%%/WWW/PipeViewer/Videos.pm
+%%PERL5_MAN1%%/pipe-viewer.1.gz
+%%PERL5_MAN3%%/WWW::PipeViewer.3.gz
+%%PERL5_MAN3%%/WWW::PipeViewer::Activities.3.gz
+%%PERL5_MAN3%%/WWW::PipeViewer::Authentication.3.gz
+%%PERL5_MAN3%%/WWW::PipeViewer::Channels.3.gz
+%%PERL5_MAN3%%/WWW::PipeViewer::CommentThreads.3.gz
+%%PERL5_MAN3%%/WWW::PipeViewer::GetCaption.3.gz
+%%PERL5_MAN3%%/WWW::PipeViewer::GuideCategories.3.gz
+%%PERL5_MAN3%%/WWW::PipeViewer::InitialData.3.gz
+%%PERL5_MAN3%%/WWW::PipeViewer::Itags.3.gz
+%%PERL5_MAN3%%/WWW::PipeViewer::ParseJSON.3.gz
+%%PERL5_MAN3%%/WWW::PipeViewer::ParseXML.3.gz
+%%PERL5_MAN3%%/WWW::PipeViewer::PlaylistItems.3.gz
+%%PERL5_MAN3%%/WWW::PipeViewer::Playlists.3.gz
+%%PERL5_MAN3%%/WWW::PipeViewer::RegularExpressions.3.gz
+%%PERL5_MAN3%%/WWW::PipeViewer::Search.3.gz
+%%PERL5_MAN3%%/WWW::PipeViewer::Subscriptions.3.gz
+%%PERL5_MAN3%%/WWW::PipeViewer::Utils.3.gz
+%%PERL5_MAN3%%/WWW::PipeViewer::VideoCategories.3.gz
+%%PERL5_MAN3%%/WWW::PipeViewer::Videos.3.gz
+%%GTK3%%bin/gtk-pipe-viewer
+%%GTK3%%%%SITE_PERL%%/auto/share/dist/WWW-PipeViewer/gtk-pipe-viewer.desktop
+%%GTK3%%%%SITE_PERL%%/auto/share/dist/WWW-PipeViewer/gtk-pipe-viewer.glade
+%%GTK3%%%%SITE_PERL%%/auto/share/dist/WWW-PipeViewer/icons/default_thumb.jpg
+%%GTK3%%%%SITE_PERL%%/auto/share/dist/WWW-PipeViewer/icons/feed.png
+%%GTK3%%%%SITE_PERL%%/auto/share/dist/WWW-PipeViewer/icons/feed_gray.png
+%%GTK3%%%%SITE_PERL%%/auto/share/dist/WWW-PipeViewer/icons/gtk-pipe-viewer.png
+%%GTK3%%%%SITE_PERL%%/auto/share/dist/WWW-PipeViewer/icons/spinner.gif
+%%GTK3%%%%SITE_PERL%%/auto/share/dist/WWW-PipeViewer/icons/user.png