git: b001db414f87 - main - sysutils/httm: New port

From: Muhammad Moinur Rahman <bofh_at_FreeBSD.org>
Date: Thu, 01 Dec 2022 21:25:52 UTC
The branch main has been updated by bofh:

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

commit b001db414f8751093acc5a71c1b269d6c688ff0b
Author:     Muhammad Moinur Rahman <bofh@FreeBSD.org>
AuthorDate: 2022-12-01 21:24:37 +0000
Commit:     Muhammad Moinur Rahman <bofh@FreeBSD.org>
CommitDate: 2022-12-01 21:25:44 +0000

    sysutils/httm: New port
    
    The dream of a CLI Time Machine is still alive with httm.
    
    httm prints the size, date and corresponding locations of available
    unique versions (deduplicated by modify time and size) of files residing
    on snapshots, but can also be used interactively to select and restore
    such files. httm might change the way you use snapshots (because
    ZFS/btrfs aren't designed for finding for unique file versions) or the
    Time Machine concept (because httm is very fast!).
    
    Sponsored by:   Bounce Experts
---
 sysutils/Makefile       |   1 +
 sysutils/httm/Makefile  | 155 +++++++++++++++++++++++++++
 sysutils/httm/distinfo  | 275 ++++++++++++++++++++++++++++++++++++++++++++++++
 sysutils/httm/pkg-descr |   8 ++
 4 files changed, 439 insertions(+)

diff --git a/sysutils/Makefile b/sysutils/Makefile
index d2771dee77d4..97894259f901 100644
--- a/sysutils/Makefile
+++ b/sysutils/Makefile
@@ -543,6 +543,7 @@
     SUBDIR += hs-cputype
     SUBDIR += hstr
     SUBDIR += htop
+    SUBDIR += httm
     SUBDIR += httplog
     SUBDIR += hw-probe
     SUBDIR += hwstat
diff --git a/sysutils/httm/Makefile b/sysutils/httm/Makefile
new file mode 100644
index 000000000000..1ec9c2e8535a
--- /dev/null
+++ b/sysutils/httm/Makefile
@@ -0,0 +1,155 @@
+PORTNAME=	httm
+DISTVERSION=	0.17.9
+CATEGORIES=	sysutils
+
+MAINTAINER=	bofh@FreeBSD.org
+COMMENT=	Dream of a CLI Time Machine
+WWW=		https://github.com/kimono-koans/httm
+
+LICENSE=	MPL20
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+USES=		cargo
+USE_GITHUB=	yes
+GH_ACCOUNT=	kimono-koans
+
+CARGO_CRATES=	ahash-0.8.2 \
+		aho-corasick-0.7.18 \
+		android_system_properties-0.1.5 \
+		ansi_term-0.12.1 \
+		arrayvec-0.7.2 \
+		atty-0.2.14 \
+		autocfg-1.1.0 \
+		beef-0.5.2 \
+		bitflags-1.3.2 \
+		bumpalo-3.10.0 \
+		cc-1.0.73 \
+		cfg-if-0.1.10 \
+		cfg-if-1.0.0 \
+		chrono-0.4.22 \
+		clap-3.2.23 \
+		clap_lex-0.2.2 \
+		codespan-reporting-0.11.1 \
+		console-0.15.0 \
+		core-foundation-sys-0.8.3 \
+		crossbeam-0.8.2 \
+		crossbeam-channel-0.4.4 \
+		crossbeam-channel-0.5.5 \
+		crossbeam-deque-0.8.1 \
+		crossbeam-epoch-0.9.9 \
+		crossbeam-queue-0.3.5 \
+		crossbeam-utils-0.7.2 \
+		crossbeam-utils-0.8.9 \
+		cxx-1.0.80 \
+		cxx-build-1.0.80 \
+		cxxbridge-flags-1.0.80 \
+		cxxbridge-macro-1.0.80 \
+		darling-0.14.2 \
+		darling_core-0.14.2 \
+		darling_macro-0.14.2 \
+		defer-drop-1.2.0 \
+		derive_builder-0.11.2 \
+		derive_builder_core-0.11.2 \
+		derive_builder_macro-0.11.2 \
+		dirs-next-2.0.0 \
+		dirs-sys-next-0.1.2 \
+		either-1.6.1 \
+		encode_unicode-0.3.6 \
+		errno-0.2.8 \
+		errno-dragonfly-0.1.2 \
+		fnv-1.0.7 \
+		fuzzy-matcher-0.3.7 \
+		getrandom-0.2.7 \
+		hashbrown-0.11.2 \
+		hashbrown-0.13.1 \
+		hermit-abi-0.1.19 \
+		iana-time-zone-0.1.53 \
+		iana-time-zone-haiku-0.1.1 \
+		ident_case-1.0.1 \
+		indexmap-1.8.2 \
+		indicatif-0.17.2 \
+		io-lifetimes-0.7.5 \
+		itoa-1.0.2 \
+		js-sys-0.3.60 \
+		lazy_static-1.4.0 \
+		libc-0.2.137 \
+		link-cplusplus-1.0.7 \
+		linux-raw-sys-0.0.46 \
+		log-0.4.17 \
+		lscolors-0.13.0 \
+		maybe-uninit-2.0.0 \
+		memchr-2.5.0 \
+		memoffset-0.6.5 \
+		nix-0.24.1 \
+		nix-0.25.0 \
+		nu-ansi-term-0.46.0 \
+		num-integer-0.1.45 \
+		num-traits-0.2.15 \
+		num_cpus-1.14.0 \
+		num_threads-0.1.6 \
+		number_prefix-0.4.0 \
+		once_cell-1.16.0 \
+		os_str_bytes-6.1.0 \
+		overload-0.1.1 \
+		partition-identity-0.3.0 \
+		pin-utils-0.1.0 \
+		portable-atomic-0.3.15 \
+		proc-macro2-1.0.39 \
+		proc-mounts-0.3.0 \
+		quote-1.0.18 \
+		rayon-1.6.0 \
+		rayon-core-1.10.1 \
+		redox_syscall-0.2.13 \
+		redox_users-0.4.3 \
+		regex-1.6.0 \
+		regex-syntax-0.6.27 \
+		rustix-0.35.13 \
+		rustversion-1.0.6 \
+		scopeguard-1.1.0 \
+		scratch-1.0.2 \
+		serde-1.0.137 \
+		strsim-0.10.0 \
+		syn-1.0.96 \
+		term-0.7.0 \
+		termcolor-1.1.3 \
+		terminal_size-0.1.17 \
+		terminal_size-0.2.2 \
+		textwrap-0.16.0 \
+		thiserror-1.0.31 \
+		thiserror-impl-1.0.31 \
+		thread_local-1.1.4 \
+		time-0.3.17 \
+		time-core-0.1.0 \
+		time-macros-0.2.6 \
+		tuikit-0.5.0 \
+		unicode-ident-1.0.1 \
+		unicode-width-0.1.9 \
+		utf8parse-0.2.0 \
+		version_check-0.9.4 \
+		vte-0.11.0 \
+		vte_generate_state_changes-0.1.1 \
+		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 \
+		which-4.3.0 \
+		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 \
+		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 \
+		skim@git+https://github.com/kimono-koans/skim?branch=httm-vendored\#bf2b007ae7371a7cff4d93194033bd6c90cbf96c \
+		timer@git+https://github.com/kimono-koans/timer.rs\#85c9e56ab20ea530c934433636406f8b585bef59
+
+PLIST_FILES=	bin/httm
+
+.include <bsd.port.mk>
diff --git a/sysutils/httm/distinfo b/sysutils/httm/distinfo
new file mode 100644
index 000000000000..ab972eb11263
--- /dev/null
+++ b/sysutils/httm/distinfo
@@ -0,0 +1,275 @@
+TIMESTAMP = 1669928853
+SHA256 (rust/crates/ahash-0.8.2.crate) = bf6ccdb167abbf410dcb915cabd428929d7f6a04980b54a11f26a39f1c7f7107
+SIZE (rust/crates/ahash-0.8.2.crate) = 42491
+SHA256 (rust/crates/aho-corasick-0.7.18.crate) = 1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f
+SIZE (rust/crates/aho-corasick-0.7.18.crate) = 112923
+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/ansi_term-0.12.1.crate) = d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2
+SIZE (rust/crates/ansi_term-0.12.1.crate) = 24838
+SHA256 (rust/crates/arrayvec-0.7.2.crate) = 8da52d66c7071e2e3fa2a1e5c6d088fec47b593032b254f5e980de8ea54454d6
+SIZE (rust/crates/arrayvec-0.7.2.crate) = 29341
+SHA256 (rust/crates/atty-0.2.14.crate) = d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8
+SIZE (rust/crates/atty-0.2.14.crate) = 5470
+SHA256 (rust/crates/autocfg-1.1.0.crate) = d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa
+SIZE (rust/crates/autocfg-1.1.0.crate) = 13272
+SHA256 (rust/crates/beef-0.5.2.crate) = 3a8241f3ebb85c056b509d4327ad0358fbbba6ffb340bf388f26350aeda225b1
+SIZE (rust/crates/beef-0.5.2.crate) = 15275
+SHA256 (rust/crates/bitflags-1.3.2.crate) = bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a
+SIZE (rust/crates/bitflags-1.3.2.crate) = 23021
+SHA256 (rust/crates/bumpalo-3.10.0.crate) = 37ccbd214614c6783386c1af30caf03192f17891059cecc394b4fb119e363de3
+SIZE (rust/crates/bumpalo-3.10.0.crate) = 78915
+SHA256 (rust/crates/cc-1.0.73.crate) = 2fff2a6927b3bb87f9595d67196a70493f627687a71d87a0d692242c33f58c11
+SIZE (rust/crates/cc-1.0.73.crate) = 57880
+SHA256 (rust/crates/cfg-if-0.1.10.crate) = 4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822
+SIZE (rust/crates/cfg-if-0.1.10.crate) = 7933
+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.22.crate) = bfd4d1b31faaa3a89d7934dbded3111da0d2ef28e3ebccdb4f0179f5929d1ef1
+SIZE (rust/crates/chrono-0.4.22.crate) = 185570
+SHA256 (rust/crates/clap-3.2.23.crate) = 71655c45cb9845d3270c9d6df84ebe72b4dad3c2ba3f7023ad47c144e4e473a5
+SIZE (rust/crates/clap-3.2.23.crate) = 219435
+SHA256 (rust/crates/clap_lex-0.2.2.crate) = 5538cd660450ebeb4234cfecf8f2284b844ffc4c50531e66d584ad5b91293613
+SIZE (rust/crates/clap_lex-0.2.2.crate) = 9657
+SHA256 (rust/crates/codespan-reporting-0.11.1.crate) = 3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e
+SIZE (rust/crates/codespan-reporting-0.11.1.crate) = 48963
+SHA256 (rust/crates/console-0.15.0.crate) = a28b32d32ca44b70c3e4acd7db1babf555fa026e385fb95f18028f88848b3c31
+SIZE (rust/crates/console-0.15.0.crate) = 23507
+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/crossbeam-0.8.2.crate) = 2801af0d36612ae591caa9568261fddce32ce6e08a7275ea334a06a4ad021a2c
+SIZE (rust/crates/crossbeam-0.8.2.crate) = 10502
+SHA256 (rust/crates/crossbeam-channel-0.4.4.crate) = b153fe7cbef478c567df0f972e02e6d736db11affe43dfc9c56a9374d1adfb87
+SIZE (rust/crates/crossbeam-channel-0.4.4.crate) = 86868
+SHA256 (rust/crates/crossbeam-channel-0.5.5.crate) = 4c02a4d71819009c192cf4872265391563fd6a84c81ff2c0f2a7026ca4c1d85c
+SIZE (rust/crates/crossbeam-channel-0.5.5.crate) = 90326
+SHA256 (rust/crates/crossbeam-deque-0.8.1.crate) = 6455c0ca19f0d2fbf751b908d5c55c1f5cbc65e03c4225427254b46890bdde1e
+SIZE (rust/crates/crossbeam-deque-0.8.1.crate) = 20852
+SHA256 (rust/crates/crossbeam-epoch-0.9.9.crate) = 07db9d94cbd326813772c968ccd25999e5f8ae22f4f8d1b11effa37ef6ce281d
+SIZE (rust/crates/crossbeam-epoch-0.9.9.crate) = 46185
+SHA256 (rust/crates/crossbeam-queue-0.3.5.crate) = 1f25d8400f4a7a5778f0e4e52384a48cbd9b5c495d110786187fc750075277a2
+SIZE (rust/crates/crossbeam-queue-0.3.5.crate) = 16341
+SHA256 (rust/crates/crossbeam-utils-0.7.2.crate) = c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8
+SIZE (rust/crates/crossbeam-utils-0.7.2.crate) = 34338
+SHA256 (rust/crates/crossbeam-utils-0.8.9.crate) = 8ff1f980957787286a554052d03c7aee98d99cc32e09f6d45f0a814133c87978
+SIZE (rust/crates/crossbeam-utils-0.8.9.crate) = 39818
+SHA256 (rust/crates/cxx-1.0.80.crate) = 6b7d4e43b25d3c994662706a1d4fcfc32aaa6afd287502c111b237093bb23f3a
+SIZE (rust/crates/cxx-1.0.80.crate) = 196811
+SHA256 (rust/crates/cxx-build-1.0.80.crate) = 84f8829ddc213e2c1368e51a2564c552b65a8cb6a28f31e576270ac81d5e5827
+SIZE (rust/crates/cxx-build-1.0.80.crate) = 83905
+SHA256 (rust/crates/cxxbridge-flags-1.0.80.crate) = e72537424b474af1460806647c41d4b6d35d09ef7fe031c5c2fa5766047cc56a
+SIZE (rust/crates/cxxbridge-flags-1.0.80.crate) = 5634
+SHA256 (rust/crates/cxxbridge-macro-1.0.80.crate) = 309e4fb93eed90e1e14bea0da16b209f81813ba9fc7830c20ed151dd7bc0a4d7
+SIZE (rust/crates/cxxbridge-macro-1.0.80.crate) = 59671
+SHA256 (rust/crates/darling-0.14.2.crate) = b0dd3cd20dc6b5a876612a6e5accfe7f3dd883db6d07acfbf14c128f61550dfa
+SIZE (rust/crates/darling-0.14.2.crate) = 22141
+SHA256 (rust/crates/darling_core-0.14.2.crate) = a784d2ccaf7c98501746bf0be29b2022ba41fd62a2e622af997a03e9f972859f
+SIZE (rust/crates/darling_core-0.14.2.crate) = 53924
+SHA256 (rust/crates/darling_macro-0.14.2.crate) = 7618812407e9402654622dd402b0a89dff9ba93badd6540781526117b92aab7e
+SIZE (rust/crates/darling_macro-0.14.2.crate) = 1896
+SHA256 (rust/crates/defer-drop-1.2.0.crate) = 828aca0e5e4341b0320a319209cbc6255b8b06254849ce8a5f33d33f7f2fa0f0
+SIZE (rust/crates/defer-drop-1.2.0.crate) = 11350
+SHA256 (rust/crates/derive_builder-0.11.2.crate) = d07adf7be193b71cc36b193d0f5fe60b918a3a9db4dad0449f57bcfd519704a3
+SIZE (rust/crates/derive_builder-0.11.2.crate) = 34316
+SHA256 (rust/crates/derive_builder_core-0.11.2.crate) = 1f91d4cfa921f1c05904dc3c57b4a32c38aed3340cce209f3a6fd1478babafc4
+SIZE (rust/crates/derive_builder_core-0.11.2.crate) = 29831
+SHA256 (rust/crates/derive_builder_macro-0.11.2.crate) = 8f0314b72bed045f3a68671b3c86328386762c93f82d98c65c3cb5e5f573dd68
+SIZE (rust/crates/derive_builder_macro-0.11.2.crate) = 6222
+SHA256 (rust/crates/dirs-next-2.0.0.crate) = b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1
+SIZE (rust/crates/dirs-next-2.0.0.crate) = 11689
+SHA256 (rust/crates/dirs-sys-next-0.1.2.crate) = 4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d
+SIZE (rust/crates/dirs-sys-next-0.1.2.crate) = 10681
+SHA256 (rust/crates/either-1.6.1.crate) = e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457
+SIZE (rust/crates/either-1.6.1.crate) = 13641
+SHA256 (rust/crates/encode_unicode-0.3.6.crate) = a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f
+SIZE (rust/crates/encode_unicode-0.3.6.crate) = 45741
+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/fnv-1.0.7.crate) = 3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1
+SIZE (rust/crates/fnv-1.0.7.crate) = 11266
+SHA256 (rust/crates/fuzzy-matcher-0.3.7.crate) = 54614a3312934d066701a80f20f15fa3b56d67ac7722b39eea5b4c9dd1d66c94
+SIZE (rust/crates/fuzzy-matcher-0.3.7.crate) = 18047
+SHA256 (rust/crates/getrandom-0.2.7.crate) = 4eb1a864a501629691edf6c15a593b7a51eebaa1e8468e9ddc623de7c9b58ec6
+SIZE (rust/crates/getrandom-0.2.7.crate) = 28854
+SHA256 (rust/crates/hashbrown-0.11.2.crate) = ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e
+SIZE (rust/crates/hashbrown-0.11.2.crate) = 85713
+SHA256 (rust/crates/hashbrown-0.13.1.crate) = 33ff8ae62cd3a9102e5637afc8452c55acf3844001bd5374e0b0bd7b6616c038
+SIZE (rust/crates/hashbrown-0.13.1.crate) = 105004
+SHA256 (rust/crates/hermit-abi-0.1.19.crate) = 62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33
+SIZE (rust/crates/hermit-abi-0.1.19.crate) = 9979
+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/ident_case-1.0.1.crate) = b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39
+SIZE (rust/crates/ident_case-1.0.1.crate) = 3492
+SHA256 (rust/crates/indexmap-1.8.2.crate) = e6012d540c5baa3589337a98ce73408de9b5a25ec9fc2c6fd6be8f0d39e0ca5a
+SIZE (rust/crates/indexmap-1.8.2.crate) = 53219
+SHA256 (rust/crates/indicatif-0.17.2.crate) = 4295cbb7573c16d310e99e713cf9e75101eb190ab31fccd35f2d2691b4352b19
+SIZE (rust/crates/indicatif-0.17.2.crate) = 54306
+SHA256 (rust/crates/io-lifetimes-0.7.5.crate) = 59ce5ef949d49ee85593fc4d3f3f95ad61657076395cbbce23e2121fc5542074
+SIZE (rust/crates/io-lifetimes-0.7.5.crate) = 36261
+SHA256 (rust/crates/itoa-1.0.2.crate) = 112c678d4050afce233f4f2852bb2eb519230b3cf12f33585275537d7e41578d
+SIZE (rust/crates/itoa-1.0.2.crate) = 11112
+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.137.crate) = fc7fcc620a3bff7cdd7a365be3376c97191aeaccc2a603e600951e452615bf89
+SIZE (rust/crates/libc-0.2.137.crate) = 606185
+SHA256 (rust/crates/link-cplusplus-1.0.7.crate) = 9272ab7b96c9046fbc5bc56c06c117cb639fe2d509df0c421cad82d2915cf369
+SIZE (rust/crates/link-cplusplus-1.0.7.crate) = 7576
+SHA256 (rust/crates/linux-raw-sys-0.0.46.crate) = d4d2456c373231a208ad294c33dc5bff30051eafd954cd4caae83a712b12854d
+SIZE (rust/crates/linux-raw-sys-0.0.46.crate) = 807633
+SHA256 (rust/crates/log-0.4.17.crate) = abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e
+SIZE (rust/crates/log-0.4.17.crate) = 38028
+SHA256 (rust/crates/lscolors-0.13.0.crate) = c2dedc85d67baf5327114fad78ab9418f8893b1121c17d5538dd11005ad1ddf2
+SIZE (rust/crates/lscolors-0.13.0.crate) = 21948
+SHA256 (rust/crates/maybe-uninit-2.0.0.crate) = 60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00
+SIZE (rust/crates/maybe-uninit-2.0.0.crate) = 11809
+SHA256 (rust/crates/memchr-2.5.0.crate) = 2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d
+SIZE (rust/crates/memchr-2.5.0.crate) = 65812
+SHA256 (rust/crates/memoffset-0.6.5.crate) = 5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce
+SIZE (rust/crates/memoffset-0.6.5.crate) = 7686
+SHA256 (rust/crates/nix-0.24.1.crate) = 8f17df307904acd05aa8e32e97bb20f2a0df1728bbc2d771ae8f9a90463441e9
+SIZE (rust/crates/nix-0.24.1.crate) = 263506
+SHA256 (rust/crates/nix-0.25.0.crate) = e322c04a9e3440c327fca7b6c8a63e6890a32fa2ad689db972425f07e0d22abb
+SIZE (rust/crates/nix-0.25.0.crate) = 269825
+SHA256 (rust/crates/nu-ansi-term-0.46.0.crate) = 77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84
+SIZE (rust/crates/nu-ansi-term-0.46.0.crate) = 24311
+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_cpus-1.14.0.crate) = f6058e64324c71e02bc2b150e4f3bc8286db6c83092132ffa3f6b1eab0f9def5
+SIZE (rust/crates/num_cpus-1.14.0.crate) = 15673
+SHA256 (rust/crates/num_threads-0.1.6.crate) = 2819ce041d2ee131036f4fc9d6ae7ae125a3a40e97ba64d04fe799ad9dabbb44
+SIZE (rust/crates/num_threads-0.1.6.crate) = 7334
+SHA256 (rust/crates/number_prefix-0.4.0.crate) = 830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3
+SIZE (rust/crates/number_prefix-0.4.0.crate) = 6922
+SHA256 (rust/crates/once_cell-1.16.0.crate) = 86f0b0d4bf799edbc74508c1e8bf170ff5f41238e5f8225603ca7caaae2b7860
+SIZE (rust/crates/once_cell-1.16.0.crate) = 32120
+SHA256 (rust/crates/os_str_bytes-6.1.0.crate) = 21326818e99cfe6ce1e524c2a805c189a99b5ae555a35d19f9a284b427d86afa
+SIZE (rust/crates/os_str_bytes-6.1.0.crate) = 21150
+SHA256 (rust/crates/overload-0.1.1.crate) = b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39
+SIZE (rust/crates/overload-0.1.1.crate) = 24439
+SHA256 (rust/crates/partition-identity-0.3.0.crate) = 9fa925f9becb532d758b0014b472c576869910929cf4c3f8054b386f19ab9e21
+SIZE (rust/crates/partition-identity-0.3.0.crate) = 6711
+SHA256 (rust/crates/pin-utils-0.1.0.crate) = 8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184
+SIZE (rust/crates/pin-utils-0.1.0.crate) = 7580
+SHA256 (rust/crates/portable-atomic-0.3.15.crate) = 15eb2c6e362923af47e13c23ca5afb859e83d54452c55b0b9ac763b8f7c1ac16
+SIZE (rust/crates/portable-atomic-0.3.15.crate) = 75147
+SHA256 (rust/crates/proc-macro2-1.0.39.crate) = c54b25569025b7fc9651de43004ae593a75ad88543b17178aa5e1b9c4f15f56f
+SIZE (rust/crates/proc-macro2-1.0.39.crate) = 41663
+SHA256 (rust/crates/proc-mounts-0.3.0.crate) = 0d652f8435d0ab70bf4f3590a6a851d59604831a458086541b95238cc51ffcf2
+SIZE (rust/crates/proc-mounts-0.3.0.crate) = 8363
+SHA256 (rust/crates/quote-1.0.18.crate) = a1feb54ed693b93a84e14094943b84b7c4eae204c512b7ccb95ab0c66d278ad1
+SIZE (rust/crates/quote-1.0.18.crate) = 28911
+SHA256 (rust/crates/rayon-1.6.0.crate) = 1e060280438193c554f654141c9ea9417886713b7acd75974c85b18a69a88e0b
+SIZE (rust/crates/rayon-1.6.0.crate) = 166335
+SHA256 (rust/crates/rayon-core-1.10.1.crate) = cac410af5d00ab6884528b4ab69d1e8e146e8d471201800fa1b4524126de6ad3
+SIZE (rust/crates/rayon-core-1.10.1.crate) = 70008
+SHA256 (rust/crates/redox_syscall-0.2.13.crate) = 62f25bc4c7e55e0b0b7a1d43fb893f4fa1361d0abe38b9ce4f323c2adfe6ef42
+SIZE (rust/crates/redox_syscall-0.2.13.crate) = 23759
+SHA256 (rust/crates/redox_users-0.4.3.crate) = b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b
+SIZE (rust/crates/redox_users-0.4.3.crate) = 15353
+SHA256 (rust/crates/regex-1.6.0.crate) = 4c4eb3267174b8c6c2f654116623910a0fef09c4753f8dd83db29c48a0df988b
+SIZE (rust/crates/regex-1.6.0.crate) = 239329
+SHA256 (rust/crates/regex-syntax-0.6.27.crate) = a3f87b73ce11b1619a3c6332f45341e0047173771e8b8b73f87bfeefb7b56244
+SIZE (rust/crates/regex-syntax-0.6.27.crate) = 297300
+SHA256 (rust/crates/rustix-0.35.13.crate) = 727a1a6d65f786ec22df8a81ca3121107f235970dc1705ed681d3e6e8b9cd5f9
+SIZE (rust/crates/rustix-0.35.13.crate) = 270275
+SHA256 (rust/crates/rustversion-1.0.6.crate) = f2cc38e8fa666e2de3c4aba7edeb5ffc5246c1c2ed0e3d17e560aeeba736b23f
+SIZE (rust/crates/rustversion-1.0.6.crate) = 18380
+SHA256 (rust/crates/scopeguard-1.1.0.crate) = d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd
+SIZE (rust/crates/scopeguard-1.1.0.crate) = 11470
+SHA256 (rust/crates/scratch-1.0.2.crate) = 9c8132065adcfd6e02db789d9285a0deb2f3fcb04002865ab67d5fb103533898
+SIZE (rust/crates/scratch-1.0.2.crate) = 8152
+SHA256 (rust/crates/serde-1.0.137.crate) = 61ea8d54c77f8315140a05f4c7237403bf38b72704d031543aa1d16abbf517d1
+SIZE (rust/crates/serde-1.0.137.crate) = 76182
+SHA256 (rust/crates/strsim-0.10.0.crate) = 73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623
+SIZE (rust/crates/strsim-0.10.0.crate) = 11355
+SHA256 (rust/crates/syn-1.0.96.crate) = 0748dd251e24453cb8717f0354206b91557e4ec8703673a4b30208f2abaf1ebf
+SIZE (rust/crates/syn-1.0.96.crate) = 236896
+SHA256 (rust/crates/term-0.7.0.crate) = c59df8ac95d96ff9bede18eb7300b0fda5e5d8d90960e76f8e14ae765eedbf1f
+SIZE (rust/crates/term-0.7.0.crate) = 37082
+SHA256 (rust/crates/termcolor-1.1.3.crate) = bab24d30b911b2376f3a13cc2cd443142f0c81dda04c118693e35b3835757755
+SIZE (rust/crates/termcolor-1.1.3.crate) = 17242
+SHA256 (rust/crates/terminal_size-0.1.17.crate) = 633c1a546cee861a1a6d0dc69ebeca693bf4296661ba7852b9d21d159e0506df
+SIZE (rust/crates/terminal_size-0.1.17.crate) = 9141
+SHA256 (rust/crates/terminal_size-0.2.2.crate) = 40ca90c434fd12083d1a6bdcbe9f92a14f96c8a1ba600ba451734ac334521f7a
+SIZE (rust/crates/terminal_size-0.2.2.crate) = 10146
+SHA256 (rust/crates/textwrap-0.16.0.crate) = 222a222a5bfe1bba4a77b45ec488a741b3cb8872e5e499451fd7d0129c9c7c3d
+SIZE (rust/crates/textwrap-0.16.0.crate) = 53722
+SHA256 (rust/crates/thiserror-1.0.31.crate) = bd829fe32373d27f76265620b5309d0340cb8550f523c1dda251d6298069069a
+SIZE (rust/crates/thiserror-1.0.31.crate) = 18013
+SHA256 (rust/crates/thiserror-impl-1.0.31.crate) = 0396bc89e626244658bef819e22d0cc459e795a5ebe878e6ec336d1674a8d79a
+SIZE (rust/crates/thiserror-impl-1.0.31.crate) = 15283
+SHA256 (rust/crates/thread_local-1.1.4.crate) = 5516c27b78311c50bf42c071425c560ac799b11c30b31f87e3081965fe5e0180
+SIZE (rust/crates/thread_local-1.1.4.crate) = 13106
+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/tuikit-0.5.0.crate) = 5e19c6ab038babee3d50c8c12ff8b910bdb2196f62278776422f50390d8e53d8
+SIZE (rust/crates/tuikit-0.5.0.crate) = 46855
+SHA256 (rust/crates/unicode-ident-1.0.1.crate) = 5bd2fe26506023ed7b5e1e315add59d6f584c621d037f9368fea9cfb988f368c
+SIZE (rust/crates/unicode-ident-1.0.1.crate) = 33770
+SHA256 (rust/crates/unicode-width-0.1.9.crate) = 3ed742d4ea2bd1176e236172c8429aaf54486e7ac098db29ffe6529e0ce50973
+SIZE (rust/crates/unicode-width-0.1.9.crate) = 16745
+SHA256 (rust/crates/utf8parse-0.2.0.crate) = 936e4b492acfd135421d8dca4b1aa80a7bfc26e702ef3af710e0752684df5372
+SIZE (rust/crates/utf8parse-0.2.0.crate) = 13392
+SHA256 (rust/crates/version_check-0.9.4.crate) = 49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f
+SIZE (rust/crates/version_check-0.9.4.crate) = 14895
+SHA256 (rust/crates/vte-0.11.0.crate) = 1aae21c12ad2ec2d168c236f369c38ff332bc1134f7246350dca641437365045
+SIZE (rust/crates/vte-0.11.0.crate) = 25060
+SHA256 (rust/crates/vte_generate_state_changes-0.1.1.crate) = d257817081c7dffcdbab24b9e62d2def62e2ff7d00b1c20062551e6cccc145ff
+SIZE (rust/crates/vte_generate_state_changes-0.1.1.crate) = 2422
+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/which-4.3.0.crate) = 1c831fbbee9e129a8cf93e7747a82da9d95ba8e16621cae60ec2cdc849bacb7b
+SIZE (rust/crates/which-4.3.0.crate) = 9635
+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/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 (kimono-koans-skim-bf2b007ae7371a7cff4d93194033bd6c90cbf96c_GH0.tar.gz) = 27cebdef160f3c29d2d22da81701e1cefb45a36dd1df821ddd2fa654158cc8a4
+SIZE (kimono-koans-skim-bf2b007ae7371a7cff4d93194033bd6c90cbf96c_GH0.tar.gz) = 122626
+SHA256 (kimono-koans-timer.rs-85c9e56ab20ea530c934433636406f8b585bef59_GH0.tar.gz) = a7e341576d4792657878ee9462172fb263e2894ceda4bc33402e7480ce91ee39
+SIZE (kimono-koans-timer.rs-85c9e56ab20ea530c934433636406f8b585bef59_GH0.tar.gz) = 15146
+SHA256 (kimono-koans-httm-0.17.9_GH0.tar.gz) = 28121188e11401cd5f6b19218c0ee5b09d7f3f07c6a8b2d4f009ae1301b50780
+SIZE (kimono-koans-httm-0.17.9_GH0.tar.gz) = 69405
diff --git a/sysutils/httm/pkg-descr b/sysutils/httm/pkg-descr
new file mode 100644
index 000000000000..5c8b6ecc6946
--- /dev/null
+++ b/sysutils/httm/pkg-descr
@@ -0,0 +1,8 @@
+The dream of a CLI Time Machine is still alive with httm.
+
+httm prints the size, date and corresponding locations of available unique
+versions (deduplicated by modify time and size) of files residing on snapshots,
+but can also be used interactively to select and restore such files. httm might
+change the way you use snapshots (because ZFS/btrfs aren't designed for finding
+for unique file versions) or the Time Machine concept (because httm is very
+fast!).