diff --git a/app-arch/rar/Manifest b/app-arch/rar/Manifest index be1c846168746..8aeabcd58e576 100644 --- a/app-arch/rar/Manifest +++ b/app-arch/rar/Manifest @@ -1,5 +1,7 @@ DIST rarlinux-x32-701.tar.gz 739420 BLAKE2B 9550c74d2f9a5bbd821fc2d313a1aa3fdca1f88675056e42507e9b40f7c456e20e0834149e6a925abc88d04aa23d5ccecb0f6efa7ba2d21629f030531b9e84d2 SHA512 2d8488106ed8ed5a67a1de114414a7fe58ab8a139b4f5fd78d5f334e59339e192d51574e3d36fdc7e5d4068cc9e33ec03e4ef6c0907193b407167c616f1ab357 DIST rarlinux-x64-701.tar.gz 730436 BLAKE2B 271b18f636250876adf924752298e283922c87d1ea71084ebd4263f5c8db189b093faf0b66362db781ad0fd9c6154a9a3a1e7d013c7c6cee56ad8fd7fb772fa7 SHA512 3effdc32f5dbad414d4a434b4ec430c0dc29fd6a758036395712f61c588067547c3919025545d27e9a7fef6ba8de1773f2dd9a7e20dfa2178b2b9f9bd2440ff9 DIST rarlinux-x64-720.tar.gz 745894 BLAKE2B 3e9f9eba90ef4a13ba9321ec795af2deb903ee177af1c13ee8931335a9e68746cc496ad0337360de4f8e7d5a683532b5adb8e6ee855e5491da6d965e6c60b161 SHA512 1d3816156ee08ecf286f853b2d3d5b7cd0008e3ed05e228bd94c92a409ede4cd8388883a52b9e00c3c54496720ff507ebc6c29d8a4aa106f3a9f65cb7298f435 +DIST rarlinux-x64-721.tar.gz 746658 BLAKE2B e2daa5f72eb4be1fb87bcde195d33a588dd66b40e8a665db006785f4b87acab65837631b6dc71be23c8c2ae272582c50a29c3ff05620545aecdec77468597953 SHA512 f198a0868448aef33a1cdc318397b14c360895ebcf4d8beee1df10c5788fb0127d8560713099b02c938c4ce911446abf445a3d31e205aabaf119fc485f31cfc3 DIST winrar-x64-701.exe 3912088 BLAKE2B 46d379c51d6c2eba1b632c3f4e6f56529a0218db3cf4d4a4e52de08103d1de15dd6974c5375885dd19d1a29279f664d6df49056f57c71d8d3858bb0266d4eb99 SHA512 61daee2ce82c3b8e79f7598a79d72e337220ced7607e3ed878a3059ac03257542147dbd377e902cc95f04324e2fb7c5e07d1410f0a1815d5a05c5320e5715ef6 DIST winrar-x64-720.exe 3771504 BLAKE2B 1a6b82ea4eb54d7dff52f744f499424ff9af634226fbaa2e7454545bbfc09afda6d23797f326a7f519090005d17aa644a7bbec9b086cbb02b37d06146f945d35 SHA512 24e2565a3f74369125838f59b07a9a3441a8b83dcd40c16358ef54419f4ae239f9df3e5b05e84e08ef390c1b879f215e63a427719753663ab7a627e81d042231 +DIST winrar-x64-721.exe 3770368 BLAKE2B 2dd264b58de43a3fac5352184bbd7eb3e78cca2862d0b38e1ad6aa8b777b55083fc3c6a972ba7ff4f17590d111db29a430d003f2da17cef390e83740ac7c2b4a SHA512 77397ba842a80007413fc4c4f3e5ed963f02678c57ff751b9e0c5aaf9e0bc649ff05612ff8d55814f7452d5ff2ac14ada54830971c98a98161e5fced00760e59 diff --git a/app-arch/rar/rar-7.21.ebuild b/app-arch/rar/rar-7.21.ebuild new file mode 100644 index 0000000000000..cf17087301f35 --- /dev/null +++ b/app-arch/rar/rar-7.21.ebuild @@ -0,0 +1,120 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MY_PV="${PV/./}" +URI_AMD64="https://www.rarlab.com/rar/rarlinux-x64-${MY_PV}.tar.gz" +URI_WIN64="https://www.rarlab.com/rar/winrar-x64-${MY_PV}.exe" + +inherit unpacker + +DESCRIPTION="RAR compressor/uncompressor" +HOMEPAGE="https://www.rarlab.com/" +SRC_URI=" + all-sfx? ( + ${URI_AMD64} + ${URI_WIN64} + ) + amd64? ( ${URI_AMD64} ) +" +S="${WORKDIR}/${PN}" + +LICENSE="BSD BSD-2 RAR" +SLOT="0" +KEYWORDS="-* ~amd64" +IUSE="all-sfx" +RESTRICT="bindist mirror" + +RDEPEND="sys-libs/glibc" +BDEPEND="all-sfx? ( app-arch/unrar )" + +DOCS=( "acknow.txt" "rar.txt" "readme.txt" "whatsnew.txt" ) + +QA_PREBUILT=" + opt/rar/default.sfx + opt/rar/default-elf32.sfx + opt/rar/default-elf64.sfx + opt/rar/default-win32.sfx + opt/rar/default-win64.sfx + opt/rar/unrar + opt/rar/rar + opt/rar/WinCon.SFX + opt/rar/WinCon64.SFX + opt/rar/Zip.SFX + opt/rar/Zip64.SFX +" + +src_unpack() { + local _file + + for _file in ${A}; do + if [[ "${_file}" == rarli* ]]; then + if [[ "${_file}" =~ x64 ]]; then + if ! use amd64; then + continue + fi + + unpack "${_file}" + elif [[ ! "${_file}" =~ x64 ]]; then + if ! use x86; then + continue + fi + + unpack "${_file}" + else + die "Unknown SRC file '${_file}'!" + fi + fi + done + + if use all-sfx ; then + mkdir sfx + cd sfx + for _file in ${A}; do + if [[ "${_file}" == rarli* ]]; then + unpack "${_file}" + if [[ "${_file}" =~ x64 ]]; then + mv rar/default.sfx default-elf64.sfx || die + else + mv rar/default.sfx default-elf32.sfx || die + fi + elif [[ "${_file}" == winrar* ]]; then + ln -s "${DISTDIR}"/${_file} w64.rar || die + # Use shipped unrar, as current version in tree segfaults + # Bug #932666 + # unpack_rar ./w64.rar + "${S}"/unrar x ./w64.rar || die + mv Default.SFX default-win64.sfx || die + mv Default32.SFX default-win32.sfx || die + else + die "Unknown SFX file '${_file}'!" + fi + done + fi +} + +src_compile() { :; } + +src_install() { + exeinto /opt/rar + doexe rar unrar + + insinto /opt/rar + doins rarfiles.lst + + if use all-sfx; then + doins "${WORKDIR}"/sfx/*.{sfx,SFX} + else + doins default.sfx + fi + + dodir /opt/bin + dosym ../rar/rar /opt/bin/rar + dosym ../rar/unrar /opt/bin/unrar + + docinto html + dodoc order.htm + + einstalldocs +}