Since the setting DCMAKE_SKIP_BUILD_RPATH was disabled, we can now run
the checkPhase of cmake derivations without having to tweak the
LD_LIBRARY_PATH anymore.
GnuCash uses Gnome's GSettings to store user preferences. This was not
working before. wrapGAppsHook is introduced to solve this problem, but
it must be tweaked to not wrap GnuCash's cli utilities for fetching
financial quotes. Those are now deliberately wrapped with their Perl
library dependencies.
The existing code is refactored in an attempt to clarify which
dependencies are needed and why.
I wouldn't be able to say exactly why this is the case, but with the
flags that enableDebugging adds to the gnucash derivation, the build
fails. The patch added fixes the warning that causes the build to fail
and makes enableDebugging gnucash work.
The glibc patch is no longer needed, as it's included in 4.6.
This release also includes 888676eb31,
which allows building gnucash as (enableDebugging gnucash) using nix.
The GNU Cash package clearly *wants* to be able to use the libdbi
backends, since it pulls them in as dependencies. However, you can only
open xml formatted GNU cash files.
The CMake scripts hard-code the DVD path to be basically
<PATH_OF_LIBDBI>/dbd. However GNU Cash does check the environment
variable GNC_DBD_DIR, so I set that environment variable in the wrapper
script.
With this change, you should be able to e.g. "Save As" in the sqlite
format.
Fixes issue #57445
Naive concatenation of $LD_LIBRARY_PATH can result in an empty
colon-delimited segment; this tells glibc to load libraries from the
current directory, which is definitely wrong, and may be a security
vulnerability if the current directory is untrusted. (See #67234, for
example.) Fix this throughout the tree.
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools.
This update was made based on information from https://repology.org/metapackage/gnucash/versions.
These checks were done:
- built on NixOS
- /nix/store/29l8ziil4znyr07dm7f8ki893bqfzqm5-gnucash-3.2/bin/gnc-fq-check passed the binary check.
- /nix/store/29l8ziil4znyr07dm7f8ki893bqfzqm5-gnucash-3.2/bin/gnc-fq-helper passed the binary check.
- /nix/store/29l8ziil4znyr07dm7f8ki893bqfzqm5-gnucash-3.2/bin/gnc-fq-dump passed the binary check.
- /nix/store/29l8ziil4znyr07dm7f8ki893bqfzqm5-gnucash-3.2/bin/gnucash passed the binary check.
- /nix/store/29l8ziil4znyr07dm7f8ki893bqfzqm5-gnucash-3.2/bin/.gnucash-wrapped passed the binary check.
- 5 of 5 passed binary check by having a zero exit code.
- 0 of 5 passed binary check by having the new version present in output.
- found 3.2 with grep in /nix/store/29l8ziil4znyr07dm7f8ki893bqfzqm5-gnucash-3.2
- directory tree listing: https://gist.github.com/c6f09b837c81684d4febbc1c369ae53d
- du listing: https://gist.github.com/f9960cc6c0b43d70986bb1b51c109a68