commit:     ef662c29f1f69a26728b371c245e55e13d45c1d3
Author:     Jonathan Vasquez <fearedbliss <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 13 04:08:19 2017 +0000
Commit:     Jonathan Vasquez <fearedbliss <AT> gentoo <DOT> org>
CommitDate: Fri Jan 13 04:08:19 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ef662c29

app-admin/keepass: including new PrepMonoEnv script and fixing header

Package-Manager: Portage-2.3.3, Repoman-2.3.1

 .../files/keepass-2.35-new-monoprep-script.sh      | 59 +++++++++++++++++
 app-admin/keepass/keepass-2.34-r1.ebuild           |  2 +-
 app-admin/keepass/keepass-2.34.ebuild              |  2 +-
 ...epass-2.34-r1.ebuild => keepass-2.35-r1.ebuild} | 73 ++++++++++++----------
 app-admin/keepass/metadata.xml                     |  1 +
 5 files changed, 101 insertions(+), 36 deletions(-)

diff --git a/app-admin/keepass/files/keepass-2.35-new-monoprep-script.sh 
b/app-admin/keepass/files/keepass-2.35-new-monoprep-script.sh
new file mode 100644
index 00000000..c6fc41f
--- /dev/null
+++ b/app-admin/keepass/files/keepass-2.35-new-monoprep-script.sh
@@ -0,0 +1,59 @@
+#!/bin/sh
+
+buildDir="$(pwd)"
+keePassRootDir="${buildDir}/.."
+
+copyKeePassIcons()
+{
+    cd "${buildDir}"
+    cp -f ../Ext/Icons_04_CB/Finals2/plockb.ico ../KeePass/KeePass.ico
+    cp -f ../Ext/Icons_04_CB/Finals2/plockb.ico 
../KeePass/Resources/Images/KeePass.ico
+}
+
+sanitizeKeePassProjectFiles()
+{
+    cd "${keePassRootDir}/KeePass"
+    
+    local keePassProjectFile="KeePass.csproj"
+    local keePassProjectSolution="KeePass.sln"
+   
+    sed -i 
's!<SignAssembly>true</SignAssembly>!<SignAssembly>false</SignAssembly>!g' 
"${keePassProjectFile}"
+    sed -i 's! ToolsVersion="3.5"!!g' "${keePassProjectFile}"
+    sed -i '/sgen\.exe/d' "${keePassProjectFile}"
+    
+    # Update solution .NET format to 11 (This targets Mono 4 rather than 3.5)
+    cd "${keePassRootDir}"
+    sed -i 's!Format Version 10.00!Format Version 11.00!g' 
"${keePassProjectSolution}"
+    
+    cd "${buildDir}"
+}
+
+sanitizeKeePassLibProjectFile()
+{
+    cd "${keePassRootDir}/KeePassLib"
+    
+    local keePassProjectLibFile="KeePassLib.csproj"
+    sed -i 
's!<SignAssembly>true</SignAssembly>!<SignAssembly>false</SignAssembly>!g' 
"${keePassProjectLibFile}"
+    sed -i 's! ToolsVersion="3.5"!!g' "${keePassProjectLibFile}"
+    
+    cd "${buildDir}"
+}
+
+
+sanitizeTrlUtilProjectFile()
+{
+    cd "${keePassRootDir}/Translation/TrlUtil"
+    
+    local trlUtilProjectFile="TrlUtil.csproj"
+    sed -i 's! ToolsVersion="3.5"!!g' "${trlUtilProjectFile}"
+    
+    cd "${buildDir}"
+}
+
+# Start
+copyKeePassIcons
+
+# Remove ToolsVersion 3.5 References so that newer Mono compilers can be used
+sanitizeKeePassProjectFiles
+sanitizeKeePassLibProjectFile
+sanitizeTrlUtilProjectFile

diff --git a/app-admin/keepass/keepass-2.34-r1.ebuild 
b/app-admin/keepass/keepass-2.34-r1.ebuild
index b790b54..9145063 100644
--- a/app-admin/keepass/keepass-2.34-r1.ebuild
+++ b/app-admin/keepass/keepass-2.34-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2017 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 # $Id$
 

diff --git a/app-admin/keepass/keepass-2.34.ebuild 
b/app-admin/keepass/keepass-2.34.ebuild
index 3bc899e..93eb09f 100644
--- a/app-admin/keepass/keepass-2.34.ebuild
+++ b/app-admin/keepass/keepass-2.34.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2017 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 # $Id$
 

diff --git a/app-admin/keepass/keepass-2.34-r1.ebuild 
b/app-admin/keepass/keepass-2.35-r1.ebuild
similarity index 57%
copy from app-admin/keepass/keepass-2.34-r1.ebuild
copy to app-admin/keepass/keepass-2.35-r1.ebuild
index b790b54..3fbf36b 100644
--- a/app-admin/keepass/keepass-2.34-r1.ebuild
+++ b/app-admin/keepass/keepass-2.35-r1.ebuild
@@ -1,10 +1,10 @@
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2017 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 # $Id$
 
-EAPI=5
+EAPI=6
 
-inherit eutils fdo-mime gnome2-utils mono-env multilib
+inherit eutils fdo-mime gnome2-utils multilib
 
 MY_PN="KeePass"
 DESCRIPTION="A free, open source, light-weight and easy-to-use password 
manager"
@@ -16,31 +16,32 @@ SLOT="0"
 KEYWORDS="~amd64 ~x86"
 IUSE="aot"
 
-COMMON_DEPEND=">=dev-lang/mono-2.10.5"
-RDEPEND="${COMMON_DEPEND}
-       dev-dotnet/libgdiplus[cairo]"
+COMMON_DEPEND="dev-lang/mono"
 DEPEND="${COMMON_DEPEND}
-       app-arch/unzip"
+               app-arch/unzip"
+RDEPEND="${COMMON_DEPEND}
+               dev-dotnet/libgdiplus[cairo]"
 
-S=${WORKDIR}
+S="${WORKDIR}"
+PATCHES=( "${FILESDIR}/${PN}-2.20-xsl-path-detection.patch" )
 
 src_prepare() {
-       # Force text mode for >grep-2.21 (bug #574480)
-       epatch "${FILESDIR}/${PN}-2.31-force-text-grep.patch"
-
-       # Remove Windows-specific things
-       pushd Build > /dev/null || die
-       . PrepMonoDev.sh || die
-       popd > /dev/null || die
-
        # KeePass looks for some XSL files in the same folder as the executable,
-       # we prefer to have it in /usr/share/KeePass
-       epatch "${FILESDIR}/${PN}-2.20-xsl-path-detection.patch"
-       # bug # 558094
-       if has_version ">=dev-lang/mono-4" ; then
-               sed -i -e 's! ToolsVersion="3.5"!!g' 
Translation/TrlUtil/TrlUtil.csproj || die
-               sed -i -e 's/Format Version 10.00/Format Version 11.00/' 
KeePass.sln || die
-       fi
+       # 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
+
+       # New Mono Prep Script until keepass 2.36+ comes out.
+       # This script has been upstreamed, still waiting for final confirmation.
+       local 
newMonoPrepScript="${FILESDIR}/keepass-2.35-new-monoprep-script.sh"
+
+       # Switch into build dir so the mono prepration script works correctly
+       cd Build || die
+       cp -f "${newMonoPrepScript}" PrepMonoDev.sh
+       source PrepMonoDev.sh || die
+       cd ../ || die
 }
 
 src_compile() {
@@ -49,22 +50,24 @@ src_compile() {
 
        # Run Ahead Of Time compiler on the binary
        if use aot; then
-               cp Ext/KeePass.exe.config Build/KeePass/Release/
+               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"
+       make_wrapper "${PN}" "mono /usr/$(get_libdir)/${PN}/KeePass.exe"
 
        # Some XSL files
-       insinto /usr/share/${PN}/XSL
+       insinto "/usr/share/${PN}/XSL"
        doins Ext/XSL/*
 
-       insinto /usr/$(get_libdir)/${PN}/
-       exeinto /usr/$(get_libdir)/${PN}/
+       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
 
@@ -81,13 +84,13 @@ src_install() {
        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;"
+       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 realllllly sucks
+       # sed, because patching this really sucks
        sed -i 's/mono/mono --verify-all/g' "${D}/usr/bin/keepass"
 }
 
@@ -96,13 +99,11 @@ pkg_preinst() {
 }
 
 pkg_postinst() {
-       gnome2_icon_cache_update
-       fdo-mime_mime_database_update
-       fdo-mime_desktop_database_update
+       _update_caches
 
        if ! has_version x11-misc/xdotool ; then
                elog "Optional dependencies:"
-               elog "  x11-misc/xdotool (enables autotype)"
+               elog "  x11-misc/xdotool (enables autotype/autofill)"
        fi
 
        elog "Some systems may experience issues with copy and paste 
operations."
@@ -110,6 +111,10 @@ pkg_postinst() {
 }
 
 pkg_postrm() {
+       _update_caches
+}
+
+_update_caches() {
        gnome2_icon_cache_update
        fdo-mime_mime_database_update
        fdo-mime_desktop_database_update

diff --git a/app-admin/keepass/metadata.xml b/app-admin/keepass/metadata.xml
index 9a5a02b..ca860b2 100644
--- a/app-admin/keepass/metadata.xml
+++ b/app-admin/keepass/metadata.xml
@@ -11,6 +11,7 @@
        </maintainer>
        <maintainer type="person">
                <email>[email protected]</email>
+               <name>Jonathan Vasquez</name>
                <description>Proxy maintainer. CC him on bugs.</description>
        </maintainer>
        <maintainer type="project">

Reply via email to