gnu: slepc: Set origin file-name.
[jackhill/guix/guix.git] / gnu / packages / gps.scm
CommitLineData
83aabfbc 1;;; GNU Guix --- Functional package management for GNU
ce0614dd 2;;; Copyright © 2014, 2015 Ludovic Courtès <ludo@gnu.org>
6f1c3b80 3;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
83aabfbc
LC
4;;;
5;;; This file is part of GNU Guix.
6;;;
7;;; GNU Guix is free software; you can redistribute it and/or modify it
8;;; under the terms of the GNU General Public License as published by
9;;; the Free Software Foundation; either version 3 of the License, or (at
10;;; your option) any later version.
11;;;
12;;; GNU Guix is distributed in the hope that it will be useful, but
13;;; WITHOUT ANY WARRANTY; without even the implied warranty of
14;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15;;; GNU General Public License for more details.
16;;;
17;;; You should have received a copy of the GNU General Public License
18;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
19
20(define-module (gnu packages gps)
21 #:use-module (guix packages)
22 #:use-module (guix download)
3b239720 23 #:use-module (guix git-download)
83aabfbc
LC
24 #:use-module (guix build-system gnu)
25 #:use-module ((guix licenses) #:prefix license:)
ce0614dd 26 #:use-module (gnu packages base)
3b239720 27 #:use-module (gnu packages pkg-config)
83aabfbc 28 #:use-module (gnu packages compression)
3b239720
LC
29 #:use-module (gnu packages docbook)
30 #:use-module (gnu packages geeqie) ;exiv2
83aabfbc 31 #:use-module (gnu packages xml)
3b239720 32 #:use-module (gnu packages gtk)
83aabfbc
LC
33 #:use-module (gnu packages qt))
34
35(define-public gpsbabel
36 (package
37 (name "gpsbabel")
6f1c3b80 38 (version "1.5.2")
83aabfbc
LC
39 (source (origin
40 (method url-fetch)
41 ;; XXX: Downloads from gpsbabel.org are hidden behind a POST, so
42 ;; get it from elsewhere.
43 (uri (string-append
44 "mirror://debian/pool/main/g/gpsbabel/gpsbabel_"
45 version ".orig.tar.gz"))
46 (sha256
47 (base32
6f1c3b80 48 "0xf7wmy2m29g2lm8lqc74yf8rf7sxfl3cfwbk7dpf0yf42pb0b6w"))))
83aabfbc
LC
49 (build-system gnu-build-system)
50 (arguments
82350397 51 `(#:configure-flags '("--with-zlib=system")
c5a6e33b
EF
52 #:phases
53 (modify-phases %standard-phases
54 (add-before 'configure 'pre-configure
55 (lambda _
56 (chdir "gpsbabel"))))
57 ;; TODO: "make doc" requires Docbook & co.
82350397
LC
58
59 ;; On i686, 'raymarine.test' fails because of a rounding error:
60 ;; <http://hydra.gnu.org/build/133040>. As a workaround, disable tests
61 ;; on these platforms.
49aeaedf 62 #:tests? ,(not (string-prefix? "i686" (%current-system)))))
83aabfbc
LC
63 (inputs
64 `(("expat" ,expat)
65 ("zlib" ,zlib)
6f1c3b80 66 ("qt" ,qt)))
83aabfbc
LC
67 (native-inputs
68 `(("which" ,which)
69 ("libxml2" ,libxml2))) ;'xmllint' needed for the KML tests
70 (home-page "http://www.gpsbabel.org/")
71 (synopsis "Convert and exchange data with GPS and map programs")
72 (description
73 "GPSBabel converts waypoints, tracks, and routes between hundreds of
74popular GPS receivers and mapping programs. It contains extensive data
75manipulation abilities making it a convenient for server-side processing or as
76the back-end for other tools. It does not convert, transfer, send, or
77manipulate maps.")
78 (license license:gpl2+)))
3b239720
LC
79
80(define-public gpscorrelate
81 ;; This program is "lightly maintained", so to speak, so we end up taking it
82 ;; directly from its Git repo.
83 (let ((commit "365f6e1b3f"))
84 (package
85 (name "gpscorrelate")
86 (version (string-append "1.6.1." commit))
87 (source (origin
88 (method git-fetch)
89 (uri (git-reference
90 (url "https://github.com/freefoote/gpscorrelate")
91 (commit commit)))
92 (sha256
93 (base32
94 "006a6l8p38a4h7y2959sqrmjjn29d8pd50zj9nypcp5ph18nybjb"))))
95 (build-system gnu-build-system)
96 (arguments
97 `(#:phases (alist-replace
98 'configure
99 (lambda* (#:key inputs outputs #:allow-other-keys)
100 ;; This is a rudimentary build system.
101 (substitute* "Makefile"
102 (("prefix[[:blank:]]*=.*$")
103 (string-append "prefix = " (assoc-ref outputs "out")
2a8d4401 104 "\n"))))
3b239720
LC
105 %standard-phases)
106 #:tests? #f))
107 (inputs
108 `(("gtk+" ,gtk+-2)
109 ("libxml2" ,libxml2)
110 ("exiv2" ,exiv2)))
111 (native-inputs
112 `(("pkg-config" ,pkg-config)
113 ("docbook-xml" ,docbook-xml)
114 ("docbook-xsl" ,docbook-xsl)
115 ("libxslt" ,libxslt)))
116 (home-page "http://freefoote.dview.net/linux/gpscorrelate")
117 (synopsis "GPS photo correlation tool to geo-localize images")
118 (description
119 "GPS Correlate is a program to match a recorded GPS track with the EXIF
120tags in digital camera photos, and update the EXIF tags with the location that
121the photo was taken. It does this by using the timestamp in the photo and
122finding a data point in the GPS track that matches, or interpolating a point
123between two other data points.")
124 (license license:gpl2+))))