diff options
author | Michael Palimaka <kensington@gentoo.org> | 2021-02-24 18:27:46 +1100 |
---|---|---|
committer | Michael Palimaka <kensington@gentoo.org> | 2021-02-24 18:27:46 +1100 |
commit | f566b1cba2ec40f051cb6743e76ab5be0d3351bb (patch) | |
tree | e199ff7faae3b734bcdad289cb791974ab2189c5 | |
parent | dev-db/mariadb-connector-odbc: fix docdir to ${PF} instead of ${P} (diff) | |
download | gentoo-f566b1cba2ec40f051cb6743e76ab5be0d3351bb.tar.gz gentoo-f566b1cba2ec40f051cb6743e76ab5be0d3351bb.tar.bz2 gentoo-f566b1cba2ec40f051cb6743e76ab5be0d3351bb.zip |
app-admin/keepass: version bump 2.47
Closes: https://bugs.gentoo.org/771915
Package-Manager: Portage-3.0.13, Repoman-3.0.2
Signed-off-by: Michael Palimaka <kensington@gentoo.org>
-rw-r--r-- | app-admin/keepass/Manifest | 1 | ||||
-rw-r--r-- | app-admin/keepass/keepass-2.47.ebuild | 117 |
2 files changed, 118 insertions, 0 deletions
diff --git a/app-admin/keepass/Manifest b/app-admin/keepass/Manifest index c6e75569a9cf..c67335930b70 100644 --- a/app-admin/keepass/Manifest +++ b/app-admin/keepass/Manifest @@ -1 +1,2 @@ DIST KeePass-2.46-Source.zip 5054069 BLAKE2B 81567ab4589e53ae5cc1b75fa42cc61d9d0f390edfa8f8d860dd118a95185a8d2ca417b30b29e2b544b1d4eeeb0069fab2f0be7900fd4d7fb87d41c417b99876 SHA512 ca045cb7363092f948d72243991fe398836b13183cc2685477d7ce5dd629213b5803b4216134c7ba6451726b79ca43d1e93a1934c9cbff46293fa916b9348219 +DIST KeePass-2.47-Source.zip 5100005 BLAKE2B 9a71706efbb734244a0de6e1ba705ebaeb550368a77b1e74eaae47ec5a9c7dd12139740d7502dd5ad40e6b90e179f037ca5eae1650c2659a0a64260a93cd595f SHA512 df0f4dc9702198b4d31e78ac4fa1e85746dc7618529ab5ceaae1f6e1cc68a9a574f7892caff99e767f583fe102d87f0bfaf579f375eb227bf6f28fce6253a8f1 diff --git a/app-admin/keepass/keepass-2.47.ebuild b/app-admin/keepass/keepass-2.47.ebuild new file mode 100644 index 000000000000..af7035cf7b4b --- /dev/null +++ b/app-admin/keepass/keepass-2.47.ebuild @@ -0,0 +1,117 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit desktop eutils xdg-utils + +MY_PN="KeePass" +DESCRIPTION="A free, open source, light-weight and easy-to-use password manager" +HOMEPAGE="https://keepass.info/" +SRC_URI="mirror://sourceforge/${PN}/${MY_PN}-${PV}-Source.zip" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="aot" + +COMMON_DEPEND="dev-lang/mono" +DEPEND="${COMMON_DEPEND} + app-arch/unzip +" +RDEPEND="${COMMON_DEPEND} + dev-dotnet/libgdiplus[cairo] +" + +S="${WORKDIR}" +PATCHES=( "${FILESDIR}/${PN}-2.36-xsl-path-detection.patch" ) + +# bug #687052 +# file generated by mono --aot where *FLAGS don't make sense +QA_PREBUILT="usr/lib64/keepass/KeePass.exe.so" + +src_prepare() { + # KeePass looks for some XSL files in the same folder as the executable, + # we prefer to have it in /usr/share/KeePass. Apply patch using base function. + # This XSL file will not be upstreamed since the KeePass creator said that + # including this patch would break the Portable USB version of KeePass + # (which keeps/looks for xsl files in its own folder) + default + + # Switch into build dir so the mono prepration script works correctly + pushd Build || die + source PrepMonoDev.sh || die + popd || die +} + +src_compile() { + export MONO_REGISTRY_PATH=/dev/null # bug 659808 + + # Build with Release target + xbuild /target:KeePass /property:Configuration=Release || die + + # Run Ahead Of Time compiler on the binary + if use aot; then + cp Ext/KeePass.exe.config Build/KeePass/Release/ || die + mono --aot -O=all Build/KeePass/Release/KeePass.exe || die + fi +} + +src_install() { + # Wrapper script to launch mono + make_wrapper "${PN}" "mono /usr/$(get_libdir)/${PN}/KeePass.exe" + + # Some XSL files + insinto "/usr/share/${PN}/XSL" + doins Ext/XSL/* + + insinto "/usr/$(get_libdir)/${PN}" + exeinto "/usr/$(get_libdir)/${PN}" + + doins Ext/KeePass.exe.config + + # Default configuration, simply says to use user-specific configuration + doins Ext/KeePass.config.xml + + # The actual executable + doexe Build/KeePass/Release/KeePass.exe + + # Copy the AOT compilation result + if use aot; then + doexe Build/KeePass/Release/KeePass.exe.so + fi + + # Prepare the icons + newicon -s 256 Ext/Icons_04_CB/Finals/plockb.png "${PN}.png" + newicon -s 256 -t gnome -c mimetypes Ext/Icons_04_CB/Finals/plockb.png "application-x-${PN}2.png" + + # Create a desktop entry and associate it with the KeePass mime type + make_desktop_entry "${PN}" "${MY_PN}" "${PN}" "System;Security" "MimeType=application/x-keepass2;\nStartupWMClass=KeePass2;" + + # MIME descriptor for .kdbx files + insinto /usr/share/mime/packages + doins "${FILESDIR}/${PN}.xml" + + # sed, because patching this really sucks + sed -i 's/mono/mono --verify-all/g' "${D}/usr/bin/keepass" || die +} + +pkg_postinst() { + xdg_icon_cache_update + xdg_desktop_database_update + xdg_mimeinfo_database_update + + if ! has_version x11-misc/xdotool ; then + elog "Optional dependencies:" + elog " x11-misc/xdotool (enables autotype/autofill)" + fi + + elog "Some systems may experience issues with copy and paste operations." + elog "If you encounter this, please install x11-misc/xsel." +} + +pkg_postrm() { + xdg_icon_cache_update + xdg_desktop_database_update + xdg_mimeinfo_database_update +} |