about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--.guix-authorizations6
-rw-r--r--.guix-channel3
-rw-r--r--.guix/skribilo-package.scm77
l---------[-rw-r--r--]guix.scm111
4 files changed, 87 insertions, 110 deletions
diff --git a/.guix-authorizations b/.guix-authorizations
new file mode 100644
index 0000000..00e39a2
--- /dev/null
+++ b/.guix-authorizations
@@ -0,0 +1,6 @@
+(authorizations
+ (version 0)
+ (("7F73 0343 F2F0 9F3C 77BF  79D3 2E25 EE8B 6180 2BB3"
+   (name "arunisaac")))
+ ("3CE4 6455 8A84 FDC6 9DB4  0CFB 090B 1199 3D9A EBB5"
+   (name "civodul")))
diff --git a/.guix-channel b/.guix-channel
new file mode 100644
index 0000000..35e181f
--- /dev/null
+++ b/.guix-channel
@@ -0,0 +1,3 @@
+(channel
+ (version 0)
+ (directory ".guix"))
diff --git a/.guix/skribilo-package.scm b/.guix/skribilo-package.scm
new file mode 100644
index 0000000..839ad65
--- /dev/null
+++ b/.guix/skribilo-package.scm
@@ -0,0 +1,77 @@
+;;; guix.scm  --  Build recipe for GNU Guix.
+;;;
+;;; Copyright © 2020 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2023 Arun Isaac <arunisaac@systemreboot.net>
+;;;
+;;; This file is part of Skribilo.
+;;;
+;;; Skribilo is free software: you can redistribute it and/or modify
+;;; it under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation, either version 3 of the License, or
+;;; (at your option) any later version.
+;;;
+;;; Skribilo is distributed in the hope that it will be useful,
+;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with Skribilo.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (skribilo-package)
+  #:use-module (gnu packages)
+  #:use-module ((gnu packages autotools) #:select (autoconf automake))
+  #:use-module ((gnu packages gettext) #:select (gnu-gettext))
+  #:use-module ((gnu packages skribilo) #:select (skribilo) #:prefix guix:)
+  #:use-module (guix gexp)
+  #:use-module ((guix git-download) #:select (git-predicate))
+  #:use-module (guix packages)
+  #:use-module (guix utils))
+
+(define S specification->package)
+
+(define-public skribilo
+  (package
+    (inherit guix:skribilo)
+    (version (string-append (package-version guix:skribilo) "-git"))
+    (source (local-file ".." "skribilo-checkout"
+                        #:recursive? #t
+                        #:select?
+                        (or (git-predicate (dirname (current-source-directory)))
+                            (const #t))))
+    (native-inputs
+     (modify-inputs (package-native-inputs guix:skribilo)
+       (prepend autoconf)
+       (prepend automake)
+       (prepend gnu-gettext)))))
+
+(define with-guile-2.0
+  (package-input-rewriting/spec `(("guile" . ,(const (S "guile@2.0"))))
+                                #:deep? #f))
+
+(define with-guile-2.2
+  (package-input-rewriting/spec `(("guile" . ,(const (S "guile@2.2"))))
+                                #:deep? #f))
+
+(define-public skribilo/guile-2.2
+  (package
+    (inherit (with-guile-2.2 skribilo))
+    (name "guile2.2-skribilo")
+    ;; Arrange to not trigger a rebuild of Automake & co.
+    (inputs
+     (modify-inputs (package-inputs skribilo)
+       (replace "guile" (S "guile@2.2"))))
+    (native-inputs
+     (package-native-inputs skribilo))))
+
+(define-public skribilo/guile-2.0
+  (package
+    (inherit (with-guile-2.0 skribilo))
+    (name "guile2.0-skribilo")
+    (inputs
+     (modify-inputs (package-inputs skribilo)
+       (replace "guile" (S "guile@2.0"))))
+    (native-inputs
+     (package-native-inputs skribilo))))
+
+skribilo
diff --git a/guix.scm b/guix.scm
index 6771971..d4e3519 100644..120000
--- a/guix.scm
+++ b/guix.scm
@@ -1,110 +1 @@
-;;; guix.scm  --  Build recipe for GNU Guix.
-;;;
-;;; Copyright © 2020 Ludovic Courtès <ludo@gnu.org>
-;;;
-;;; This file is part of Skribilo.
-;;;
-;;; Skribilo is free software: you can redistribute it and/or modify
-;;; it under the terms of the GNU General Public License as published by
-;;; the Free Software Foundation, either version 3 of the License, or
-;;; (at your option) any later version.
-;;;
-;;; Skribilo is distributed in the hope that it will be useful,
-;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-;;; GNU General Public License for more details.
-;;;
-;;; You should have received a copy of the GNU General Public License
-;;; along with Skribilo.  If not, see <http://www.gnu.org/licenses/>.
-
-(use-modules (gnu) (guix)
-             (guix profiles)
-             (guix build-system gnu)
-             ((guix git-download) #:select (git-predicate))
-             (guix licenses)
-             (srfi srfi-1))
-
-(define S specification->package)
-
-(define skribilo
-  (package
-    (name "skribilo")
-    (version "0.0-git")
-    (source (local-file "." "skribilo-checkout"
-                        #:recursive? #t
-                        #:select?
-                        (git-predicate (current-source-directory))))
-    (build-system gnu-build-system)
-    (arguments
-     '(#:phases (modify-phases %standard-phases
-                  (add-after 'unpack 'make-po-files-writable
-                    (lambda _
-                      (for-each make-file-writable (find-files "po"))
-                      #t)))))
-    (native-inputs
-     `(("pkg-config" ,(S "pkg-config"))
-       ("autoconf" ,(S "autoconf"))
-       ("automake" ,(S "automake"))
-       ("gettext" ,(S "gettext"))
-       ("git" ,(S "git-minimal"))))               ;for version numbers
-    (inputs
-     `(("guile" ,(S "guile"))
-       ("imagemagick" ,(S "imagemagick"))         ;'convert'
-       ("ghostscript" ,(S "ghostscript"))         ;'ps2pdf'
-       ("ploticus" ,(S "ploticus"))
-       ("lout" ,(S "lout"))))
-
-    ;; The 'skribilo' command needs them, and for people using Skribilo as a
-    ;; library, these inputs are needed as well.
-    (propagated-inputs
-     `(("guile-reader" ,(S "guile-reader"))
-       ("guile-lib" ,(S "guile-lib"))))
-
-    (home-page "https://www.nongnu.org/skribilo/")
-    (synopsis "Document production tool written in Guile Scheme")
-    (description
-     "Skribilo is a free document production tool that takes a structured
-document representation as its input and renders that document in a variety of
-output formats: HTML and Info for on-line browsing, and Lout and LaTeX for
-high-quality hard copies.
-
-The input document can use Skribilo's markup language to provide information
-about the document's structure, which is similar to HTML or LaTeX and does not
-require expertise.  Alternatively, it can use a simpler, “markup-less” format
-that borrows from Emacs' outline mode and from other conventions used in
-emails, Usenet and text.
-
-Lastly, Skribilo provides Guile Scheme APIs.")
-    (license gpl3+)))
-
-(define with-guile-2.0
-  (package-input-rewriting/spec `(("guile" . ,(const (S "guile@2.0"))))
-                                #:deep? #f))
-
-(define with-guile-2.2
-  (package-input-rewriting/spec `(("guile" . ,(const (S "guile@2.2"))))
-                                #:deep? #f))
-
-(define skribilo/guile-2.2
-  (package
-    (inherit (with-guile-2.2 skribilo))
-    (name "guile2.2-skribilo")
-    ;; Arrange to not trigger a rebuild of Automake & co.
-    (inputs `(("guile" ,(S "guile@2.2"))
-              ,@(alist-delete "guile" (package-inputs skribilo))))
-    (native-inputs (package-native-inputs skribilo))))
-
-(define skribilo/guile-2.0
-  (package
-    (inherit (with-guile-2.0 skribilo))
-    (name "guile2.0-skribilo")
-    (inputs `(("guile" ,(S "guile@2.0"))
-              ,@(alist-delete "guile" (package-inputs skribilo))))
-    (native-inputs (package-native-inputs skribilo))))
-
-(packages->manifest (list skribilo/guile-2.0
-                          skribilo/guile-2.2
-                          skribilo))
-
-;; Comment the following line to build all the variants.
-skribilo
+.guix/skribilo-package.scm
\ No newline at end of file