git: 23ee7b5ac782 - main - multimedia/video-trimmer: add new port

From: Jan Beich <jbeich_at_FreeBSD.org>
Date: Tue, 01 Nov 2022 18:24:40 UTC
The branch main has been updated by jbeich:

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

commit 23ee7b5ac7829d9ff8326cb0f0120847406f4bf9
Author:     Jan Beich <jbeich@FreeBSD.org>
AuthorDate: 2022-03-23 09:10:07 +0000
Commit:     Jan Beich <jbeich@FreeBSD.org>
CommitDate: 2022-11-01 18:24:37 +0000

    multimedia/video-trimmer: add new port
    
    Video Trimmer cuts out a fragment of a video given the start and end
    timestamps. The video is never re-encoded, so the process is very fast
    and does not reduce the video quality.
    
    https://gitlab.gnome.org/YaLTeR/video-trimmer
---
 multimedia/Makefile                |   1 +
 multimedia/video-trimmer/Makefile  | 180 +++++++++++++++++++++++
 multimedia/video-trimmer/distinfo  | 285 +++++++++++++++++++++++++++++++++++++
 multimedia/video-trimmer/pkg-descr |   3 +
 multimedia/video-trimmer/pkg-plist |  24 ++++
 5 files changed, 493 insertions(+)

diff --git a/multimedia/Makefile b/multimedia/Makefile
index 443f2e0065a4..133aeb209116 100644
--- a/multimedia/Makefile
+++ b/multimedia/Makefile
@@ -418,6 +418,7 @@
     SUBDIR += vdr-plugin-xvdr
     SUBDIR += vdr-plugins
     SUBDIR += vid.stab
+    SUBDIR += video-trimmer
     SUBDIR += vlc
     SUBDIR += vmaf
     SUBDIR += vtkmpeg2encode
diff --git a/multimedia/video-trimmer/Makefile b/multimedia/video-trimmer/Makefile
new file mode 100644
index 000000000000..f62e998dab09
--- /dev/null
+++ b/multimedia/video-trimmer/Makefile
@@ -0,0 +1,180 @@
+PORTNAME=	video-trimmer
+DISTVERSIONPREFIX=	v
+DISTVERSION=	0.7.1
+CATEGORIES=	multimedia
+
+PATCH_SITES=	${GL_SITE}/${GL_ACCOUNT}/${GL_PROJECT}/-/commit/
+PATCHFILES+=	2faf4bb13d44.patch:-p1 # https://gitlab.gnome.org/YaLTeR/video-trimmer/-/merge_requests/12
+
+MAINTAINER=	jbeich@FreeBSD.org
+COMMENT=	Trim videos quickly
+WWW=		https://gitlab.gnome.org/YaLTeR/video-trimmer
+
+LICENSE=	GPLv3+
+LICENSE_FILE=	${WRKSRC}/COPYING
+
+BUILD_DEPENDS=	blueprint-compiler:devel/blueprint-compiler
+RUN_DEPENDS=	ffmpeg:multimedia/ffmpeg
+
+USES=		cargo desktop-file-utils gettext gnome gstreamer meson pkgconfig
+USE_GITLAB=	yes
+USE_GNOME=	gtk40 libadwaita
+USE_GSTREAMER=	good libav
+GL_SITE=	https://gitlab.gnome.org
+GL_ACCOUNT=	YaLTeR
+GL_COMMIT=	fe64a108f1bf7b57d4bc7d7dc456034c30b0fdea
+MAKE_ENV=	${CARGO_ENV}
+GLIB_SCHEMAS=	org.gnome.gitlab.YaLTeR.VideoTrimmer.gschema.xml
+
+CARGO_CRATES=	aho-corasick-0.7.18 \
+		anyhow-1.0.56 \
+		ashpd-0.3.0 \
+		async-broadcast-0.3.4 \
+		async-channel-1.6.1 \
+		async-executor-1.4.1 \
+		async-io-1.6.0 \
+		async-lock-2.5.0 \
+		async-recursion-0.3.2 \
+		async-task-4.2.0 \
+		async-trait-0.1.52 \
+		autocfg-1.1.0 \
+		bitflags-1.3.2 \
+		block-0.1.6 \
+		byteorder-1.4.3 \
+		cache-padded-1.2.0 \
+		cairo-rs-0.15.10 \
+		cairo-sys-rs-0.15.1 \
+		cc-1.0.73 \
+		cfg-expr-0.10.2 \
+		cfg-if-1.0.0 \
+		concurrent-queue-1.2.2 \
+		derivative-2.2.0 \
+		easy-parallel-3.2.0 \
+		enumflags2-0.7.3 \
+		enumflags2_derive-0.7.3 \
+		event-listener-2.5.2 \
+		fastrand-1.7.0 \
+		field-offset-0.3.4 \
+		futures-0.3.21 \
+		futures-channel-0.3.21 \
+		futures-core-0.3.21 \
+		futures-executor-0.3.21 \
+		futures-io-0.3.21 \
+		futures-lite-1.12.0 \
+		futures-macro-0.3.21 \
+		futures-sink-0.3.21 \
+		futures-task-0.3.21 \
+		futures-util-0.3.21 \
+		gdk-pixbuf-0.15.10 \
+		gdk-pixbuf-sys-0.15.10 \
+		gdk4-0.4.7 \
+		gdk4-sys-0.4.2 \
+		gdk4-wayland-0.4.7 \
+		gdk4-wayland-sys-0.4.2 \
+		gdk4-x11-0.4.2 \
+		gdk4-x11-sys-0.4.2 \
+		getrandom-0.2.5 \
+		gettext-rs-0.7.0 \
+		gettext-sys-0.21.3 \
+		gio-0.15.10 \
+		gio-sys-0.15.10 \
+		glib-0.15.10 \
+		glib-macros-0.15.10 \
+		glib-sys-0.15.10 \
+		gobject-sys-0.15.10 \
+		graphene-rs-0.15.1 \
+		graphene-sys-0.15.10 \
+		gsk4-0.4.7 \
+		gsk4-sys-0.4.2 \
+		gtk4-0.4.7 \
+		gtk4-macros-0.4.7 \
+		gtk4-sys-0.4.5 \
+		heck-0.4.0 \
+		hex-0.4.3 \
+		instant-0.1.12 \
+		json-0.12.4 \
+		lazy_static-1.4.0 \
+		libadwaita-0.1.1 \
+		libadwaita-sys-0.1.0 \
+		libc-0.2.121 \
+		locale_config-0.3.0 \
+		log-0.4.16 \
+		malloc_buf-0.0.6 \
+		memchr-2.4.1 \
+		memoffset-0.6.5 \
+		mime-0.3.16 \
+		mime_guess-2.0.4 \
+		minimal-lexical-0.2.1 \
+		nix-0.23.1 \
+		nom-7.1.1 \
+		objc-0.2.7 \
+		objc-foundation-0.1.1 \
+		objc_id-0.1.1 \
+		once_cell-1.10.0 \
+		ordered-stream-0.0.1 \
+		pango-0.15.10 \
+		pango-sys-0.15.10 \
+		parking-2.0.0 \
+		pest-2.1.3 \
+		pin-project-lite-0.2.8 \
+		pin-utils-0.1.0 \
+		pkg-config-0.3.24 \
+		polling-2.2.0 \
+		ppv-lite86-0.2.16 \
+		proc-macro-crate-1.1.3 \
+		proc-macro-error-1.0.4 \
+		proc-macro-error-attr-1.0.4 \
+		proc-macro2-1.0.36 \
+		quick-xml-0.22.0 \
+		quote-1.0.16 \
+		rand-0.8.5 \
+		rand_chacha-0.3.1 \
+		rand_core-0.6.3 \
+		regex-1.5.5 \
+		regex-syntax-0.6.25 \
+		rustc_version-0.3.3 \
+		semver-0.11.0 \
+		semver-parser-0.10.2 \
+		serde-1.0.136 \
+		serde_derive-1.0.136 \
+		serde_repr-0.1.7 \
+		sha1-0.6.1 \
+		sha1_smol-1.0.0 \
+		slab-0.4.5 \
+		smallvec-1.8.0 \
+		socket2-0.4.4 \
+		static_assertions-1.1.0 \
+		syn-1.0.89 \
+		system-deps-6.0.2 \
+		temp-dir-0.1.11 \
+		thiserror-1.0.30 \
+		thiserror-impl-1.0.30 \
+		toml-0.5.8 \
+		ucd-trie-0.1.3 \
+		unicase-2.6.0 \
+		unicode-xid-0.2.2 \
+		version-compare-0.1.0 \
+		version_check-0.9.4 \
+		waker-fn-1.1.0 \
+		wasi-0.10.2+wasi-snapshot-preview1 \
+		wepoll-ffi-0.1.2 \
+		winapi-0.3.9 \
+		winapi-i686-pc-windows-gnu-0.4.0 \
+		winapi-x86_64-pc-windows-gnu-0.4.0 \
+		zbus-2.1.1 \
+		zbus_macros-2.1.1 \
+		zbus_names-2.1.0 \
+		zvariant-3.1.2 \
+		zvariant_derive-3.1.2
+CARGO_BUILD=	no
+CARGO_INSTALL=	no
+CARGO_TEST=	no
+
+post-patch:
+# Make each cargo subcommand very verbose
+# Add explicit <triple> subdir for --target from USES=cargo
+	@${REINPLACE_CMD} -e '/cargo/s/ --/&verbose&verbose&/' \
+		-Ee '/cp/s,/(release|debug)/,/${CARGO_BUILD_TARGET}&,' \
+		${WRKSRC}/build-aux/cargo.sh
+
+.include <bsd.port.mk>
diff --git a/multimedia/video-trimmer/distinfo b/multimedia/video-trimmer/distinfo
new file mode 100644
index 000000000000..5e11e2f0613b
--- /dev/null
+++ b/multimedia/video-trimmer/distinfo
@@ -0,0 +1,285 @@
+TIMESTAMP = 1648026607
+SHA256 (rust/crates/aho-corasick-0.7.18.crate) = 1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f
+SIZE (rust/crates/aho-corasick-0.7.18.crate) = 112923
+SHA256 (rust/crates/anyhow-1.0.56.crate) = 4361135be9122e0870de935d7c439aef945b9f9ddd4199a553b5270b49c82a27
+SIZE (rust/crates/anyhow-1.0.56.crate) = 44780
+SHA256 (rust/crates/ashpd-0.3.0.crate) = 7db023823e72175ec1a514231d5ff28ad7f7e15702a3ad7507dbc7ac1feea7b6
+SIZE (rust/crates/ashpd-0.3.0.crate) = 57451
+SHA256 (rust/crates/async-broadcast-0.3.4.crate) = 90622698a1218e0b2fb846c97b5f19a0831f6baddee73d9454156365ccfa473b
+SIZE (rust/crates/async-broadcast-0.3.4.crate) = 18539
+SHA256 (rust/crates/async-channel-1.6.1.crate) = 2114d64672151c0c5eaa5e131ec84a74f06e1e559830dabba01ca30605d66319
+SIZE (rust/crates/async-channel-1.6.1.crate) = 12574
+SHA256 (rust/crates/async-executor-1.4.1.crate) = 871f9bb5e0a22eeb7e8cf16641feb87c9dc67032ccf8ff49e772eb9941d3a965
+SIZE (rust/crates/async-executor-1.4.1.crate) = 15490
+SHA256 (rust/crates/async-io-1.6.0.crate) = a811e6a479f2439f0c04038796b5cfb3d2ad56c230e0f2d3f7b04d68cfee607b
+SIZE (rust/crates/async-io-1.6.0.crate) = 32282
+SHA256 (rust/crates/async-lock-2.5.0.crate) = e97a171d191782fba31bb902b14ad94e24a68145032b7eedf871ab0bc0d077b6
+SIZE (rust/crates/async-lock-2.5.0.crate) = 15656
+SHA256 (rust/crates/async-recursion-0.3.2.crate) = d7d78656ba01f1b93024b7c3a0467f1608e4be67d725749fdcd7d2c7678fd7a2
+SIZE (rust/crates/async-recursion-0.3.2.crate) = 10774
+SHA256 (rust/crates/async-task-4.2.0.crate) = 30696a84d817107fc028e049980e09d5e140e8da8f1caeb17e8e950658a3cea9
+SIZE (rust/crates/async-task-4.2.0.crate) = 28496
+SHA256 (rust/crates/async-trait-0.1.52.crate) = 061a7acccaa286c011ddc30970520b98fa40e00c9d644633fb26b5fc63a265e3
+SIZE (rust/crates/async-trait-0.1.52.crate) = 25913
+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/block-0.1.6.crate) = 0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a
+SIZE (rust/crates/block-0.1.6.crate) = 4077
+SHA256 (rust/crates/byteorder-1.4.3.crate) = 14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610
+SIZE (rust/crates/byteorder-1.4.3.crate) = 22512
+SHA256 (rust/crates/cache-padded-1.2.0.crate) = c1db59621ec70f09c5e9b597b220c7a2b43611f4710dc03ceb8748637775692c
+SIZE (rust/crates/cache-padded-1.2.0.crate) = 9125
+SHA256 (rust/crates/cairo-rs-0.15.10.crate) = 129e928d3eda625f53ce257589efbe5143416875fd01bddd08c8c6feb8b9962b
+SIZE (rust/crates/cairo-rs-0.15.10.crate) = 48513
+SHA256 (rust/crates/cairo-sys-rs-0.15.1.crate) = 3c55d429bef56ac9172d25fecb85dc8068307d17acd74b377866b7a1ef25d3c8
+SIZE (rust/crates/cairo-sys-rs-0.15.1.crate) = 11280
+SHA256 (rust/crates/cc-1.0.73.crate) = 2fff2a6927b3bb87f9595d67196a70493f627687a71d87a0d692242c33f58c11
+SIZE (rust/crates/cc-1.0.73.crate) = 57880
+SHA256 (rust/crates/cfg-expr-0.10.2.crate) = 5e068cb2806bbc15b439846dc16c5f89f8599f2c3e4d73d4449d38f9b2f0b6c5
+SIZE (rust/crates/cfg-expr-0.10.2.crate) = 37734
+SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd
+SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934
+SHA256 (rust/crates/concurrent-queue-1.2.2.crate) = 30ed07550be01594c6026cff2a1d7fe9c8f683caa798e12b68694ac9e88286a3
+SIZE (rust/crates/concurrent-queue-1.2.2.crate) = 15859
+SHA256 (rust/crates/derivative-2.2.0.crate) = fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b
+SIZE (rust/crates/derivative-2.2.0.crate) = 48076
+SHA256 (rust/crates/easy-parallel-3.2.0.crate) = 6907e25393cdcc1f4f3f513d9aac1e840eb1cc341a0fccb01171f7d14d10b946
+SIZE (rust/crates/easy-parallel-3.2.0.crate) = 9276
+SHA256 (rust/crates/enumflags2-0.7.3.crate) = a25c90b056b3f84111cf183cbeddef0d3a0bbe9a674f057e1a1533c315f24def
+SIZE (rust/crates/enumflags2-0.7.3.crate) = 14297
+SHA256 (rust/crates/enumflags2_derive-0.7.3.crate) = 144ec79496cbab6f84fa125dc67be9264aef22eb8a28da8454d9c33f15108da4
+SIZE (rust/crates/enumflags2_derive-0.7.3.crate) = 8249
+SHA256 (rust/crates/event-listener-2.5.2.crate) = 77f3309417938f28bf8228fcff79a4a37103981e3e186d2ccd19c74b38f4eb71
+SIZE (rust/crates/event-listener-2.5.2.crate) = 15225
+SHA256 (rust/crates/fastrand-1.7.0.crate) = c3fcf0cee53519c866c09b5de1f6c56ff9d647101f81c1964fa632e148896cdf
+SIZE (rust/crates/fastrand-1.7.0.crate) = 11265
+SHA256 (rust/crates/field-offset-0.3.4.crate) = 1e1c54951450cbd39f3dbcf1005ac413b49487dabf18a720ad2383eccfeffb92
+SIZE (rust/crates/field-offset-0.3.4.crate) = 6046
+SHA256 (rust/crates/futures-0.3.21.crate) = f73fe65f54d1e12b726f517d3e2135ca3125a437b6d998caf1962961f7172d9e
+SIZE (rust/crates/futures-0.3.21.crate) = 49935
+SHA256 (rust/crates/futures-channel-0.3.21.crate) = c3083ce4b914124575708913bca19bfe887522d6e2e6d0952943f5eac4a74010
+SIZE (rust/crates/futures-channel-0.3.21.crate) = 31961
+SHA256 (rust/crates/futures-core-0.3.21.crate) = 0c09fd04b7e4073ac7156a9539b57a484a8ea920f79c7c675d05d289ab6110d3
+SIZE (rust/crates/futures-core-0.3.21.crate) = 14601
+SHA256 (rust/crates/futures-executor-0.3.21.crate) = 9420b90cfa29e327d0429f19be13e7ddb68fa1cccb09d65e5706b8c7a749b8a6
+SIZE (rust/crates/futures-executor-0.3.21.crate) = 17306
+SHA256 (rust/crates/futures-io-0.3.21.crate) = fc4045962a5a5e935ee2fdedaa4e08284547402885ab326734432bed5d12966b
+SIZE (rust/crates/futures-io-0.3.21.crate) = 8902
+SHA256 (rust/crates/futures-lite-1.12.0.crate) = 7694489acd39452c77daa48516b894c153f192c3578d5a839b62c58099fcbf48
+SIZE (rust/crates/futures-lite-1.12.0.crate) = 36032
+SHA256 (rust/crates/futures-macro-0.3.21.crate) = 33c1e13800337f4d4d7a316bf45a567dbcb6ffe087f16424852d97e97a91f512
+SIZE (rust/crates/futures-macro-0.3.21.crate) = 11250
+SHA256 (rust/crates/futures-sink-0.3.21.crate) = 21163e139fa306126e6eedaf49ecdb4588f939600f0b1e770f4205ee4b7fa868
+SIZE (rust/crates/futures-sink-0.3.21.crate) = 7843
+SHA256 (rust/crates/futures-task-0.3.21.crate) = 57c66a976bf5909d801bbef33416c41372779507e7a6b3a5e25e4749c58f776a
+SIZE (rust/crates/futures-task-0.3.21.crate) = 11815
+SHA256 (rust/crates/futures-util-0.3.21.crate) = d8b7abd5d659d9b90c8cba917f6ec750a74e2dc23902ef9cd4cc8c8b22e6036a
+SIZE (rust/crates/futures-util-0.3.21.crate) = 153768
+SHA256 (rust/crates/gdk-pixbuf-0.15.10.crate) = 678516f1baef591d270ca10587c01a12542a731a7879cc62391a18191a470831
+SIZE (rust/crates/gdk-pixbuf-0.15.10.crate) = 15299
+SHA256 (rust/crates/gdk-pixbuf-sys-0.15.10.crate) = 140b2f5378256527150350a8346dbdb08fadc13453a7a2d73aecd5fab3c402a7
+SIZE (rust/crates/gdk-pixbuf-sys-0.15.10.crate) = 9891
+SHA256 (rust/crates/gdk4-0.4.7.crate) = d4a2fc0bd03d59383fc10b71a8cb731a1fac2998732a36a0c03e9b1de1513218
+SIZE (rust/crates/gdk4-0.4.7.crate) = 85690
+SHA256 (rust/crates/gdk4-sys-0.4.2.crate) = 48a39e34abe35ee2cf54a1e29dd983accecd113ad30bdead5050418fa92f2a1b
+SIZE (rust/crates/gdk4-sys-0.4.2.crate) = 63630
+SHA256 (rust/crates/gdk4-wayland-0.4.7.crate) = cb3604742a9967cf74756cef18e56fbd6481e7bb90f3b931211abb18c0a6a4aa
+SIZE (rust/crates/gdk4-wayland-0.4.7.crate) = 6501
+SHA256 (rust/crates/gdk4-wayland-sys-0.4.2.crate) = 22cbf7fa3fc7714c72902d82229677f9291f7cceb33855c5cef868f177356c30
+SIZE (rust/crates/gdk4-wayland-sys-0.4.2.crate) = 3403
+SHA256 (rust/crates/gdk4-x11-0.4.2.crate) = f2a54a4f3405461afa18ddc2b5fbeaecc2558fcd8b132ed0c9c7c4ffa2f9ae22
+SIZE (rust/crates/gdk4-x11-0.4.2.crate) = 10389
+SHA256 (rust/crates/gdk4-x11-sys-0.4.2.crate) = 1eb40aebb4f15b270df2ac2c463bf7f6d82211d9c5df1d13b84541a63a3139d7
+SIZE (rust/crates/gdk4-x11-sys-0.4.2.crate) = 6487
+SHA256 (rust/crates/getrandom-0.2.5.crate) = d39cd93900197114fa1fcb7ae84ca742095eed9442088988ae74fa744e930e77
+SIZE (rust/crates/getrandom-0.2.5.crate) = 27719
+SHA256 (rust/crates/gettext-rs-0.7.0.crate) = e49ea8a8fad198aaa1f9655a2524b64b70eb06b2f3ff37da407566c93054f364
+SIZE (rust/crates/gettext-rs-0.7.0.crate) = 14816
+SHA256 (rust/crates/gettext-sys-0.21.3.crate) = c63ce2e00f56a206778276704bbe38564c8695249fdc8f354b4ef71c57c3839d
+SIZE (rust/crates/gettext-sys-0.21.3.crate) = 6501658
+SHA256 (rust/crates/gio-0.15.10.crate) = 76cd21a7a674ea811749661012512b0ba5237ba404ccbcab2850db5537549b64
+SIZE (rust/crates/gio-0.15.10.crate) = 190818
+SHA256 (rust/crates/gio-sys-0.15.10.crate) = 32157a475271e2c4a023382e9cab31c4584ee30a97da41d3c4e9fdd605abcf8d
+SIZE (rust/crates/gio-sys-0.15.10.crate) = 79552
+SHA256 (rust/crates/glib-0.15.10.crate) = a826fad715b57834920839d7a594c3b5e416358c7d790bdaba847a40d7c1d96d
+SIZE (rust/crates/glib-0.15.10.crate) = 206119
+SHA256 (rust/crates/glib-macros-0.15.10.crate) = dac4d47c544af67747652ab1865ace0ffa1155709723ac4f32e97587dd4735b2
+SIZE (rust/crates/glib-macros-0.15.10.crate) = 27629
+SHA256 (rust/crates/glib-sys-0.15.10.crate) = ef4b192f8e65e9cf76cbf4ea71fa8e3be4a0e18ffe3d68b8da6836974cc5bad4
+SIZE (rust/crates/glib-sys-0.15.10.crate) = 59966
+SHA256 (rust/crates/gobject-sys-0.15.10.crate) = 0d57ce44246becd17153bd035ab4d32cfee096a657fc01f2231c9278378d1e0a
+SIZE (rust/crates/gobject-sys-0.15.10.crate) = 18534
+SHA256 (rust/crates/graphene-rs-0.15.1.crate) = 7c54f9fbbeefdb62c99f892dfca35f83991e2cb5b46a8dc2a715e58612f85570
+SIZE (rust/crates/graphene-rs-0.15.1.crate) = 17651
+SHA256 (rust/crates/graphene-sys-0.15.10.crate) = fa691fc7337ba1df599afb55c3bcb85c04f1b3f17362570e9bb0ff0d1bc3028a
+SIZE (rust/crates/graphene-sys-0.15.10.crate) = 11485
+SHA256 (rust/crates/gsk4-0.4.7.crate) = 14d5a47a78c682bb67496b562495ed84972c0512ba0654888c4dc92b80a85bd3
+SIZE (rust/crates/gsk4-0.4.7.crate) = 24299
+SHA256 (rust/crates/gsk4-sys-0.4.2.crate) = e31d21d7ce02ba261bb24c50c4ab238a10b41a2c97c32afffae29471b7cca69b
+SIZE (rust/crates/gsk4-sys-0.4.2.crate) = 11817
+SHA256 (rust/crates/gtk4-0.4.7.crate) = eb5d40303dabe4608fc260de2bd7563da6f85bc90af956323f0cd8ae0abcfe03
+SIZE (rust/crates/gtk4-0.4.7.crate) = 528741
+SHA256 (rust/crates/gtk4-macros-0.4.7.crate) = 7f3c4aa605fb3d78205c7aef0eeaa6db61d8cc4dd05a465dc6ffdfdaee84f825
+SIZE (rust/crates/gtk4-macros-0.4.7.crate) = 14953
+SHA256 (rust/crates/gtk4-sys-0.4.5.crate) = c47c075e8f795c38f6e9a47b51a73eab77b325f83c0154979ed4d4245c36490d
+SIZE (rust/crates/gtk4-sys-0.4.5.crate) = 99876
+SHA256 (rust/crates/heck-0.4.0.crate) = 2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9
+SIZE (rust/crates/heck-0.4.0.crate) = 11161
+SHA256 (rust/crates/hex-0.4.3.crate) = 7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70
+SIZE (rust/crates/hex-0.4.3.crate) = 13299
+SHA256 (rust/crates/instant-0.1.12.crate) = 7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c
+SIZE (rust/crates/instant-0.1.12.crate) = 6128
+SHA256 (rust/crates/json-0.12.4.crate) = 078e285eafdfb6c4b434e0d31e8cfcb5115b651496faca5749b88fafd4f23bfd
+SIZE (rust/crates/json-0.12.4.crate) = 105942
+SHA256 (rust/crates/lazy_static-1.4.0.crate) = e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646
+SIZE (rust/crates/lazy_static-1.4.0.crate) = 10443
+SHA256 (rust/crates/libadwaita-0.1.1.crate) = f2ae453d28e3b91f03749f02b1531e8cfe315a1d0762b77a61797d2ab80bb87d
+SIZE (rust/crates/libadwaita-0.1.1.crate) = 80893
+SHA256 (rust/crates/libadwaita-sys-0.1.0.crate) = f18b6ac4cadd252a89f5cba0a5a4e99836131795d6fad37b859ac79e8cb7d2c8
+SIZE (rust/crates/libadwaita-sys-0.1.0.crate) = 16443
+SHA256 (rust/crates/libc-0.2.121.crate) = efaa7b300f3b5fe8eb6bf21ce3895e1751d9665086af2d64b42f19701015ff4f
+SIZE (rust/crates/libc-0.2.121.crate) = 574702
+SHA256 (rust/crates/locale_config-0.3.0.crate) = 08d2c35b16f4483f6c26f0e4e9550717a2f6575bcd6f12a53ff0c490a94a6934
+SIZE (rust/crates/locale_config-0.3.0.crate) = 20808
+SHA256 (rust/crates/log-0.4.16.crate) = 6389c490849ff5bc16be905ae24bc913a9c8892e19b2341dbc175e14c341c2b8
+SIZE (rust/crates/log-0.4.16.crate) = 37758
+SHA256 (rust/crates/malloc_buf-0.0.6.crate) = 62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb
+SIZE (rust/crates/malloc_buf-0.0.6.crate) = 1239
+SHA256 (rust/crates/memchr-2.4.1.crate) = 308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a
+SIZE (rust/crates/memchr-2.4.1.crate) = 64977
+SHA256 (rust/crates/memoffset-0.6.5.crate) = 5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce
+SIZE (rust/crates/memoffset-0.6.5.crate) = 7686
+SHA256 (rust/crates/mime-0.3.16.crate) = 2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d
+SIZE (rust/crates/mime-0.3.16.crate) = 15206
+SHA256 (rust/crates/mime_guess-2.0.4.crate) = 4192263c238a5f0d0c6bfd21f336a313a4ce1c450542449ca191bb657b4642ef
+SIZE (rust/crates/mime_guess-2.0.4.crate) = 26399
+SHA256 (rust/crates/minimal-lexical-0.2.1.crate) = 68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a
+SIZE (rust/crates/minimal-lexical-0.2.1.crate) = 94841
+SHA256 (rust/crates/nix-0.23.1.crate) = 9f866317acbd3a240710c63f065ffb1e4fd466259045ccb504130b7f668f35c6
+SIZE (rust/crates/nix-0.23.1.crate) = 240531
+SHA256 (rust/crates/nom-7.1.1.crate) = a8903e5a29a317527874d0402f867152a3d21c908bb0b933e416c65e301d4c36
+SIZE (rust/crates/nom-7.1.1.crate) = 115818
+SHA256 (rust/crates/objc-0.2.7.crate) = 915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1
+SIZE (rust/crates/objc-0.2.7.crate) = 22036
+SHA256 (rust/crates/objc-foundation-0.1.1.crate) = 1add1b659e36c9607c7aab864a76c7a4c2760cd0cd2e120f3fb8b952c7e22bf9
+SIZE (rust/crates/objc-foundation-0.1.1.crate) = 9063
+SHA256 (rust/crates/objc_id-0.1.1.crate) = c92d4ddb4bd7b50d730c215ff871754d0da6b2178849f8a2a2ab69712d0c073b
+SIZE (rust/crates/objc_id-0.1.1.crate) = 3258
+SHA256 (rust/crates/once_cell-1.10.0.crate) = 87f3e037eac156d1775da914196f0f37741a274155e34a0b7e427c35d2a2ecb9
+SIZE (rust/crates/once_cell-1.10.0.crate) = 30414
+SHA256 (rust/crates/ordered-stream-0.0.1.crate) = 44630c059eacfd6e08bdaa51b1db2ce33119caa4ddc1235e923109aa5f25ccb1
+SIZE (rust/crates/ordered-stream-0.0.1.crate) = 9081
+SHA256 (rust/crates/pango-0.15.10.crate) = 22e4045548659aee5313bde6c582b0d83a627b7904dd20dc2d9ef0895d414e4f
+SIZE (rust/crates/pango-0.15.10.crate) = 43927
+SHA256 (rust/crates/pango-sys-0.15.10.crate) = d2a00081cde4661982ed91d80ef437c20eacaf6aa1a5962c0279ae194662c3aa
+SIZE (rust/crates/pango-sys-0.15.10.crate) = 24729
+SHA256 (rust/crates/parking-2.0.0.crate) = 427c3892f9e783d91cc128285287e70a59e206ca452770ece88a76f7a3eddd72
+SIZE (rust/crates/parking-2.0.0.crate) = 9714
+SHA256 (rust/crates/pest-2.1.3.crate) = 10f4872ae94d7b90ae48754df22fd42ad52ce740b8f370b03da4835417403e53
+SIZE (rust/crates/pest-2.1.3.crate) = 77986
+SHA256 (rust/crates/pin-project-lite-0.2.8.crate) = e280fbe77cc62c91527259e9442153f4688736748d24660126286329742b4c6c
+SIZE (rust/crates/pin-project-lite-0.2.8.crate) = 27847
+SHA256 (rust/crates/pin-utils-0.1.0.crate) = 8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184
+SIZE (rust/crates/pin-utils-0.1.0.crate) = 7580
+SHA256 (rust/crates/pkg-config-0.3.24.crate) = 58893f751c9b0412871a09abd62ecd2a00298c6c83befa223ef98c52aef40cbe
+SIZE (rust/crates/pkg-config-0.3.24.crate) = 16489
+SHA256 (rust/crates/polling-2.2.0.crate) = 685404d509889fade3e86fe3a5803bca2ec09b0c0778d5ada6ec8bf7a8de5259
+SIZE (rust/crates/polling-2.2.0.crate) = 21616
+SHA256 (rust/crates/ppv-lite86-0.2.16.crate) = eb9f9e6e233e5c4a35559a617bf40a4ec447db2e84c20b55a6f83167b7e57872
+SIZE (rust/crates/ppv-lite86-0.2.16.crate) = 22245
+SHA256 (rust/crates/proc-macro-crate-1.1.3.crate) = e17d47ce914bf4de440332250b0edd23ce48c005f59fab39d3335866b114f11a
+SIZE (rust/crates/proc-macro-crate-1.1.3.crate) = 8758
+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.36.crate) = c7342d5883fbccae1cc37a2353b09c87c9b0f3afd73f5fb9bba687a1f733b029
+SIZE (rust/crates/proc-macro2-1.0.36.crate) = 41411
+SHA256 (rust/crates/quick-xml-0.22.0.crate) = 8533f14c8382aaad0d592c812ac3b826162128b65662331e1127b45c3d18536b
+SIZE (rust/crates/quick-xml-0.22.0.crate) = 132066
+SHA256 (rust/crates/quote-1.0.16.crate) = b4af2ec4714533fcdf07e886f17025ace8b997b9ce51204ee69b6da831c3da57
+SIZE (rust/crates/quote-1.0.16.crate) = 27566
+SHA256 (rust/crates/rand-0.8.5.crate) = 34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404
+SIZE (rust/crates/rand-0.8.5.crate) = 87113
+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/regex-1.5.5.crate) = 1a11647b6b25ff05a515cb92c365cec08801e83423a235b51e231e1808747286
+SIZE (rust/crates/regex-1.5.5.crate) = 238119
+SHA256 (rust/crates/regex-syntax-0.6.25.crate) = f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b
+SIZE (rust/crates/regex-syntax-0.6.25.crate) = 293293
+SHA256 (rust/crates/rustc_version-0.3.3.crate) = f0dfe2087c51c460008730de8b57e6a320782fbfb312e1f4d520e6c6fae155ee
+SIZE (rust/crates/rustc_version-0.3.3.crate) = 12119
+SHA256 (rust/crates/semver-0.11.0.crate) = f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6
+SIZE (rust/crates/semver-0.11.0.crate) = 20826
+SHA256 (rust/crates/semver-parser-0.10.2.crate) = 00b0bef5b7f9e0df16536d3961cfb6e84331c065b4066afb39768d0e319411f7
+SIZE (rust/crates/semver-parser-0.10.2.crate) = 23176
+SHA256 (rust/crates/serde-1.0.136.crate) = ce31e24b01e1e524df96f1c2fdd054405f8d7376249a5110886fb4b658484789
+SIZE (rust/crates/serde-1.0.136.crate) = 76158
+SHA256 (rust/crates/serde_derive-1.0.136.crate) = 08597e7152fcd306f41838ed3e37be9eaeed2b61c42e2117266a554fab4662f9
+SIZE (rust/crates/serde_derive-1.0.136.crate) = 54776
+SHA256 (rust/crates/serde_repr-0.1.7.crate) = 98d0516900518c29efa217c298fa1f4e6c6ffc85ae29fd7f4ee48f176e1a9ed5
+SIZE (rust/crates/serde_repr-0.1.7.crate) = 10173
+SHA256 (rust/crates/sha1-0.6.1.crate) = c1da05c97445caa12d05e848c4a4fcbbea29e748ac28f7e80e9b010392063770
+SIZE (rust/crates/sha1-0.6.1.crate) = 2931
+SHA256 (rust/crates/sha1_smol-1.0.0.crate) = ae1a47186c03a32177042e55dbc5fd5aee900b8e0069a8d70fba96a9375cd012
+SIZE (rust/crates/sha1_smol-1.0.0.crate) = 9782
+SHA256 (rust/crates/slab-0.4.5.crate) = 9def91fd1e018fe007022791f865d0ccc9b3a0d5001e01aabb8b40e46000afb5
+SIZE (rust/crates/slab-0.4.5.crate) = 15888
+SHA256 (rust/crates/smallvec-1.8.0.crate) = f2dd574626839106c320a323308629dcb1acfc96e32a8cba364ddc61ac23ee83
+SIZE (rust/crates/smallvec-1.8.0.crate) = 27992
+SHA256 (rust/crates/socket2-0.4.4.crate) = 66d72b759436ae32898a2af0a14218dbf55efde3feeb170eb623637db85ee1e0
+SIZE (rust/crates/socket2-0.4.4.crate) = 44048
+SHA256 (rust/crates/static_assertions-1.1.0.crate) = a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f
+SIZE (rust/crates/static_assertions-1.1.0.crate) = 18480
+SHA256 (rust/crates/syn-1.0.89.crate) = ea297be220d52398dcc07ce15a209fce436d361735ac1db700cab3b6cdfb9f54
+SIZE (rust/crates/syn-1.0.89.crate) = 235966
+SHA256 (rust/crates/system-deps-6.0.2.crate) = a1a45a1c4c9015217e12347f2a411b57ce2c4fc543913b14b6fe40483328e709
+SIZE (rust/crates/system-deps-6.0.2.crate) = 22869
+SHA256 (rust/crates/temp-dir-0.1.11.crate) = af547b166dd1ea4b472165569fc456cfb6818116f854690b0ff205e636523dab
+SIZE (rust/crates/temp-dir-0.1.11.crate) = 5743
+SHA256 (rust/crates/thiserror-1.0.30.crate) = 854babe52e4df1653706b98fcfc05843010039b406875930a70e4d9644e5c417
+SIZE (rust/crates/thiserror-1.0.30.crate) = 17748
+SHA256 (rust/crates/thiserror-impl-1.0.30.crate) = aa32fd3f627f367fe16f893e2597ae3c05020f8bba2666a4e6ea73d377e5714b
+SIZE (rust/crates/thiserror-impl-1.0.30.crate) = 15230
+SHA256 (rust/crates/toml-0.5.8.crate) = a31142970826733df8241ef35dc040ef98c679ab14d7c3e54d827099b3acecaa
+SIZE (rust/crates/toml-0.5.8.crate) = 54219
+SHA256 (rust/crates/ucd-trie-0.1.3.crate) = 56dee185309b50d1f11bfedef0fe6d036842e3fb77413abef29f8f8d1c5d4c1c
+SIZE (rust/crates/ucd-trie-0.1.3.crate) = 44615
+SHA256 (rust/crates/unicase-2.6.0.crate) = 50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6
+SIZE (rust/crates/unicase-2.6.0.crate) = 23478
+SHA256 (rust/crates/unicode-xid-0.2.2.crate) = 8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3
+SIZE (rust/crates/unicode-xid-0.2.2.crate) = 14955
+SHA256 (rust/crates/version-compare-0.1.0.crate) = fe88247b92c1df6b6de80ddc290f3976dbdf2f5f5d3fd049a9fb598c6dd5ca73
+SIZE (rust/crates/version-compare-0.1.0.crate) = 14169
+SHA256 (rust/crates/version_check-0.9.4.crate) = 49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f
+SIZE (rust/crates/version_check-0.9.4.crate) = 14895
+SHA256 (rust/crates/waker-fn-1.1.0.crate) = 9d5b2c62b4012a3e1eca5a7e077d13b3bf498c4073e33ccd58626607748ceeca
+SIZE (rust/crates/waker-fn-1.1.0.crate) = 7114
+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/wepoll-ffi-0.1.2.crate) = d743fdedc5c64377b5fc2bc036b01c7fd642205a0d96356034ae3404d49eb7fb
+SIZE (rust/crates/wepoll-ffi-0.1.2.crate) = 31309
+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
+SHA256 (rust/crates/zbus-2.1.1.crate) = 7bb86f3d4592e26a48b2719742aec94f8ae6238ebde20d98183ee185d1275e9a
+SIZE (rust/crates/zbus-2.1.1.crate) = 103818
+SHA256 (rust/crates/zbus_macros-2.1.1.crate) = 36823cc10fddc3c6b19f048903262dacaf8274170e9a255784bdd8b4570a8040
+SIZE (rust/crates/zbus_macros-2.1.1.crate) = 23945
+SHA256 (rust/crates/zbus_names-2.1.0.crate) = 45dfcdcf87b71dad505d30cc27b1b7b88a64b6d1c435648f48f9dbc1fdc4b7e1
+SIZE (rust/crates/zbus_names-2.1.0.crate) = 8481
+SHA256 (rust/crates/zvariant-3.1.2.crate) = 49ea5dc38b2058fae6a5b79009388143dadce1e91c26a67f984a0fc0381c8033
+SIZE (rust/crates/zvariant-3.1.2.crate) = 64127
+SHA256 (rust/crates/zvariant_derive-3.1.2.crate) = 8c2cecc5a61c2a053f7f653a24cd15b3b0195d7f7ddb5042c837fb32e161fb7a
+SIZE (rust/crates/zvariant_derive-3.1.2.crate) = 10123
+SHA256 (YaLTeR-video-trimmer-fe64a108f1bf7b57d4bc7d7dc456034c30b0fdea_GL0.tar.gz) = 22845f24dd1fbae24cb8069fcffa5ea1e6c54087dfcd530c559438c4be7e95f6
+SIZE (YaLTeR-video-trimmer-fe64a108f1bf7b57d4bc7d7dc456034c30b0fdea_GL0.tar.gz) = 127553
+SHA256 (2faf4bb13d44.patch) = 2878f99eee062d2670079f4970a8e162114ca84a8054a85f71d0d813e576af68
+SIZE (2faf4bb13d44.patch) = 1963
diff --git a/multimedia/video-trimmer/pkg-descr b/multimedia/video-trimmer/pkg-descr
new file mode 100644
index 000000000000..245afb2602ad
--- /dev/null
+++ b/multimedia/video-trimmer/pkg-descr
@@ -0,0 +1,3 @@
+Video Trimmer cuts out a fragment of a video given the start and end
+timestamps. The video is never re-encoded, so the process is very fast
+and does not reduce the video quality.
diff --git a/multimedia/video-trimmer/pkg-plist b/multimedia/video-trimmer/pkg-plist
new file mode 100644
index 000000000000..1bd30f5aeeab
--- /dev/null
+++ b/multimedia/video-trimmer/pkg-plist
@@ -0,0 +1,24 @@
+bin/video-trimmer
+share/applications/org.gnome.gitlab.YaLTeR.VideoTrimmer.desktop
+share/icons/hicolor/scalable/apps/org.gnome.gitlab.YaLTeR.VideoTrimmer.svg
+share/icons/hicolor/symbolic/apps/org.gnome.gitlab.YaLTeR.VideoTrimmer-symbolic.svg
+share/locale/cs/LC_MESSAGES/video-trimmer.mo
+share/locale/de/LC_MESSAGES/video-trimmer.mo
+share/locale/es/LC_MESSAGES/video-trimmer.mo
+share/locale/eu/LC_MESSAGES/video-trimmer.mo
+share/locale/fr/LC_MESSAGES/video-trimmer.mo
+share/locale/gl/LC_MESSAGES/video-trimmer.mo
+share/locale/hr/LC_MESSAGES/video-trimmer.mo
+share/locale/hu/LC_MESSAGES/video-trimmer.mo
+share/locale/it/LC_MESSAGES/video-trimmer.mo
+share/locale/ja/LC_MESSAGES/video-trimmer.mo
+share/locale/nl/LC_MESSAGES/video-trimmer.mo
+share/locale/pl/LC_MESSAGES/video-trimmer.mo
+share/locale/pt/LC_MESSAGES/video-trimmer.mo
+share/locale/pt_BR/LC_MESSAGES/video-trimmer.mo
+share/locale/ru/LC_MESSAGES/video-trimmer.mo
+share/locale/sv/LC_MESSAGES/video-trimmer.mo
+share/locale/tr/LC_MESSAGES/video-trimmer.mo
+share/locale/uk/LC_MESSAGES/video-trimmer.mo
+share/metainfo/org.gnome.gitlab.YaLTeR.VideoTrimmer.metainfo.xml
+%%DATADIR%%/video-trimmer.gresource