unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#55929] [PATCH] gnu: maven: Add maven-doxia-sink-api
@ 2022-06-12 18:25 Artyom V. Poptsov
  2022-06-12 18:45 ` Artyom V. Poptsov
  0 siblings, 1 reply; 12+ messages in thread
From: Artyom V. Poptsov @ 2022-06-12 18:25 UTC (permalink / raw)
  To: 55929


[-- Attachment #1.1: Type: text/plain, Size: 385 bytes --]

Hello,

this patch adds 'Doxia Sink API'[1] under the name
'maven-doxia-sink-api'.

The module contains a Java interface that is used by Doxia Core module.

This patch is the first in the future patch set based on my effort to
add Doxia modules.

The Doxia itself required for other useful Maven plugins.

- Artyom

References:
1. https://maven.apache.org/doxia/doxia/doxia-sink-api/


[-- Attachment #1.2: 0001-gnu-maven-Add-maven-doxia-sink-api.patch --]
[-- Type: text/x-diff, Size: 7008 bytes --]

From 59d2a34e7443406741d6b3b800e808467ac2254c Mon Sep 17 00:00:00 2001
From: "Artyom V. Poptsov" <poptsov.artyom@gmail.com>
Date: Sun, 12 Jun 2022 21:11:55 +0300
Subject: [PATCH] gnu: maven: Add maven-doxia-sink-api

* gnu/packages/maven.scm (maven-doxia-sink-api): New variable.
---
 gnu/packages/maven.scm | 135 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 135 insertions(+)

diff --git a/gnu/packages/maven.scm b/gnu/packages/maven.scm
index 817fee1c71..c0609618c9 100644
--- a/gnu/packages/maven.scm
+++ b/gnu/packages/maven.scm
@@ -3,6 +3,7 @@
 ;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2019 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
 ;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2022 Artyom V. Poptsov <poptsov.artyom@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -24,8 +25,10 @@
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix git-download)
+  #:use-module (guix svn-download)
   #:use-module (guix utils)
   #:use-module (guix build-system ant)
+  #:use-module (guix build-system maven)
   #:use-module (gnu packages)
   #:use-module (gnu packages base)
   #:use-module (gnu packages compression)
@@ -3887,3 +3890,135 @@ reports in two different file formats, plain text and xml.")))
     (description "This plugin provides the capability to build jars.  If you
 would like to sign jars please use the Maven Jarsigner Plugin instead.")
     (license license:asl2.0)))
+
+(define-public maven-plugin-plugin
+  (package
+    (name "maven-plugin-plugin")
+    (version "3.5")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://apache/maven/"
+                                  "plugin-tools/maven-plugin-tools-" version
+                                  "-source-release.zip"))
+              (sha256 (base32 "1ryqhs62j5pas93brhf5dsnvp99hxbvssf681yj5rk3r9h24hqm2"))))
+    (build-system ant-build-system)
+    (arguments
+     `(#:jar-name "maven-plugin-annotations.jar"
+       #:source-dir "maven-plugin-plugin/src/main/java"
+       #:tests? #f
+       #:phases
+       (modify-phases %standard-phases
+         (replace 'install
+           (install-from-pom "maven-plugin-plugin/pom.xml")))))
+    (propagated-inputs
+     (list maven-artifact maven-plugin-tools-parent-pom))
+    (native-inputs
+     (list unzip))
+    (home-page "https://maven.apache.org/plugin-tools/maven-plugin-plugin/")
+    (synopsis "create a Maven plugin descriptor for any Mojo's")
+    (description "The Plugin Plugin is used to create a Maven plugin
+descriptor for any Mojo's found in the source tree, to include in the JAR. It
+is also used to generate Xdoc files for the Mojos as well as the artifact
+metadata and a generic help goal. ")
+    (license license:asl2.0)))
+
+(define-public maven-doxia-sink-api
+  (package
+    (name "maven-doxia-sink-api")
+    (version "2.0.0-M2")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://gitbox.apache.org/repos/asf/maven-doxia.git")
+                    (commit (string-append "doxia-" version))))
+              (file-name (git-file-name "doxia" version))
+              (sha256
+               (base32
+                "0jx96lg0hgjsrm8mynhac4hwh2hmgiwjpwpx2k03yr14040zcr48"))))
+    (build-system ant-build-system)
+    (native-inputs
+     (list java-javax-inject))
+    (arguments
+     (list #:jar-name "doxia-core.jar"
+           #:source-dir "doxia-sink-api/src/main/java"
+           #:tests? #f))                ; no tests
+    (home-page "https://maven.apache.org/doxia/index.html")
+    (synopsis "Generic markup language interface")
+    (description "The @code{Sink} interface is a generic markup language
+interface provided as a Java API. It contains several methods that encapsulate
+common text syntax. A start tag is denoted by @code{xxxx()} method and a end
+of tag by @code{xxxx_()} method.")
+    (license license:asl2.0)))
+
+(define-public maven-doxia-core
+  (package
+    (name "maven-doxia-core")
+    (version "2.0.0-M2")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://gitbox.apache.org/repos/asf/maven-doxia.git")
+                    (commit (string-append "doxia-" version))))
+              (file-name (git-file-name "doxia" version))
+              (sha256
+               (base32
+                "0jx96lg0hgjsrm8mynhac4hwh2hmgiwjpwpx2k03yr14040zcr48"))))
+    (build-system ant-build-system)
+    (inputs
+     (list maven-doxia-sink-api))
+    (native-inputs
+     (list java-javax-inject
+           java-plexus-utils
+           java-commons-lang3
+           java-slf4j-api))
+    (arguments
+     (list #:jar-name "doxia-core.jar"
+           #:source-dir "doxia-core/src/main/java"
+           #:test-dir "doxia-core/src/test"))
+    (home-page "https://maven.apache.org/doxia/index.html")
+    (synopsis "")
+    (description "")
+    (license license:asl2.0)))
+
+(define-public maven-bundle-plugin
+  (let ((revision 1865227))
+    (package
+      (name "maven-bundle-plugin")
+      (version "4.2.1")
+      (source (origin
+                (method svn-fetch)
+                (uri (svn-reference
+                      (url (string-append
+                            "http://svn.apache.org/repos/asf/felix/releases/maven-bundle-plugin-"
+                            version))
+                      (revision revision)))
+                (file-name (string-append name "-" version "-checkout"))
+                (sha256
+                 (base32
+                  "15b3s7jaf2bwx1fzif0s7zbvrfqg1chdxvbrhvxkgyrnfn68ds3c"))))
+      (build-system maven-build-system)
+      (native-inputs
+       (list maven-plugin-annotations))
+      (propagated-inputs
+       (list maven-archiver
+             maven-compiler-plugin
+             maven-plugin-plugin
+             maven-3.0-artifact
+             maven-3.0-core
+             maven-3.0-plugin-api
+             maven-file-management
+             maven-shared-utils
+             java-plexus-archiver
+             java-plexus-utils))
+      ;; (propagated-inputs
+      ;;  (list maven-core
+      ;;        maven-shared-utils
+      ;;        maven-plugin-api))
+      (inputs
+       (list maven-plugin-annotations))
+      (home-page "https://felix.apache.org/documentation/_attachments/components/bundle-plugin/")
+      (synopsis "Maven plugin that supports creating an OSGi bundle")
+      (description "Provides a maven plugin that supports creating an OSGi (Open
+Service Gateway Initiative) bundle from the contents of the compilation
+classpath along with its resources and dependencies.")
+      (license license:asl2.0))))
-- 
2.25.1


[-- Attachment #1.3: Type: text/plain, Size: 207 bytes --]


-- 
Artyom "avp" Poptsov <poptsov.artyom@gmail.com>
Home page: https://memory-heap.org/~avp/
CADR Hackerspace co-founder: https://cadrspace.ru/
GPG: D0C2 EAC1 3310 822D 98DE  B57C E9C5 A2D9 0898 A02F

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

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

end of thread, other threads:[~2022-06-19 19:04 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-12 18:25 [bug#55929] [PATCH] gnu: maven: Add maven-doxia-sink-api Artyom V. Poptsov
2022-06-12 18:45 ` Artyom V. Poptsov
2022-06-12 21:03   ` Julien Lepiller
2022-06-13  4:29     ` Artyom V. Poptsov
2022-06-13  4:38       ` Artyom V. Poptsov
2022-06-13  5:41       ` Julien Lepiller
2022-06-18 15:34         ` Artyom V. Poptsov
2022-06-18 16:52           ` Julien Lepiller
2022-06-18 16:57             ` Artyom V. Poptsov
2022-06-18 18:00               ` Julien Lepiller
2022-06-19  4:55                 ` Artyom V. Poptsov
2022-06-19 19:03                   ` bug#55929: " Julien Lepiller

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