commit:     5b1e21ec6341f54062009bfbadfb583f2d128414
Author:     Göktürk Yüksek <gokturk <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 31 06:10:45 2024 +0000
Commit:     Göktürk Yüksek <gokturk <AT> gentoo <DOT> org>
CommitDate: Thu Oct 31 06:11:37 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5b1e21ec

app-crypt/veracrypt: add 1.26.15

Signed-off-by: Göktürk Yüksek <gokturk <AT> gentoo.org>

 app-crypt/veracrypt/Manifest                 |   1 +
 app-crypt/veracrypt/veracrypt-1.26.15.ebuild | 111 +++++++++++++++++++++++++++
 2 files changed, 112 insertions(+)

diff --git a/app-crypt/veracrypt/Manifest b/app-crypt/veracrypt/Manifest
index e8159d9074cf..84f52326e221 100644
--- a/app-crypt/veracrypt/Manifest
+++ b/app-crypt/veracrypt/Manifest
@@ -1,2 +1,3 @@
 DIST veracrypt-1.25.9.tar.gz 26200897 BLAKE2B 
e48f060343f875a0660040dde35fa826ca87c3659d97a039c2b84193276075b4d3596119bde6727e51eead0c876c91a5a1a3ea77717e74061d5d20a4ea1a6fed
 SHA512 
e83bf7ca52d3893347dd06295db0534931f6f388fc6b0f26dc80ffef77f13918bf9558ab8ac2e6225945415f3291646d7c1c8de382dbe8e468ab1e927251982c
+DIST veracrypt-1.26.15.tar.gz 30974645 BLAKE2B 
88fd0b84a9c93d7ae524da7b906584ea3f5496d5e9e31a227667d0b1b8a75bdefdb51dd60022cfdb9e7f77d0c5775e946814546eb2392026f405994fb9ae143b
 SHA512 
a3598fd32ac460ce0fc12b5826d39e7969041b78c13a01936a96a5471ce00dbed5af129dd617f5f16d7496f54b106da2f42660366dadd81de5bca9580d8a542a
 DIST veracrypt-1.26.7.tar.gz 30322472 BLAKE2B 
a71adf9fa5a2aafb9694ccf7a7ac45e6e16cf8277a57f9f52e2fd0ddb2657bd1a28dd4b2c0bf9167298251b4a87ab3f0ca0a8a8424b612be0cd7a4bcc630a438
 SHA512 
1b0fae30e3a8eb20e1ddcf7697f5b1ce947ddc3555442a561e50fe10bd82183ff5b21dc1c06ce2024eecab869fe38616ac47931c880816f814b961bbd1dec8e2

diff --git a/app-crypt/veracrypt/veracrypt-1.26.15.ebuild 
b/app-crypt/veracrypt/veracrypt-1.26.15.ebuild
new file mode 100644
index 000000000000..a1276336ac41
--- /dev/null
+++ b/app-crypt/veracrypt/veracrypt-1.26.15.ebuild
@@ -0,0 +1,111 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+WX_GTK_VER="3.2-gtk3"
+inherit desktop flag-o-matic linux-info pax-utils toolchain-funcs wxwidgets
+
+DESCRIPTION="Disk encryption with strong security based on TrueCrypt"
+HOMEPAGE="https://www.veracrypt.fr/en/Home.html";
+SRC_URI="https://github.com/${PN}/VeraCrypt/archive/VeraCrypt_${PV}.tar.gz -> 
${P}.tar.gz"
+S="${WORKDIR}/VeraCrypt-VeraCrypt_${PV}/src"
+
+# The modules not linked against in Linux include (but not limited to):
+#   libzip, chacha-xmm, chacha256, chachaRng, rdrand, t1ha2
+# Tested by actually removing the source files and performing a build
+# For this reason, we don't have to worry about their licenses
+LICENSE="Apache-2.0 BSD RSA truecrypt-3.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="+asm cpu_flags_x86_sse2 cpu_flags_x86_sse4_1 cpu_flags_x86_ssse3 doc X"
+RESTRICT="bindist mirror"
+
+RDEPEND="
+       app-admin/sudo
+       sys-apps/pcsc-lite
+       sys-fs/fuse:0
+       sys-fs/lvm2
+       x11-libs/wxGTK:${WX_GTK_VER}[X?]"
+DEPEND="${RDEPEND}"
+BDEPEND="
+       asm? ( dev-lang/yasm )
+       virtual/pkgconfig"
+
+CONFIG_CHECK="~BLK_DEV_DM ~CRYPTO ~CRYPTO_XTS ~DM_CRYPT ~FUSE_FS"
+
+src_configure() {
+       setup-wxwidgets
+
+       # https://bugs.gentoo.org/786741
+       # std::byte clashes with src/Common/Tcdefs.h typedef
+       append-cxxflags -std=c++14
+}
+
+src_compile() {
+       local myemakeargs=(
+               NOSTRIP=1
+               NOTEST=1
+               VERBOSE=1
+               CC="$(tc-getCC)"
+               CXX="$(tc-getCXX)"
+               AR="$(tc-getAR)"
+               RANLIB="$(tc-getRANLIB)"
+               TC_EXTRA_CFLAGS="${CFLAGS}"
+               TC_EXTRA_CXXFLAGS="${CXXFLAGS}"
+               TC_EXTRA_LFLAGS="${LDFLAGS}"
+               WX_CONFIG="${WX_CONFIG}"
+               $(usex X "" "NOGUI=1")
+               $(usex asm "" "NOASM=1")
+               $(usex cpu_flags_x86_sse2 "" "NOSSE2=1")
+               $(usex cpu_flags_x86_sse4_1 "SSE41=1" "")
+               $(usex cpu_flags_x86_ssse3 "SSSE3=1" "")
+       )
+
+       emake "${myemakeargs[@]}"
+}
+
+src_test() {
+       ./Main/veracrypt --text --test || die "tests failed"
+}
+
+src_install() {
+       local DOCS=( Readme.txt )
+
+       dobin Main/veracrypt
+       if use doc; then
+               DOCS+=( "${S}"/../doc/EFI-DCS )
+               docompress -x /usr/share/doc/${PF}/EFI-DCS
+               HTML_DOCS=( "${S}"/../doc/html/. )
+       fi
+       einstalldocs
+
+       newinitd "${FILESDIR}"/veracrypt.init veracrypt
+
+       if use X; then
+               local s
+               for s in 16 48 128 256; do
+                       newicon -s ${s} Resources/Icons/VeraCrypt-${s}x${s}.xpm 
veracrypt.xpm
+               done
+               make_desktop_entry veracrypt "VeraCrypt" veracrypt 
"Utility;Security"
+       fi
+
+       pax-mark -m "${ED}"/usr/bin/veracrypt
+}
+
+pkg_postinst() {
+       local version
+
+       ewarn "VeraCrypt has a very restrictive license. Please be explicitly 
aware"
+       ewarn "of the limitations on redistribution of binaries or modified 
source."
+
+       # Remove this when we remove veracrypt-1.25.9.ebuild from the tree.
+       for version in ${REPLACING_VERSIONS}; do
+               if ver_test "${version}" -lt "1.26.7"; then
+                       ewarn "Starting with 1.26.7, TrueCrypt volumes are no 
longer supported."
+                       ewarn "Please explore alternatives such as dm-crypt to 
mount truecrypt volumes."
+                       ewarn "Moreover, support for RIPEMD160 and GOST89 is 
dropped."
+                       ewarn "Volumes using these algoritms will no longer 
mount."
+               fi
+       done
+}

Reply via email to