git: f88877ed5dfa - main - multimedia/wl-screenrec: add new port
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Mon, 03 Jul 2023 04:16:45 UTC
The branch main has been updated by jbeich: URL: https://cgit.FreeBSD.org/ports/commit/?id=f88877ed5dfa34f9765be67de6a45b1a85733770 commit f88877ed5dfa34f9765be67de6a45b1a85733770 Author: Jan Beich <jbeich@FreeBSD.org> AuthorDate: 2023-06-25 23:51:35 +0000 Commit: Jan Beich <jbeich@FreeBSD.org> CommitDate: 2023-07-03 04:15:07 +0000 multimedia/wl-screenrec: add new port High performance screen recorder for Wayland. Requres a wayland compositor supporting wlr-output-management-unstable-v1 and wlr-screencopy-unstable-v1 protocols, like sway and Hyprland. Uses dma-buf transfers to get surface, and uses the GPU to do both the pixel format conversion and the encoding, meaning the raw video data never touches the CPU, leaving it free to run your applications. https://github.com/russelltg/wl-screenrec --- multimedia/Makefile | 1 + multimedia/wl-screenrec/Makefile | 27 +++++ multimedia/wl-screenrec/Makefile.crates | 87 ++++++++++++++ multimedia/wl-screenrec/distinfo | 177 +++++++++++++++++++++++++++++ multimedia/wl-screenrec/files/patch-ffmpeg | 40 +++++++ multimedia/wl-screenrec/pkg-descr | 7 ++ 6 files changed, 339 insertions(+) diff --git a/multimedia/Makefile b/multimedia/Makefile index ad3c778868c1..4e137680a39f 100644 --- a/multimedia/Makefile +++ b/multimedia/Makefile @@ -396,6 +396,7 @@ SUBDIR += webcamoid SUBDIR += wf-recorder SUBDIR += winff + SUBDIR += wl-screenrec SUBDIR += wlrobs SUBDIR += x264 SUBDIR += x265 diff --git a/multimedia/wl-screenrec/Makefile b/multimedia/wl-screenrec/Makefile new file mode 100644 index 000000000000..150ede9b2277 --- /dev/null +++ b/multimedia/wl-screenrec/Makefile @@ -0,0 +1,27 @@ +PORTNAME= wl-screenrec +PORTVERSION= s20230625 +CATEGORIES= multimedia wayland + +MAINTAINER= jbeich@FreeBSD.org +COMMENT= High performance wlroots screen recording, featuring hardware encoding +WWW= https://github.com/russelltg/wl-screenrec + +LICENSE= APACHE20 + +LIB_DEPENDS= libavformat.so:multimedia/ffmpeg + +USES= cargo llvm +USE_GITHUB= yes +GH_ACCOUNT= russelltg +GH_TAGNAME= 7ceafa9 +PLIST_FILES= bin/${PORTNAME} + +post-patch: + @${REINPLACE_CMD} -e 's,"llvm-config,"${LLVM_CONFIG},' \ + ${WRKSRC_crate_clang-sys}/build/common.rs \ + ${WRKSRC_crate_clang-sys}/src/support.rs + +post-install: + @${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/${PORTNAME} + +.include <bsd.port.mk> diff --git a/multimedia/wl-screenrec/Makefile.crates b/multimedia/wl-screenrec/Makefile.crates new file mode 100644 index 000000000000..3657be3ff4f6 --- /dev/null +++ b/multimedia/wl-screenrec/Makefile.crates @@ -0,0 +1,87 @@ +CARGO_CRATES= anstream-0.3.2 \ + anstyle-1.0.1 \ + anstyle-parse-0.2.1 \ + anstyle-query-1.0.0 \ + anstyle-wincon-1.0.1 \ + anyhow-1.0.71 \ + autocfg-1.1.0 \ + bindgen-0.64.0 \ + bitflags-1.3.2 \ + cc-1.0.79 \ + cexpr-0.6.0 \ + cfg-if-1.0.0 \ + clang-sys-1.6.1 \ + clap-4.3.8 \ + clap_builder-4.3.8 \ + clap_derive-4.3.2 \ + clap_lex-0.5.0 \ + colorchoice-1.0.0 \ + dlib-0.5.2 \ + downcast-rs-1.2.0 \ + drm-fourcc-2.2.0 \ + errno-0.3.1 \ + errno-dragonfly-0.1.2 \ + ffmpeg-next-6.0.0 \ + ffmpeg-sys-next-6.0.1 \ + glob-0.3.1 \ + heck-0.4.1 \ + hermit-abi-0.2.6 \ + hermit-abi-0.3.1 \ + human-size-0.4.2 \ + io-lifetimes-1.0.11 \ + is-terminal-0.4.7 \ + lazy_static-1.4.0 \ + lazycell-1.3.0 \ + libc-0.2.146 \ + libloading-0.7.4 \ + libloading-0.8.0 \ + linux-raw-sys-0.3.8 \ + log-0.4.19 \ + memchr-2.5.0 \ + memoffset-0.7.1 \ + minimal-lexical-0.2.1 \ + nix-0.26.2 \ + nom-7.1.3 \ + num_cpus-1.15.0 \ + once_cell-1.18.0 \ + peeking_take_while-0.1.2 \ + pkg-config-0.3.27 \ + proc-macro2-1.0.61 \ + quick-xml-0.28.2 \ + quote-1.0.28 \ + regex-1.8.4 \ + regex-syntax-0.7.2 \ + rustc-hash-1.1.0 \ + rustix-0.37.20 \ + scoped-tls-1.0.1 \ + shlex-1.1.0 \ + signal-hook-0.3.15 \ + signal-hook-registry-1.4.1 \ + smallvec-1.10.0 \ + static_assertions-1.1.0 \ + strsim-0.10.0 \ + syn-1.0.109 \ + syn-2.0.21 \ + thiserror-1.0.40 \ + thiserror-impl-1.0.40 \ + unicode-ident-1.0.9 \ + utf8parse-0.2.1 \ + vcpkg-0.2.15 \ + wayland-backend-0.1.2 \ + wayland-client-0.30.2 \ + wayland-protocols-0.30.0 \ + wayland-protocols-wlr-0.1.0 \ + wayland-scanner-0.30.1 \ + wayland-sys-0.30.1 \ + winapi-0.3.9 \ + winapi-i686-pc-windows-gnu-0.4.0 \ + winapi-x86_64-pc-windows-gnu-0.4.0 \ + windows-sys-0.48.0 \ + windows-targets-0.48.0 \ + windows_aarch64_gnullvm-0.48.0 \ + windows_aarch64_msvc-0.48.0 \ + windows_i686_gnu-0.48.0 \ + windows_i686_msvc-0.48.0 \ + windows_x86_64_gnu-0.48.0 \ + windows_x86_64_gnullvm-0.48.0 \ + windows_x86_64_msvc-0.48.0 diff --git a/multimedia/wl-screenrec/distinfo b/multimedia/wl-screenrec/distinfo new file mode 100644 index 000000000000..6e4b64b36e74 --- /dev/null +++ b/multimedia/wl-screenrec/distinfo @@ -0,0 +1,177 @@ +TIMESTAMP = 1687737095 +SHA256 (rust/crates/anstream-0.3.2.crate) = 0ca84f3628370c59db74ee214b3263d58f9aadd9b4fe7e711fd87dc452b7f163 +SIZE (rust/crates/anstream-0.3.2.crate) = 19504 +SHA256 (rust/crates/anstyle-1.0.1.crate) = 3a30da5c5f2d5e72842e00bcb57657162cdabef0931f40e2deb9b4140440cecd +SIZE (rust/crates/anstyle-1.0.1.crate) = 13977 +SHA256 (rust/crates/anstyle-parse-0.2.1.crate) = 938874ff5980b03a87c5524b3ae5b59cf99b1d6bc836848df7bc5ada9643c333 +SIZE (rust/crates/anstyle-parse-0.2.1.crate) = 24802 +SHA256 (rust/crates/anstyle-query-1.0.0.crate) = 5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b +SIZE (rust/crates/anstyle-query-1.0.0.crate) = 8620 +SHA256 (rust/crates/anstyle-wincon-1.0.1.crate) = 180abfa45703aebe0093f79badacc01b8fd4ea2e35118747e5811127f926e188 +SIZE (rust/crates/anstyle-wincon-1.0.1.crate) = 11718 +SHA256 (rust/crates/anyhow-1.0.71.crate) = 9c7d0618f0e0b7e8ff11427422b64564d5fb0be1940354bfe2e0529b18a9d9b8 +SIZE (rust/crates/anyhow-1.0.71.crate) = 43808 +SHA256 (rust/crates/autocfg-1.1.0.crate) = d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa +SIZE (rust/crates/autocfg-1.1.0.crate) = 13272 +SHA256 (rust/crates/bindgen-0.64.0.crate) = c4243e6031260db77ede97ad86c27e501d646a27ab57b59a574f725d98ab1fb4 +SIZE (rust/crates/bindgen-0.64.0.crate) = 204700 +SHA256 (rust/crates/bitflags-1.3.2.crate) = bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a +SIZE (rust/crates/bitflags-1.3.2.crate) = 23021 +SHA256 (rust/crates/cc-1.0.79.crate) = 50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f +SIZE (rust/crates/cc-1.0.79.crate) = 62624 +SHA256 (rust/crates/cexpr-0.6.0.crate) = 6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766 +SIZE (rust/crates/cexpr-0.6.0.crate) = 17966 +SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd +SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934 +SHA256 (rust/crates/clang-sys-1.6.1.crate) = c688fc74432808e3eb684cae8830a86be1d66a2bd58e1f248ed0960a590baf6f +SIZE (rust/crates/clang-sys-1.6.1.crate) = 41346 +SHA256 (rust/crates/clap-4.3.8.crate) = d9394150f5b4273a1763355bd1c2ec54cc5a2593f790587bcd6b2c947cfa9211 +SIZE (rust/crates/clap-4.3.8.crate) = 54806 +SHA256 (rust/crates/clap_builder-4.3.8.crate) = 9a78fbdd3cc2914ddf37ba444114bc7765bbdcb55ec9cbe6fa054f0137400717 +SIZE (rust/crates/clap_builder-4.3.8.crate) = 162239 +SHA256 (rust/crates/clap_derive-4.3.2.crate) = b8cd2b2a819ad6eec39e8f1d6b53001af1e5469f8c177579cdaeb313115b825f +SIZE (rust/crates/clap_derive-4.3.2.crate) = 29053 +SHA256 (rust/crates/clap_lex-0.5.0.crate) = 2da6da31387c7e4ef160ffab6d5e7f00c42626fe39aea70a7b0f1773f7dd6c1b +SIZE (rust/crates/clap_lex-0.5.0.crate) = 11792 +SHA256 (rust/crates/colorchoice-1.0.0.crate) = acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7 +SIZE (rust/crates/colorchoice-1.0.0.crate) = 6857 +SHA256 (rust/crates/dlib-0.5.2.crate) = 330c60081dcc4c72131f8eb70510f1ac07223e5d4163db481a04a0befcffa412 +SIZE (rust/crates/dlib-0.5.2.crate) = 5806 +SHA256 (rust/crates/downcast-rs-1.2.0.crate) = 9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650 +SIZE (rust/crates/downcast-rs-1.2.0.crate) = 11670 +SHA256 (rust/crates/drm-fourcc-2.2.0.crate) = 0aafbcdb8afc29c1a7ee5fbe53b5d62f4565b35a042a662ca9fecd0b54dae6f4 +SIZE (rust/crates/drm-fourcc-2.2.0.crate) = 12192 +SHA256 (rust/crates/errno-0.3.1.crate) = 4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a +SIZE (rust/crates/errno-0.3.1.crate) = 10348 +SHA256 (rust/crates/errno-dragonfly-0.1.2.crate) = aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf +SIZE (rust/crates/errno-dragonfly-0.1.2.crate) = 1810 +SHA256 (rust/crates/ffmpeg-next-6.0.0.crate) = 8af03c47ad26832ab3aabc4cdbf210af3d3b878783edd5a7ba044ba33aab7a60 +SIZE (rust/crates/ffmpeg-next-6.0.0.crate) = 88807 +SHA256 (rust/crates/ffmpeg-sys-next-6.0.1.crate) = cf650f461ccf130f4eef4927affed703cc387b183bfc4a7dfee86a076c131127 +SIZE (rust/crates/ffmpeg-sys-next-6.0.1.crate) = 15688 +SHA256 (rust/crates/glob-0.3.1.crate) = d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b +SIZE (rust/crates/glob-0.3.1.crate) = 18880 +SHA256 (rust/crates/heck-0.4.1.crate) = 95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8 +SIZE (rust/crates/heck-0.4.1.crate) = 11567 +SHA256 (rust/crates/hermit-abi-0.2.6.crate) = ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7 +SIZE (rust/crates/hermit-abi-0.2.6.crate) = 13027 +SHA256 (rust/crates/hermit-abi-0.3.1.crate) = fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286 +SIZE (rust/crates/hermit-abi-0.3.1.crate) = 13793 +SHA256 (rust/crates/human-size-0.4.2.crate) = 62eef4964b4e1c2d66981a5646d893768fd15d96957aae5e0e85c632503e9724 +SIZE (rust/crates/human-size-0.4.2.crate) = 14509 +SHA256 (rust/crates/io-lifetimes-1.0.11.crate) = eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2 +SIZE (rust/crates/io-lifetimes-1.0.11.crate) = 37346 +SHA256 (rust/crates/is-terminal-0.4.7.crate) = adcf93614601c8129ddf72e2d5633df827ba6551541c6d8c59520a371475be1f +SIZE (rust/crates/is-terminal-0.4.7.crate) = 8356 +SHA256 (rust/crates/lazy_static-1.4.0.crate) = e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646 +SIZE (rust/crates/lazy_static-1.4.0.crate) = 10443 +SHA256 (rust/crates/lazycell-1.3.0.crate) = 830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55 +SIZE (rust/crates/lazycell-1.3.0.crate) = 12502 +SHA256 (rust/crates/libc-0.2.146.crate) = f92be4933c13fd498862a9e02a3055f8a8d9c039ce33db97306fd5a6caa7f29b +SIZE (rust/crates/libc-0.2.146.crate) = 684707 +SHA256 (rust/crates/libloading-0.7.4.crate) = b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f +SIZE (rust/crates/libloading-0.7.4.crate) = 27580 +SHA256 (rust/crates/libloading-0.8.0.crate) = d580318f95776505201b28cf98eb1fa5e4be3b689633ba6a3e6cd880ff22d8cb +SIZE (rust/crates/libloading-0.8.0.crate) = 27845 +SHA256 (rust/crates/linux-raw-sys-0.3.8.crate) = ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519 +SIZE (rust/crates/linux-raw-sys-0.3.8.crate) = 1013776 +SHA256 (rust/crates/log-0.4.19.crate) = b06a4cde4c0f271a446782e3eff8de789548ce57dbc8eca9292c27f4a42004b4 +SIZE (rust/crates/log-0.4.19.crate) = 38073 +SHA256 (rust/crates/memchr-2.5.0.crate) = 2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d +SIZE (rust/crates/memchr-2.5.0.crate) = 65812 +SHA256 (rust/crates/memoffset-0.7.1.crate) = 5de893c32cde5f383baa4c04c5d6dbdd735cfd4a794b0debdb2bb1b421da5ff4 +SIZE (rust/crates/memoffset-0.7.1.crate) = 8556 +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.26.2.crate) = bfdda3d196821d6af13126e40375cdf7da646a96114af134d5f417a9a1dc8e1a +SIZE (rust/crates/nix-0.26.2.crate) = 277973 +SHA256 (rust/crates/nom-7.1.3.crate) = d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a +SIZE (rust/crates/nom-7.1.3.crate) = 117570 +SHA256 (rust/crates/num_cpus-1.15.0.crate) = 0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b +SIZE (rust/crates/num_cpus-1.15.0.crate) = 15680 +SHA256 (rust/crates/once_cell-1.18.0.crate) = dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d +SIZE (rust/crates/once_cell-1.18.0.crate) = 32969 +SHA256 (rust/crates/peeking_take_while-0.1.2.crate) = 19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099 +SIZE (rust/crates/peeking_take_while-0.1.2.crate) = 6697 +SHA256 (rust/crates/pkg-config-0.3.27.crate) = 26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964 +SIZE (rust/crates/pkg-config-0.3.27.crate) = 18838 +SHA256 (rust/crates/proc-macro2-1.0.61.crate) = 363a6f739a0c0addeaf6ed75150b95743aa18643a3c6f40409ed7b6db3a6911f +SIZE (rust/crates/proc-macro2-1.0.61.crate) = 44363 +SHA256 (rust/crates/quick-xml-0.28.2.crate) = 0ce5e73202a820a31f8a0ee32ada5e21029c81fd9e3ebf668a40832e4219d9d1 +SIZE (rust/crates/quick-xml-0.28.2.crate) = 156462 +SHA256 (rust/crates/quote-1.0.28.crate) = 1b9ab9c7eadfd8df19006f1cf1a4aed13540ed5cbc047010ece5826e10825488 +SIZE (rust/crates/quote-1.0.28.crate) = 28382 +SHA256 (rust/crates/regex-1.8.4.crate) = d0ab3ca65655bb1e41f2a8c8cd662eb4fb035e67c3f78da1d61dffe89d07300f +SIZE (rust/crates/regex-1.8.4.crate) = 249562 +SHA256 (rust/crates/regex-syntax-0.7.2.crate) = 436b050e76ed2903236f032a59761c1eb99e1b0aead2c257922771dab1fc8c78 +SIZE (rust/crates/regex-syntax-0.7.2.crate) = 339778 +SHA256 (rust/crates/rustc-hash-1.1.0.crate) = 08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2 +SIZE (rust/crates/rustc-hash-1.1.0.crate) = 9331 +SHA256 (rust/crates/rustix-0.37.20.crate) = b96e891d04aa506a6d1f318d2771bcb1c7dfda84e126660ace067c9b474bb2c0 +SIZE (rust/crates/rustix-0.37.20.crate) = 327665 +SHA256 (rust/crates/scoped-tls-1.0.1.crate) = e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294 +SIZE (rust/crates/scoped-tls-1.0.1.crate) = 8202 +SHA256 (rust/crates/shlex-1.1.0.crate) = 43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3 +SIZE (rust/crates/shlex-1.1.0.crate) = 5199 +SHA256 (rust/crates/signal-hook-0.3.15.crate) = 732768f1176d21d09e076c23a93123d40bba92d50c4058da34d45c8de8e682b9 +SIZE (rust/crates/signal-hook-0.3.15.crate) = 50138 +SHA256 (rust/crates/signal-hook-registry-1.4.1.crate) = d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1 +SIZE (rust/crates/signal-hook-registry-1.4.1.crate) = 17987 +SHA256 (rust/crates/smallvec-1.10.0.crate) = a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0 +SIZE (rust/crates/smallvec-1.10.0.crate) = 31564 +SHA256 (rust/crates/static_assertions-1.1.0.crate) = a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f +SIZE (rust/crates/static_assertions-1.1.0.crate) = 18480 +SHA256 (rust/crates/strsim-0.10.0.crate) = 73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623 +SIZE (rust/crates/strsim-0.10.0.crate) = 11355 +SHA256 (rust/crates/syn-1.0.109.crate) = 72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237 +SIZE (rust/crates/syn-1.0.109.crate) = 237611 +SHA256 (rust/crates/syn-2.0.21.crate) = 1182caafaab7018eaea9b404afa8184c0baf42a04d5e10ae4f4843c2029c8aab +SIZE (rust/crates/syn-2.0.21.crate) = 241193 +SHA256 (rust/crates/thiserror-1.0.40.crate) = 978c9a314bd8dc99be594bc3c175faaa9794be04a5a5e153caba6915336cebac +SIZE (rust/crates/thiserror-1.0.40.crate) = 18709 +SHA256 (rust/crates/thiserror-impl-1.0.40.crate) = f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f +SIZE (rust/crates/thiserror-impl-1.0.40.crate) = 15138 +SHA256 (rust/crates/unicode-ident-1.0.9.crate) = b15811caf2415fb889178633e7724bad2509101cde276048e013b9def5e51fa0 +SIZE (rust/crates/unicode-ident-1.0.9.crate) = 41978 +SHA256 (rust/crates/utf8parse-0.2.1.crate) = 711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a +SIZE (rust/crates/utf8parse-0.2.1.crate) = 13435 +SHA256 (rust/crates/vcpkg-0.2.15.crate) = accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426 +SIZE (rust/crates/vcpkg-0.2.15.crate) = 228735 +SHA256 (rust/crates/wayland-backend-0.1.2.crate) = 41b48e27457e8da3b2260ac60d0a94512f5cba36448679f3747c0865b7893ed8 +SIZE (rust/crates/wayland-backend-0.1.2.crate) = 68748 +SHA256 (rust/crates/wayland-client-0.30.2.crate) = 489c9654770f674fc7e266b3c579f4053d7551df0ceb392f153adb1f9ed06ac8 +SIZE (rust/crates/wayland-client-0.30.2.crate) = 65289 +SHA256 (rust/crates/wayland-protocols-0.30.0.crate) = 7fefbeb8a360abe67ab7c2efe1d297a1a50ee011f5460791bc18870c26bb84e2 +SIZE (rust/crates/wayland-protocols-0.30.0.crate) = 127598 +SHA256 (rust/crates/wayland-protocols-wlr-0.1.0.crate) = fce991093320e4a6a525876e6b629ab24da25f9baef0c2e0080ad173ec89588a +SIZE (rust/crates/wayland-protocols-wlr-0.1.0.crate) = 25759 +SHA256 (rust/crates/wayland-scanner-0.30.1.crate) = b9b873b257fbc32ec909c0eb80dea312076a67014e65e245f5eb69a6b8ab330e +SIZE (rust/crates/wayland-scanner-0.30.1.crate) = 34633 +SHA256 (rust/crates/wayland-sys-0.30.1.crate) = 96b2a02ac608e07132978689a6f9bf4214949c85998c247abadd4f4129b1aa06 +SIZE (rust/crates/wayland-sys-0.30.1.crate) = 8358 +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/windows-sys-0.48.0.crate) = 677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9 +SIZE (rust/crates/windows-sys-0.48.0.crate) = 2628884 +SHA256 (rust/crates/windows-targets-0.48.0.crate) = 7b1eb6f0cd7c80c79759c929114ef071b87354ce476d9d94271031c0497adfd5 +SIZE (rust/crates/windows-targets-0.48.0.crate) = 7466 +SHA256 (rust/crates/windows_aarch64_gnullvm-0.48.0.crate) = 91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc +SIZE (rust/crates/windows_aarch64_gnullvm-0.48.0.crate) = 366543 +SHA256 (rust/crates/windows_aarch64_msvc-0.48.0.crate) = b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3 +SIZE (rust/crates/windows_aarch64_msvc-0.48.0.crate) = 671479 +SHA256 (rust/crates/windows_i686_gnu-0.48.0.crate) = 622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241 +SIZE (rust/crates/windows_i686_gnu-0.48.0.crate) = 741490 +SHA256 (rust/crates/windows_i686_msvc-0.48.0.crate) = 4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00 +SIZE (rust/crates/windows_i686_msvc-0.48.0.crate) = 730056 +SHA256 (rust/crates/windows_x86_64_gnu-0.48.0.crate) = ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1 +SIZE (rust/crates/windows_x86_64_gnu-0.48.0.crate) = 703595 +SHA256 (rust/crates/windows_x86_64_gnullvm-0.48.0.crate) = 7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953 +SIZE (rust/crates/windows_x86_64_gnullvm-0.48.0.crate) = 366536 +SHA256 (rust/crates/windows_x86_64_msvc-0.48.0.crate) = 1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a +SIZE (rust/crates/windows_x86_64_msvc-0.48.0.crate) = 671422 +SHA256 (russelltg-wl-screenrec-s20230625-7ceafa9_GH0.tar.gz) = 2758a9f8d62e6054c3a87196cf885f226fb25ffe56a5cd2ea8e4f7c3185fd63b +SIZE (russelltg-wl-screenrec-s20230625-7ceafa9_GH0.tar.gz) = 22290 diff --git a/multimedia/wl-screenrec/files/patch-ffmpeg b/multimedia/wl-screenrec/files/patch-ffmpeg new file mode 100644 index 000000000000..40031a0fe6f9 --- /dev/null +++ b/multimedia/wl-screenrec/files/patch-ffmpeg @@ -0,0 +1,40 @@ +https://github.com/zmwangx/rust-ffmpeg/issues/63 + +error[E0432]: unresolved imports `libc::ENODATA`, `libc::ENOSR`, `libc::ENOSTR`, `libc::ETIME` + --> cargo-crates/ffmpeg-next-6.0.0/src/util/error.rs:20:22 + | +20 | ENFILE, ENOBUFS, ENODATA, ENODEV, ENOENT, ENOEXEC, ENOLCK, ENOLINK, ENOMEM, ENOMSG, + | ^^^^^^^ no `ENODATA` in the root +21 | ENOPROTOOPT, ENOSPC, ENOSR, ENOSTR, ENOSYS, ENOTCONN, ENOTDIR, ENOTEMPTY, ENOTRECOVERABLE, + | ^^^^^ ^^^^^^ no `ENOSTR` in the root + | | + | no `ENOSR` in the root +22 | ENOTSOCK, ENOTSUP, ENOTTY, ENXIO, EOPNOTSUPP, EOVERFLOW, EOWNERDEAD, EPERM, EPIPE, EPROTO, +23 | EPROTONOSUPPORT, EPROTOTYPE, ERANGE, EROFS, ESPIPE, ESRCH, ETIME, ETIMEDOUT, ETXTBSY, + | ^^^^^ no `ETIME` in the root + | +help: a similar name exists in the module + | +21 | ENOPROTOOPT, ENOSPC, ENOSR, NOSTR, ENOSYS, ENOTCONN, ENOTDIR, ENOTEMPTY, ENOTRECOVERABLE, + | ~~~~~ +help: a similar name exists in the module + | +23 | EPROTONOSUPPORT, EPROTOTYPE, ERANGE, EROFS, ESPIPE, ESRCH, VTIME, ETIMEDOUT, ETXTBSY, + | ~~~~~ + +--- cargo-crates/ffmpeg-next-6.0.0/src/util/error.rs.orig 2006-07-24 01:21:28 UTC ++++ cargo-crates/ffmpeg-next-6.0.0/src/util/error.rs +@@ -17,10 +17,10 @@ pub use libc::{ + EBUSY, ECANCELED, ECHILD, ECONNABORTED, ECONNREFUSED, ECONNRESET, EDEADLK, EDESTADDRREQ, EDOM, + EEXIST, EFAULT, EFBIG, EHOSTUNREACH, EIDRM, EILSEQ, EINPROGRESS, EINTR, EINVAL, EIO, EISCONN, + EISDIR, ELOOP, EMFILE, EMLINK, EMSGSIZE, ENAMETOOLONG, ENETDOWN, ENETRESET, ENETUNREACH, +- ENFILE, ENOBUFS, ENODATA, ENODEV, ENOENT, ENOEXEC, ENOLCK, ENOLINK, ENOMEM, ENOMSG, +- ENOPROTOOPT, ENOSPC, ENOSR, ENOSTR, ENOSYS, ENOTCONN, ENOTDIR, ENOTEMPTY, ENOTRECOVERABLE, ++ ENFILE, ENOBUFS, ENODEV, ENOENT, ENOEXEC, ENOLCK, ENOLINK, ENOMEM, ENOMSG, ++ ENOPROTOOPT, ENOSPC, ENOSYS, ENOTCONN, ENOTDIR, ENOTEMPTY, ENOTRECOVERABLE, + ENOTSOCK, ENOTSUP, ENOTTY, ENXIO, EOPNOTSUPP, EOVERFLOW, EOWNERDEAD, EPERM, EPIPE, EPROTO, +- EPROTONOSUPPORT, EPROTOTYPE, ERANGE, EROFS, ESPIPE, ESRCH, ETIME, ETIMEDOUT, ETXTBSY, ++ EPROTONOSUPPORT, EPROTOTYPE, ERANGE, EROFS, ESPIPE, ESRCH, ETIMEDOUT, ETXTBSY, + EWOULDBLOCK, EXDEV, + }; + diff --git a/multimedia/wl-screenrec/pkg-descr b/multimedia/wl-screenrec/pkg-descr new file mode 100644 index 000000000000..9431455da741 --- /dev/null +++ b/multimedia/wl-screenrec/pkg-descr @@ -0,0 +1,7 @@ +High performance screen recorder for Wayland. Requres a wayland +compositor supporting wlr-output-management-unstable-v1 and +wlr-screencopy-unstable-v1 protocols, like sway and Hyprland. + +Uses dma-buf transfers to get surface, and uses the GPU to do both the +pixel format conversion and the encoding, meaning the raw video data +never touches the CPU, leaving it free to run your applications.