On 2020.04.17 11:04, Thomas Baumgart wrote:
On Freitag, 17. April 2020 16:53:31 CEST Jack wrote:
> On 2020.04.17 05:13, Ralf Habacker wrote:
> > Hi all,
> >
I found some time to update the snapshot page, which provides access to cross compiled kmymoney snapshots.
> >
> > See https://kmymoney.org/snapshots.php for details.
> >
> > Regards
> >
> > Ralf
> Ralf,
>
Do these include support for encryption? I've been working on that, and it seems the main thing which needs to be added is pinentry. I made a first pass at a blueprint, which does work, but probably needs to be tuned by someone who understands craft better than I do. However, with that installed, and manually configuring and starting gpg-agent, KMyMoney will properly save and open encrypted files. What I have not figured out yet is how to be sure that gpg-agent will start automatically when needed, although I have not spent much time on that yet. Let me know if you want me to send you a copy of that blueprint, or post it somewhere.

Why don't you send it here to the list? Then we can take care of it (or even enhance the whole thing to start the agent when needed).

If you can elaborate on the "manual configuration and start of the agent" a bit more I could spend some time to look into it.

--

Regards

Thomas Baumgart
I've attached the blueprint. I simply copied one of the other gnupg related blueprints under .../libs/_autotools/, edited the directory names, and commented out the postinstall call. So far my testing is all as installed by craft, not yet packaged and installed from the package - which is why I'm still not certain about getting gpg-agent to run. For me, the config files are under C:\Users\myname\AppData\Roaming\gnupg, and I added the line "pinentry-program C:\CraftMingw\bin\pinentry-qt.exe" to gpg-agent.conf. For a packaged version, I assume that would point to somewhere under C:\Program Files\KMyMoney\.

When I just tried running kmymoney, it did not offer encryption, but if I started gpg-agent first (gpg-connect-agent ./bye) first, it worked fine. I have not fully researched what other gnupg related actions or calls might automatically start gpg-agent. Since I have not yet gone through a full, clean cycle of building KMM, I don't know whether that would still be necessary. I also don't know what interaction their might be between the packaged pinentry and a full install of gpg4win.

Jack
import info


class subinfo(info.infoclass):
    def setTargets( self ):
        for ver in ["1.1.0"]:
            self.targets[ ver ] = f"https://www.gnupg.org/ftp/gcrypt/pinentry/pinentry-{ver}.tar.bz2";
            self.targetInstSrc[ ver ] = f"pinentry-{ver}"

        self.targetDigests['1.1.0'] = (['68076686fa724a290ea49cdf0d1c0c1500907d1b759a3bcbfbec0293e8f56570'], CraftHash.HashAlgorithm.SHA256)

        self.description = "Simple passphrase entry dialogs which utilize the Assuan protocol"
        self.patchLevel["1.1.0"] = 1
        self.defaultTarget = "1.1.0"

    def setDependencies( self ):
        self.buildDependencies["dev-utils/msys"] = None
        self.runtimeDependencies["virtual/base"] = None
        self.runtimeDependencies["libs/gpg-error"] = None

from Package.AutoToolsPackageBase import *

class Package(AutoToolsPackageBase):
    def __init__( self, **args ):
        AutoToolsPackageBase.__init__( self )

#    def postInstall( self ):
#        return (self.patchInstallPrefix([os.path.join(self.installDir(), "bin", "libassuan-config")],
#                                OsUtils.toMSysPath(self.subinfo.buildPrefix),
#                                OsUtils.toMSysPath(CraftCore.standardDirs.craftRoot())))

Reply via email to