git: 65240f34c0d8 - main - Add devel/gcli: CLI utility to interact with various Git forges

From: Li-Wen Hsu <lwhsu_at_FreeBSD.org>
Date: Sat, 22 Oct 2022 09:35:47 UTC
The branch main has been updated by lwhsu:

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

commit 65240f34c0d836ec3670e7dcda5f8589aaba6dc1
Author:     Robert Clausecker <fuz@fuz.su>
AuthorDate: 2022-10-20 10:50:32 +0000
Commit:     Li-Wen Hsu <lwhsu@FreeBSD.org>
CommitDate: 2022-10-22 09:35:19 +0000

    Add devel/gcli: CLI utility to interact with various Git forges
    
    GCLI is a simple and portable CLI tool for interacting with GitHub,
    GitLab, and Gitea from the command line.
    
    This tool was written because the official GitHub CLI tool only supports
    GitHub.  The author wanted a simple unified tool for various git forges
    such as GitHub and GitLab because every forge does things differently
    yet all build on Git and purposefully break with its philosophy.
    
    Also, the official tool from Github is written in Go, which does manual
    DNS resolution which is a massive security vulnerability for people
    using Tor as it leaks your IP to the DNS server. This program builds
    upon libcurl, which obeys the operating system's DNS resolution
    mechanisms and thus also works with Tor.
    
    PR:             267224
---
 devel/Makefile       |  1 +
 devel/gcli/Makefile  | 20 ++++++++++++++++++++
 devel/gcli/distinfo  |  3 +++
 devel/gcli/pkg-descr | 13 +++++++++++++
 devel/gcli/pkg-plist | 13 +++++++++++++
 5 files changed, 50 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index 192c1eef4c94..2aa1fcb8b6e2 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -709,6 +709,7 @@
     SUBDIR += gcc-msp430-ti-toolchain
     SUBDIR += gccmakedep
     SUBDIR += gcem
+    SUBDIR += gcli
     SUBDIR += gconf2
     SUBDIR += gconfmm26
     SUBDIR += gdb
diff --git a/devel/gcli/Makefile b/devel/gcli/Makefile
new file mode 100644
index 000000000000..41ee7b3910da
--- /dev/null
+++ b/devel/gcli/Makefile
@@ -0,0 +1,20 @@
+PORTNAME=	gcli
+DISTVERSION=	0.9.9-beta
+CATEGORIES=	devel net
+MASTER_SITES=	https://herrhotzenplotz.de/gcli/releases/gcli-${DISTVERSION}/
+
+MAINTAINER=	fuz@fuz.su
+COMMENT=	CLI utility to interact with various Git forges
+WWW=		https://gitlab.com/herrhotzenplotz/gcli
+
+LICENSE=	BSD2CLAUSE
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+LIB_DEPENDS=	libcurl.so:ftp/curl
+
+USES=		pkgconfig tar:xz
+
+post-install:
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/gcli
+
+.include <bsd.port.mk>
diff --git a/devel/gcli/distinfo b/devel/gcli/distinfo
new file mode 100644
index 000000000000..be2d9bcab6f4
--- /dev/null
+++ b/devel/gcli/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1666108576
+SHA256 (gcli-0.9.9-beta.tar.xz) = cf1f270def42b0d794b3a7395f9a0ab09b16458ec7edd1ad44009f1519eee679
+SIZE (gcli-0.9.9-beta.tar.xz) = 122936
diff --git a/devel/gcli/pkg-descr b/devel/gcli/pkg-descr
new file mode 100644
index 000000000000..00c5ec897739
--- /dev/null
+++ b/devel/gcli/pkg-descr
@@ -0,0 +1,13 @@
+GCLI is a simple and portable CLI tool for interacting with GitHub,
+GitLab, and Gitea from the command line.
+
+This tool was written because the official GitHub CLI tool only supports
+GitHub.  The author wanted a simple unified tool for various git forges
+such as GitHub and GitLab because every forge does things differently
+yet all build on Git and purposefully break with its philosophy.
+
+Also, the official tool from Github is written in Go, which does manual
+DNS resolution which is a massive security vulnerability for people
+using Tor as it leaks your IP to the DNS server. This program builds
+upon libcurl, which obeys the operating system's DNS resolution
+mechanisms and thus also works with Tor.
diff --git a/devel/gcli/pkg-plist b/devel/gcli/pkg-plist
new file mode 100644
index 000000000000..025c2ba8dc1c
--- /dev/null
+++ b/devel/gcli/pkg-plist
@@ -0,0 +1,13 @@
+bin/gcli
+man/man1/gcli-comment.1.gz
+man/man1/gcli-forks.1.gz
+man/man1/gcli-gists.1.gz
+man/man1/gcli-issues.1.gz
+man/man1/gcli-labels.1.gz
+man/man1/gcli-pipelines.1.gz
+man/man1/gcli-pulls.1.gz
+man/man1/gcli-releases.1.gz
+man/man1/gcli-repos.1.gz
+man/man1/gcli-snippets.1.gz
+man/man1/gcli-status.1.gz
+man/man1/gcli.1.gz