mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-11-07 15:36:20 -05:00
gnu: Add gbonds.
* gnu/packages/finance.scm (gbonds): New variable. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
parent
44857d4baa
commit
87a10e315f
1 changed files with 122 additions and 0 deletions
|
@ -29,6 +29,7 @@
|
|||
;;; Copyright © 2022 Kyle Meyer <kyle@kyleam.com>
|
||||
;;; Copyright © 2022 Aleksandr Vityazev <avityazev@posteo.org>
|
||||
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
||||
;;; Copyright © 2022 Philip McGrath <philip@philipmcgrath.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -62,6 +63,7 @@ (define-module (gnu packages finance)
|
|||
#:use-module (guix deprecation)
|
||||
#:use-module (guix gexp)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (srfi srfi-26)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages aidc)
|
||||
#:use-module (gnu packages autotools)
|
||||
|
@ -1350,6 +1352,126 @@ (define-public grisbi
|
|||
(home-page "https://grisbi.org")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public gbonds
|
||||
;; The last "upstream" commit is from about 2008, but the Debian maintainers
|
||||
;; have effectively become the upstream with an extensive series of patches.
|
||||
;; However, the patches are stored "unapplied", and some enhancements (like
|
||||
;; a decade's worth of new data files) rely on the Debian packaging tools,
|
||||
;; so building normally even from the patched sources would miss them.
|
||||
;; Here, we do all of the patching in the origin, so that the result of
|
||||
;; `guix build --source` is actually useable for building without Guix.
|
||||
(let ((revision "1")
|
||||
(commit "3054ee2f90cc7c03ed6b131177d09701c7a4fced"))
|
||||
(package
|
||||
(name "gbonds")
|
||||
(version (git-version "2.0.3" revision commit))
|
||||
(source
|
||||
(let ((unapplied
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://salsa.debian.org/debian/gbonds.git")
|
||||
(commit commit)))
|
||||
(sha256
|
||||
(base32
|
||||
"1sqzzfymzxbnq6cjs5wvjbnvcrkdlimlmj2h7mlcaa9qqdpsgfki"))
|
||||
(file-name (git-file-name name version)))))
|
||||
(origin
|
||||
(inherit unapplied)
|
||||
(patches
|
||||
;; The order matters.
|
||||
(map (cut file-append unapplied "/debian/patches/" <>)
|
||||
'("desktop-file"
|
||||
"POTFILES"
|
||||
"POTFILES.missing"
|
||||
"commands-compile"
|
||||
"egg-recent-model-compile"
|
||||
"gbonds-name-case"
|
||||
"copyright-update"
|
||||
"website-url"
|
||||
"link-libm"
|
||||
"xmldocs"
|
||||
"configure-compiler-warnings"
|
||||
"omf"
|
||||
"desktop-file-keywords"
|
||||
"replace-g_strcasecmp"
|
||||
"gtk3-port"
|
||||
"gsettings-port"
|
||||
"no-rarian-compat"
|
||||
"extern-gb_prefs"
|
||||
"use-treasury-api.patch")))
|
||||
(snippet
|
||||
#~(begin
|
||||
(use-modules (guix build utils)
|
||||
(srfi srfi-26))
|
||||
|
||||
;; Remove generated files, which have not been patched.
|
||||
(for-each (lambda (pth)
|
||||
(when (file-exists? pth)
|
||||
(delete-file pth)))
|
||||
`(;; Things `make maintainer-clean` would do.
|
||||
"gbonds.spec"
|
||||
"src/marshal.c"
|
||||
"src/marshal.h"
|
||||
;; Things upstream's distclean missed.
|
||||
"intltool-extract"
|
||||
"intltool-merge"
|
||||
"intltool-update"
|
||||
;; Autotools generated files.
|
||||
"aclocal.m4"
|
||||
"config.guess"
|
||||
"config.h.in"
|
||||
"config.log"
|
||||
"config.sub"
|
||||
"configure"
|
||||
"depcomp"
|
||||
"intltool-extract.in"
|
||||
"intltool-merge.in"
|
||||
"intltool-update.in"
|
||||
"ltmain.sh"
|
||||
,@(find-files "." "^Makefile\\.in$")))
|
||||
|
||||
;; Arrange for `make install` to handle the additional
|
||||
;; redemption data files added in the Debian packaging.
|
||||
(let* ((new-redemption-data-files
|
||||
(find-files "debian" "^sb[[:digit:]]+\\.asc$"))
|
||||
(names
|
||||
(map (cut substring <> (string-length "debian/"))
|
||||
new-redemption-data-files)))
|
||||
(for-each rename-file
|
||||
new-redemption-data-files
|
||||
(map (cut string-append "data/" <>)
|
||||
names))
|
||||
(substitute* "data/Makefile.am"
|
||||
(("redemption_DATA = \\\\")
|
||||
(apply string-append
|
||||
"redemption_DATA = \\"
|
||||
(map (cut string-append "\n\t" <> " \\")
|
||||
names))))))))))
|
||||
(outputs '("out" "debug"))
|
||||
(inputs (list gtk+
|
||||
glib
|
||||
json-glib
|
||||
libxml2
|
||||
libsoup-minimal-2
|
||||
cairo
|
||||
pango))
|
||||
(native-inputs (list autoconf
|
||||
automake
|
||||
intltool
|
||||
libtool
|
||||
patch
|
||||
pkg-config))
|
||||
(build-system glib-or-gtk-build-system)
|
||||
(home-page "http://gbonds.sourceforge.net")
|
||||
(synopsis "@acronym{U.S.} Savings Bond inventory program for GNOME")
|
||||
(description
|
||||
"GBonds is a @acronym{U.S.} Savings Bond inventory program for the
|
||||
GNOME desktop environment. It allows you to track the current redemption
|
||||
value and performance of your @acronym{U.S.} Savings Bonds and keep a valuable
|
||||
record of the bonds you own.")
|
||||
(license license:gpl2+))))
|
||||
|
||||
(define-public trezord-udev-rules
|
||||
(let ((commit "bff7fdfe436c727982cc553bdfb29a9021b423b0")
|
||||
(revision "0"))
|
||||
|
|
Loading…
Reference in a new issue