unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCH] gnu: add geos
@ 2017-01-20 17:35 Björn Höfling
  2017-01-21 13:08 ` Marius Bakke
  0 siblings, 1 reply; 4+ messages in thread
From: Björn Höfling @ 2017-01-20 17:35 UTC (permalink / raw)
  To: guix-devel


* gnu/packages/geo.scm (geos): New variable.
---
 gnu/packages/geo.scm | 34 ++++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)

diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
index 797b9ea30..75fde2752 100644
--- a/gnu/packages/geo.scm
+++ b/gnu/packages/geo.scm
@@ -32,6 +32,40 @@
   #:use-module (gnu packages webkit)
   #:use-module (gnu packages xml))
 
+(define-public geos
+  (package
+    (name "geos")
+    (version "3.6.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "http://download.osgeo.org/geos/geos-"
+                                  version
+                                  ".tar.bz2"))
+              (sha256
+               (base32
+                "1icz31kd5sml2kdxhjznvmv33zfr6nig9l0i6bdcz9q9g8x4wbja"))))
+    (build-system gnu-build-system)
+    (arguments `(#:phases
+                 (modify-phases %standard-phases
+                   (add-after
+                       'unpack 'patch-test-shebangs
+                     (lambda _
+                       (substitute* '("tests/xmltester/testrunner.sh"
+                                      "tests/geostest/testrunner.sh")
+                         (("/bin/sh") (which "bash")))
+                       #t)))))
+    (inputs
+     `(("glib" ,glib)))
+    (home-page "https://geos.osgeo.org/")
+    (synopsis "Geometry Engine - Open Source")
+    (description
+     "GEOS (Geometry Engine - Open Source) is a C++ port of the
+Java Topology Suite (JTS).  As such, it aims to contain the complete
+functionality of JTS in C++.  This includes all the OpenGIS Simple Features
+for SQL spatial predicate functions and spatial operators,
+as well as specific JTS enhanced topology functions.")
+    (license license:lgpl2.1)))
+
 ;;; FIXME GNOME Maps only runs within GNOME. On i3, it fails with this error:
 ;;; (org.gnome.Maps:8568): GLib-GIO-ERROR **: Settings schema
 ;;; 'org.gnome.desktop.interface' is not installed
-- 
2.11.0

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] gnu: add geos
  2017-01-20 17:35 [PATCH] gnu: add geos Björn Höfling
@ 2017-01-21 13:08 ` Marius Bakke
  2017-01-22 23:12   ` Björn Höfling
  0 siblings, 1 reply; 4+ messages in thread
From: Marius Bakke @ 2017-01-21 13:08 UTC (permalink / raw)
  To: Björn Höfling, guix-devel

[-- Attachment #1: Type: text/plain, Size: 2201 bytes --]

Björn Höfling <bjoern.hoefling@bjoernhoefling.de> writes:

> * gnu/packages/geo.scm (geos): New variable.

Thanks for this! I've applied it with some minor changes, described
below:

> +(define-public geos
> +  (package
> +    (name "geos")
> +    (version "3.6.1")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (string-append "http://download.osgeo.org/geos/geos-"
> +                                  version
> +                                  ".tar.bz2"))
> +              (sha256
> +               (base32
> +                "1icz31kd5sml2kdxhjznvmv33zfr6nig9l0i6bdcz9q9g8x4wbja"))))
> +    (build-system gnu-build-system)
> +    (arguments `(#:phases
> +                 (modify-phases %standard-phases
> +                   (add-after
> +                       'unpack 'patch-test-shebangs
> +                     (lambda _
> +                       (substitute* '("tests/xmltester/testrunner.sh"
> +                                      "tests/geostest/testrunner.sh")
> +                         (("/bin/sh") (which "bash")))

Bash behaves differently based on whether it's invoked as 'bash' or
'sh', so I changed this to (which "sh") to be safe.

> +                       #t)))))
> +    (inputs
> +     `(("glib" ,glib)))
> +    (home-page "https://geos.osgeo.org/")
> +    (synopsis "Geometry Engine - Open Source")

We try to avoid terms like "open source" or "free software" since it's
implied in the context of Guix.

> +    (description
> +     "GEOS (Geometry Engine - Open Source) is a C++ port of the
> +Java Topology Suite (JTS).  As such, it aims to contain the complete
> +functionality of JTS in C++.  This includes all the OpenGIS Simple Features
> +for SQL spatial predicate functions and spatial operators,
> +as well as specific JTS enhanced topology functions.")

I took inspiration from Debians description of this package and tweaked
it a little.

> +    (license license:lgpl2.1)))

The files do not mention whether it's 2.1 only or later versions so we
default to "or later". Also found a few files with other licenses.

Pushed as 252611c7c4e72577cd0c91a41e10176f37ac318b !

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] gnu: add geos
  2017-01-21 13:08 ` Marius Bakke
@ 2017-01-22 23:12   ` Björn Höfling
  2017-01-23 16:59     ` Marius Bakke
  0 siblings, 1 reply; 4+ messages in thread
From: Björn Höfling @ 2017-01-22 23:12 UTC (permalink / raw)
  To: guix-devel

Thanks for accepting!

I have some comments/questions below.

Björn

On Sat, 21 Jan 2017 14:08:12 +0100
Marius Bakke <mbakke@fastmail.com> wrote:

> Björn Höfling <bjoern.hoefling@bjoernhoefling.de> writes:
> 
> > * gnu/packages/geo.scm (geos): New variable.  
> 
> Thanks for this! I've applied it with some minor changes, described
> below:
> 
> > +(define-public geos
> > +  (package
> > +    (name "geos")
> > +    (version "3.6.1")
> > +    (source (origin
> > +              (method url-fetch)
> > +              (uri (string-append
> > "http://download.osgeo.org/geos/geos-"
> > +                                  version
> > +                                  ".tar.bz2"))
> > +              (sha256
> > +               (base32
> > +
> > "1icz31kd5sml2kdxhjznvmv33zfr6nig9l0i6bdcz9q9g8x4wbja"))))
> > +    (build-system gnu-build-system)
> > +    (arguments `(#:phases
> > +                 (modify-phases %standard-phases
> > +                   (add-after
> > +                       'unpack 'patch-test-shebangs
> > +                     (lambda _
> > +                       (substitute*
> > '("tests/xmltester/testrunner.sh"
> > +
> > "tests/geostest/testrunner.sh")
> > +                         (("/bin/sh") (which "bash")))  
> 
> Bash behaves differently based on whether it's invoked as 'bash' or
> 'sh', so I changed this to (which "sh") to be safe.

I thought I found that sh-> "bash" substitution quite often, for example here in nginx:

http://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/web.scm#n148



> 
> > +                       #t)))))
> > +    (inputs
> > +     `(("glib" ,glib)))
> > +    (home-page "https://geos.osgeo.org/")
> > +    (synopsis "Geometry Engine - Open Source")  
> 
> We try to avoid terms like "open source" or "free software" since it's
> implied in the context of Guix.

OK, maybe that synopsis was a bit short, because "Geometry Engine - Open Source" is just
the long name of GEOS.

> 
> > +    (description
> > +     "GEOS (Geometry Engine - Open Source) is a C++ port of the
> > +Java Topology Suite (JTS).  As such, it aims to contain the
> > complete +functionality of JTS in C++.  This includes all the
> > OpenGIS Simple Features +for SQL spatial predicate functions and
> > spatial operators, +as well as specific JTS enhanced topology
> > functions.")  
> 
> I took inspiration from Debians description of this package and
> tweaked it a little.
> 
> > +    (license license:lgpl2.1)))  
> 
> The files do not mention whether it's 2.1 only or later versions so we
> default to "or later". Also found a few files with other licenses.

I also found no mentioning of "later" or not, so I thought to stick with the
mentioned license version. What makes you use the "or later" version?

> 
> Pushed as 252611c7c4e72577cd0c91a41e10176f37ac318b !

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] gnu: add geos
  2017-01-22 23:12   ` Björn Höfling
@ 2017-01-23 16:59     ` Marius Bakke
  0 siblings, 0 replies; 4+ messages in thread
From: Marius Bakke @ 2017-01-23 16:59 UTC (permalink / raw)
  To: Björn Höfling, guix-devel

[-- Attachment #1: Type: text/plain, Size: 1652 bytes --]

Björn Höfling <bjoern.hoefling@bjoernhoefling.de> writes:

> Thanks for accepting!
>
> I have some comments/questions below.
>
>> > +    (arguments `(#:phases
>> > +                 (modify-phases %standard-phases
>> > +                   (add-after
>> > +                       'unpack 'patch-test-shebangs
>> > +                     (lambda _
>> > +                       (substitute*
>> > '("tests/xmltester/testrunner.sh"
>> > +
>> > "tests/geostest/testrunner.sh")
>> > +                         (("/bin/sh") (which "bash")))  
>> 
>> Bash behaves differently based on whether it's invoked as 'bash' or
>> 'sh', so I changed this to (which "sh") to be safe.
>
> I thought I found that sh-> "bash" substitution quite often, for example here in nginx:
>
> http://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/web.scm#n148

Thanks for catching that; fixed! :-)

It's something we've only recently started to take care of. Feel free to
submit patches!

>> > +    (license license:lgpl2.1)))  
>> 
>> The files do not mention whether it's 2.1 only or later versions so we
>> default to "or later". Also found a few files with other licenses.
>
> I also found no mentioning of "later" or not, so I thought to stick with the
> mentioned license version. What makes you use the "or later" version?

This convention has been mentioned to me in passing a couple of times on
this mailing list. I'm not sure where it comes from, but often
double-check with Debians copyright information which settled on the
same license:

http://metadata.ftp-master.debian.org/changelogs/main/g/geos/geos_3.5.1-3_copyright

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2017-01-23 17:00 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-01-20 17:35 [PATCH] gnu: add geos Björn Höfling
2017-01-21 13:08 ` Marius Bakke
2017-01-22 23:12   ` Björn Höfling
2017-01-23 16:59     ` Marius Bakke

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).