Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 7 Nov 2021 13:17:03 GMT
From:      Carlo Strub <cs@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: 0fc88c55714b - main - shells/nsh: Add new port
Message-ID:  <202111071317.1A7DH3Xh075306@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by cs:

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

commit 0fc88c55714b8d5d4c1d89815545073cda6320bb
Author:     Carlo Strub <cs@FreeBSD.org>
AuthorDate: 2021-11-07 13:16:29 +0000
Commit:     Carlo Strub <cs@FreeBSD.org>
CommitDate: 2021-11-07 13:16:29 +0000

    shells/nsh: Add new port
    
    A command-line shell that focuses on productivity and swiftness featuring:
    - A POSIX compliant interactive shell with some Bash extensions.
    - Tab completions and syntax highlighting.
    - Bash completion support (by internally invoking the genuine Bash).
    - Builtin zero configration features.
    - Written in Rust :crab:
---
 shells/Makefile      |   1 +
 shells/nsh/Makefile  | 125 +++++++++++++++++++++++++++++
 shells/nsh/distinfo  | 219 +++++++++++++++++++++++++++++++++++++++++++++++++++
 shells/nsh/pkg-descr |   8 ++
 4 files changed, 353 insertions(+)

diff --git a/shells/Makefile b/shells/Makefile
index de2da3d45c55..da8ecaf614c2 100644
--- a/shells/Makefile
+++ b/shells/Makefile
@@ -29,6 +29,7 @@
     SUBDIR += mksh
     SUBDIR += modernish
     SUBDIR += nologinmsg
+    SUBDIR += nsh
     SUBDIR += ohmyzsh
     SUBDIR += oksh
     SUBDIR += p5-Bash-Completion
diff --git a/shells/nsh/Makefile b/shells/nsh/Makefile
new file mode 100644
index 000000000000..9ccfb82df8dc
--- /dev/null
+++ b/shells/nsh/Makefile
@@ -0,0 +1,125 @@
+PORTNAME=	nsh
+DISTVERSION=	0.4.2
+CATEGORIES=	shells
+MASTER_SITES=	CRATESIO
+DISTFILES=	${CARGO_DIST_SUBDIR}/${DISTNAME}${CARGO_CRATE_EXT}
+
+MAINTAINER=	cs@FreeBSD.org
+COMMENT=	Command-line shell like fish, but POSIX compatible
+
+LICENSE=	MIT
+
+USES=		cargo
+CARGO_INSTALL=	yes
+CARGO_CRATES=	addr2line-0.15.2 \
+		adler-1.0.2 \
+		ansi_term-0.11.0 \
+		ansi_term-0.12.1 \
+		arrayref-0.3.6 \
+		arrayvec-0.5.2 \
+		atty-0.2.14 \
+		autocfg-1.0.1 \
+		backtrace-0.3.60 \
+		base64-0.13.0 \
+		bitflags-1.2.1 \
+		blake2b_simd-0.5.11 \
+		block-buffer-0.7.3 \
+		block-padding-0.1.5 \
+		byte-tools-0.3.1 \
+		byteorder-1.4.3 \
+		cc-1.0.69 \
+		cfg-if-1.0.0 \
+		clap-2.33.3 \
+		colored-1.9.3 \
+		constant_time_eq-0.1.5 \
+		crossbeam-utils-0.8.5 \
+		crossterm-0.18.2 \
+		crossterm_winapi-0.6.2 \
+		ctor-0.1.20 \
+		diff-0.1.12 \
+		digest-0.8.1 \
+		dirs-1.0.5 \
+		failure-0.1.8 \
+		failure_derive-0.1.8 \
+		fake-simd-0.1.2 \
+		fern-0.6.0 \
+		generic-array-0.12.4 \
+		getrandom-0.1.16 \
+		getrandom-0.2.3 \
+		gimli-0.24.0 \
+		glob-0.3.0 \
+		heck-0.3.3 \
+		hermit-abi-0.1.19 \
+		instant-0.1.10 \
+		lazy_static-1.4.0 \
+		libc-0.2.98 \
+		lock_api-0.4.4 \
+		log-0.4.14 \
+		maplit-1.0.2 \
+		memchr-2.4.0 \
+		memoffset-0.6.4 \
+		miniz_oxide-0.4.4 \
+		mio-0.7.13 \
+		miow-0.3.7 \
+		nix-0.22.0 \
+		ntapi-0.3.6 \
+		object-0.25.3 \
+		opaque-debug-0.2.3 \
+		output_vt100-0.1.2 \
+		parking_lot-0.11.1 \
+		parking_lot_core-0.8.3 \
+		pest-2.1.3 \
+		pest_derive-2.1.0 \
+		pest_generator-2.1.3 \
+		pest_meta-2.1.3 \
+		phf-0.9.0 \
+		phf_generator-0.9.0 \
+		phf_macros-0.9.0 \
+		phf_shared-0.9.0 \
+		ppv-lite86-0.2.10 \
+		pretty_assertions-0.7.2 \
+		proc-macro-error-1.0.4 \
+		proc-macro-error-attr-1.0.4 \
+		proc-macro-hack-0.5.19 \
+		proc-macro2-1.0.27 \
+		quote-1.0.9 \
+		rand-0.8.4 \
+		rand_chacha-0.3.1 \
+		rand_core-0.6.3 \
+		rand_hc-0.3.1 \
+		redox_syscall-0.1.57 \
+		redox_syscall-0.2.9 \
+		redox_users-0.3.5 \
+		remove_dir_all-0.5.3 \
+		rust-argon2-0.8.3 \
+		rustc-demangle-0.1.20 \
+		scopeguard-1.1.0 \
+		sha-1-0.8.2 \
+		signal-hook-0.1.17 \
+		signal-hook-0.2.3 \
+		signal-hook-registry-1.4.0 \
+		siphasher-0.3.5 \
+		smallvec-1.6.1 \
+		strsim-0.8.0 \
+		structopt-0.3.22 \
+		structopt-derive-0.4.15 \
+		syn-1.0.73 \
+		synstructure-0.12.5 \
+		tempfile-3.2.0 \
+		textwrap-0.11.0 \
+		typenum-1.13.0 \
+		ucd-trie-0.1.3 \
+		unicode-segmentation-1.8.0 \
+		unicode-width-0.1.8 \
+		unicode-xid-0.2.2 \
+		vec_map-0.8.2 \
+		version_check-0.9.3 \
+		wasi-0.9.0+wasi-snapshot-preview1 \
+		wasi-0.10.2+wasi-snapshot-preview1 \
+		winapi-0.3.9 \
+		winapi-i686-pc-windows-gnu-0.4.0 \
+		winapi-x86_64-pc-windows-gnu-0.4.0
+
+PLIST_FILES=	bin/nsh
+
+.include <bsd.port.mk>
diff --git a/shells/nsh/distinfo b/shells/nsh/distinfo
new file mode 100644
index 000000000000..569ddbabb139
--- /dev/null
+++ b/shells/nsh/distinfo
@@ -0,0 +1,219 @@
+TIMESTAMP = 1636289561
+SHA256 (rust/crates/nsh-0.4.2.crate) = d3ec0a0cb3c6c897fc82dd2d3db129e21705cb5f47b60198679b7d3141bb1215
+SIZE (rust/crates/nsh-0.4.2.crate) = 71311
+SHA256 (rust/crates/addr2line-0.15.2.crate) = e7a2e47a1fbe209ee101dd6d61285226744c6c8d3c21c8dc878ba6cb9f467f3a
+SIZE (rust/crates/addr2line-0.15.2.crate) = 32966
+SHA256 (rust/crates/adler-1.0.2.crate) = f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe
+SIZE (rust/crates/adler-1.0.2.crate) = 12778
+SHA256 (rust/crates/ansi_term-0.11.0.crate) = ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b
+SIZE (rust/crates/ansi_term-0.11.0.crate) = 17087
+SHA256 (rust/crates/ansi_term-0.12.1.crate) = d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2
+SIZE (rust/crates/ansi_term-0.12.1.crate) = 24838
+SHA256 (rust/crates/arrayref-0.3.6.crate) = a4c527152e37cf757a3f78aae5a06fbeefdb07ccc535c980a3208ee3060dd544
+SIZE (rust/crates/arrayref-0.3.6.crate) = 10035
+SHA256 (rust/crates/arrayvec-0.5.2.crate) = 23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b
+SIZE (rust/crates/arrayvec-0.5.2.crate) = 27838
+SHA256 (rust/crates/atty-0.2.14.crate) = d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8
+SIZE (rust/crates/atty-0.2.14.crate) = 5470
+SHA256 (rust/crates/autocfg-1.0.1.crate) = cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a
+SIZE (rust/crates/autocfg-1.0.1.crate) = 12908
+SHA256 (rust/crates/backtrace-0.3.60.crate) = b7815ea54e4d821e791162e078acbebfd6d8c8939cd559c9335dceb1c8ca7282
+SIZE (rust/crates/backtrace-0.3.60.crate) = 70983
+SHA256 (rust/crates/base64-0.13.0.crate) = 904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd
+SIZE (rust/crates/base64-0.13.0.crate) = 62070
+SHA256 (rust/crates/bitflags-1.2.1.crate) = cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693
+SIZE (rust/crates/bitflags-1.2.1.crate) = 16745
+SHA256 (rust/crates/blake2b_simd-0.5.11.crate) = afa748e348ad3be8263be728124b24a24f268266f6f5d58af9d75f6a40b5c587
+SIZE (rust/crates/blake2b_simd-0.5.11.crate) = 34096
+SHA256 (rust/crates/block-buffer-0.7.3.crate) = c0940dc441f31689269e10ac70eb1002a3a1d3ad1390e030043662eb7fe4688b
+SIZE (rust/crates/block-buffer-0.7.3.crate) = 7179
+SHA256 (rust/crates/block-padding-0.1.5.crate) = fa79dedbb091f449f1f39e53edf88d5dbe95f895dae6135a8d7b881fb5af73f5
+SIZE (rust/crates/block-padding-0.1.5.crate) = 7342
+SHA256 (rust/crates/byte-tools-0.3.1.crate) = e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7
+SIZE (rust/crates/byte-tools-0.3.1.crate) = 5526
+SHA256 (rust/crates/byteorder-1.4.3.crate) = 14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610
+SIZE (rust/crates/byteorder-1.4.3.crate) = 22512
+SHA256 (rust/crates/cc-1.0.69.crate) = e70cc2f62c6ce1868963827bd677764c62d07c3d9a3e1fb1177ee1a9ab199eb2
+SIZE (rust/crates/cc-1.0.69.crate) = 56044
+SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd
+SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934
+SHA256 (rust/crates/clap-2.33.3.crate) = 37e58ac78573c40708d45522f0d80fa2f01cc4f9b4e2bf749807255454312002
+SIZE (rust/crates/clap-2.33.3.crate) = 201925
+SHA256 (rust/crates/colored-1.9.3.crate) = f4ffc801dacf156c5854b9df4f425a626539c3a6ef7893cc0c5084a23f0b6c59
+SIZE (rust/crates/colored-1.9.3.crate) = 20062
+SHA256 (rust/crates/constant_time_eq-0.1.5.crate) = 245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc
+SIZE (rust/crates/constant_time_eq-0.1.5.crate) = 4936
+SHA256 (rust/crates/crossbeam-utils-0.8.5.crate) = d82cfc11ce7f2c3faef78d8a684447b40d503d9681acebed6cb728d45940c4db
+SIZE (rust/crates/crossbeam-utils-0.8.5.crate) = 38414
+SHA256 (rust/crates/crossterm-0.18.2.crate) = 4e86d73f2a0b407b5768d10a8c720cf5d2df49a9efc10ca09176d201ead4b7fb
+SIZE (rust/crates/crossterm-0.18.2.crate) = 108404
+SHA256 (rust/crates/crossterm_winapi-0.6.2.crate) = c2265c3f8e080075d9b6417aa72293fc71662f34b4af2612d8d1b074d29510db
+SIZE (rust/crates/crossterm_winapi-0.6.2.crate) = 14962
+SHA256 (rust/crates/ctor-0.1.20.crate) = 5e98e2ad1a782e33928b96fc3948e7c355e5af34ba4de7670fe8bac2a3b2006d
+SIZE (rust/crates/ctor-0.1.20.crate) = 9328
+SHA256 (rust/crates/diff-0.1.12.crate) = 0e25ea47919b1560c4e3b7fe0aaab9becf5b84a10325ddf7db0f0ba5e1026499
+SIZE (rust/crates/diff-0.1.12.crate) = 10223
+SHA256 (rust/crates/digest-0.8.1.crate) = f3d0c8c8752312f9713efd397ff63acb9f85585afbf179282e720e7704954dd5
+SIZE (rust/crates/digest-0.8.1.crate) = 9449
+SHA256 (rust/crates/dirs-1.0.5.crate) = 3fd78930633bd1c6e35c4b42b1df7b0cbc6bc191146e512bb3bedf243fcc3901
+SIZE (rust/crates/dirs-1.0.5.crate) = 12908
+SHA256 (rust/crates/failure-0.1.8.crate) = d32e9bd16cc02eae7db7ef620b392808b89f6a5e16bb3497d159c6b92a0f4f86
+SIZE (rust/crates/failure-0.1.8.crate) = 37582
+SHA256 (rust/crates/failure_derive-0.1.8.crate) = aa4da3c766cd7a0db8242e326e9e4e081edd567072893ed320008189715366a4
+SIZE (rust/crates/failure_derive-0.1.8.crate) = 4950
+SHA256 (rust/crates/fake-simd-0.1.2.crate) = e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed
+SIZE (rust/crates/fake-simd-0.1.2.crate) = 5398
+SHA256 (rust/crates/fern-0.6.0.crate) = 8c9a4820f0ccc8a7afd67c39a0f1a0f4b07ca1725164271a64939d7aeb9af065
+SIZE (rust/crates/fern-0.6.0.crate) = 299856
+SHA256 (rust/crates/generic-array-0.12.4.crate) = ffdf9f34f1447443d37393cc6c2b8313aebddcd96906caf34e54c68d8e57d7bd
+SIZE (rust/crates/generic-array-0.12.4.crate) = 18212
+SHA256 (rust/crates/getrandom-0.1.16.crate) = 8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce
+SIZE (rust/crates/getrandom-0.1.16.crate) = 25077
+SHA256 (rust/crates/getrandom-0.2.3.crate) = 7fcd999463524c52659517fe2cea98493cfe485d10565e7b0fb07dbba7ad2753
+SIZE (rust/crates/getrandom-0.2.3.crate) = 26261
+SHA256 (rust/crates/gimli-0.24.0.crate) = 0e4075386626662786ddb0ec9081e7c7eeb1ba31951f447ca780ef9f5d568189
+SIZE (rust/crates/gimli-0.24.0.crate) = 703534
+SHA256 (rust/crates/glob-0.3.0.crate) = 9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574
+SIZE (rust/crates/glob-0.3.0.crate) = 18724
+SHA256 (rust/crates/heck-0.3.3.crate) = 6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c
+SIZE (rust/crates/heck-0.3.3.crate) = 10260
+SHA256 (rust/crates/hermit-abi-0.1.19.crate) = 62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33
+SIZE (rust/crates/hermit-abi-0.1.19.crate) = 9979
+SHA256 (rust/crates/instant-0.1.10.crate) = bee0328b1209d157ef001c94dd85b4f8f64139adb0eac2659f4b08382b2f474d
+SIZE (rust/crates/instant-0.1.10.crate) = 5218
+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.98.crate) = 320cfe77175da3a483efed4bc0adc1968ca050b098ce4f2f1c13a56626128790
+SIZE (rust/crates/libc-0.2.98.crate) = 522087
+SHA256 (rust/crates/lock_api-0.4.4.crate) = 0382880606dff6d15c9476c416d18690b72742aa7b605bb6dd6ec9030fbf07eb
+SIZE (rust/crates/lock_api-0.4.4.crate) = 20356
+SHA256 (rust/crates/log-0.4.14.crate) = 51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710
+SIZE (rust/crates/log-0.4.14.crate) = 34582
+SHA256 (rust/crates/maplit-1.0.2.crate) = 3e2e65a1a2e43cfcb47a895c4c8b10d1f4a61097f9f254f183aee60cad9c651d
+SIZE (rust/crates/maplit-1.0.2.crate) = 8871
+SHA256 (rust/crates/memchr-2.4.0.crate) = b16bd47d9e329435e309c58469fe0791c2d0d1ba96ec0954152a5ae2b04387dc
+SIZE (rust/crates/memchr-2.4.0.crate) = 63392
+SHA256 (rust/crates/memoffset-0.6.4.crate) = 59accc507f1338036a0477ef61afdae33cde60840f4dfe481319ce3ad116ddf9
+SIZE (rust/crates/memoffset-0.6.4.crate) = 7664
+SHA256 (rust/crates/miniz_oxide-0.4.4.crate) = a92518e98c078586bc6c934028adcca4c92a53d6a958196de835170a01d84e4b
+SIZE (rust/crates/miniz_oxide-0.4.4.crate) = 49938
+SHA256 (rust/crates/mio-0.7.13.crate) = 8c2bdb6314ec10835cd3293dd268473a835c02b7b352e788be788b3c6ca6bb16
+SIZE (rust/crates/mio-0.7.13.crate) = 87027
+SHA256 (rust/crates/miow-0.3.7.crate) = b9f1c5b025cda876f66ef43a113f91ebc9f4ccef34843000e0adf6ebbab84e21
+SIZE (rust/crates/miow-0.3.7.crate) = 24563
+SHA256 (rust/crates/nix-0.22.0.crate) = cf1e25ee6b412c2a1e3fcb6a4499a5c1bfe7f43e014bdce9a6b6666e5aa2d187
+SIZE (rust/crates/nix-0.22.0.crate) = 227091
+SHA256 (rust/crates/ntapi-0.3.6.crate) = 3f6bb902e437b6d86e03cce10a7e2af662292c5dfef23b65899ea3ac9354ad44
+SIZE (rust/crates/ntapi-0.3.6.crate) = 127221
+SHA256 (rust/crates/object-0.25.3.crate) = a38f2be3697a57b4060074ff41b44c16870d916ad7877c17696e063257482bc7
+SIZE (rust/crates/object-0.25.3.crate) = 230711
+SHA256 (rust/crates/opaque-debug-0.2.3.crate) = 2839e79665f131bdb5782e51f2c6c9599c133c6098982a54c794358bf432529c
+SIZE (rust/crates/opaque-debug-0.2.3.crate) = 5643
+SHA256 (rust/crates/output_vt100-0.1.2.crate) = 53cdc5b785b7a58c5aad8216b3dfa114df64b0b06ae6e1501cef91df2fbdf8f9
+SIZE (rust/crates/output_vt100-0.1.2.crate) = 4062
+SHA256 (rust/crates/parking_lot-0.11.1.crate) = 6d7744ac029df22dca6284efe4e898991d28e3085c706c972bcd7da4a27a15eb
+SIZE (rust/crates/parking_lot-0.11.1.crate) = 39854
+SHA256 (rust/crates/parking_lot_core-0.8.3.crate) = fa7a782938e745763fe6907fc6ba86946d72f49fe7e21de074e08128a99fb018
+SIZE (rust/crates/parking_lot_core-0.8.3.crate) = 32147
+SHA256 (rust/crates/pest-2.1.3.crate) = 10f4872ae94d7b90ae48754df22fd42ad52ce740b8f370b03da4835417403e53
+SIZE (rust/crates/pest-2.1.3.crate) = 77986
+SHA256 (rust/crates/pest_derive-2.1.0.crate) = 833d1ae558dc601e9a60366421196a8d94bc0ac980476d0b67e1d0988d72b2d0
+SIZE (rust/crates/pest_derive-2.1.0.crate) = 14049
+SHA256 (rust/crates/pest_generator-2.1.3.crate) = 99b8db626e31e5b81787b9783425769681b347011cc59471e33ea46d2ea0cf55
+SIZE (rust/crates/pest_generator-2.1.3.crate) = 14227
+SHA256 (rust/crates/pest_meta-2.1.3.crate) = 54be6e404f5317079812fc8f9f5279de376d8856929e21c184ecf6bbd692a11d
+SIZE (rust/crates/pest_meta-2.1.3.crate) = 27818
+SHA256 (rust/crates/phf-0.9.0.crate) = b2ac8b67553a7ca9457ce0e526948cad581819238f4a9d1ea74545851fa24f37
+SIZE (rust/crates/phf-0.9.0.crate) = 4712
+SHA256 (rust/crates/phf_generator-0.9.0.crate) = 0fc1437ada0f3a97d538f0bb608137bf53c53969028cab74c89893e1e9a12f0e
+SIZE (rust/crates/phf_generator-0.9.0.crate) = 7769
+SHA256 (rust/crates/phf_macros-0.9.0.crate) = b706f5936eb50ed880ae3009395b43ed19db5bff2ebd459c95e7bf013a89ab86
+SIZE (rust/crates/phf_macros-0.9.0.crate) = 3537
+SHA256 (rust/crates/phf_shared-0.9.0.crate) = a68318426de33640f02be62b4ae8eb1261be2efbc337b60c54d845bf4484e0d9
+SIZE (rust/crates/phf_shared-0.9.0.crate) = 4111
+SHA256 (rust/crates/ppv-lite86-0.2.10.crate) = ac74c624d6b2d21f425f752262f42188365d7b8ff1aff74c82e45136510a4857
+SIZE (rust/crates/ppv-lite86-0.2.10.crate) = 20915
+SHA256 (rust/crates/pretty_assertions-0.7.2.crate) = 1cab0e7c02cf376875e9335e0ba1da535775beb5450d21e1dffca068818ed98b
+SIZE (rust/crates/pretty_assertions-0.7.2.crate) = 79200
+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-macro-hack-0.5.19.crate) = dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5
+SIZE (rust/crates/proc-macro-hack-0.5.19.crate) = 15556
+SHA256 (rust/crates/proc-macro2-1.0.27.crate) = f0d8caf72986c1a598726adc988bb5984792ef84f5ee5aa50209145ee8077038
+SIZE (rust/crates/proc-macro2-1.0.27.crate) = 38625
+SHA256 (rust/crates/quote-1.0.9.crate) = c3d0b9745dc2debf507c8422de05d7226cc1f0644216dfdfead988f9b1ab32a7
+SIZE (rust/crates/quote-1.0.9.crate) = 25042
+SHA256 (rust/crates/rand-0.8.4.crate) = 2e7573632e6454cf6b99d7aac4ccca54be06da05aca2ef7423d22d27d4d4bcd8
+SIZE (rust/crates/rand-0.8.4.crate) = 87406
+SHA256 (rust/crates/rand_chacha-0.3.1.crate) = e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88
+SIZE (rust/crates/rand_chacha-0.3.1.crate) = 15251
+SHA256 (rust/crates/rand_core-0.6.3.crate) = d34f1408f55294453790c48b2f1ebbb1c5b4b7563eb1f418bcfcfdbb06ebb4e7
+SIZE (rust/crates/rand_core-0.6.3.crate) = 21938
+SHA256 (rust/crates/rand_hc-0.3.1.crate) = d51e9f596de227fda2ea6c84607f5558e196eeaf43c986b724ba4fb8fdf497e7
+SIZE (rust/crates/rand_hc-0.3.1.crate) = 11891
+SHA256 (rust/crates/redox_syscall-0.1.57.crate) = 41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce
+SIZE (rust/crates/redox_syscall-0.1.57.crate) = 17087
+SHA256 (rust/crates/redox_syscall-0.2.9.crate) = 5ab49abadf3f9e1c4bc499e8845e152ad87d2ad2d30371841171169e9d75feee
+SIZE (rust/crates/redox_syscall-0.2.9.crate) = 23533
+SHA256 (rust/crates/redox_users-0.3.5.crate) = de0737333e7a9502c789a36d7c7fa6092a49895d4faa31ca5df163857ded2e9d
+SIZE (rust/crates/redox_users-0.3.5.crate) = 12644
+SHA256 (rust/crates/remove_dir_all-0.5.3.crate) = 3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7
+SIZE (rust/crates/remove_dir_all-0.5.3.crate) = 9184
+SHA256 (rust/crates/rust-argon2-0.8.3.crate) = 4b18820d944b33caa75a71378964ac46f58517c92b6ae5f762636247c09e78fb
+SIZE (rust/crates/rust-argon2-0.8.3.crate) = 28313
+SHA256 (rust/crates/rustc-demangle-0.1.20.crate) = dead70b0b5e03e9c814bcb6b01e03e68f7c57a80aa48c72ec92152ab3e818d49
+SIZE (rust/crates/rustc-demangle-0.1.20.crate) = 23298
+SHA256 (rust/crates/scopeguard-1.1.0.crate) = d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd
+SIZE (rust/crates/scopeguard-1.1.0.crate) = 11470
+SHA256 (rust/crates/sha-1-0.8.2.crate) = f7d94d0bede923b3cea61f3f1ff57ff8cdfd77b400fb8f9998949e0cf04163df
+SIZE (rust/crates/sha-1-0.8.2.crate) = 12338
+SHA256 (rust/crates/signal-hook-0.1.17.crate) = 7e31d442c16f047a671b5a71e2161d6e68814012b7f5379d269ebd915fac2729
+SIZE (rust/crates/signal-hook-0.1.17.crate) = 27085
+SHA256 (rust/crates/signal-hook-0.2.3.crate) = 844024c8913df6bfbfeee3061075ccc47216a897ac0b54a683dea3dfe16d19af
+SIZE (rust/crates/signal-hook-0.2.3.crate) = 39177
+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/siphasher-0.3.5.crate) = cbce6d4507c7e4a3962091436e56e95290cb71fa302d0d270e32130b75fbff27
+SIZE (rust/crates/siphasher-0.3.5.crate) = 9455
+SHA256 (rust/crates/smallvec-1.6.1.crate) = fe0f37c9e8f3c5a4a66ad655a93c74daac4ad00c441533bf5c6e7990bb42604e
+SIZE (rust/crates/smallvec-1.6.1.crate) = 26444
+SHA256 (rust/crates/strsim-0.8.0.crate) = 8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a
+SIZE (rust/crates/strsim-0.8.0.crate) = 9309
+SHA256 (rust/crates/structopt-0.3.22.crate) = 69b041cdcb67226aca307e6e7be44c8806423d83e018bd662360a93dabce4d71
+SIZE (rust/crates/structopt-0.3.22.crate) = 51665
+SHA256 (rust/crates/structopt-derive-0.4.15.crate) = 7813934aecf5f51a54775e00068c237de98489463968231a51746bbbc03f9c10
+SIZE (rust/crates/structopt-derive-0.4.15.crate) = 20861
+SHA256 (rust/crates/syn-1.0.73.crate) = f71489ff30030d2ae598524f61326b902466f72a0fb1a8564c001cc63425bcc7
+SIZE (rust/crates/syn-1.0.73.crate) = 232706
+SHA256 (rust/crates/synstructure-0.12.5.crate) = 474aaa926faa1603c40b7885a9eaea29b444d1cb2850cb7c0e37bb1a4182f4fa
+SIZE (rust/crates/synstructure-0.12.5.crate) = 18020
+SHA256 (rust/crates/tempfile-3.2.0.crate) = dac1c663cfc93810f88aed9b8941d48cabf856a1b111c29a40439018d870eb22
+SIZE (rust/crates/tempfile-3.2.0.crate) = 25892
+SHA256 (rust/crates/textwrap-0.11.0.crate) = d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060
+SIZE (rust/crates/textwrap-0.11.0.crate) = 17322
+SHA256 (rust/crates/typenum-1.13.0.crate) = 879f6906492a7cd215bfa4cf595b600146ccfac0c79bcbd1f3000162af5e8b06
+SIZE (rust/crates/typenum-1.13.0.crate) = 40238
+SHA256 (rust/crates/ucd-trie-0.1.3.crate) = 56dee185309b50d1f11bfedef0fe6d036842e3fb77413abef29f8f8d1c5d4c1c
+SIZE (rust/crates/ucd-trie-0.1.3.crate) = 44615
+SHA256 (rust/crates/unicode-segmentation-1.8.0.crate) = 8895849a949e7845e06bd6dc1aa51731a103c42707010a5b591c0038fb73385b
+SIZE (rust/crates/unicode-segmentation-1.8.0.crate) = 94011
+SHA256 (rust/crates/unicode-width-0.1.8.crate) = 9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3
+SIZE (rust/crates/unicode-width-0.1.8.crate) = 16732
+SHA256 (rust/crates/unicode-xid-0.2.2.crate) = 8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3
+SIZE (rust/crates/unicode-xid-0.2.2.crate) = 14955
+SHA256 (rust/crates/vec_map-0.8.2.crate) = f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191
+SIZE (rust/crates/vec_map-0.8.2.crate) = 14466
+SHA256 (rust/crates/version_check-0.9.3.crate) = 5fecdca9a5291cc2b8dcf7dc02453fee791a280f3743cb0905f8822ae463b3fe
+SIZE (rust/crates/version_check-0.9.3.crate) = 12547
+SHA256 (rust/crates/wasi-0.9.0+wasi-snapshot-preview1.crate) = cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519
+SIZE (rust/crates/wasi-0.9.0+wasi-snapshot-preview1.crate) = 31521
+SHA256 (rust/crates/wasi-0.10.2+wasi-snapshot-preview1.crate) = fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6
+SIZE (rust/crates/wasi-0.10.2+wasi-snapshot-preview1.crate) = 27505
+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-x86_64-pc-windows-gnu-0.4.0.crate) = 712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f
+SIZE (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.crate) = 2947998
diff --git a/shells/nsh/pkg-descr b/shells/nsh/pkg-descr
new file mode 100644
index 000000000000..5a68a6b0261b
--- /dev/null
+++ b/shells/nsh/pkg-descr
@@ -0,0 +1,8 @@
+A command-line shell that focuses on productivity and swiftness featuring:
+- A POSIX compliant interactive shell with some Bash extensions.
+- Tab completions and syntax highlighting.
+- Bash completion support (by internally invoking the genuine Bash).
+- Builtin zero configration features.
+- Written in Rust :crab:
+
+WWW: https://github.com/nuta/nsh



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202111071317.1A7DH3Xh075306>