git: bd3bc793acc7 - main - multimedia/alass: New port: Automatic Language-Agnostic Subtitle Synchronizatio

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Mon, 23 Oct 2023 00:56:53 UTC
The branch main has been updated by yuri:

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

commit bd3bc793acc7435f5e48f475e2e4e5b7f8a988b1
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2023-10-23 00:55:47 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2023-10-23 00:56:51 +0000

    multimedia/alass: New port: Automatic Language-Agnostic Subtitle Synchronizatio
---
 multimedia/Makefile        |   1 +
 multimedia/alass/Makefile  | 112 +++++++++++++++++++++++++++++
 multimedia/alass/distinfo  | 175 +++++++++++++++++++++++++++++++++++++++++++++
 multimedia/alass/pkg-descr |  13 ++++
 4 files changed, 301 insertions(+)

diff --git a/multimedia/Makefile b/multimedia/Makefile
index a5d2a2a68c3c..5bb15b628f23 100644
--- a/multimedia/Makefile
+++ b/multimedia/Makefile
@@ -5,6 +5,7 @@
     SUBDIR += ab25
     SUBDIR += acidrip
     SUBDIR += aegisub
+    SUBDIR += alass
     SUBDIR += aom
     SUBDIR += aravis
     SUBDIR += arcan
diff --git a/multimedia/alass/Makefile b/multimedia/alass/Makefile
new file mode 100644
index 000000000000..22ab3661fcf4
--- /dev/null
+++ b/multimedia/alass/Makefile
@@ -0,0 +1,112 @@
+PORTNAME=	alass
+DISTVERSIONPREFIX=	v
+DISTVERSION=	2.0.0
+CATEGORIES=	multimedia
+
+MAINTAINER=	yuri@FreeBSD.org
+COMMENT=	Automatic Language-Agnostic Subtitle Synchronization
+WWW=		https://github.com/kaegi/alass
+
+LICENSE=	GPLv3
+LICENSE_FILE=	${WRKSRC}/../LICENSE
+
+USES=		cargo
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	kaegi
+
+WRKSRC_SUBDIR=	alass-cli
+
+CARGO_CRATES=	aho-corasick-0.6.10 \
+		ansi_term-0.11.0 \
+		ascii-0.7.1 \
+		atty-0.2.13 \
+		autocfg-0.1.6 \
+		backtrace-0.3.38 \
+		backtrace-sys-0.1.31 \
+		bitflags-1.2.0 \
+		byteorder-1.3.2 \
+		c2-chacha-0.2.2 \
+		cast-0.2.2 \
+		cc-1.0.45 \
+		cfg-if-0.1.10 \
+		clap-2.33.0 \
+		combine-2.5.2 \
+		ctrlc-3.1.3 \
+		either-1.5.3 \
+		encoding_rs-0.8.20 \
+		enum_primitive-0.1.1 \
+		error-chain-0.10.0 \
+		failure-0.1.5 \
+		failure_derive-0.1.5 \
+		getrandom-0.1.12 \
+		image-0.13.0 \
+		itertools-0.8.0 \
+		itoa-0.4.4 \
+		lazy_static-0.2.11 \
+		lazy_static-1.4.0 \
+		libc-0.2.62 \
+		log-0.3.9 \
+		log-0.4.8 \
+		memchr-2.2.1 \
+		nix-0.14.1 \
+		nom-2.1.0 \
+		num-integer-0.1.41 \
+		num-iter-0.1.39 \
+		num-rational-0.1.42 \
+		num-traits-0.1.43 \
+		num-traits-0.2.8 \
+		num_cpus-1.10.1 \
+		numtoa-0.1.0 \
+		pbr-1.0.2 \
+		ppv-lite86-0.2.5 \
+		proc-macro2-0.4.30 \
+		proc-macro2-1.0.4 \
+		quote-0.6.13 \
+		quote-1.0.2 \
+		rand-0.7.2 \
+		rand_chacha-0.2.1 \
+		rand_core-0.5.1 \
+		rand_hc-0.2.0 \
+		redox_syscall-0.1.56 \
+		redox_termios-0.1.1 \
+		regex-0.2.11 \
+		regex-syntax-0.5.6 \
+		rmp-0.8.8 \
+		rmp-serde-0.14.0 \
+		rustc-demangle-0.1.16 \
+		ryu-1.0.0 \
+		safemem-0.2.0 \
+		serde-1.0.101 \
+		serde_derive-1.0.101 \
+		serde_json-1.0.40 \
+		strsim-0.8.0 \
+		subparse-0.6.2 \
+		syn-0.15.44 \
+		syn-1.0.5 \
+		synstructure-0.10.2 \
+		termion-1.5.3 \
+		textwrap-0.11.0 \
+		thread_local-0.3.6 \
+		threadpool-1.7.1 \
+		time-0.1.42 \
+		ucd-util-0.1.5 \
+		unicode-width-0.1.6 \
+		unicode-xid-0.1.0 \
+		unicode-xid-0.2.0 \
+		utf8-ranges-1.0.4 \
+		vec_map-0.8.1 \
+		vobsub-0.2.3 \
+		void-1.0.2 \
+		wasi-0.7.0 \
+		webrtc-vad-0.4.0 \
+		winapi-0.3.8 \
+		winapi-i686-pc-windows-gnu-0.4.0 \
+		winapi-x86_64-pc-windows-gnu-0.4.0
+
+PLIST_FILES=	bin/${PORTNAME}-cli
+
+post-install:
+	@${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/${PORTNAME}-cli
+
+.include <bsd.port.mk>
diff --git a/multimedia/alass/distinfo b/multimedia/alass/distinfo
new file mode 100644
index 000000000000..55299f18d71b
--- /dev/null
+++ b/multimedia/alass/distinfo
@@ -0,0 +1,175 @@
+TIMESTAMP = 1698020905
+SHA256 (rust/crates/aho-corasick-0.6.10.crate) = 81ce3d38065e618af2d7b77e10c5ad9a069859b4be3c2250f674af3840d9c8a5
+SIZE (rust/crates/aho-corasick-0.6.10.crate) = 26122
+SHA256 (rust/crates/ansi_term-0.11.0.crate) = ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b
+SIZE (rust/crates/ansi_term-0.11.0.crate) = 17087
+SHA256 (rust/crates/ascii-0.7.1.crate) = 3ae7d751998c189c1d4468cf0a39bb2eae052a9c58d50ebb3b9591ee3813ad50
+SIZE (rust/crates/ascii-0.7.1.crate) = 13273
+SHA256 (rust/crates/atty-0.2.13.crate) = 1803c647a3ec87095e7ae7acfca019e98de5ec9a7d01343f611cf3152ed71a90
+SIZE (rust/crates/atty-0.2.13.crate) = 4764
+SHA256 (rust/crates/autocfg-0.1.6.crate) = b671c8fb71b457dd4ae18c4ba1e59aa81793daacc361d82fcd410cef0d491875
+SIZE (rust/crates/autocfg-0.1.6.crate) = 11439
+SHA256 (rust/crates/backtrace-0.3.38.crate) = 690a62be8920ccf773ee00ef0968649b0e724cda8bd5b12286302b4ae955fdf5
+SIZE (rust/crates/backtrace-0.3.38.crate) = 68133
+SHA256 (rust/crates/backtrace-sys-0.1.31.crate) = 82a830b4ef2d1124a711c71d263c5abdc710ef8e907bd508c88be475cebc422b
+SIZE (rust/crates/backtrace-sys-0.1.31.crate) = 518877
+SHA256 (rust/crates/bitflags-1.2.0.crate) = 8a606a02debe2813760609f57a64a2ffd27d9fdf5b2f133eaca0b248dd92cdd2
+SIZE (rust/crates/bitflags-1.2.0.crate) = 16814
+SHA256 (rust/crates/byteorder-1.3.2.crate) = a7c3dd8985a7111efc5c80b44e23ecdd8c007de8ade3b96595387e812b957cf5
+SIZE (rust/crates/byteorder-1.3.2.crate) = 21596
+SHA256 (rust/crates/c2-chacha-0.2.2.crate) = 7d64d04786e0f528460fc884753cf8dddcc466be308f6026f8e355c41a0e4101
+SIZE (rust/crates/c2-chacha-0.2.2.crate) = 13766
+SHA256 (rust/crates/cast-0.2.2.crate) = 926013f2860c46252efceabb19f4a6b308197505082c609025aa6706c011d427
+SIZE (rust/crates/cast-0.2.2.crate) = 10318
+SHA256 (rust/crates/cc-1.0.45.crate) = 4fc9a35e1f4290eb9e5fc54ba6cf40671ed2a2514c3eeb2b2a908dda2ea5a1be
+SIZE (rust/crates/cc-1.0.45.crate) = 49112
+SHA256 (rust/crates/cfg-if-0.1.10.crate) = 4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822
+SIZE (rust/crates/cfg-if-0.1.10.crate) = 7933
+SHA256 (rust/crates/clap-2.33.0.crate) = 5067f5bb2d80ef5d68b4c87db81601f0b75bca627bc2ef76b141d7b846a3c6d9
+SIZE (rust/crates/clap-2.33.0.crate) = 196458
+SHA256 (rust/crates/combine-2.5.2.crate) = 1645a65a99c7c8d345761f4b75a6ffe5be3b3b27a93ee731fccc5050ba6be97c
+SIZE (rust/crates/combine-2.5.2.crate) = 61092
+SHA256 (rust/crates/ctrlc-3.1.3.crate) = c7dfd2d8b4c82121dfdff120f818e09fc4380b0b7e17a742081a89b94853e87f
+SIZE (rust/crates/ctrlc-3.1.3.crate) = 11792
+SHA256 (rust/crates/either-1.5.3.crate) = bb1f6b1ce1c140482ea30ddd3335fc0024ac7ee112895426e0a629a6c20adfe3
+SIZE (rust/crates/either-1.5.3.crate) = 12278
+SHA256 (rust/crates/encoding_rs-0.8.20.crate) = 87240518927716f79692c2ed85bfe6e98196d18c6401ec75355760233a7e12e9
+SIZE (rust/crates/encoding_rs-0.8.20.crate) = 1403599
+SHA256 (rust/crates/enum_primitive-0.1.1.crate) = be4551092f4d519593039259a9ed8daedf0da12e5109c5280338073eaeb81180
+SIZE (rust/crates/enum_primitive-0.1.1.crate) = 4186
+SHA256 (rust/crates/error-chain-0.10.0.crate) = d9435d864e017c3c6afeac1654189b06cdb491cf2ff73dbf0d73b0f292f42ff8
+SIZE (rust/crates/error-chain-0.10.0.crate) = 18432
+SHA256 (rust/crates/failure-0.1.5.crate) = 795bd83d3abeb9220f257e597aa0080a508b27533824adf336529648f6abf7e2
+SIZE (rust/crates/failure-0.1.5.crate) = 36749
+SHA256 (rust/crates/failure_derive-0.1.5.crate) = ea1063915fd7ef4309e222a5a07cf9c319fb9c7836b1f89b85458672dbb127e1
+SIZE (rust/crates/failure_derive-0.1.5.crate) = 4884
+SHA256 (rust/crates/getrandom-0.1.12.crate) = 473a1265acc8ff1e808cd0a1af8cee3c2ee5200916058a2ca113c29f2d903571
+SIZE (rust/crates/getrandom-0.1.12.crate) = 23809
+SHA256 (rust/crates/image-0.13.0.crate) = 1c3f4f5ea213ed9899eca760a8a14091d4b82d33e27cf8ced336ff730e9f6da8
+SIZE (rust/crates/image-0.13.0.crate) = 95122
+SHA256 (rust/crates/itertools-0.8.0.crate) = 5b8467d9c1cebe26feb08c640139247fac215782d35371ade9a2136ed6085358
+SIZE (rust/crates/itertools-0.8.0.crate) = 78917
+SHA256 (rust/crates/itoa-0.4.4.crate) = 501266b7edd0174f8530248f87f99c88fbe60ca4ef3dd486835b8d8d53136f7f
+SIZE (rust/crates/itoa-0.4.4.crate) = 11147
+SHA256 (rust/crates/lazy_static-0.2.11.crate) = 76f033c7ad61445c5b347c7382dd1237847eb1bce590fe50365dcb33d546be73
+SIZE (rust/crates/lazy_static-0.2.11.crate) = 12361
+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.62.crate) = 34fcd2c08d2f832f376f4173a231990fa5aef4e99fb569867318a227ef4c06ba
+SIZE (rust/crates/libc-0.2.62.crate) = 433193
+SHA256 (rust/crates/log-0.3.9.crate) = e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b
+SIZE (rust/crates/log-0.3.9.crate) = 16686
+SHA256 (rust/crates/log-0.4.8.crate) = 14b6052be84e6b71ab17edffc2eeabf5c2c3ae1fdb464aae35ac50c67a44e1f7
+SIZE (rust/crates/log-0.4.8.crate) = 31297
+SHA256 (rust/crates/memchr-2.2.1.crate) = 88579771288728879b57485cc7d6b07d648c9f0141eb955f8ab7f9d45394468e
+SIZE (rust/crates/memchr-2.2.1.crate) = 20862
+SHA256 (rust/crates/nix-0.14.1.crate) = 6c722bee1037d430d0f8e687bbdbf222f27cc6e4e68d5caf630857bb2b6dbdce
+SIZE (rust/crates/nix-0.14.1.crate) = 185227
+SHA256 (rust/crates/nom-2.1.0.crate) = e5d4598834859fedb9a0a69d5b862a970e77982a92f544d547257a4d49469067
+SIZE (rust/crates/nom-2.1.0.crate) = 93192
+SHA256 (rust/crates/num-integer-0.1.41.crate) = b85e541ef8255f6cf42bbfe4ef361305c6c135d10919ecc26126c4e5ae94bc09
+SIZE (rust/crates/num-integer-0.1.41.crate) = 19399
+SHA256 (rust/crates/num-iter-0.1.39.crate) = 76bd5272412d173d6bf9afdf98db8612bbabc9a7a830b7bfc9c188911716132e
+SIZE (rust/crates/num-iter-0.1.39.crate) = 9616
+SHA256 (rust/crates/num-rational-0.1.42.crate) = ee314c74bd753fc86b4780aa9475da469155f3848473a261d2d18e35245a784e
+SIZE (rust/crates/num-rational-0.1.42.crate) = 17253
+SHA256 (rust/crates/num-traits-0.1.43.crate) = 92e5113e9fd4cc14ded8e499429f396a20f98c772a47cc8622a736e1ec843c31
+SIZE (rust/crates/num-traits-0.1.43.crate) = 7659
+SHA256 (rust/crates/num-traits-0.2.8.crate) = 6ba9a427cfca2be13aa6f6403b0b7e7368fe982bfa16fccc450ce74c46cd9b32
+SIZE (rust/crates/num-traits-0.2.8.crate) = 39965
+SHA256 (rust/crates/num_cpus-1.10.1.crate) = bcef43580c035376c0705c42792c294b66974abbfd2789b511784023f71f3273
+SIZE (rust/crates/num_cpus-1.10.1.crate) = 11151
+SHA256 (rust/crates/numtoa-0.1.0.crate) = b8f8bdf33df195859076e54ab11ee78a1b208382d3a26ec40d142ffc1ecc49ef
+SIZE (rust/crates/numtoa-0.1.0.crate) = 8999
+SHA256 (rust/crates/pbr-1.0.2.crate) = 4403eb718d70c03ee279e51737782902c68cca01e870a33b6a2f9dfb50b9cd83
+SIZE (rust/crates/pbr-1.0.2.crate) = 3756259
+SHA256 (rust/crates/ppv-lite86-0.2.5.crate) = e3cbf9f658cdb5000fcf6f362b8ea2ba154b9f146a61c7a20d647034c6b6561b
+SIZE (rust/crates/ppv-lite86-0.2.5.crate) = 20606
+SHA256 (rust/crates/proc-macro2-0.4.30.crate) = cf3d2011ab5c909338f7887f4fc896d35932e29146c12c8d01da6b22a80ba759
+SIZE (rust/crates/proc-macro2-0.4.30.crate) = 34731
+SHA256 (rust/crates/proc-macro2-1.0.4.crate) = afdc77cc74ec70ed262262942ebb7dac3d479e9e5cfa2da1841c0806f6cdabcc
+SIZE (rust/crates/proc-macro2-1.0.4.crate) = 35217
+SHA256 (rust/crates/quote-0.6.13.crate) = 6ce23b6b870e8f94f81fb0a363d65d86675884b34a09043c81e5562f11c1f8e1
+SIZE (rust/crates/quote-0.6.13.crate) = 17475
+SHA256 (rust/crates/quote-1.0.2.crate) = 053a8c8bcc71fcce321828dc897a98ab9760bef03a4fc36693c231e5b3216cfe
+SIZE (rust/crates/quote-1.0.2.crate) = 23023
+SHA256 (rust/crates/rand-0.7.2.crate) = 3ae1b169243eaf61759b8475a998f0a385e42042370f3a7dbaf35246eacc8412
+SIZE (rust/crates/rand-0.7.2.crate) = 111438
+SHA256 (rust/crates/rand_chacha-0.2.1.crate) = 03a2a90da8c7523f554344f921aa97283eadf6ac484a6d2a7d0212fa7f8d6853
+SIZE (rust/crates/rand_chacha-0.2.1.crate) = 11475
+SHA256 (rust/crates/rand_core-0.5.1.crate) = 90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19
+SIZE (rust/crates/rand_core-0.5.1.crate) = 21116
+SHA256 (rust/crates/rand_hc-0.2.0.crate) = ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c
+SIZE (rust/crates/rand_hc-0.2.0.crate) = 11670
+SHA256 (rust/crates/redox_syscall-0.1.56.crate) = 2439c63f3f6139d1b57529d16bc3b8bb855230c8efcc5d3a896c8bea7c3b1e84
+SIZE (rust/crates/redox_syscall-0.1.56.crate) = 17117
+SHA256 (rust/crates/redox_termios-0.1.1.crate) = 7e891cfe48e9100a70a3b6eb652fef28920c117d366339687bd5576160db0f76
+SIZE (rust/crates/redox_termios-0.1.1.crate) = 3227
+SHA256 (rust/crates/regex-0.2.11.crate) = 9329abc99e39129fcceabd24cf5d85b4671ef7c29c50e972bc5afe32438ec384
+SIZE (rust/crates/regex-0.2.11.crate) = 209507
+SHA256 (rust/crates/regex-syntax-0.5.6.crate) = 7d707a4fa2637f2dca2ef9fd02225ec7661fe01a53623c1e6515b6916511f7a7
+SIZE (rust/crates/regex-syntax-0.5.6.crate) = 233912
+SHA256 (rust/crates/rmp-0.8.8.crate) = 0f594cb7ff8f1c5a7907f6be91f15795c8301e0d5718eb007fb5832723dd716e
+SIZE (rust/crates/rmp-0.8.8.crate) = 23462
+SHA256 (rust/crates/rmp-serde-0.14.0.crate) = 4a31c0798045f039ace94e0166f76478b3ba83116ec7c9d4bc934c5b13b8df21
+SIZE (rust/crates/rmp-serde-0.14.0.crate) = 21215
+SHA256 (rust/crates/rustc-demangle-0.1.16.crate) = 4c691c0e608126e00913e33f0ccf3727d5fc84573623b8d65b2df340b5201783
+SIZE (rust/crates/rustc-demangle-0.1.16.crate) = 19137
+SHA256 (rust/crates/ryu-1.0.0.crate) = c92464b447c0ee8c4fb3824ecc8383b81717b9f1e74ba2e72540aef7b9f82997
+SIZE (rust/crates/ryu-1.0.0.crate) = 40170
+SHA256 (rust/crates/safemem-0.2.0.crate) = e27a8b19b835f7aea908818e871f5cc3a5a186550c30773be987e155e8163d8f
+SIZE (rust/crates/safemem-0.2.0.crate) = 6450
+SHA256 (rust/crates/serde-1.0.101.crate) = 9796c9b7ba2ffe7a9ce53c2287dfc48080f4b2b362fcc245a259b3a7201119dd
+SIZE (rust/crates/serde-1.0.101.crate) = 73115
+SHA256 (rust/crates/serde_derive-1.0.101.crate) = 4b133a43a1ecd55d4086bd5b4dc6c1751c68b1bfbeba7a5040442022c7e7c02e
+SIZE (rust/crates/serde_derive-1.0.101.crate) = 49736
+SHA256 (rust/crates/serde_json-1.0.40.crate) = 051c49229f282f7c6f3813f8286cc1e3323e8051823fce42c7ea80fe13521704
+SIZE (rust/crates/serde_json-1.0.40.crate) = 69695
+SHA256 (rust/crates/strsim-0.8.0.crate) = 8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a
+SIZE (rust/crates/strsim-0.8.0.crate) = 9309
+SHA256 (rust/crates/subparse-0.6.2.crate) = 85df9a5e6faca000b0e892aeaa0d899569b568eb744a4054bd3ea1d4831d0039
+SIZE (rust/crates/subparse-0.6.2.crate) = 31142
+SHA256 (rust/crates/syn-0.15.44.crate) = 9ca4b3b69a77cbe1ffc9e198781b7acb0c7365a883670e8f1c1bc66fba79a5c5
+SIZE (rust/crates/syn-0.15.44.crate) = 184212
+SHA256 (rust/crates/syn-1.0.5.crate) = 66850e97125af79138385e9b88339cbcd037e3f28ceab8c5ad98e64f0f1f80bf
+SIZE (rust/crates/syn-1.0.5.crate) = 190286
+SHA256 (rust/crates/synstructure-0.10.2.crate) = 02353edf96d6e4dc81aea2d8490a7e9db177bf8acb0e951c24940bf866cb313f
+SIZE (rust/crates/synstructure-0.10.2.crate) = 17988
+SHA256 (rust/crates/termion-1.5.3.crate) = 6a8fb22f7cde82c8220e5aeacb3258ed7ce996142c77cba193f203515e26c330
+SIZE (rust/crates/termion-1.5.3.crate) = 22080
+SHA256 (rust/crates/textwrap-0.11.0.crate) = d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060
+SIZE (rust/crates/textwrap-0.11.0.crate) = 17322
+SHA256 (rust/crates/thread_local-0.3.6.crate) = c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b
+SIZE (rust/crates/thread_local-0.3.6.crate) = 12388
+SHA256 (rust/crates/threadpool-1.7.1.crate) = e2f0c90a5f3459330ac8bc0d2f879c693bb7a2f59689c1083fc4ef83834da865
+SIZE (rust/crates/threadpool-1.7.1.crate) = 15756
+SHA256 (rust/crates/time-0.1.42.crate) = db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f
+SIZE (rust/crates/time-0.1.42.crate) = 30005
+SHA256 (rust/crates/ucd-util-0.1.5.crate) = fa9b3b49edd3468c0e6565d85783f51af95212b6fa3986a5500954f00b460874
+SIZE (rust/crates/ucd-util-0.1.5.crate) = 26284
+SHA256 (rust/crates/unicode-width-0.1.6.crate) = 7007dbd421b92cc6e28410fe7362e2e0a2503394908f417b68ec8d1c364c4e20
+SIZE (rust/crates/unicode-width-0.1.6.crate) = 16394
+SHA256 (rust/crates/unicode-xid-0.1.0.crate) = fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc
+SIZE (rust/crates/unicode-xid-0.1.0.crate) = 16000
+SHA256 (rust/crates/unicode-xid-0.2.0.crate) = 826e7639553986605ec5979c7dd957c7895e93eabed50ab2ffa7f6128a75097c
+SIZE (rust/crates/unicode-xid-0.2.0.crate) = 14994
+SHA256 (rust/crates/utf8-ranges-1.0.4.crate) = b4ae116fef2b7fea257ed6440d3cfcff7f190865f170cdad00bb6465bf18ecba
+SIZE (rust/crates/utf8-ranges-1.0.4.crate) = 8575
+SHA256 (rust/crates/vec_map-0.8.1.crate) = 05c78687fb1a80548ae3250346c3db86a80a7cdd77bda190189f2d0a0987c81a
+SIZE (rust/crates/vec_map-0.8.1.crate) = 14959
+SHA256 (rust/crates/vobsub-0.2.3.crate) = aa122d660e26d9b6aa8f3436304b667ec81cbc0d48a5d19640d7e55ca8eac812
+SIZE (rust/crates/vobsub-0.2.3.crate) = 17920
+SHA256 (rust/crates/void-1.0.2.crate) = 6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d
+SIZE (rust/crates/void-1.0.2.crate) = 2356
+SHA256 (rust/crates/wasi-0.7.0.crate) = b89c3ce4ce14bdc6fb6beaf9ec7928ca331de5df7e5ea278375642a2f478570d
+SIZE (rust/crates/wasi-0.7.0.crate) = 33941
+SHA256 (rust/crates/webrtc-vad-0.4.0.crate) = 39a1e40fd6ca90be95459152a2537f2ba4286ee1b13073f7ebcaa74fc94e3008
+SIZE (rust/crates/webrtc-vad-0.4.0.crate) = 944774
+SHA256 (rust/crates/winapi-0.3.8.crate) = 8093091eeb260906a183e6ae1abdba2ef5ef2257a21801128899c3fc699229c6
+SIZE (rust/crates/winapi-0.3.8.crate) = 1128308
+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
+SHA256 (kaegi-alass-v2.0.0_GH0.tar.gz) = ce88f92c7a427b623edcabb1b64e80be70cca2777f3da4b96702820a6cdf1e26
+SIZE (kaegi-alass-v2.0.0_GH0.tar.gz) = 3999274
diff --git a/multimedia/alass/pkg-descr b/multimedia/alass/pkg-descr
new file mode 100644
index 000000000000..86f3885a6a61
--- /dev/null
+++ b/multimedia/alass/pkg-descr
@@ -0,0 +1,13 @@
+alass is a command line tool to synchronize subtitles to movies.
+
+It can automatically correct
+- constant offsets
+- splits due to advertisement breaks, directors cut, ...
+- different framerates
+
+The alignment process is not only fast and
+accurate, but also language-agnostic. This means
+you can align subtitles to movies in different
+languages.
+
+'alass' stands for  "Automatic Language-Agnostic Subtitle Synchronization".