git: 4fe5a13cd66f - main - net-mgmt/gping: Add new port

From: Emanuel Haupt <ehaupt_at_FreeBSD.org>
Date: Tue, 17 Jan 2023 21:23:09 UTC
The branch main has been updated by ehaupt:

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

commit 4fe5a13cd66f985ad71b7ce9546f13e1d4fc6fa5
Author:     Emanuel Haupt <ehaupt@FreeBSD.org>
AuthorDate: 2023-01-17 21:17:03 +0000
Commit:     Emanuel Haupt <ehaupt@FreeBSD.org>
CommitDate: 2023-01-17 21:17:03 +0000

    net-mgmt/gping: Add new port
    
    Ping, but with a graph.
    
    Comes with the following super-powers:
    
      * Graph the ping time for multiple hosts
      * Graph the execution time for commands via the --cmd flag
      * Custom colours
---
 net-mgmt/Makefile              |   3 +-
 net-mgmt/gping/Makefile        |  25 ++++
 net-mgmt/gping/Makefile.crates | 126 ++++++++++++++++++++
 net-mgmt/gping/distinfo        | 255 +++++++++++++++++++++++++++++++++++++++++
 net-mgmt/gping/pkg-descr       |   7 ++
 5 files changed, 415 insertions(+), 1 deletion(-)

diff --git a/net-mgmt/Makefile b/net-mgmt/Makefile
index cc6acffabde0..344dc99a3b50 100644
--- a/net-mgmt/Makefile
+++ b/net-mgmt/Makefile
@@ -76,6 +76,7 @@
     SUBDIR += fprobe
     SUBDIR += glpi-plugins-fusioninventory-server
     SUBDIR += gnu-ipcalc
+    SUBDIR += gping
     SUBDIR += grepcidr
     SUBDIR += grepip
     SUBDIR += grok_exporter
@@ -238,8 +239,8 @@
     SUBDIR += p5-Nagios-Plugin
     SUBDIR += p5-Nagios-Plugin-Beanstalk
     SUBDIR += p5-Nagios-Plugin-LDAP
-    SUBDIR += p5-Nagios-Plugins-Memcached
     SUBDIR += p5-Nagios-Plugin_check_raid
+    SUBDIR += p5-Nagios-Plugins-Memcached
     SUBDIR += p5-Net-ACL
     SUBDIR += p5-Net-Abuse-Utils
     SUBDIR += p5-Net-Abuse-Utils-Spamhaus
diff --git a/net-mgmt/gping/Makefile b/net-mgmt/gping/Makefile
new file mode 100644
index 000000000000..5281e952f601
--- /dev/null
+++ b/net-mgmt/gping/Makefile
@@ -0,0 +1,25 @@
+PORTNAME=	gping
+PORTVERSION=	1.7.0
+DISTVERSIONPREFIX=	gping-v
+CATEGORIES=	net-mgmt
+
+MAINTAINER=	ehaupt@FreeBSD.org
+COMMENT=	Ping with graph
+WWW=		https://github.com/orf/gping
+
+LICENSE=	MIT
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+USES=		cargo
+USE_GITHUB=	yes
+GH_ACCOUNT=	orf
+
+PLIST_FILES=	bin/gping \
+		share/man/man1/gping.1.gz
+
+do-install:
+	${INSTALL_PROGRAM} ${WRKDIR}/target/*/release/${PORTNAME} \
+		${STAGEDIR}${PREFIX}/bin
+	${INSTALL_MAN} ${WRKSRC}/gping.1 ${STAGEDIR}${PREFIX}/share/man/man1
+
+.include <bsd.port.mk>
diff --git a/net-mgmt/gping/Makefile.crates b/net-mgmt/gping/Makefile.crates
new file mode 100644
index 000000000000..59917f683a1a
--- /dev/null
+++ b/net-mgmt/gping/Makefile.crates
@@ -0,0 +1,126 @@
+CARGO_CRATES=	aho-corasick-0.7.20 \
+		android_system_properties-0.1.5 \
+		anyhow-1.0.68 \
+		autocfg-1.1.0 \
+		bitflags-1.3.2 \
+		bumpalo-3.11.1 \
+		cassowary-0.3.0 \
+		cc-1.0.78 \
+		cfg-if-1.0.0 \
+		chrono-0.4.23 \
+		clap-4.0.32 \
+		clap_derive-4.0.21 \
+		clap_lex-0.3.0 \
+		codespan-reporting-0.11.1 \
+		const_fn-0.4.9 \
+		const_format-0.2.30 \
+		const_format_proc_macros-0.2.29 \
+		core-foundation-sys-0.8.3 \
+		crossterm-0.25.0 \
+		crossterm_winapi-0.9.0 \
+		cxx-1.0.86 \
+		cxx-build-1.0.86 \
+		cxxbridge-flags-1.0.86 \
+		cxxbridge-macro-1.0.86 \
+		dns-lookup-1.0.8 \
+		either-1.8.0 \
+		errno-0.2.8 \
+		errno-dragonfly-0.1.2 \
+		form_urlencoded-1.1.0 \
+		git2-0.15.0 \
+		heck-0.4.0 \
+		hermit-abi-0.2.6 \
+		iana-time-zone-0.1.53 \
+		iana-time-zone-haiku-0.1.1 \
+		idna-0.3.0 \
+		io-lifetimes-1.0.3 \
+		is-terminal-0.4.2 \
+		is_debug-1.0.1 \
+		itertools-0.10.5 \
+		itoa-1.0.5 \
+		jobserver-0.1.25 \
+		js-sys-0.3.60 \
+		lazy_static-1.4.0 \
+		libc-0.2.139 \
+		libgit2-sys-0.14.1+1.5.0 \
+		libz-sys-1.1.8 \
+		link-cplusplus-1.0.8 \
+		linux-raw-sys-0.1.4 \
+		lock_api-0.4.9 \
+		log-0.4.17 \
+		memchr-2.5.0 \
+		mio-0.8.5 \
+		num-integer-0.1.45 \
+		num-traits-0.2.15 \
+		num_threads-0.1.6 \
+		once_cell-1.17.0 \
+		os_info-3.5.1 \
+		os_str_bytes-6.4.1 \
+		parking_lot-0.12.1 \
+		parking_lot_core-0.9.5 \
+		percent-encoding-2.2.0 \
+		pkg-config-0.3.26 \
+		proc-macro-error-1.0.4 \
+		proc-macro-error-attr-1.0.4 \
+		proc-macro2-1.0.49 \
+		quote-1.0.23 \
+		read_color-1.0.0 \
+		redox_syscall-0.2.16 \
+		regex-1.7.1 \
+		regex-syntax-0.6.28 \
+		rustix-0.36.6 \
+		scopeguard-1.1.0 \
+		scratch-1.0.3 \
+		serde-1.0.152 \
+		serde_derive-1.0.152 \
+		shadow-rs-0.20.0 \
+		signal-hook-0.3.14 \
+		signal-hook-mio-0.2.3 \
+		signal-hook-registry-1.4.0 \
+		smallvec-1.10.0 \
+		socket2-0.4.7 \
+		static_assertions-1.1.0 \
+		strsim-0.10.0 \
+		syn-1.0.107 \
+		termcolor-1.1.3 \
+		thiserror-1.0.38 \
+		thiserror-impl-1.0.38 \
+		time-0.1.45 \
+		time-0.3.17 \
+		time-core-0.1.0 \
+		time-macros-0.2.6 \
+		tinyvec-1.6.0 \
+		tinyvec_macros-0.1.0 \
+		tui-0.19.0 \
+		tz-rs-0.6.14 \
+		tzdb-0.5.3 \
+		unicode-bidi-0.3.8 \
+		unicode-ident-1.0.6 \
+		unicode-normalization-0.1.22 \
+		unicode-segmentation-1.10.0 \
+		unicode-width-0.1.10 \
+		unicode-xid-0.2.4 \
+		url-2.3.1 \
+		vcpkg-0.2.15 \
+		version_check-0.9.4 \
+		wasi-0.10.0+wasi-snapshot-preview1 \
+		wasi-0.11.0+wasi-snapshot-preview1 \
+		wasm-bindgen-0.2.83 \
+		wasm-bindgen-backend-0.2.83 \
+		wasm-bindgen-macro-0.2.83 \
+		wasm-bindgen-macro-support-0.2.83 \
+		wasm-bindgen-shared-0.2.83 \
+		winapi-0.3.9 \
+		winapi-i686-pc-windows-gnu-0.4.0 \
+		winapi-util-0.1.5 \
+		winapi-x86_64-pc-windows-gnu-0.4.0 \
+		winapi_forked_icmpapi-0.3.7 \
+		windows-sys-0.42.0 \
+		windows_aarch64_gnullvm-0.42.0 \
+		windows_aarch64_msvc-0.42.0 \
+		windows_i686_gnu-0.42.0 \
+		windows_i686_msvc-0.42.0 \
+		windows_x86_64_gnu-0.42.0 \
+		windows_x86_64_gnullvm-0.42.0 \
+		windows_x86_64_msvc-0.42.0 \
+		winping-0.10.1
diff --git a/net-mgmt/gping/distinfo b/net-mgmt/gping/distinfo
new file mode 100644
index 000000000000..ac096b892fb4
--- /dev/null
+++ b/net-mgmt/gping/distinfo
@@ -0,0 +1,255 @@
+TIMESTAMP = 1673974296
+SHA256 (rust/crates/aho-corasick-0.7.20.crate) = cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac
+SIZE (rust/crates/aho-corasick-0.7.20.crate) = 111440
+SHA256 (rust/crates/android_system_properties-0.1.5.crate) = 819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311
+SIZE (rust/crates/android_system_properties-0.1.5.crate) = 5243
+SHA256 (rust/crates/anyhow-1.0.68.crate) = 2cb2f989d18dd141ab8ae82f64d1a8cdd37e0840f73a406896cf5e99502fab61
+SIZE (rust/crates/anyhow-1.0.68.crate) = 43882
+SHA256 (rust/crates/autocfg-1.1.0.crate) = d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa
+SIZE (rust/crates/autocfg-1.1.0.crate) = 13272
+SHA256 (rust/crates/bitflags-1.3.2.crate) = bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a
+SIZE (rust/crates/bitflags-1.3.2.crate) = 23021
+SHA256 (rust/crates/bumpalo-3.11.1.crate) = 572f695136211188308f16ad2ca5c851a712c464060ae6974944458eb83880ba
+SIZE (rust/crates/bumpalo-3.11.1.crate) = 81207
+SHA256 (rust/crates/cassowary-0.3.0.crate) = df8670b8c7b9dae1793364eafadf7239c40d669904660c5960d74cfd80b46a53
+SIZE (rust/crates/cassowary-0.3.0.crate) = 22876
+SHA256 (rust/crates/cc-1.0.78.crate) = a20104e2335ce8a659d6dd92a51a767a0c062599c73b343fd152cb401e828c3d
+SIZE (rust/crates/cc-1.0.78.crate) = 61375
+SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd
+SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934
+SHA256 (rust/crates/chrono-0.4.23.crate) = 16b0a3d9ed01224b22057780a37bb8c5dbfe1be8ba48678e7bf57ec4b385411f
+SIZE (rust/crates/chrono-0.4.23.crate) = 187259
+SHA256 (rust/crates/clap-4.0.32.crate) = a7db700bc935f9e43e88d00b0850dae18a63773cfbec6d8e070fccf7fef89a39
+SIZE (rust/crates/clap-4.0.32.crate) = 207531
+SHA256 (rust/crates/clap_derive-4.0.21.crate) = 0177313f9f02afc995627906bbd8967e2be069f5261954222dac78290c2b9014
+SIZE (rust/crates/clap_derive-4.0.21.crate) = 27567
+SHA256 (rust/crates/clap_lex-0.3.0.crate) = 0d4198f73e42b4936b35b5bb248d81d2b595ecb170da0bac7655c54eedfa8da8
+SIZE (rust/crates/clap_lex-0.3.0.crate) = 9671
+SHA256 (rust/crates/codespan-reporting-0.11.1.crate) = 3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e
+SIZE (rust/crates/codespan-reporting-0.11.1.crate) = 48963
+SHA256 (rust/crates/const_fn-0.4.9.crate) = fbdcdcb6d86f71c5e97409ad45898af11cbc995b4ee8112d59095a28d376c935
+SIZE (rust/crates/const_fn-0.4.9.crate) = 12624
+SHA256 (rust/crates/const_format-0.2.30.crate) = 7309d9b4d3d2c0641e018d449232f2e28f1b22933c137f157d3dbc14228b8c0e
+SIZE (rust/crates/const_format-0.2.30.crate) = 77876
+SHA256 (rust/crates/const_format_proc_macros-0.2.29.crate) = d897f47bf7270cf70d370f8f98c1abb6d2d4cf60a6845d30e05bfb90c6568650
+SIZE (rust/crates/const_format_proc_macros-0.2.29.crate) = 24380
+SHA256 (rust/crates/core-foundation-sys-0.8.3.crate) = 5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc
+SIZE (rust/crates/core-foundation-sys-0.8.3.crate) = 17519
+SHA256 (rust/crates/crossterm-0.25.0.crate) = e64e6c0fbe2c17357405f7c758c1ef960fce08bdfb2c03d88d2a18d7e09c4b67
+SIZE (rust/crates/crossterm-0.25.0.crate) = 116533
+SHA256 (rust/crates/crossterm_winapi-0.9.0.crate) = 2ae1b35a484aa10e07fe0638d02301c5ad24de82d310ccbd2f3693da5f09bf1c
+SIZE (rust/crates/crossterm_winapi-0.9.0.crate) = 15561
+SHA256 (rust/crates/cxx-1.0.86.crate) = 51d1075c37807dcf850c379432f0df05ba52cc30f279c5cfc43cc221ce7f8579
+SIZE (rust/crates/cxx-1.0.86.crate) = 589122
+SHA256 (rust/crates/cxx-build-1.0.86.crate) = 5044281f61b27bc598f2f6647d480aed48d2bf52d6eb0b627d84c0361b17aa70
+SIZE (rust/crates/cxx-build-1.0.86.crate) = 84425
+SHA256 (rust/crates/cxxbridge-flags-1.0.86.crate) = 61b50bc93ba22c27b0d31128d2d130a0a6b3d267ae27ef7e4fae2167dfe8781c
+SIZE (rust/crates/cxxbridge-flags-1.0.86.crate) = 5251
+SHA256 (rust/crates/cxxbridge-macro-1.0.86.crate) = 39e61fda7e62115119469c7b3591fd913ecca96fb766cfd3f2e2502ab7bc87a5
+SIZE (rust/crates/cxxbridge-macro-1.0.86.crate) = 59474
+SHA256 (rust/crates/dns-lookup-1.0.8.crate) = 53ecafc952c4528d9b51a458d1a8904b81783feff9fde08ab6ed2545ff396872
+SIZE (rust/crates/dns-lookup-1.0.8.crate) = 13153
+SHA256 (rust/crates/either-1.8.0.crate) = 90e5c1c8368803113bf0c9584fc495a58b86dc8a29edbf8fe877d21d9507e797
+SIZE (rust/crates/either-1.8.0.crate) = 15992
+SHA256 (rust/crates/errno-0.2.8.crate) = f639046355ee4f37944e44f60642c6f3a7efa3cf6b78c78a0d989a8ce6c396a1
+SIZE (rust/crates/errno-0.2.8.crate) = 9276
+SHA256 (rust/crates/errno-dragonfly-0.1.2.crate) = aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf
+SIZE (rust/crates/errno-dragonfly-0.1.2.crate) = 1810
+SHA256 (rust/crates/form_urlencoded-1.1.0.crate) = a9c384f161156f5260c24a097c56119f9be8c798586aecc13afbcbe7b7e26bf8
+SIZE (rust/crates/form_urlencoded-1.1.0.crate) = 8734
+SHA256 (rust/crates/git2-0.15.0.crate) = 2994bee4a3a6a51eb90c218523be382fd7ea09b16380b9312e9dbe955ff7c7d1
+SIZE (rust/crates/git2-0.15.0.crate) = 198983
+SHA256 (rust/crates/heck-0.4.0.crate) = 2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9
+SIZE (rust/crates/heck-0.4.0.crate) = 11161
+SHA256 (rust/crates/hermit-abi-0.2.6.crate) = ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7
+SIZE (rust/crates/hermit-abi-0.2.6.crate) = 13027
+SHA256 (rust/crates/iana-time-zone-0.1.53.crate) = 64c122667b287044802d6ce17ee2ddf13207ed924c712de9a66a5814d5b64765
+SIZE (rust/crates/iana-time-zone-0.1.53.crate) = 20176
+SHA256 (rust/crates/iana-time-zone-haiku-0.1.1.crate) = 0703ae284fc167426161c2e3f1da3ea71d94b21bedbcc9494e92b28e334e3dca
+SIZE (rust/crates/iana-time-zone-haiku-0.1.1.crate) = 7200
+SHA256 (rust/crates/idna-0.3.0.crate) = e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6
+SIZE (rust/crates/idna-0.3.0.crate) = 271128
+SHA256 (rust/crates/io-lifetimes-1.0.3.crate) = 46112a93252b123d31a119a8d1a1ac19deac4fac6e0e8b0df58f0d4e5870e63c
+SIZE (rust/crates/io-lifetimes-1.0.3.crate) = 35650
+SHA256 (rust/crates/is-terminal-0.4.2.crate) = 28dfb6c8100ccc63462345b67d1bbc3679177c75ee4bf59bf29c8b1d110b8189
+SIZE (rust/crates/is-terminal-0.4.2.crate) = 7577
+SHA256 (rust/crates/is_debug-1.0.1.crate) = 06d198e9919d9822d5f7083ba8530e04de87841eaf21ead9af8f2304efd57c89
+SIZE (rust/crates/is_debug-1.0.1.crate) = 1897
+SHA256 (rust/crates/itertools-0.10.5.crate) = b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473
+SIZE (rust/crates/itertools-0.10.5.crate) = 115354
+SHA256 (rust/crates/itoa-1.0.5.crate) = fad582f4b9e86b6caa621cabeb0963332d92eea04729ab12892c2533951e6440
+SIZE (rust/crates/itoa-1.0.5.crate) = 10622
+SHA256 (rust/crates/jobserver-0.1.25.crate) = 068b1ee6743e4d11fb9c6a1e6064b3693a1b600e7f5f5988047d98b3dc9fb90b
+SIZE (rust/crates/jobserver-0.1.25.crate) = 21888
+SHA256 (rust/crates/js-sys-0.3.60.crate) = 49409df3e3bf0856b916e2ceaca09ee28e6871cf7d9ce97a692cacfdb2a25a47
+SIZE (rust/crates/js-sys-0.3.60.crate) = 79257
+SHA256 (rust/crates/lazy_static-1.4.0.crate) = e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646
+SIZE (rust/crates/lazy_static-1.4.0.crate) = 10443
+SHA256 (rust/crates/libc-0.2.139.crate) = 201de327520df007757c1f0adce6e827fe8562fbc28bfd9c15571c66ca1f5f79
+SIZE (rust/crates/libc-0.2.139.crate) = 638983
+SHA256 (rust/crates/libgit2-sys-0.14.1+1.5.0.crate) = 4a07fb2692bc3593bda59de45a502bb3071659f2c515e28c71e728306b038e17
+SIZE (rust/crates/libgit2-sys-0.14.1+1.5.0.crate) = 1740453
+SHA256 (rust/crates/libz-sys-1.1.8.crate) = 9702761c3935f8cc2f101793272e202c72b99da8f4224a19ddcf1279a6450bbf
+SIZE (rust/crates/libz-sys-1.1.8.crate) = 2481844
+SHA256 (rust/crates/link-cplusplus-1.0.8.crate) = ecd207c9c713c34f95a097a5b029ac2ce6010530c7b49d7fea24d977dede04f5
+SIZE (rust/crates/link-cplusplus-1.0.8.crate) = 7674
+SHA256 (rust/crates/linux-raw-sys-0.1.4.crate) = f051f77a7c8e6957c0696eac88f26b0117e54f52d3fc682ab19397a8812846a4
+SIZE (rust/crates/linux-raw-sys-0.1.4.crate) = 878981
+SHA256 (rust/crates/lock_api-0.4.9.crate) = 435011366fe56583b16cf956f9df0095b405b82d76425bc8981c0e22e60ec4df
+SIZE (rust/crates/lock_api-0.4.9.crate) = 25685
+SHA256 (rust/crates/log-0.4.17.crate) = abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e
+SIZE (rust/crates/log-0.4.17.crate) = 38028
+SHA256 (rust/crates/memchr-2.5.0.crate) = 2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d
+SIZE (rust/crates/memchr-2.5.0.crate) = 65812
+SHA256 (rust/crates/mio-0.8.5.crate) = e5d732bc30207a6423068df043e3d02e0735b155ad7ce1a6f76fe2baa5b158de
+SIZE (rust/crates/mio-0.8.5.crate) = 93993
+SHA256 (rust/crates/num-integer-0.1.45.crate) = 225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9
+SIZE (rust/crates/num-integer-0.1.45.crate) = 22529
+SHA256 (rust/crates/num-traits-0.2.15.crate) = 578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd
+SIZE (rust/crates/num-traits-0.2.15.crate) = 49262
+SHA256 (rust/crates/num_threads-0.1.6.crate) = 2819ce041d2ee131036f4fc9d6ae7ae125a3a40e97ba64d04fe799ad9dabbb44
+SIZE (rust/crates/num_threads-0.1.6.crate) = 7334
+SHA256 (rust/crates/once_cell-1.17.0.crate) = 6f61fba1741ea2b3d6a1e3178721804bb716a68a6aeba1149b5d52e3d464ea66
+SIZE (rust/crates/once_cell-1.17.0.crate) = 32736
+SHA256 (rust/crates/os_info-3.5.1.crate) = c4750134fb6a5d49afc80777394ad5d95b04bc12068c6abb92fae8f43817270f
+SIZE (rust/crates/os_info-3.5.1.crate) = 22593
+SHA256 (rust/crates/os_str_bytes-6.4.1.crate) = 9b7820b9daea5457c9f21c69448905d723fbd21136ccf521748f23fd49e723ee
+SIZE (rust/crates/os_str_bytes-6.4.1.crate) = 23101
+SHA256 (rust/crates/parking_lot-0.12.1.crate) = 3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f
+SIZE (rust/crates/parking_lot-0.12.1.crate) = 40967
+SHA256 (rust/crates/parking_lot_core-0.9.5.crate) = 7ff9f3fef3968a3ec5945535ed654cb38ff72d7495a25619e2247fb15a2ed9ba
+SIZE (rust/crates/parking_lot_core-0.9.5.crate) = 32396
+SHA256 (rust/crates/percent-encoding-2.2.0.crate) = 478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e
+SIZE (rust/crates/percent-encoding-2.2.0.crate) = 10075
+SHA256 (rust/crates/pkg-config-0.3.26.crate) = 6ac9a59f73473f1b8d852421e59e64809f025994837ef743615c6d0c5b305160
+SIZE (rust/crates/pkg-config-0.3.26.crate) = 18662
+SHA256 (rust/crates/proc-macro-error-1.0.4.crate) = da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c
+SIZE (rust/crates/proc-macro-error-1.0.4.crate) = 25293
+SHA256 (rust/crates/proc-macro-error-attr-1.0.4.crate) = a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869
+SIZE (rust/crates/proc-macro-error-attr-1.0.4.crate) = 7971
+SHA256 (rust/crates/proc-macro2-1.0.49.crate) = 57a8eca9f9c4ffde41714334dee777596264c7825420f521abc92b5b5deb63a5
+SIZE (rust/crates/proc-macro2-1.0.49.crate) = 41977
+SHA256 (rust/crates/quote-1.0.23.crate) = 8856d8364d252a14d474036ea1358d63c9e6965c8e5c1885c18f73d70bff9c7b
+SIZE (rust/crates/quote-1.0.23.crate) = 28058
+SHA256 (rust/crates/read_color-1.0.0.crate) = 9f4c8858baa4ad3c8bcc156ae91a0ffe22b76a3975c40c49b4f04c15c6bce0da
+SIZE (rust/crates/read_color-1.0.0.crate) = 6261
+SHA256 (rust/crates/redox_syscall-0.2.16.crate) = fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a
+SIZE (rust/crates/redox_syscall-0.2.16.crate) = 24012
+SHA256 (rust/crates/regex-1.7.1.crate) = 48aaa5748ba571fb95cd2c85c09f629215d3a6ece942baa100950af03a34f733
+SIZE (rust/crates/regex-1.7.1.crate) = 239648
+SHA256 (rust/crates/regex-syntax-0.6.28.crate) = 456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848
+SIZE (rust/crates/regex-syntax-0.6.28.crate) = 299288
+SHA256 (rust/crates/rustix-0.36.6.crate) = 4feacf7db682c6c329c4ede12649cd36ecab0f3be5b7d74e6a20304725db4549
+SIZE (rust/crates/rustix-0.36.6.crate) = 288718
+SHA256 (rust/crates/scopeguard-1.1.0.crate) = d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd
+SIZE (rust/crates/scopeguard-1.1.0.crate) = 11470
+SHA256 (rust/crates/scratch-1.0.3.crate) = ddccb15bcce173023b3fedd9436f882a0739b8dfb45e4f6b6002bee5929f61b2
+SIZE (rust/crates/scratch-1.0.3.crate) = 8198
+SHA256 (rust/crates/serde-1.0.152.crate) = bb7d1f0d3021d347a83e556fc4683dea2ea09d87bccdf88ff5c12545d89d5efb
+SIZE (rust/crates/serde-1.0.152.crate) = 77091
+SHA256 (rust/crates/serde_derive-1.0.152.crate) = af487d118eecd09402d70a5d72551860e788df87b464af30e5ea6a38c75c541e
+SIZE (rust/crates/serde_derive-1.0.152.crate) = 55586
+SHA256 (rust/crates/shadow-rs-0.20.0.crate) = 8da90bd2a722461267a2c5d20b2c6de76dba087348e60484fd6c3fbb48b766d6
+SIZE (rust/crates/shadow-rs-0.20.0.crate) = 24773
+SHA256 (rust/crates/signal-hook-0.3.14.crate) = a253b5e89e2698464fc26b545c9edceb338e18a89effeeecfea192c3025be29d
+SIZE (rust/crates/signal-hook-0.3.14.crate) = 49446
+SHA256 (rust/crates/signal-hook-mio-0.2.3.crate) = 29ad2e15f37ec9a6cc544097b78a1ec90001e9f71b81338ca39f430adaca99af
+SIZE (rust/crates/signal-hook-mio-0.2.3.crate) = 9064
+SHA256 (rust/crates/signal-hook-registry-1.4.0.crate) = e51e73328dc4ac0c7ccbda3a494dfa03df1de2f46018127f60c693f2648455b0
+SIZE (rust/crates/signal-hook-registry-1.4.0.crate) = 17912
+SHA256 (rust/crates/smallvec-1.10.0.crate) = a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0
+SIZE (rust/crates/smallvec-1.10.0.crate) = 31564
+SHA256 (rust/crates/socket2-0.4.7.crate) = 02e2d2db9033d13a1567121ddd7a095ee144db4e1ca1b1bda3419bc0da294ebd
+SIZE (rust/crates/socket2-0.4.7.crate) = 44619
+SHA256 (rust/crates/static_assertions-1.1.0.crate) = a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f
+SIZE (rust/crates/static_assertions-1.1.0.crate) = 18480
+SHA256 (rust/crates/strsim-0.10.0.crate) = 73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623
+SIZE (rust/crates/strsim-0.10.0.crate) = 11355
+SHA256 (rust/crates/syn-1.0.107.crate) = 1f4064b5b16e03ae50984a5a8ed5d4f8803e6bc1fd170a3cda91a1be4b18e3f5
+SIZE (rust/crates/syn-1.0.107.crate) = 237539
+SHA256 (rust/crates/termcolor-1.1.3.crate) = bab24d30b911b2376f3a13cc2cd443142f0c81dda04c118693e35b3835757755
+SIZE (rust/crates/termcolor-1.1.3.crate) = 17242
+SHA256 (rust/crates/thiserror-1.0.38.crate) = 6a9cd18aa97d5c45c6603caea1da6628790b37f7a34b6ca89522331c5180fed0
+SIZE (rust/crates/thiserror-1.0.38.crate) = 18947
+SHA256 (rust/crates/thiserror-impl-1.0.38.crate) = 1fb327af4685e4d03fa8cbcf1716380da910eeb2bb8be417e7f9fd3fb164f36f
+SIZE (rust/crates/thiserror-impl-1.0.38.crate) = 15429
+SHA256 (rust/crates/time-0.1.45.crate) = 1b797afad3f312d1c66a56d11d0316f916356d11bd158fbc6ca6389ff6bf805a
+SIZE (rust/crates/time-0.1.45.crate) = 28911
+SHA256 (rust/crates/time-0.3.17.crate) = a561bf4617eebd33bca6434b988f39ed798e527f51a1e797d0ee4f61c0a38376
+SIZE (rust/crates/time-0.3.17.crate) = 99048
+SHA256 (rust/crates/time-core-0.1.0.crate) = 2e153e1f1acaef8acc537e68b44906d2db6436e2b35ac2c6b42640fff91f00fd
+SIZE (rust/crates/time-core-0.1.0.crate) = 6597
+SHA256 (rust/crates/time-macros-0.2.6.crate) = d967f99f534ca7e495c575c62638eebc2898a8c84c119b89e250477bc4ba16b2
+SIZE (rust/crates/time-macros-0.2.6.crate) = 19163
+SHA256 (rust/crates/tinyvec-1.6.0.crate) = 87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50
+SIZE (rust/crates/tinyvec-1.6.0.crate) = 45991
+SHA256 (rust/crates/tinyvec_macros-0.1.0.crate) = cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c
+SIZE (rust/crates/tinyvec_macros-0.1.0.crate) = 1817
+SHA256 (rust/crates/tui-0.19.0.crate) = ccdd26cbd674007e649a272da4475fb666d3aa0ad0531da7136db6fab0e5bad1
+SIZE (rust/crates/tui-0.19.0.crate) = 141279
+SHA256 (rust/crates/tz-rs-0.6.14.crate) = 33851b15c848fad2cf4b105c6bb66eb9512b6f6c44a4b13f57c53c73c707e2b4
+SIZE (rust/crates/tz-rs-0.6.14.crate) = 45574
+SHA256 (rust/crates/tzdb-0.5.3.crate) = d4b882d864be6a5d7c3c916719944458b1e03c85f86dbc825ec98155117c4408
+SIZE (rust/crates/tzdb-0.5.3.crate) = 290759
+SHA256 (rust/crates/unicode-bidi-0.3.8.crate) = 099b7128301d285f79ddd55b9a83d5e6b9e97c92e0ea0daebee7263e932de992
+SIZE (rust/crates/unicode-bidi-0.3.8.crate) = 36575
+SHA256 (rust/crates/unicode-ident-1.0.6.crate) = 84a22b9f218b40614adcb3f4ff08b703773ad44fa9423e4e0d346d5db86e4ebc
+SIZE (rust/crates/unicode-ident-1.0.6.crate) = 42158
+SHA256 (rust/crates/unicode-normalization-0.1.22.crate) = 5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921
+SIZE (rust/crates/unicode-normalization-0.1.22.crate) = 122604
+SHA256 (rust/crates/unicode-segmentation-1.10.0.crate) = 0fdbf052a0783de01e944a6ce7a8cb939e295b1e7be835a1112c3b9a7f047a5a
+SIZE (rust/crates/unicode-segmentation-1.10.0.crate) = 93893
+SHA256 (rust/crates/unicode-width-0.1.10.crate) = c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b
+SIZE (rust/crates/unicode-width-0.1.10.crate) = 18968
+SHA256 (rust/crates/unicode-xid-0.2.4.crate) = f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c
+SIZE (rust/crates/unicode-xid-0.2.4.crate) = 15352
+SHA256 (rust/crates/url-2.3.1.crate) = 0d68c799ae75762b8c3fe375feb6600ef5602c883c5d21eb51c09f22b83c4643
+SIZE (rust/crates/url-2.3.1.crate) = 72777
+SHA256 (rust/crates/vcpkg-0.2.15.crate) = accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426
+SIZE (rust/crates/vcpkg-0.2.15.crate) = 228735
+SHA256 (rust/crates/version_check-0.9.4.crate) = 49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f
+SIZE (rust/crates/version_check-0.9.4.crate) = 14895
+SHA256 (rust/crates/wasi-0.10.0+wasi-snapshot-preview1.crate) = 1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f
+SIZE (rust/crates/wasi-0.10.0+wasi-snapshot-preview1.crate) = 26964
+SHA256 (rust/crates/wasi-0.11.0+wasi-snapshot-preview1.crate) = 9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423
+SIZE (rust/crates/wasi-0.11.0+wasi-snapshot-preview1.crate) = 28131
+SHA256 (rust/crates/wasm-bindgen-0.2.83.crate) = eaf9f5aceeec8be17c128b2e93e031fb8a4d469bb9c4ae2d7dc1888b26887268
+SIZE (rust/crates/wasm-bindgen-0.2.83.crate) = 169618
+SHA256 (rust/crates/wasm-bindgen-backend-0.2.83.crate) = 4c8ffb332579b0557b52d268b91feab8df3615f265d5270fec2a8c95b17c1142
+SIZE (rust/crates/wasm-bindgen-backend-0.2.83.crate) = 25620
+SHA256 (rust/crates/wasm-bindgen-macro-0.2.83.crate) = 052be0f94026e6cbc75cdefc9bae13fd6052cdcaf532fa6c45e7ae33a1e6c810
+SIZE (rust/crates/wasm-bindgen-macro-0.2.83.crate) = 12075
+SHA256 (rust/crates/wasm-bindgen-macro-support-0.2.83.crate) = 07bc0c051dc5f23e307b13285f9d75df86bfdf816c5721e573dec1f9b8aa193c
+SIZE (rust/crates/wasm-bindgen-macro-support-0.2.83.crate) = 18530
+SHA256 (rust/crates/wasm-bindgen-shared-0.2.83.crate) = 1c38c045535d93ec4f0b4defec448e4291638ee608530863b1e2ba115d4fff7f
+SIZE (rust/crates/wasm-bindgen-shared-0.2.83.crate) = 7194
+SHA256 (rust/crates/winapi-0.3.9.crate) = 5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419
+SIZE (rust/crates/winapi-0.3.9.crate) = 1200382
+SHA256 (rust/crates/winapi-i686-pc-windows-gnu-0.4.0.crate) = ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6
+SIZE (rust/crates/winapi-i686-pc-windows-gnu-0.4.0.crate) = 2918815
+SHA256 (rust/crates/winapi-util-0.1.5.crate) = 70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178
+SIZE (rust/crates/winapi-util-0.1.5.crate) = 10164
+SHA256 (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.crate) = 712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f
+SIZE (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.crate) = 2947998
+SHA256 (rust/crates/winapi_forked_icmpapi-0.3.7.crate) = 42aecb895d6340af9ccc8dab9aeabfeab6d5d7266c5fd172c8be7e07db71c1e3
+SIZE (rust/crates/winapi_forked_icmpapi-0.3.7.crate) = 1151610
+SHA256 (rust/crates/windows-sys-0.42.0.crate) = 5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7
+SIZE (rust/crates/windows-sys-0.42.0.crate) = 3006791
+SHA256 (rust/crates/windows_aarch64_gnullvm-0.42.0.crate) = 41d2aa71f6f0cbe00ae5167d90ef3cfe66527d6f613ca78ac8024c3ccab9a19e
+SIZE (rust/crates/windows_aarch64_gnullvm-0.42.0.crate) = 357917
+SHA256 (rust/crates/windows_aarch64_msvc-0.42.0.crate) = dd0f252f5a35cac83d6311b2e795981f5ee6e67eb1f9a7f64eb4500fbc4dcdb4
+SIZE (rust/crates/windows_aarch64_msvc-0.42.0.crate) = 659424
+SHA256 (rust/crates/windows_i686_gnu-0.42.0.crate) = fbeae19f6716841636c28d695375df17562ca208b2b7d0dc47635a50ae6c5de7
+SIZE (rust/crates/windows_i686_gnu-0.42.0.crate) = 728570
+SHA256 (rust/crates/windows_i686_msvc-0.42.0.crate) = 84c12f65daa39dd2babe6e442988fc329d6243fdce47d7d2d155b8d874862246
+SIZE (rust/crates/windows_i686_msvc-0.42.0.crate) = 717477
+SHA256 (rust/crates/windows_x86_64_gnu-0.42.0.crate) = bf7b1b21b5362cbc318f686150e5bcea75ecedc74dd157d874d754a2ca44b0ed
+SIZE (rust/crates/windows_x86_64_gnu-0.42.0.crate) = 692493
+SHA256 (rust/crates/windows_x86_64_gnullvm-0.42.0.crate) = 09d525d2ba30eeb3297665bd434a54297e4170c7f1a44cad4ef58095b4cd2028
+SIZE (rust/crates/windows_x86_64_gnullvm-0.42.0.crate) = 357906
+SHA256 (rust/crates/windows_x86_64_msvc-0.42.0.crate) = f40009d85759725a34da6d89a94e63d7bdc50a862acf0dbc7c8e488f1edcb6f5
+SIZE (rust/crates/windows_x86_64_msvc-0.42.0.crate) = 659377
+SHA256 (rust/crates/winping-0.10.1.crate) = 79ed0e3a789beb896b3de9fb7e93c76340f6f4adfab7770d6222b4b8625ef0aa
+SIZE (rust/crates/winping-0.10.1.crate) = 20293
+SHA256 (orf-gping-gping-v1.7.0_GH0.tar.gz) = e40c8c89f8dd7b7f17f391a039817171c54128612c9b989b280f11bf07d1f511
+SIZE (orf-gping-gping-v1.7.0_GH0.tar.gz) = 870787
diff --git a/net-mgmt/gping/pkg-descr b/net-mgmt/gping/pkg-descr
new file mode 100644
index 000000000000..3cc321ec9c2a
--- /dev/null
+++ b/net-mgmt/gping/pkg-descr
@@ -0,0 +1,7 @@
+Ping, but with a graph.
+
+Comes with the following super-powers:
+
+  * Graph the ping time for multiple hosts
+  * Graph the execution time for commands via the --cmd flag
+  * Custom colours