Package Details: gnucash 2.6.19-2

Git Clone URL: (read-only)
Package Base: gnucash
Description: A personal and small-business financial-accounting application
Upstream URL:
Licenses: GPL
Submitter: City-busz
Maintainer: Schmeidenbacher
Last Packager: Schmeidenbacher
Votes: 97
Popularity: 14.933662
First Submitted: 2017-06-30 07:39
Last Updated: 2018-03-02 13:01

Pinned Comments

Schmeidenbacher commented on 2017-10-10 16:48

All right. This is how i do it. Some things up front. This is a complete version. Meaning it will describe the whole process from point zero.

Please read the whole thing first!

You will most certainly have to adjust it to your setup!

Additionally any packages you have already build and know they are working, you skip the build process of and just include them where needed.

You should have the following installed: base-devel, git and devtools.

$ sudo pacman -S base-devel git devtools --needed

Take note that aur-helpers will do nothing for you. Sometimes other installed packages on your system interfere with a build, in that case you'll have to do a clean build. Any specifics to the process can be found here ( if there are any questions.

Additionally, i have a tmpfs RAM-Disk mounted in /tmp, which i usually use to build.

The filesystem you build on will need to be mounted with the suid and the exec flag on, or it won't work. So in my case, since i usually don't have /tmp mounted that way i have to do this:

$ sudo mount -o remount,exec,suid /tmp

Then i prepare the chroot as follows:

$ mkdir /tmp/source/chroot -p

$ cd /tmp/source

$ sudo mkarchroot chroot/root base-devel

With the chroot in place it's time to get the needed package sources. (Again, skip what's already build and working).

$ git clone ""

$ git clone ""

$ git clone ""

First off: goffice0.8

$ cd goffice0.8/

$ makechrootpkg -T -r ../chroot/

For a quick explanation: The -T flag tells it to create a temporary copy of the original chroot, allowing for the same basic installation to be reused. and the -r flag points it to the the base dir in which the actual chroot we earlier created resides.

This usually builds pretty fast. I keep the build packages around, so that i don't have to rebuild them in the same place the system keeps em:

$ sudo cp *.pkg.tar.xz /var/cache/pacman/pkg/.

Now it's time for the big one. webkitgtk2 takes hours to build. For me it's something between 5 to 6 hours. It's sadly needed until the next stable branch of gnucash is released which won't need this anymore. Basically it's the exact same as with goffice0.8. Again: if you have a working version, you won't need to build this. But since the cairo update, you probably will.

$ cd ../webkitgtk/

$ makechrootpkg -T -r ../chroot/

$ sudo cp *.pkg.tar.xz /var/cache/pacman/pkg/.

Now we have every package to actually build gnucash.

$ cd ../gnucash/

Gnucash needs the aforementioned packages to get built, you use the -I flag with makechrootpkg to install it in the build copy of your chroot for that one build. Note, again, that you might need to adjust the paths to those packages.

$ makechrootpkg -T -r ../chroot/ -I ../goffice0.8/goffice0.8-0.8.17-4-x86_64.pkg.tar.xz -I ../webkitgtk/webkitgtk2-2.4.11-7-x86_64.pkg.tar.xz

$ sudo cp *.pkg.tar.xz /var/cache/pacman/pkg/.

Now that all packages are built, it's time to install them.

$ sudo pacman -U gnucash.pkg.tar.xz ../webkitgtk/webkitgtk2.pkg.tar.xz ../goffice0.8/goffice0.8*.pkg.tar.xz

And that's how i do it.

Note that this should only be neccessary if there are any changes that affect webkitgtk2 or if you have some obscure packages installed i don't know about. Otherwise gnucash should build normally even with an AUR helper.

Hope that helped.

Latest Comments

Schmeidenbacher commented on 2018-03-14 21:23

@lmat: This might sound like a stupid question, but did you download the latest PKGBUILD for gnucash? I don't list enchant1.6 as a dependency since 20th of December. Neither does webkitgtk2 anymore, they depend on the enchant version provided by the official repos.

This is a weird error i can't reproduce at all. I assume your system is up to date as well (pacman -Syu). Right now i have no clue what's happening there.

And, just out of curiosity, since the version on your webkitgtk2 hints to me that you're using the archlinuxcn repo. If that's the case, they do have gnucash precompiled as well, btw.

lmat commented on 2018-03-14 14:07

It sounds like this is already sorted by many, but I'm not getting it. When running makepkg -sri; on gnucash, I get "error: target not found: enchant1.6". It sounds like folks are saying that enchant comes with webkitgtk2. pacman -Q | grep webkit shows webkit2gtk 2.18.6, webkitgtk 2.4.11, webkitgtk2 3:2.4.11; What am I missing?

kikislater commented on 2018-03-12 15:43

Nice ! Thank you Schmeidenbacher

Schmeidenbacher commented on 2018-03-11 21:57

@Lindhe: Straight from the webkitgtk2 aur page:

Server = <>$arch

That repo should have all the packages needed available. Disclosure: Not my repo, but from the Archlinux CN folks.

Lindhe commented on 2018-03-11 19:34

Compilation takes a billion years. Could we get a bin version, please?

kikislater commented on 2018-03-10 08:22

Ok thank you ! Building webkitgtk2 takes very very long time even with i7 4790k ... That's why I asked

Schmeidenbacher commented on 2018-03-10 07:58

@kikislater: In short: Both use different function calls for one. Webkit2gtk from the repos is newer and has no known security problems, while the older webkitgtk2 has known issues in that regard. Because of that, archlinux purged it from the official repos and anything with it that depends on it. Like gnucash, for instance.

This gnucash package is currently dependend on the old version, since the gnucash developers used webkitgtk2 in their project. And since one can't simply swap the two libraries out and be done with it, we're stuck with it for now.

The next major release (version 3.0 of gnucash) is under development using webkit2gtk. It's currently in it's development branch as version 2.7.5. Note that this version is described as unstable by the devs und undergoing massive changes.

It's not a good idea to switch to it right now if you depend on your data, since it's possible that it might get destroyed by the unstable version, or made unusable for the older version once the unstable one ran once. People who really rely on this software and handle real financial values with it should not take that risk.

With those risks in mind: there is the gnucash-git aur package which should use the newest version available.

Once they release with no legacy dependencies left, it's possible that this package moves back to the official repos.

kikislater commented on 2018-03-09 10:31

What is the difference between webkit2gtk available in repository and webkitgtk2 in AUR ? And why gnucash doesn't work with webkit2gtk

colinkeenan commented on 2018-03-02 19:46

Failed same as for @masterkorp. I guess it's time for me to rebuild webkitgtk2 for archlinuxcn. Nevermind, just realized I accidently installed an older version of webkitgtk2 in the clean chroot.

Schmeidenbacher commented on 2018-03-02 13:02

@amish: Thanks for the contribution. Done!

All comments