From ef8349d83fd472880631f1188149e40e2fb59432 Mon Sep 17 00:00:00 2001 From: Torsten Kurbad Date: Wed, 1 Oct 2025 16:01:01 +0200 Subject: [PATCH] Removed tvheadend --- dev-php/pecl-redis/Manifest | 3 + dev-php/pecl-redis/metadata.xml | 12 + dev-php/pecl-redis/pecl-redis-6.2.0.ebuild | 60 +++++ media-tv/tvheadend/Manifest | 7 - .../tvheadend-4.0.9-use_system_queue.patch | 12 - .../tvheadend-4.2.2-dtv_scan_tables.patch | 12 - media-tv/tvheadend/files/tvheadend.confd | 14 - media-tv/tvheadend/files/tvheadend.initd | 19 -- media-tv/tvheadend/files/tvheadend.service | 26 -- media-tv/tvheadend/metadata.xml | 29 --- media-tv/tvheadend/tvheadend-9999.ebuild | 144 ----------- media-video/makemkv/Manifest | 7 + media-video/makemkv/files/makemkv-path.patch | 47 ++++ media-video/makemkv/files/makemkv-qt6.patch | 206 +++++++++++++++ media-video/makemkv/files/makemkvcon.1 | 242 ++++++++++++++++++ media-video/makemkv/makemkv-1.18.2.ebuild | 121 +++++++++ media-video/makemkv/metadata.xml | 28 ++ 17 files changed, 726 insertions(+), 263 deletions(-) create mode 100644 dev-php/pecl-redis/Manifest create mode 100644 dev-php/pecl-redis/metadata.xml create mode 100644 dev-php/pecl-redis/pecl-redis-6.2.0.ebuild delete mode 100644 media-tv/tvheadend/Manifest delete mode 100644 media-tv/tvheadend/files/tvheadend-4.0.9-use_system_queue.patch delete mode 100644 media-tv/tvheadend/files/tvheadend-4.2.2-dtv_scan_tables.patch delete mode 100644 media-tv/tvheadend/files/tvheadend.confd delete mode 100644 media-tv/tvheadend/files/tvheadend.initd delete mode 100644 media-tv/tvheadend/files/tvheadend.service delete mode 100644 media-tv/tvheadend/metadata.xml delete mode 100644 media-tv/tvheadend/tvheadend-9999.ebuild create mode 100644 media-video/makemkv/Manifest create mode 100644 media-video/makemkv/files/makemkv-path.patch create mode 100644 media-video/makemkv/files/makemkv-qt6.patch create mode 100644 media-video/makemkv/files/makemkvcon.1 create mode 100644 media-video/makemkv/makemkv-1.18.2.ebuild create mode 100644 media-video/makemkv/metadata.xml diff --git a/dev-php/pecl-redis/Manifest b/dev-php/pecl-redis/Manifest new file mode 100644 index 0000000..d15d9c4 --- /dev/null +++ b/dev-php/pecl-redis/Manifest @@ -0,0 +1,3 @@ +DIST redis-6.2.0.tgz 379865 BLAKE2B 3ed8776d1e53e3a1b08e5d18511ccf3ed1f896d0ae28b54ce47615d58ca4c9cbc29c00b2a10301cd7e9fd533f54335bbf3878f8f59ddff82ad2b16da03d45e77 SHA512 fd4d79cd4f7a3d25c865ae52daea4e6d9e805f55c3b7004633ac23ed6724a30b85ed3034bddee86c42146b39215309cb9c96f5659b248e6b859295cdf10e02f1 +EBUILD pecl-redis-6.2.0.ebuild 1425 BLAKE2B e025a961acf4c518dcf7b3553b03b6a3c933fdfb7592931e801420abc4053140ad58b3dfb9e7fbb749b19a04b33f1462bc0ac033033b057c039e7d9f89945c74 SHA512 14a0f6fe2d5774960ddb875c0e3334c38f43031aaaf7f2d0051624584e2dc7959c4410468c8e67a78ef26e54d7e565f2b6ec919dcc27889f3d17ead71f158324 +MISC metadata.xml 384 BLAKE2B 4a1a6b326526bb3f5b9d9d57158d6abbfe3c65b1cfc11980ce849d5f7278558ee0daf580aefc521939aae175cd8e2cb990e046fce8faf6774348b24fa6465ef8 SHA512 851e1fb9f6612105640028262a4821f0da5b1ee5949fdd99067e821ce1d22c41888ee53e102becc93c918a605c2b8dbb2d493cd7cad516530912fec652011364 diff --git a/dev-php/pecl-redis/metadata.xml b/dev-php/pecl-redis/metadata.xml new file mode 100644 index 0000000..381f530 --- /dev/null +++ b/dev-php/pecl-redis/metadata.xml @@ -0,0 +1,12 @@ + + + + + php-bugs@gentoo.org + PHP + + + Enables igbinary serialisation support + Enables json serializer support + + diff --git a/dev-php/pecl-redis/pecl-redis-6.2.0.ebuild b/dev-php/pecl-redis/pecl-redis-6.2.0.ebuild new file mode 100644 index 0000000..1140daf --- /dev/null +++ b/dev-php/pecl-redis/pecl-redis-6.2.0.ebuild @@ -0,0 +1,60 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PHP_EXT_NAME="redis" +USE_PHP="php8-1 php8-2 php8-3 php8-4" +PHP_EXT_NEEDED_USE="json(+)?,session(-)?" +MY_P="${PN/pecl-/}-${PV/_rc/RC}" +PHP_EXT_PECL_FILENAME="${MY_P}.tgz" +PHP_EXT_S="${WORKDIR}/${MY_P}" + +inherit php-ext-pecl-r3 + +DESCRIPTION="PHP extension for interfacing with Redis" +LICENSE="PHP-3.01" +SLOT="0" +KEYWORDS="amd64 ~arm ~arm64" +IUSE="igbinary +json lz4 +session zstd" + +DEPEND=" + igbinary? ( >=dev-php/igbinary-3.0.1-r1[php_targets_php8-2(-)?,php_targets_php8-3(-)?] ) + lz4? ( app-arch/lz4:= ) + zstd? ( app-arch/zstd:= ) +" +RDEPEND="${DEPEND} + !dev-php/pecl-redis:7" + +# The test suite requires network access. +RESTRICT=test + +S="${WORKDIR}/${MY_P}" + +src_configure() { + local PHP_EXT_ECONF_ARGS=( + --enable-redis + --disable-redis-lzf + --disable-redis-msgpack + $(use_enable igbinary redis-igbinary) + $(use_enable json redis-json) + $(use_enable lz4 redis-lz4) + $(use_with lz4 liblz4) + $(use_enable session redis-session) + $(use_enable zstd redis-zstd) + $(use_with zstd libzstd) + ) + php-ext-source-r3_src_configure +} + +src_test() { + local slot + for slot in $(php_get_slots); do + php_init_slot_env "${slot}" + # Run tests for Redis class + ${PHPCLI} -d extension=modules/redis.so \ + tests/TestRedis.php \ + --class Redis \ + --host ${PECL_REDIS_HOST} || die 'test suite failed' + done +} diff --git a/media-tv/tvheadend/Manifest b/media-tv/tvheadend/Manifest deleted file mode 100644 index 27385c1..0000000 --- a/media-tv/tvheadend/Manifest +++ /dev/null @@ -1,7 +0,0 @@ -AUX tvheadend-4.0.9-use_system_queue.patch 296 BLAKE2B 0986117969d9bb3463123e984aba7a73c8caf89b16f0c10e870a9b49857f8c946958a31900d99c5d332f5635cbd49ae544c2cc97f1e8a211c352bcaba965fe76 SHA512 56180b9c2fbb092530963229213805ec63e3d941c67d967e38b46f778db85db981234fe5727b5a8dcf64ab3a9e24c9d10b681abf275249e0d6f0ad63e391ecc4 -AUX tvheadend-4.2.2-dtv_scan_tables.patch 463 BLAKE2B 4e52d89d75c05d8a3cc645280794dd4570953bb5452d1067442177d7eb4c85779a8bcb96f1f8d3fbbcb6a34e770ff014bb262103eae5a92556ac4586038cdd9e SHA512 9bdecbac57ee1f30be91f9145e32f89949b5631090edc85cd5383915b09949ec9211f62474bd06afb4600e431093ce2ee5550d204b08c64b5b2e1a1cd38a517d -AUX tvheadend.confd 355 BLAKE2B 36ba5a3466838b643beb877050ef6cc481adb91a433efa7429977104c9db1e6ef54901750d14dc0f43a20c89ddf504a9fc28a10a88d68105e5a5f07820696d50 SHA512 64ae0cca1e1b46a3ecb2fb4a4ba69ad1dd6a72ce57944b44be28768d293f9cca2ab29067335023f384433e8c75d976fbc4610ca574c930b9891a2f1c75ff4c0b -AUX tvheadend.initd 375 BLAKE2B 6fbf53a0a67957ee5756b56189d42b741adb7603b5590aa5fa0fd6b2a1d1ba930af05de8ebedba343302aa861f7fb42d3eb25b67acf6b43aa7c956d4965ab944 SHA512 6f17fa6bee502f586b4500c5f5541c9c6ce095deed7ddb3c1d1ad129a2e22fa66de0e72b712866659f7080753c73f67154d6dcdbf8539d6c8a942bea29bb1aa7 -AUX tvheadend.service 577 BLAKE2B f6762aef0f9370a7ad1e438aa4b35c500c40240bd7d66db5e32b061c0dc9776adc2b8de2c395b2299151bd5c6fc8735944a8384828b873b29fbf6c1ed76bafde SHA512 1192b98da179503bc249e0b0d3a0e6c2bf420bfb7d14a72b917fe9e1975a42d1647b5d951ead8f18419999f4c74c352b21e58c28bacc65419012d46bb83270d4 -EBUILD tvheadend-9999.ebuild 3674 BLAKE2B 71a6801412227f202ce26bba04ead2e5bf84354af6e2a6b5a2912c98ac6809407aed1cf2556b98a636de2d88a70392ac3698ad4ef7f7018d9c1066dc45f592e3 SHA512 2043b325975a864f27e4817c25ff5e99003ba1f70f21989b4650e7b9e12373f953379e09ae84eedc59decfc69f22d8ac5ad12317b0f62a18480085c9ccf6701c -MISC metadata.xml 1445 BLAKE2B f71dc280d5fce7c0945939bcaf75d0d7f294aea6055c956b04e9e439199c2a6c107c800be6d18a0c58d154bdf7cdd0cd7d874e5cde5fc93f9b24160f536d21d8 SHA512 e26b94f14a619051e637b018d0f47ce86381821dd5207ba5b34429e0c0f83c55bfa9c37871e722af85719cf3e06322703d4709cbbd771b8f092efb8e85cb5b72 diff --git a/media-tv/tvheadend/files/tvheadend-4.0.9-use_system_queue.patch b/media-tv/tvheadend/files/tvheadend-4.0.9-use_system_queue.patch deleted file mode 100644 index 13ac357..0000000 --- a/media-tv/tvheadend/files/tvheadend-4.0.9-use_system_queue.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up ./src/queue.h.orig ./src/queue.h ---- ./src/queue.h.orig 2016-03-14 10:10:57.000000000 +0100 -+++ ./src/queue.h 2016-07-04 17:47:22.480252171 +0200 -@@ -5,7 +5,7 @@ - #ifndef HTSQ_H - #define HTSQ_H - --#include "../vendor/include/sys/queue.h" -+#include - - /* - * Extra LIST-ops diff --git a/media-tv/tvheadend/files/tvheadend-4.2.2-dtv_scan_tables.patch b/media-tv/tvheadend/files/tvheadend-4.2.2-dtv_scan_tables.patch deleted file mode 100644 index 5131026..0000000 --- a/media-tv/tvheadend/files/tvheadend-4.2.2-dtv_scan_tables.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up ./src/input/mpegts/scanfile.c.orig ./src/input/mpegts/scanfile.c ---- ./src/input/mpegts/scanfile.c.orig 2017-05-16 13:15:24.000000000 +0200 -+++ ./src/input/mpegts/scanfile.c 2017-06-01 22:30:29.150834135 +0200 -@@ -903,7 +903,7 @@ scanfile_init ( const char *muxconf_path - #elif defined(PLATFORM_FREEBSD) - path = "/usr/local/share/dtv-scan-tables"; - #else -- path = "/usr/share/dvb"; -+ path = "/usr/share/dvbv5"; - #endif - - if (!initialized) { diff --git a/media-tv/tvheadend/files/tvheadend.confd b/media-tv/tvheadend/files/tvheadend.confd deleted file mode 100644 index 8be4a5d..0000000 --- a/media-tv/tvheadend/files/tvheadend.confd +++ /dev/null @@ -1,14 +0,0 @@ -# /etc/conf.d/tvheadend: config file for /etc/init.d/tvheadend -# See the tvheadend(1) manpage for more info. - -# Run Tvheadend as this user. -TVHEADEND_USER="tvheadend" - -# Run Tvheadend as this group. -TVHEADEND_GROUP="video" - -# Path to Tvheadend config. -TVHEADEND_CONFIG="/etc/tvheadend" - -# Other options you want to pass to Tvheadend. -TVHEADEND_OPTIONS="" diff --git a/media-tv/tvheadend/files/tvheadend.initd b/media-tv/tvheadend/files/tvheadend.initd deleted file mode 100644 index dc3bed7..0000000 --- a/media-tv/tvheadend/files/tvheadend.initd +++ /dev/null @@ -1,19 +0,0 @@ -#!/sbin/openrc-run - -depend() { - use net -} - -start() { - ebegin "Starting Tvheadend" - start-stop-daemon --start --quiet --exec /usr/bin/tvheadend \ - -- -f -C -u ${TVHEADEND_USER} -g ${TVHEADEND_GROUP} \ - -c ${TVHEADEND_CONFIG} ${TVHEADEND_OPTIONS} - eend $? -} - -stop() { - ebegin "Stopping Tvheadend" - start-stop-daemon --stop --quiet --pidfile /var/run/tvheadend.pid - eend $? -} diff --git a/media-tv/tvheadend/files/tvheadend.service b/media-tv/tvheadend/files/tvheadend.service deleted file mode 100644 index 6d1e274..0000000 --- a/media-tv/tvheadend/files/tvheadend.service +++ /dev/null @@ -1,26 +0,0 @@ -[Unit] -Description=tvheadend -After=network.target - -[Service] -Type=simple -User=tvheadend -Group=video -RuntimeDirectory=tvheadend -PIDFile=/run/tvheadend/tvheadend.pid -EnvironmentFile=/etc/conf.d/tvheadend -ExecStart=/usr/bin/tvheadend -p /run/tvheadend/tvheadend.pid -c "${TVHEADEND_CONFIG}" ${TVHEADEND_OPTIONS} -TimeoutStartSec=1m -TimeoutStopSec=20s -Restart=always -RestartSec=5s -DevicePolicy=closed -DeviceAllow=char-DVB rw -DeviceAllow=char-drm rw -RestrictAddressFamilies=AF_INET AF_INET6 -ProtectSystem=yes -ProtectHome=yes -NoNewPrivileges=yes - -[Install] -WantedBy=multi-user.target diff --git a/media-tv/tvheadend/metadata.xml b/media-tv/tvheadend/metadata.xml deleted file mode 100644 index d995e88..0000000 --- a/media-tv/tvheadend/metadata.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - chewi@gentoo.org - James Le Cuirot - - - Enable support for capmt (dvbapi) protocol - Enable support for the constcw protocol - Enable support for the cwc (newcamd) protocol - Enable support for DDCI hardware - Enable decryption of the DVB Common Scrambling Algorithm - Enable support for hardware CAM - Enable support for the HDHomeRun device - Enable support for image caching - Enable support for Internet Protocol TV - Enable support for IP-based Satellite TV - Enable TimeShift support - Use dev-libs/uriparser - Enable transcoding with the VP8/VP9 video codecs - Enable transcoding with the H.264 video codec - Enable transcoding with the HEVC video codec - Use media-tv/xmltv - - - tvheadend/tvheadend - - diff --git a/media-tv/tvheadend/tvheadend-9999.ebuild b/media-tv/tvheadend/tvheadend-9999.ebuild deleted file mode 100644 index 363d29d..0000000 --- a/media-tv/tvheadend/tvheadend-9999.ebuild +++ /dev/null @@ -1,144 +0,0 @@ -# Copyright 1999-2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit git-r3 linux-info systemd toolchain-funcs user - -DESCRIPTION="Tvheadend is a TV streaming server and digital video recorder" -HOMEPAGE="https://tvheadend.org/" -EGIT_REPO_URI="https://github.com/${PN}/${PN}.git" - -LICENSE="GPL-3" -SLOT="0" -KEYWORDS="" - -IUSE="dbus debug +ddci dvbcsa +dvb +ffmpeg hdhomerun +imagecache +inotify iptv libressl opus satip systemd +timeshift uriparser vpx x264 x265 xmltv zeroconf zlib" - -BDEPEND=" - sys-devel/gettext - virtual/pkgconfig" - -RDEPEND=" - virtual/libiconv - dbus? ( sys-apps/dbus ) - dvbcsa? ( media-libs/libdvbcsa ) - ffmpeg? ( media-video/ffmpeg:0=[opus?,vpx?,x264?,x265?] ) - hdhomerun? ( media-libs/libhdhomerun ) - !libressl? ( dev-libs/openssl:0= ) - libressl? ( dev-libs/libressl:= ) - uriparser? ( dev-libs/uriparser ) - zeroconf? ( net-dns/avahi ) - zlib? ( sys-libs/zlib )" - -# ffmpeg sub-dependencies needed for headers only. Check under -# src/transcoding/codec/codecs/libs for include statements. - -DEPEND=" - ${RDEPEND} - dvb? ( virtual/linuxtv-dvb-headers ) - ffmpeg? ( - opus? ( media-libs/opus ) - vpx? ( media-libs/libvpx ) - x264? ( media-libs/x264 ) - x265? ( media-libs/x265 ) - )" - -RDEPEND+=" - dvb? ( media-tv/dtv-scan-tables ) - xmltv? ( media-tv/xmltv )" - -REQUIRED_USE=" - ddci? ( dvb ) -" - -# Some patches from: -# https://github.com/rpmfusion/tvheadend - -PATCHES=( - "${FILESDIR}"/${PN}-4.0.9-use_system_queue.patch - "${FILESDIR}"/${PN}-4.2.2-dtv_scan_tables.patch -) - -DOCS=( README.md ) - -pkg_setup() { - use inotify && - CONFIG_CHECK="~INOTIFY_USER" linux-info_pkg_setup - - enewuser tvheadend -1 -1 /etc/tvheadend video -} - -# We unconditionally enable codecs that do not require additional -# dependencies when building tvheadend. If support is missing from -# ffmpeg at runtime then tvheadend will simply disable these codecs. - -# It is not necessary to specific all the --disable-*-static options as -# most of them only take effect when --enable-ffmpeg_static is given. - -src_configure() { - CC="$(tc-getCC)" \ - PKG_CONFIG="${CHOST}-pkg-config" \ - econf \ - --disable-bundle \ - --disable-ccache \ - --disable-dvbscan \ - --disable-ffmpeg_static \ - --disable-hdhomerun_static \ - --enable-libfdkaac \ - --enable-libtheora \ - --enable-libvorbis \ - --nowerror \ - $(use_enable dbus dbus_1) \ - $(use_enable debug trace) \ - $(use_enable ddci) \ - $(use_enable dvb linuxdvb) \ - $(use_enable dvbcsa) \ - $(use_enable dvbcsa capmt) \ - $(use_enable dvbcsa cccam) \ - $(use_enable dvbcsa constcw) \ - $(use_enable dvbcsa cwc) \ - $(use_enable ffmpeg libav) \ - $(use_enable hdhomerun hdhomerun_client) \ - $(use_enable imagecache) \ - $(use_enable inotify) \ - $(use_enable iptv) \ - $(use_enable opus libopus) \ - $(use_enable satip satip_server) \ - $(use_enable satip satip_client) \ - $(use_enable systemd libsystemd_daemon) \ - $(use_enable timeshift) \ - $(use_enable uriparser) \ - $(use_enable vpx libvpx) \ - $(use_enable x264 libx264) \ - $(use_enable x265 libx265) \ - $(use_enable zeroconf avahi) \ - $(use_enable zlib) -} - -src_compile() { - emake CC="$(tc-getCC)" -} - -src_install() { - default - - newinitd "${FILESDIR}"/tvheadend.initd tvheadend - newconfd "${FILESDIR}"/tvheadend.confd tvheadend - - use systemd && - systemd_dounit "${FILESDIR}"/tvheadend.service - - dodir /etc/tvheadend - fperms 0700 /etc/tvheadend - fowners tvheadend:video /etc/tvheadend -} - -pkg_postinst() { - elog "The Tvheadend web interface can be reached at:" - elog "http://localhost:9981/" - elog - elog "Make sure that you change the default username" - elog "and password via the Configuration / Access control" - elog "tab in the web interface." -} diff --git a/media-video/makemkv/Manifest b/media-video/makemkv/Manifest new file mode 100644 index 0000000..7f94eb5 --- /dev/null +++ b/media-video/makemkv/Manifest @@ -0,0 +1,7 @@ +AUX makemkv-path.patch 1579 BLAKE2B 6ca7ed6c854c0357fea864bedc3f65a1051a466a52db1380bf1904c97bfa2b455beeb7ff9852fe57f6d224ed659df63d02db96a281be7a14f0587bece9aff75b SHA512 9294d3645b953fdb7ca24e83066becfbf07e03cab01d0aaf4527cf2d54fb0990649da1f766836a0f3efea9c363c8f00116b4624c49fd7bcfa197cae2ef17e6ed +AUX makemkv-qt6.patch 7366 BLAKE2B ad453f067aeb60377c43618c9eaba5c44df6c60b0f69afa2454477f4bb30dffba440cfe0340a98c9c5dc7e39e6380710f8b5753c2b00207c4c6ed6944ddb41ac SHA512 6966b2c2bbef4312b4394c9e8701c730227b1577d7403874c14ec5d409f09330767a78d2d344da4448f72d103bf86f8da3612a30ca41d1a1d4770283d2251873 +AUX makemkvcon.1 6118 BLAKE2B bf8f7665d7b367e4dc5cfb12136cb91271087991d86bb0c2bfe6fe41def407539276114f95548cd867c49bc10bed25cec51ac00dbd6defe5df7fd82f2fe29b25 SHA512 a9334a96fcc90932a109c2d74b1769ab60e652a1e860399d8a486bd36ba02fbdabf55816059e0c51e3e4826824b7798f86b85cb5e22a4d13c2e18a2944522ac4 +DIST makemkv-bin-1.18.2.tar.gz 17916113 BLAKE2B a0372519087db6881207b2a2f828a08d9ebbe57a6166391a3141ae5074a3b1b03314f57aecb7e3bd594064fcae6d1f97bb8db2d52658b398fef2a44689c00ee8 SHA512 01e8a8a6e5b4ad34a6944fb62a01bd0bfea1ac8d846c5dd7b42e35a62ea2196aae1abb635a620dfc5541987db2af832d4cb73cfde28eaafaf4c61eed81da66a0 +DIST makemkv-oss-1.18.2.tar.gz 6638329 BLAKE2B b15088a01835dbe576b400d8e08e16ce4e58ec61a4956120abc507b01981707cdf4e2004a9d7b673306a110f8c3567506d62c48942d7f7d38321767308cae595 SHA512 45ae82da88d0bcc3c13d1eb4a5b3fcb4844f2af4a45da0cc1f1b854f573c3f69d40a439425170b257ecdf0faee708d46cce5ea0d9a493586794b0c06fe542d77 +EBUILD makemkv-1.18.2.ebuild 3060 BLAKE2B d0d1ead1b8263955ba5c4e6f8102899b7e5e770ffc44980587e27dfbdf591447534bb7c7b6959fde80ccba3749e50b100ee49b9c42107144b949d95e1ab50ae0 SHA512 cadd17bd1a901917e015b28e95af49a4cd8969dc7442f422e9a42b335cb72fba4da37ed047d1fbb06c8900a886fbb839755a5c5ff988425208936659113e4494 +MISC metadata.xml 1272 BLAKE2B 7c02bfcb2638d2f33c6fbee2d0e79b6d7d270b8209f7ec82ec51d7cf0e19b94936ee599b618f9a6b9df280fc403b0890b2c8e2323525f6d50b79fc19d26c8756 SHA512 8de92a5802b26a98984be7b5e3c0868b249c14a77a690a186dc4361db1508b79c7ebccd261e7fe9251b2d4abbbe2b93aec8a91efeafc00baada2839020a9207f diff --git a/media-video/makemkv/files/makemkv-path.patch b/media-video/makemkv/files/makemkv-path.patch new file mode 100644 index 0000000..6a3b3cf --- /dev/null +++ b/media-video/makemkv/files/makemkv-path.patch @@ -0,0 +1,47 @@ +diff -Naur makemkv-oss-1.9.10.orig/makemkvgui/src/api_posix.cpp makemkv-oss-1.9.10/makemkvgui/src/api_posix.cpp +--- makemkv-oss-1.9.10.orig/makemkvgui/src/api_posix.cpp 2016-04-15 21:35:36.000000000 +0100 ++++ makemkv-oss-1.9.10/makemkvgui/src/api_posix.cpp 2016-05-08 13:51:48.761885862 +0100 +@@ -54,8 +54,6 @@ + + if (AppName[0]==':') + { +- bool app_found = false; +- const char* const* app_locations = ApGetAppLocations(); + const char* p_env = getenv("MAKEMKVCON"); + + AppName++; +@@ -63,6 +61,13 @@ + if (p_env!=NULL) + { + strcpy(app_path,p_env); ++ } else { ++ strcpy(app_path,AppName); ++ } ++ } else { ++ strcpy(app_path,AppName); ++ } ++/* + app_found = true; + } else { + for (size_t i=0;app_locations[i]!=NULL;i++) +@@ -105,7 +110,7 @@ + } + strcpy(p,AppName); + } +- ++*/ + strcpy(str_guiserver,"guiserver"); + strcpy(str_apver,verstr); + +diff -Naur makemkv-oss-1.9.10.orig/makemkvgui/src/spawn_posix.cpp makemkv-oss-1.9.10/makemkvgui/src/spawn_posix.cpp +--- makemkv-oss-1.9.10.orig/makemkvgui/src/spawn_posix.cpp 2016-04-15 21:35:36.000000000 +0100 ++++ makemkv-oss-1.9.10/makemkvgui/src/spawn_posix.cpp 2016-05-08 10:52:37.137598384 +0100 +@@ -70,7 +70,7 @@ + } + } + +- err = posix_spawn(&pid,argv[0],&spawn_actions,&spawn_attr,argv,envp); ++ err = posix_spawnp(&pid,argv[0],&spawn_actions,&spawn_attr,argv,envp); + + posix_spawn_file_actions_destroy(&spawn_actions); + posix_spawnattr_destroy(&spawn_attr); diff --git a/media-video/makemkv/files/makemkv-qt6.patch b/media-video/makemkv/files/makemkv-qt6.patch new file mode 100644 index 0000000..f29aee6 --- /dev/null +++ b/media-video/makemkv/files/makemkv-qt6.patch @@ -0,0 +1,206 @@ +--- a/configure ++++ b/configure +@@ -662,8 +662,8 @@ + QT_LIB + QT_CFLAGS + QT_INC +-qt5_LIBS +-qt5_CFLAGS ++qt6_LIBS ++qt6_CFLAGS + ffmpeg_LIBS + ffmpeg_CFLAGS + PKG_CONFIG_LIBDIR +@@ -777,7 +777,7 @@ + with_sysroot + enable_libtool_lock + enable_gui +-enable_qt5 ++enable_qt6 + enable_noec + enable_debug + ' +@@ -800,8 +800,8 @@ + PKG_CONFIG_LIBDIR + ffmpeg_CFLAGS + ffmpeg_LIBS +-qt5_CFLAGS +-qt5_LIBS' ++qt6_CFLAGS ++qt6_LIBS' + + + # Initialize some variables set by options. +@@ -1431,7 +1431,7 @@ + optimize for fast installation [default=yes] + --disable-libtool-lock avoid locking (might break parallel builds) + --disable-gui do not build GUI (default is build GUI) +- --disable-qt5 do not use Qt5 ++ --disable-qt6 do not use Qt6 + --enable-noec use private ECDSA code (default - use openssl ECDSA + if available) + --enable-debug keep debug symbols in binarfies (default - strip +@@ -1471,8 +1471,8 @@ + ffmpeg_CFLAGS + C compiler flags for ffmpeg, overriding pkg-config + ffmpeg_LIBS linker flags for ffmpeg, overriding pkg-config +- qt5_CFLAGS C compiler flags for qt5, overriding pkg-config +- qt5_LIBS linker flags for qt5, overriding pkg-config ++ qt6_CFLAGS C compiler flags for qt6, overriding pkg-config ++ qt6_LIBS linker flags for qt6, overriding pkg-config + + Use these variables to override the choices made by `configure' or to help + it to find libraries and programs with nonstandard names/locations. +@@ -12545,12 +12545,12 @@ + + #AM_CONDITIONAL([ENABLE_GUI],[test "x$enable_gui" = "xyes"]) + +-# Check whether --enable-qt5 was given. +-if test ${enable_qt5+y} ++# Check whether --enable-qt6 was given. ++if test ${enable_qt6+y} + then : +- enableval=$enable_qt5; ++ enableval=$enable_qt6; + else $as_nop +- enable_qt5=yes ++ enable_qt6=yes + fi + + +@@ -17312,7 +17312,7 @@ + test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' + + +- ax_cxx_compile_alternatives="11 0x" ax_cxx_compile_cxx11_required=true ++ ax_cxx_compile_alternatives="17" ax_cxx_compile_cxx11_required=true + ac_ext=cpp + ac_cpp='$CXXCPP $CPPFLAGS' + ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' +@@ -18295,24 +18295,24 @@ + if test "x$enable_gui" != "xno" + then : + +- if test "x$enable_qt5" != "xno" ++ if test "x$enable_qt6" != "xno" + then : + + + pkg_failed=no +-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for Qt5Core Qt5Gui Qt5Widgets Qt5DBus" >&5 +-printf %s "checking for Qt5Core Qt5Gui Qt5Widgets Qt5DBus... " >&6; } ++{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for Qt6Core Qt6Gui Qt6Widgets Qt6DBus" >&5 ++printf %s "checking for Qt6Core Qt6Gui Qt6Widgets Qt6DBus... " >&6; } + +-if test -n "$qt5_CFLAGS"; then +- pkg_cv_qt5_CFLAGS="$qt5_CFLAGS" ++if test -n "$qt6_CFLAGS"; then ++ pkg_cv_qt6_CFLAGS="$qt6_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ +- { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"Qt5Core Qt5Gui Qt5Widgets Qt5DBus\""; } >&5 +- ($PKG_CONFIG --exists --print-errors "Qt5Core Qt5Gui Qt5Widgets Qt5DBus") 2>&5 ++ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"Qt6Core Qt6Gui Qt6Widgets Qt6DBus\""; } >&5 ++ ($PKG_CONFIG --exists --print-errors "Qt6Core Qt6Gui Qt6Widgets Qt6DBus") 2>&5 + ac_status=$? + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then +- pkg_cv_qt5_CFLAGS=`$PKG_CONFIG --cflags "Qt5Core Qt5Gui Qt5Widgets Qt5DBus" 2>/dev/null` ++ pkg_cv_qt6_CFLAGS=`$PKG_CONFIG --cflags "Qt6Core Qt6Gui Qt6Widgets Qt6DBus" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes + else + pkg_failed=yes +@@ -18320,16 +18320,16 @@ + else + pkg_failed=untried + fi +-if test -n "$qt5_LIBS"; then +- pkg_cv_qt5_LIBS="$qt5_LIBS" ++if test -n "$qt6_LIBS"; then ++ pkg_cv_qt6_LIBS="$qt6_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ +- { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"Qt5Core Qt5Gui Qt5Widgets Qt5DBus\""; } >&5 +- ($PKG_CONFIG --exists --print-errors "Qt5Core Qt5Gui Qt5Widgets Qt5DBus") 2>&5 ++ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"Qt6Core Qt6Gui Qt6Widgets Qt6DBus\""; } >&5 ++ ($PKG_CONFIG --exists --print-errors "Qt6Core Qt6Gui Qt6Widgets Qt6DBus") 2>&5 + ac_status=$? + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then +- pkg_cv_qt5_LIBS=`$PKG_CONFIG --libs "Qt5Core Qt5Gui Qt5Widgets Qt5DBus" 2>/dev/null` ++ pkg_cv_qt6_LIBS=`$PKG_CONFIG --libs "Qt6Core Qt6Gui Qt6Widgets Qt6DBus" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes + else + pkg_failed=yes +@@ -18350,12 +18350,12 @@ + _pkg_short_errors_supported=no + fi + if test $_pkg_short_errors_supported = yes; then +- qt5_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "Qt5Core Qt5Gui Qt5Widgets Qt5DBus" 2>&1` ++ qt6_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "Qt6Core Qt6Gui Qt6Widgets Qt6DBus" 2>&1` + else +- qt5_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "Qt5Core Qt5Gui Qt5Widgets Qt5DBus" 2>&1` ++ qt6_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "Qt6Core Qt6Gui Qt6Widgets Qt6DBus" 2>&1` + fi + # Put the nasty error message in config.log where it belongs +- echo "$qt5_PKG_ERRORS" >&5 ++ echo "$qt6_PKG_ERRORS" >&5 + + qt_ok=no + elif test $pkg_failed = untried; then +@@ -18363,16 +18363,16 @@ + printf "%s\n" "no" >&6; } + qt_ok=no + else +- qt5_CFLAGS=$pkg_cv_qt5_CFLAGS +- qt5_LIBS=$pkg_cv_qt5_LIBS ++ qt6_CFLAGS=$pkg_cv_qt6_CFLAGS ++ qt6_LIBS=$pkg_cv_qt6_LIBS + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 + printf "%s\n" "yes" >&6; } + +- QT_INC="$qt5_CFLAGS"; ++ QT_INC="$qt6_CFLAGS"; + QT_CFLAGS="-fPIC"; +- QT_LIB="$qt5_LIBS"; +- qt5_host_bins=`$PKG_CONFIG --variable host_bins "Qt5Core" 2>/dev/null`; +- QT_MOC="$qt5_host_bins/moc"; ++ QT_LIB="$qt6_LIBS"; ++ qt6_libexecdir=`$PKG_CONFIG --variable libexecdir "Qt6Core" 2>/dev/null`; ++ QT_MOC="$qt6_libexecdir/moc"; + qt_ok=yes + + fi +--- a/makemkvgui/src/dirselectbox.cpp ++++ b/makemkvgui/src/dirselectbox.cpp +@@ -121,7 +121,7 @@ + if ( (dir.at(dlen-(alen+1))==QLatin1Char('/')) || + (dir.at(dlen-(alen+1))==QLatin1Char('\\')) ) + { +- if (dir.endsWith(appendName)) { ++ if (dir.endsWith(*appendName)) { + dir.chop(alen+1); + } + } +--- a/makemkvgui/src/mainwnd.cpp ++++ b/makemkvgui/src/mainwnd.cpp +@@ -35,7 +35,7 @@ + Qt::MacWindowToolBarButtonHint | + Qt::WindowMinMaxButtonsHint ; + #else +- 0; ++ Qt::Widget; + #endif + + MainWnd::MainWnd(CGUIApClient* App,const char* AppDir) +--- a/makemkvgui/src/qtgui.h ++++ b/makemkvgui/src/qtgui.h +@@ -46,7 +46,7 @@ + #include + #include + #include +-#include ++#include + #include + #include + #include diff --git a/media-video/makemkv/files/makemkvcon.1 b/media-video/makemkv/files/makemkvcon.1 new file mode 100644 index 0000000..0abeaa5 --- /dev/null +++ b/media-video/makemkv/files/makemkvcon.1 @@ -0,0 +1,242 @@ +'\" t +.\" Title: makemkvcon +.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author] +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 05/20/2020 +.\" Manual: \ \& +.\" Source: \ \& +.\" Language: English +.\" +.TH "MAKEMKVCON" "1" "05/20/2020" "\ \&" "\ \&" +.\" ----------------------------------------------------------------- +.\" * Define some portability stuff +.\" ----------------------------------------------------------------- +.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +.\" http://bugs.debian.org/507673 +.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html +.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +.ie \n(.g .ds Aq \(aq +.el .ds Aq ' +.\" ----------------------------------------------------------------- +.\" * set default formatting +.\" ----------------------------------------------------------------- +.\" disable hyphenation +.nh +.\" disable justification (adjust text to left margin only) +.ad l +.\" ----------------------------------------------------------------- +.\" * MAIN CONTENT STARTS HERE * +.\" ----------------------------------------------------------------- +.SH "NAME" +makemkvcon \- MakeMKV console application +.SH "SYNOPSIS" +.sp +\fBmakemkvcon\fR [\fIOPTIONS\fR] [\fIPARAMETERS\fR] +.SH "DESCRIPTION" +.sp +Command\-line options for MakeMKV\&. +.sp +Configuration options and setup keys are located in ~/\&.MakeMKV/ +.SH "OPTIONS" +.sp +General options: +.PP +\fB\-\-messages=\fR\fIFILE\fR +.RS 4 +Output all messgaes to a file\&. Special file names: stdout, stderr, null\&. Default is to stdout\&. +.RE +.PP +\fB\-\-progress=\fR\fIFILE\fR +.RS 4 +Output all progress messages to a file\&. Special file names: stdout, stderr, null\&. Use +\fB\-same\fR +to use +\fB\-\-messages\fR +argument\&. Default is no output\&. +.RE +.PP +\fB\-\-debug\fR[=\fIFILE\fR] +.RS 4 +Enables debug messages\&. Optionally saves to output file\&. +.RE +.PP +\fB\-\-directio=[true|false]\fR +.RS 4 +Enables or disables direct disc access\&. +.RE +.PP +\fB\-\-noscan\fR +.RS 4 +Don\(cqt access any media during disc scan and do not check for media insertion and removal\&. Helpful when other applications are already accessing discs in other drives\&. +.RE +.PP +\fB\-\-cache=\fR\fISIZE\fR +.RS 4 +Specifies size of read cache in megabytes\&. By default program uses a huge amount of memory\&. About 128 MB is recommended for streaming and backup, 512MB for DVD conversion and 1024MB for Blu\-ray conversion\&. +.RE +.PP +\fB\-r, \-\-robot\fR +.RS 4 +Enables automation mode\&. Program will output more information in a format that is easier to parse\&. All output is line\-based and output is flushed on line end\&. All strings are quoted, all control characters and quotes are backlash\-escaped\&. If you automate this program it is highly recommended to use this option\&. Some options make reference to apdefs\&.h file that can be found in MakeMKV open\-source package, included with version for Linux\&. These values will not change in future versions\&. +.RE +.sp +Backup options: +.PP +\fB\-\-decrypt\fR +.RS 4 +Decrypt stream files during backup\&. Default: no decryption\&. +.RE +.PP +\fB\-\-minlength\fR=\fISECONDS\fR +.RS 4 +Specify minimum title length\&. Default: program preferences\&. +.RE +.SH "COMMANDS" +.sp +\fBbackup\fR Backup disc\&. +.sp +\fBinfo\fR Display information about a disc\&. +.sp +\fBmkv\fR Copy titles from disc\&. +.sp +\fBf\fR Run universal firmware tool\&. +.SH "PARAMETERS" +.PP +\fBsource iso:\fR\fIFILENAME\fR +.RS 4 +Open ISO image\&. +.RE +.PP +\fBsource file:\fR\fIDIRECTORY\fR +.RS 4 +Open files in directory\&. +.RE +.PP +\fBsource disc:\fR\fIDISC ID\fR +.RS 4 +Open disc with ID\&. +.RE +.PP +\fBsource dev:\fR\fIDEVICE\fR +.RS 4 +Open disc with device name\&. +.RE +.SH "EXAMPLES" +.sp +Copy all titles from first disc and save as MKV files into current directory: +.sp +.if n \{\ +.RS 4 +.\} +.nf +makemkvcon mkv disc:0 all \&. +.fi +.if n \{\ +.RE +.\} +.sp +List all available drives: +.sp +.if n \{\ +.RS 4 +.\} +.nf +makemkvcon \-r \-\-cache=1 info disc:9999 +.fi +.if n \{\ +.RE +.\} +.sp +Backup first disc decrypting all video files in automation mode with progress output: +.sp +.if n \{\ +.RS 4 +.\} +.nf +makemkvcon backup \-\-decrypt \-\-cache=16 \-\-noscan \-r \-\-progress=\-same disc:0 \&. +.fi +.if n \{\ +.RE +.\} +.SH "MESSAGE FORMATS" +.sp +\fBMessage output\fR +.sp +MSG:code,flags,count,message,format,param0,param1,\&... +.sp +code \- unique message code, should be used to identify particular string in language\-neutral way\&. +.sp +flags \- message flags, see AP_UIMSG_xxx flags in apdefs\&.h +.sp +count \- number of parameters +.sp +message \- raw message string suitable for output +.sp +format \- format string used for message\&. This string is localized and subject to change, unlike message code\&. +.sp +paramX \- parameter for message +.sp +\fBCurrent and total progress title\fR +.sp +PRGC:code,id,name +.sp +PRGT:code,id,name +.sp +code \- unique message code +.sp +id \- operation sub\-id +.sp +name \- name string +.sp +\fBProgress bar values for current and total progress\fR +.sp +PRGV:current,total,max +.sp +current \- current progress value +.sp +total \- total progress value +.sp +max \- maximum possible value for a progress bar, constant +.sp +\fBDrive scan messages\fR +.sp +DRV:index,visible,enabled,flags,drive name,disc name +.sp +index \- drive index +.sp +visible \- set to 1 if drive is present +.sp +enabled \- set to 1 if drive is accessible +.sp +flags \- media flags, see AP_DskFsFlagXXX in apdefs\&.h +.sp +drive name \- drive name string +.sp +disc name \- disc name string +.sp +\fBDisc information output messages\fR +.sp +TCOUT:count +.sp +count \- titles count +.sp +\fBDisc, title and stream information\fR +.sp +CINFO:id,code,value +.sp +TINFO:id,code,value +.sp +SINFO:id,code,value +.sp +id \- attribute id, see AP_ItemAttributeId in apdefs\&.h +.sp +code \- message code if attribute value is a constant string +.sp +value \- attribute value +.SH "RESOURCES" +.sp +Console usage: https://www\&.makemkv\&.com/developers/usage\&.txt +.sp +MakeMKV for Linux forum: https://www\&.makemkv\&.com/forum/viewforum\&.php?f=3 +.sp +Main web site: https://www\&.makemkv\&.com/ diff --git a/media-video/makemkv/makemkv-1.18.2.ebuild b/media-video/makemkv/makemkv-1.18.2.ebuild new file mode 100644 index 0000000..0324d75 --- /dev/null +++ b/media-video/makemkv/makemkv-1.18.2.ebuild @@ -0,0 +1,121 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit flag-o-matic linux-info xdg + +MY_P=makemkv-oss-${PV} +MY_PB=makemkv-bin-${PV} + +DESCRIPTION="Tool for ripping and streaming Blu-ray, HD-DVD and DVD discs" +HOMEPAGE="http://www.makemkv.com/" +SRC_URI="http://www.makemkv.com/download/${MY_P}.tar.gz + http://www.makemkv.com/download/${MY_PB}.tar.gz" +S="${WORKDIR}/${MY_P}" +LICENSE="GPL-2 LGPL-2.1 MPL-1.1 MakeMKV-EULA openssl" +SLOT="0" +KEYWORDS="amd64 ~arm ~arm64 x86" +IUSE="+gui +java" +RESTRICT="bindist mirror" + +QA_PREBUILT="usr/bin/makemkvcon usr/bin/mmdtsdec" + +DEPEND=" + dev-libs/expat + dev-libs/openssl:0=[-bindist(-)] + >=media-video/ffmpeg-1.0.0:0= + sys-libs/zlib + gui? ( dev-qt/qtbase:6[dbus,gui,widgets] ) +" +RDEPEND=" + ${DEPEND} + java? ( >=virtual/jre-1.8 ) +" +BDEPEND=" + virtual/pkgconfig + gui? ( dev-qt/qtbase:6 ) +" + +CONFIG_CHECK="~CHR_DEV_SG" + +PATCHES=( + "${FILESDIR}"/${PN}-qt6.patch + "${FILESDIR}"/${PN}-path.patch +) + +src_prepare() { + default + + if ! use java; then + rm -v "${WORKDIR}/${MY_PB}"/src/share/blues.* || die + fi +} + +src_configure() { + # See bug #439380. + replace-flags -O* -Os + + econf \ + --enable-debug \ + --disable-noec \ + $(use_enable gui) \ + $(use_enable gui qt6) +} + +src_install() { + local myarch + case "${ARCH}" in + arm) myarch=armhf ;; + x86) myarch=i386 ;; + *) myarch=${ARCH} ;; + esac + + default + + # add missing symlinks for QA + dosym libdriveio.so.0 /usr/$(get_libdir)/libdriveio.so.0.${PV} + dosym libdriveio.so.0 /usr/$(get_libdir)/libdriveio.so + dosym libmakemkv.so.1 /usr/$(get_libdir)/libmakemkv.so.1.${PV} + dosym libmakemkv.so.1 /usr/$(get_libdir)/libmakemkv.so + dosym libmmbd.so.0 /usr/$(get_libdir)/libmmbd.so + dosym libmmbd.so.0 /usr/$(get_libdir)/libmmbd.so.0.${PV} + + cd "${WORKDIR}"/${MY_PB} || die + + # install prebuilt bin + dobin bin/"${myarch}"/makemkvcon + + # additional tool is actually part of makemkvcon + dosym makemkvcon /usr/bin/sdftool + + # install profiles and locales + insinto /usr/share/MakeMKV + doins src/share/* + + # install unofficial man page + doman "${FILESDIR}"/makemkvcon.1 +} + +pkg_postinst() { + xdg_pkg_postinst + + elog "While MakeMKV is in beta mode, upstream has provided a license" + elog "to use if you do not want to purchase one." + elog "" + elog "See this forum thread for more information, including the key:" + elog "https://www.makemkv.com/forum/viewtopic.php?f=5&t=1053" + elog "" + elog "Note that beta license may have an expiration date and you will" + elog "need to check for newer licenses/releases. " + elog "" + elog "We previously said to copy default.mmcp.xml to ~/.MakeMKV/. This" + elog "is no longer necessary and you should delete it from there to" + elog "avoid warning messages." + elog "" + elog "MakeMKV can also act as a drop-in replacement for libaacs and" + elog "libbdplus, allowing transparent decryption of a wider range of" + elog "titles under players like VLC and mplayer. To enable this, set" + elog "the following variables when launching the player:" + elog "LIBAACS_PATH=libmmbd LIBBDPLUS_PATH=libmmbd" +} diff --git a/media-video/makemkv/metadata.xml b/media-video/makemkv/metadata.xml new file mode 100644 index 0000000..a1dc514 --- /dev/null +++ b/media-video/makemkv/metadata.xml @@ -0,0 +1,28 @@ + + + + + chewi@gentoo.org + James Le Cuirot + + + Handle additional Blu-ray protection mechanisms involving Java + + + MakeMKV is your one-click solution to convert video that you own + into free and patents-unencumbered format that can be played + everywhere. MakeMKV is a format converter, otherwise called + transcoder. It converts the video clips from proprietary (and + usually encrypted) disc into a set of MKV files, preserving most + information but not changing it in any way. The MKV format can + store multiple video/audio tracks with all meta-information and + preserve chapters. There are many players that can play MKV + files nearly on all platforms, and there are tools to convert + MKV files to many formats, including DVD and Blu-ray discs. + + Additionally MakeMKV can instantly stream decrypted video + without intermediate conversion to wide range of players, so you + may watch Blu-ray and DVD discs with your favorite player on + your favorite OS or on your favorite device. + +