unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCH 0/3] Prefix "java-" for Java packages
@ 2016-04-14 19:51 Hartmut Goebel
  2016-04-14 19:51 ` [PATCH 1/3] doc: Add specification " Hartmut Goebel
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Hartmut Goebel @ 2016-04-14 19:51 UTC (permalink / raw)
  To: guix-devel

As discussed on the mailinglist earlier this day, these patches
introduce the prefix "java-" for Java packages.

Hartmut Goebel (3):
  doc: Add specification for Java packages
  gnu: Rename Java packages to match new naming specification.
  gnu: Add aliases for the old Java package names.

 doc/guix.texi                   | 19 +++++++++++++++++++
 gnu/packages/bioinformatics.scm | 20 ++++++++++++++------
 gnu/packages/java.scm           |  8 ++++++--
 gnu/packages/music.scm          |  6 +++---
 4 files changed, 42 insertions(+), 11 deletions(-)

-- 
2.7.4

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

* [PATCH 1/3] doc: Add specification for Java packages
  2016-04-14 19:51 [PATCH 0/3] Prefix "java-" for Java packages Hartmut Goebel
@ 2016-04-14 19:51 ` Hartmut Goebel
  2016-04-15 20:15   ` Leo Famulari
  2016-04-14 19:51 ` [PATCH 2/3] gnu: Rename Java packages to match new naming specification Hartmut Goebel
  2016-04-14 19:51 ` [PATCH 3/3] gnu: Add aliases for the old Java package names Hartmut Goebel
  2 siblings, 1 reply; 8+ messages in thread
From: Hartmut Goebel @ 2016-04-14 19:51 UTC (permalink / raw)
  To: guix-devel

* doc/guix.texi (Java Packages): New subsection.
---
 doc/guix.texi | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/doc/guix.texi b/doc/guix.texi
index dcc1124..c1f80cb 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -10979,6 +10979,25 @@ are also prepended by @code{perl-}.  Such modules tend to have the word
 prefix.  For instance, @code{libwww-perl} becomes @code{perl-libwww}.
 
 
+@node Java Packages
+@subsection Java Packages
+
+Java programs standing for themselves are named as any other package,
+using the lowercase upstream name.
+
+To avoid confusion and naming clashes with other programming languages,
+it's desirable that the name of a package for a Java package is prefixed
+with @code{java-}.  If a project already contains the word
+@code{java}, we drop this; for instance, the package @code{dnsjava}
+is packaged under the name @code{java-dns}.
+
+For Java packages containing a single class or a small class hierarchy,
+we use the lowercase class name, replace all occurrences of @code{.} by
+dashes and prepend the prefix @code{java-}. So the class
+@code{apache.commons.cli} becomes package
+@code{java-apache-commons-cli}.
+
+
 @node Fonts
 @subsection Fonts
 
-- 
2.7.4

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

* [PATCH 2/3] gnu: Rename Java packages to match new naming specification.
  2016-04-14 19:51 [PATCH 0/3] Prefix "java-" for Java packages Hartmut Goebel
  2016-04-14 19:51 ` [PATCH 1/3] doc: Add specification " Hartmut Goebel
@ 2016-04-14 19:51 ` Hartmut Goebel
  2016-04-14 19:51 ` [PATCH 3/3] gnu: Add aliases for the old Java package names Hartmut Goebel
  2 siblings, 0 replies; 8+ messages in thread
From: Hartmut Goebel @ 2016-04-14 19:51 UTC (permalink / raw)
  To: guix-devel

* gnu/packages/bioinformatics.scm (htsjdk) (ngs-java): rename to ...
  (java-htsjdk) (java-ngs) ... this.
  (ncbi-vdb) [configure] [inputs] Use new name.
* gnu/packages/java.scm (swt): rename to ...
  (java-swt) ... this.
* gnu/packages/music.scm (tuxguitar) [make-flags] [inputs]
  [PROPERTIES]: Use new name of package "swt".
---
 gnu/packages/bioinformatics.scm | 12 ++++++------
 gnu/packages/java.scm           |  4 ++--
 gnu/packages/music.scm          |  6 +++---
 3 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index b76aadc..3094489 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -2075,9 +2075,9 @@ HMMs).")
 from high-throughput sequencing assays.")
     (license license:gpl3+)))
 
-(define-public htsjdk
+(define-public java-htsjdk
   (package
-    (name "htsjdk")
+    (name "java-htsjdk")
     (version "1.129")
     (source (origin
               (method url-fetch)
@@ -3012,9 +3012,9 @@ any particular back-end implementation, and supports use of multiple back-ends
 simultaneously.")
     (license license:public-domain)))
 
-(define-public ngs-java
+(define-public java-ngs
   (package (inherit ngs-sdk)
-    (name "ngs-java")
+    (name "java-ngs")
     (arguments
      `(,@(substitute-keyword-arguments
              `(#:modules ((guix build gnu-build-system)
@@ -3077,7 +3077,7 @@ simultaneously.")
                     (string-append "--with-ngs-sdk-prefix="
                                    (assoc-ref inputs "ngs-sdk"))
                     (string-append "--with-ngs-java-prefix="
-                                   (assoc-ref inputs "ngs-java"))
+                                   (assoc-ref inputs "java-ngs"))
                     (string-append "--with-hdf5-prefix="
                                    (assoc-ref inputs "hdf5"))))))
         (alist-cons-after
@@ -3103,7 +3103,7 @@ simultaneously.")
     (inputs
      `(("libxml2" ,libxml2)
        ("ngs-sdk" ,ngs-sdk)
-       ("ngs-java" ,ngs-java)
+       ("java-ngs" ,java-ngs)
        ("libmagic" ,file)
        ("hdf5" ,hdf5)))
     (native-inputs `(("perl" ,perl)))
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 9b6a647..7a9f47d 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -51,9 +51,9 @@
   #:use-module (gnu packages texinfo)
   #:use-module ((srfi srfi-1) #:select (fold alist-delete)))
 
-(define-public swt
+(define-public java-swt
   (package
-    (name "swt")
+    (name "java-swt")
     (version "4.4.2")
     (source (origin
               (method url-fetch)
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index f733e45..a540845 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -734,7 +734,7 @@ is subjective.")
                           (string-append "PREFIX="
                                          (assoc-ref %outputs "out"))
                           (string-append "SWT_PATH="
-                                         (assoc-ref %build-inputs "swt")
+                                         (assoc-ref %build-inputs "java-swt")
                                          "/share/java/swt.jar"))
        #:tests? #f ;no "check" target
        #:parallel-build? #f ;not supported
@@ -749,11 +749,11 @@ is subjective.")
                (string-append "GCJFLAGS=-fsource=1.4 -fPIC " rest))
               (("PROPERTIES\\?=")
                (string-append "PROPERTIES?= -Dswt.library.path="
-                              (assoc-ref inputs "swt") "/lib"))
+                              (assoc-ref inputs "java-swt") "/lib"))
               (("\\$\\(GCJ\\) -o") "$(GCJ) $(LDFLAGS) -o"))
             #t)))))
     (inputs
-     `(("swt" ,swt)))
+     `(("java-swt" ,java-swt)))
     (native-inputs
      `(("gcj" ,gcj)
        ("pkg-config" ,pkg-config)))
-- 
2.7.4

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

* [PATCH 3/3] gnu: Add aliases for the old Java package names.
  2016-04-14 19:51 [PATCH 0/3] Prefix "java-" for Java packages Hartmut Goebel
  2016-04-14 19:51 ` [PATCH 1/3] doc: Add specification " Hartmut Goebel
  2016-04-14 19:51 ` [PATCH 2/3] gnu: Rename Java packages to match new naming specification Hartmut Goebel
@ 2016-04-14 19:51 ` Hartmut Goebel
  2016-04-15 10:28   ` Ricardo Wurmus
  2 siblings, 1 reply; 8+ messages in thread
From: Hartmut Goebel @ 2016-04-14 19:51 UTC (permalink / raw)
  To: guix-devel

* gnu/packages/bioninformatics.scm (htsjdk) (ngs-java): New
  function aliases.
* gnu/packages/java.scm (swt): New function alias.
---
 gnu/packages/bioinformatics.scm | 8 ++++++++
 gnu/packages/java.scm           | 4 ++++
 2 files changed, 12 insertions(+)

diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index 3094489..2f8821f 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -2113,6 +2113,10 @@ sequencing (HTS) data.  There are also an number of useful utilities for
 manipulating HTS data.")
     (license license:expat)))
 
+;; old name "htsjdk" is obsolete and will be removed soon
+(define-public htsjdk java-htsjdk)
+
+
 (define-public htslib
   (package
     (name "htslib")
@@ -3030,6 +3034,10 @@ simultaneously.")
        ("ngs-sdk" ,ngs-sdk)))
     (synopsis "Java bindings for NGS SDK")))
 
+;; old name "ngs-java" is obsolete and will be removed soon
+(define-public ngs-java java-ngs)
+
+
 (define-public ncbi-vdb
   (package
     (name "ncbi-vdb")
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 7a9f47d..ae50f8a 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -133,6 +133,10 @@ is implemented.")
               license:mpl2.0
               license:lgpl2.1+))))
 
+;; old name "swt" is obsolete and will be removed soon
+(define-public swt java-swt)
+
+
 (define-public ant
   (package
     (name "ant")
-- 
2.7.4

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

* Re: [PATCH 3/3] gnu: Add aliases for the old Java package names.
  2016-04-14 19:51 ` [PATCH 3/3] gnu: Add aliases for the old Java package names Hartmut Goebel
@ 2016-04-15 10:28   ` Ricardo Wurmus
  2016-04-15 18:34     ` Hartmut Goebel
  0 siblings, 1 reply; 8+ messages in thread
From: Ricardo Wurmus @ 2016-04-15 10:28 UTC (permalink / raw)
  To: Hartmut Goebel; +Cc: guix-devel


Hartmut Goebel <h.goebel@crazy-compilers.com> writes:

> * gnu/packages/bioninformatics.scm (htsjdk) (ngs-java): New
                    ^
                    `—– typo

>   function aliases.
> * gnu/packages/java.scm (swt): New function alias.

Hi Hartmut,

I think we don’t need aliases.  We only need to make sure that all
packages using the renamed variables get updated as well.

~~ Ricardo

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

* Re: [PATCH 3/3] gnu: Add aliases for the old Java package names.
  2016-04-15 10:28   ` Ricardo Wurmus
@ 2016-04-15 18:34     ` Hartmut Goebel
  0 siblings, 0 replies; 8+ messages in thread
From: Hartmut Goebel @ 2016-04-15 18:34 UTC (permalink / raw)
  To: guix-devel

Am 15.04.2016 um 12:28 schrieb Ricardo Wurmus:
> I think we don’t need aliases.  

I'm fine with that. I've put he alias into a patch by it's own, so you
can simply drop it.

> We only need to make sure that all
> packages using the renamed variables get updated as well.

For the packages defined by guix, this should be the case.

-- 
Regards
Hartmut Goebel

| Hartmut Goebel          | h.goebel@crazy-compilers.com               |
| www.crazy-compilers.com | compilers which you thought are impossible |

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

* Re: [PATCH 1/3] doc: Add specification for Java packages
  2016-04-14 19:51 ` [PATCH 1/3] doc: Add specification " Hartmut Goebel
@ 2016-04-15 20:15   ` Leo Famulari
  2016-04-16  9:28     ` Alex Kost
  0 siblings, 1 reply; 8+ messages in thread
From: Leo Famulari @ 2016-04-15 20:15 UTC (permalink / raw)
  To: Hartmut Goebel; +Cc: guix-devel

On Thu, Apr 14, 2016 at 09:51:35PM +0200, Hartmut Goebel wrote:
> * doc/guix.texi (Java Packages): New subsection.

Something about this patch would break the build if applied. The output
of `make` is below.

Can you look into it? If not, I can do it in a couple days.

$ cd ~/guix && guix environment --pure guix -- make
substitute: warning: failed to install locale: Invalid argument 
make  all-recursive
make[1]: Entering directory '/home/leo/work/guix'
Making all in po/guix
make[2]: Entering directory '/home/leo/work/guix/po/guix'
make[2]: Leaving directory '/home/leo/work/guix/po/guix'
Making all in po/packages
make[2]: Entering directory '/home/leo/work/guix/po/packages'
make[2]: Leaving directory '/home/leo/work/guix/po/packages'
make[2]: Entering directory '/home/leo/work/guix'
  MAKEINFO doc/guix.info
./doc/guix.texi:10968: warning: node next `Perl Modules' in menu `Fonts' and in sectioning `Java Packages' differ
./doc/guix.texi:10983: warning: unreferenced node `Java Packages'
./doc/guix.texi:10983: warning: node `Fonts' is next for `Java Packages' in sectioning but not in menu
./doc/guix.texi:10983: warning: node `Perl Modules' is prev for `Java Packages' in sectioning but not in menu
./doc/guix.texi:10983: warning: node `Packaging Guidelines' is up for `Java Packages' in sectioning but not in menu
./doc/guix.texi:10670: node `Packaging Guidelines' lacks menu item for `Java Packages' despite being its Up target
./doc/guix.texi:11002: warning: node prev `Fonts' in menu `Perl Modules' and in sectioning `Java Packages' differ
Makefile:3281: recipe for target 'doc/guix.info' failed
make[2]: *** [doc/guix.info] Error 1
make[2]: Leaving directory '/home/leo/work/guix'
Makefile:3912: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/leo/work/guix'
Makefile:2523: recipe for target 'all' failed
make: *** [all] Error 2

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

* Re: [PATCH 1/3] doc: Add specification for Java packages
  2016-04-15 20:15   ` Leo Famulari
@ 2016-04-16  9:28     ` Alex Kost
  0 siblings, 0 replies; 8+ messages in thread
From: Alex Kost @ 2016-04-16  9:28 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

Leo Famulari (2016-04-15 23:15 +0300) wrote:

> On Thu, Apr 14, 2016 at 09:51:35PM +0200, Hartmut Goebel wrote:
>> * doc/guix.texi (Java Packages): New subsection.
>
> Something about this patch would break the build if applied. The output
> of `make` is below.
>
> Can you look into it? If not, I can do it in a couple days.
[...]
>   MAKEINFO doc/guix.info
> ./doc/guix.texi:10968: warning: node next `Perl Modules' in menu `Fonts' and in sectioning `Java Packages' differ
> ./doc/guix.texi:10983: warning: unreferenced node `Java Packages'
> ./doc/guix.texi:10983: warning: node `Fonts' is next for `Java Packages' in sectioning but not in menu
> ./doc/guix.texi:10983: warning: node `Perl Modules' is prev for `Java Packages' in sectioning but not in menu
> ./doc/guix.texi:10983: warning: node `Packaging Guidelines' is up for `Java Packages' in sectioning but not in menu
> ./doc/guix.texi:10670: node `Packaging Guidelines' lacks menu item for `Java Packages' despite being its Up target
> ./doc/guix.texi:11002: warning: node prev `Fonts' in menu `Perl Modules' and in sectioning `Java Packages' differ

A new node should also be added to the contents in the beginning of
"guix.texi".  See commit 0e2d021¹, for example.

¹ http://git.savannah.gnu.org/cgit/guix.git/commit/?id=0e2d0213b5bcf2fcdf5ab81dfdd965b071f30637

-- 
Alex

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

end of thread, other threads:[~2016-04-16  9:29 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-04-14 19:51 [PATCH 0/3] Prefix "java-" for Java packages Hartmut Goebel
2016-04-14 19:51 ` [PATCH 1/3] doc: Add specification " Hartmut Goebel
2016-04-15 20:15   ` Leo Famulari
2016-04-16  9:28     ` Alex Kost
2016-04-14 19:51 ` [PATCH 2/3] gnu: Rename Java packages to match new naming specification Hartmut Goebel
2016-04-14 19:51 ` [PATCH 3/3] gnu: Add aliases for the old Java package names Hartmut Goebel
2016-04-15 10:28   ` Ricardo Wurmus
2016-04-15 18:34     ` Hartmut Goebel

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).