~ruther/guix-local

5ec3c17a214499484e766af4c2198b8c8e90f82f — Sharlatan Hellseher 1 year, 2 months ago 23e2047
gnu: navit: Fix indentation.

* gnu/packages/geo.scm (navit): Fix indentation, add maintenance note
about used commit.

Change-Id: Ic2a5d55de98399c4202c70b1b4fce483277e0e60
1 files changed, 98 insertions(+), 96 deletions(-)

M gnu/packages/geo.scm
M gnu/packages/geo.scm => gnu/packages/geo.scm +98 -96
@@ 3963,112 3963,114 @@ time.  Interactively visualize vector, raster and volume data.")
    (license license:gpl2+)))

(define-public navit
  ;; XXX: The latest commit provides compatibility with GCC 14, switch to tag
  ;; when a fresh release is available.
  (let ((commit "2418e3f42af0641c734f93f3d6d20d3025ad2182")
        (revision "0"))
  (package
    (name "navit")
    (version (git-version "0.5.6" revision commit))
    (source (origin
              (method git-fetch)
              (uri (git-reference
                    (url "https://github.com/navit-gps/navit")
                    (commit commit)))
              (sha256
               (base32
                "0s7rhg1xyj56g19fh84znj6fzdiglgf010appjydivn5gkyzb9kq"))
              (file-name (git-file-name name version))))
    (build-system cmake-build-system)
    (arguments
     (list
      ;; There are no tests
      #:tests? #f
      ;; With -DSAMPLE_MAP=TRUE (the default), it tries to download a
      ;; map during the build process.
      #:configure-flags #~(list "-DSAMPLE_MAP=FALSE")
      #:phases
      #~(modify-phases %standard-phases
          (add-after
              'unpack 'patch-navit-config
            (lambda _
              ;; For now this package only supports SDL, so if we keep
              ;; the configuration as-is, Navit doesn't start.
              (substitute*
                  "navit/navit_shipped.xml"
                (("<graphics type=\"gtk_drawing_area\"/>")
                 "<graphics type=\"sdl\"/>"))
              ;; Users are expected to be able to add XML files inside
              ;; $NAVIT_SHAREDIR, however that directory is in the store.
              (substitute*
                  "navit/navit_shipped.xml"
                (("<xi:include href=\"\\$NAVIT_SHAREDIR/maps/\\*\\.xml\"/>")
                 "<xi:include href=\"$NAVIT_USER_DATADIR/maps/*.xml\"/>"))
              ;; Navit also works without GPS but in that case there is
              ;; no automatic zooming, so we need zoom buttons to be able
              ;; to manually zoom in or out.
              (substitute*
                  "navit/navit_shipped.xml"
                (((string-append
                   "<osd enabled=\"no\" type=\"button\" x=\"-96\" y=\"-96\" "
                   "command=\"zoom_in()"))
                 (string-append
                  "<osd enabled=\"yes\" type=\"button\" x=\"-96\" y=\"-96\" "
                  "command=\"zoom_in()"))
                (((string-append
                   "<osd enabled=\"no\" type=\"button\" x=\"0\" y=\"-96\" "
                   "command=\"zoom_out()"))
                 (string-append
                  "<osd enabled=\"yes\" type=\"button\" x=\"0\" y=\"-96\" "
                  "command=\"zoom_out()\" src=\"zoom_out.png\"/>")))))
          (add-before
              'build 'set-cache
            ;; During the build, svg icons are converted in different
            ;; formats, and this needs XDG_CACHE_HOME to work.
            (lambda _
              (setenv "XDG_CACHE_HOME" "/tmp/xdg-cache"))))))
    (inputs (list dbus-glib
                  espeak
                  freeglut
                  freeimage
                  freetype
                  fribidi
                  glib
                  gettext-minimal
                  gpsd
                  gdk-pixbuf
                  imlib2
                  python
                  sdl
                  sdl-image))
    (native-inputs (list fontconfig
                         (librsvg-for-system)
                         libxslt
                         pkg-config
                         protobuf-c))
    (home-page "https://www.navit-project.org")
    (synopsis "Car navigation system with routing engine that uses vector maps data")
    (description "Navit is a car navigation system with a routing engine.
    (package
      (name "navit")
      (version (git-version "0.5.6" revision commit))
      (source (origin
                (method git-fetch)
                (uri (git-reference
                       (url "https://github.com/navit-gps/navit")
                       (commit commit)))
                (sha256
                 (base32
                  "0s7rhg1xyj56g19fh84znj6fzdiglgf010appjydivn5gkyzb9kq"))
                (file-name (git-file-name name version))))
      (build-system cmake-build-system)
      (arguments
       (list
        ;; There are no tests
        #:tests? #f
        ;; With -DSAMPLE_MAP=TRUE (the default), it tries to download a
        ;; map during the build process.
        #:configure-flags #~(list "-DSAMPLE_MAP=FALSE")
        #:phases
        #~(modify-phases %standard-phases
            (add-after
                'unpack 'patch-navit-config
              (lambda _
                ;; For now this package only supports SDL, so if we keep
                ;; the configuration as-is, Navit doesn't start.
                (substitute*
                    "navit/navit_shipped.xml"
                  (("<graphics type=\"gtk_drawing_area\"/>")
                   "<graphics type=\"sdl\"/>"))
                ;; Users are expected to be able to add XML files inside
                ;; $NAVIT_SHAREDIR, however that directory is in the store.
                (substitute*
                    "navit/navit_shipped.xml"
                  (("<xi:include href=\"\\$NAVIT_SHAREDIR/maps/\\*\\.xml\"/>")
                   "<xi:include href=\"$NAVIT_USER_DATADIR/maps/*.xml\"/>"))
                ;; Navit also works without GPS but in that case there is
                ;; no automatic zooming, so we need zoom buttons to be able
                ;; to manually zoom in or out.
                (substitute*
                    "navit/navit_shipped.xml"
                  (((string-append
                     "<osd enabled=\"no\" type=\"button\" x=\"-96\" y=\"-96\" "
                     "command=\"zoom_in()"))
                   (string-append
                    "<osd enabled=\"yes\" type=\"button\" x=\"-96\" y=\"-96\" "
                    "command=\"zoom_in()"))
                  (((string-append
                     "<osd enabled=\"no\" type=\"button\" x=\"0\" y=\"-96\" "
                     "command=\"zoom_out()"))
                   (string-append
                    "<osd enabled=\"yes\" type=\"button\" x=\"0\" y=\"-96\" "
                    "command=\"zoom_out()\" src=\"zoom_out.png\"/>")))))
            (add-before
                'build 'set-cache
              ;; During the build, svg icons are converted in different
              ;; formats, and this needs XDG_CACHE_HOME to work.
              (lambda _
                (setenv "XDG_CACHE_HOME" "/tmp/xdg-cache"))))))
      (inputs (list dbus-glib
                    espeak
                    freeglut
                    freeimage
                    freetype
                    fribidi
                    glib
                    gettext-minimal
                    gpsd
                    gdk-pixbuf
                    imlib2
                    python
                    sdl
                    sdl-image))
      (native-inputs (list fontconfig
                           (librsvg-for-system)
                           libxslt
                           pkg-config
                           protobuf-c))
      (home-page "https://www.navit-project.org")
      (synopsis "Car navigation system with routing engine that uses vector maps data")
      (description
       "Navit is a car navigation system with a routing engine.

It is meant to work with touchscreen devices, but it also works
without a touchscreen.  It also supports text to speech.
It is meant to work with touchscreen devices, but it also works without a
touchscreen.  It also supports text to speech.

It can be configured extensively through its own configuration file
format.  For instance we can configure the graphical interface, and
which map data is to be displayed at which zoom level.
It can be configured extensively through its own configuration file format.
For instance we can configure the graphical interface, and which map data is
to be displayed at which zoom level.

It supports different routing profiles: bike, car, car_avoid_toll,
car_pedantic, car_shortest, horse, pedestrian, truck.

It can use gpsd or NMEA GPS directly to get position data.  It also
works without GPS: in this case users can also enter position data
directly.
It can use gpsd or NMEA GPS directly to get position data.  It also works
without GPS: in this case users can also enter position data directly.

It can also be used to log GPS data to files using the GPX or NMEA
formats, or to replay NMEA data.
It can also be used to log GPS data to files using the GPX or NMEA formats, or
to replay NMEA data.

For maps, it can uses its own \"binfile\" map format, or Garmin map
file format, and data from OpenStreetMap, Garmin maps, Marco Polo
Grosser Reiseplaner, Routeplaner Europa 2007, Map + Route.")
    (license license:gpl2))))
For maps, it can uses its own \"binfile\" map format, or Garmin map file
format, and data from OpenStreetMap, Garmin maps, Marco Polo Grosser
Reiseplaner, Routeplaner Europa 2007, Map + Route.")
      (license license:gpl2))))

(define-public laszip
  (package