aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVidar Karlsen <vidar@karlsen.tech>2023-05-27 12:06:05 +0000
committerRenato Botelho <garga@FreeBSD.org>2023-05-30 11:05:22 +0000
commit10debe049c2708ccd700e402d9007b07b338296c (patch)
tree2cbc8983e40974ca9b1d4509ee40c1283da360c8
parent8b4335b78a2e8e4fcee18c84e6ab020c5d0c50aa (diff)
downloadports-10debe049c2708ccd700e402d9007b07b338296c.tar.gz
ports-10debe049c2708ccd700e402d9007b07b338296c.zip
www/trurl: New port
trurl parses, manipulates and outputs URLs and parts of URLs. It uses the RFC 3986 definition of URLs and it uses libcurl's URL parser to do so, which includes a few "extensions". The URL support is limited to "hierarchical" URLs, the ones that use "://" separators after the scheme. Typically you pass in one or more URLs and decide what of that you want output. Posssibly modifying the URL as well. trurl knows URLs and every URL consists of up to ten separate and independent "components". These components can be extracted, removed and updated with trurl and they are referred to by their respective names: scheme, user, password, options, host, port, path, query, fragment and zoneid. PR: 270770 Sponsored by: <Rubicon Communications, LLC ("Netgate")
-rw-r--r--www/Makefile1
-rw-r--r--www/trurl/Makefile33
-rw-r--r--www/trurl/distinfo3
-rw-r--r--www/trurl/pkg-descr15
4 files changed, 52 insertions, 0 deletions
diff --git a/www/Makefile b/www/Makefile
index 0d81b98eb56f..2ec87d8cebc8 100644
--- a/www/Makefile
+++ b/www/Makefile
@@ -2306,6 +2306,7 @@
SUBDIR += trafficserver
SUBDIR += transmission-web
SUBDIR += transproxy
+ SUBDIR += trurl
SUBDIR += tt-rss
SUBDIR += tuifeed
SUBDIR += tusc
diff --git a/www/trurl/Makefile b/www/trurl/Makefile
new file mode 100644
index 000000000000..9da4b5552389
--- /dev/null
+++ b/www/trurl/Makefile
@@ -0,0 +1,33 @@
+PORTNAME= trurl
+DISTVERSIONPREFIX= ${PORTNAME}-
+DISTVERSION= 0.7
+CATEGORIES= www
+
+MAINTAINER= vidar@karlsen.tech
+COMMENT= Parses, manipulates and outputs URLs and parts of URLs
+WWW= https://curl.se/trurl
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/COPYING
+
+LIB_DEPENDS= libcurl.so:ftp/curl
+TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}packaging>0:devel/py-packaging@${PY_FLAVOR}
+
+USES= python:test
+USE_GITHUB= yes
+GH_ACCOUNT= curl
+
+MAKE_ENV= MANDIR=${PREFIX}/man/man1
+ALL_TARGET= ${PORTNAME}
+TEST_TARGET= test
+
+PLIST_FILES= bin/trurl \
+ man/man1/trurl.1.gz
+
+post-patch:
+ @${REINPLACE_CMD} -e '/^CFLAGS/s/ *= */ += /' ${WRKSRC}/Makefile
+
+post-install:
+ @${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/trurl
+
+.include <bsd.port.mk>
diff --git a/www/trurl/distinfo b/www/trurl/distinfo
new file mode 100644
index 000000000000..a82443a33873
--- /dev/null
+++ b/www/trurl/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1685363840
+SHA256 (curl-trurl-trurl-0.7_GH0.tar.gz) = 11616a4c3d255ff3347cb8fc65ea4f890526f327800ec556d78e88881e2cbfa7
+SIZE (curl-trurl-trurl-0.7_GH0.tar.gz) = 36624
diff --git a/www/trurl/pkg-descr b/www/trurl/pkg-descr
new file mode 100644
index 000000000000..77f110516274
--- /dev/null
+++ b/www/trurl/pkg-descr
@@ -0,0 +1,15 @@
+trurl parses, manipulates and outputs URLs and parts of URLs.
+
+It uses the RFC 3986 definition of URLs and it uses libcurl's URL
+parser to do so, which includes a few "extensions". The URL support is
+limited to "hierarchical" URLs, the ones that use "://" separators
+after the scheme.
+
+Typically you pass in one or more URLs and decide what of that you want
+output. Posssibly modifying the URL as well.
+
+trurl knows URLs and every URL consists of up to ten separate and
+independent "components". These components can be extracted, removed
+and updated with trurl and they are referred to by their respective
+names: scheme, user, password, options, host, port, path, query,
+fragment and zoneid.