forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
app-admin/keepass: version bump 2.37
Package-Manager: Portage-2.3.8, Repoman-2.3.3
- Loading branch information
Michael Palimaka
committed
Oct 14, 2017
1 parent
d68e6c0
commit 86a7fd5
Showing
2 changed files
with
112 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,2 @@ | ||
DIST KeePass-2.36-Source.zip 5063221 SHA256 de7e3e9d9bedab13e4d66b0ee941b2ebedaa08d8090f7cd78bd0fc019187d8c8 SHA512 16d51ed6bc437172765f69d1d67862afe7219a0898d13b4609198bbd7b5107620f1be418f5ea6ba23a5e3c7ca12d45ba3f0f3778c516eea6b2b953bc291cfe41 WHIRLPOOL 1d9fbf662757e09c4854010da9f6960fe4bf794eb694b37a9f63d813c1e1d1471257a66f01eac761fed5b06831f659cb81f11eba8858ee4e128cd578a19fcae8 | ||
DIST KeePass-2.37-Source.zip 5080663 SHA256 1d8ffdd8ce1050939755311994ea3a491052bcb54d772bd7fc748567a5bbcbf1 SHA512 d094793a3216181ae375fb1343a809a20c358786bdf369c0171e5b7ca17a74bada314875cf410d84efaa4fa2b13e199de9be3c60f5f4e2c189241e4fffec8ad8 WHIRLPOOL 341140bf316d5750e0ad02e3edea9254471dbfe9c78e5441687847ed02fc0b4f44ae6ea310f523b7ad1ee6eb1af36f27568e17de9df5fbc38c16070ed20af8bf |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,111 @@ | ||
# Copyright 1999-2017 Gentoo Foundation | ||
# Distributed under the terms of the GNU General Public License v2 | ||
|
||
EAPI=6 | ||
|
||
inherit eutils gnome2-utils xdg-utils | ||
|
||
MY_PN="KeePass" | ||
DESCRIPTION="A free, open source, light-weight and easy-to-use password manager" | ||
HOMEPAGE="http://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" ) | ||
|
||
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 | ||
cd Build || die | ||
source PrepMonoDev.sh || die | ||
cd ../ || die | ||
} | ||
|
||
src_compile() { | ||
# 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;" | ||
|
||
# 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" | ||
} | ||
|
||
pkg_postinst() { | ||
gnome2_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() { | ||
gnome2_icon_cache_update | ||
xdg_desktop_database_update | ||
xdg_mimeinfo_database_update | ||
} |