* bug#33932: Artanis fails to build - 0.3.1 is out
[not found] ` <87muolg9ky.fsf@elephly.net>
@ 2019-01-02 21:50 ` swedebugia
2019-01-02 22:50 ` bug#33932: [PATCH] gnu: artanis: Move to web.scm and update to 0.3.1. (was: Re: bug#33932: Artanis fails to build - 0.3.1 is out) swedebugia
0 siblings, 1 reply; 2+ messages in thread
From: swedebugia @ 2019-01-02 21:50 UTC (permalink / raw)
To: guix-patches; +Cc: 33932@debbugs.gnu.org
On 2018-12-31 13:33, Ricardo Wurmus wrote:
>
> Hi swedebugia,
>
>> We should upgrade.
>
> Could you please send a patch?
>
Here it is :)
--
Cheers Swedebugia
^ permalink raw reply [flat|nested] 2+ messages in thread
* bug#33932: [PATCH] gnu: artanis: Move to web.scm and update to 0.3.1. (was: Re: bug#33932: Artanis fails to build - 0.3.1 is out)
2019-01-02 21:50 ` bug#33932: Artanis fails to build - 0.3.1 is out swedebugia
@ 2019-01-02 22:50 ` swedebugia
0 siblings, 0 replies; 2+ messages in thread
From: swedebugia @ 2019-01-02 22:50 UTC (permalink / raw)
To: guix-patches; +Cc: 33932@debbugs.gnu.org
[-- Attachment #1: Type: text/plain, Size: 217 bytes --]
On 2019-01-02 22:50, swedebugia wrote:
> On 2018-12-31 13:33, Ricardo Wurmus wrote:
>>
>> Hi swedebugia,
>>
>>> We should upgrade.
>>
>> Could you please send a patch?
>>
>
> Here it is :)
>
--
Cheers Swedebugia
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-artanis-Move-to-web.scm-and-update-to-0.3.1.patch --]
[-- Type: text/x-patch; name="0001-gnu-artanis-Move-to-web.scm-and-update-to-0.3.1.patch", Size: 35062 bytes --]
From a7f0c26705aad362acc35e632bed2dcc9e32d004 Mon Sep 17 00:00:00 2001
From: swedebugia <swedebugia@riseup.net>
Date: Wed, 2 Jan 2019 23:47:07 +0100
Subject: [PATCH] gnu: artanis: Move to web.scm and update to 0.3.1.
* gnu/packages/guile.scm (artanis): Move from here...
* gnu/packages/web.scm (artanis): To here and Update to 0.3.1.
---
gnu/packages/guile.scm | 360 +++++++++++++++++++++++++++++++----------
gnu/packages/web.scm | 95 +++++++++++
2 files changed, 368 insertions(+), 87 deletions(-)
diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm
index 07b568ee7..998090c75 100644
--- a/gnu/packages/guile.scm
+++ b/gnu/packages/guile.scm
@@ -527,93 +527,6 @@ program can be installed in one go.")
;;; Extensions.
;;;
-(define-public artanis
- (let ((release "0.2.1")
- (revision 3))
- (package
- (name "artanis")
- (version (if (zero? revision)
- release
- (string-append release "-"
- (number->string revision))))
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/artanis/artanis-"
- release ".tar.gz"))
- (file-name (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "041ajcg2pz918kd9iqcj4inpzddc3impvz3r2nhlpbv8zrz011hn"))
- (modules '((guix build utils)))
- (snippet
- '(begin
- (delete-file-recursively "artanis/third-party/json.scm")
- (delete-file-recursively "artanis/third-party/json")
- (substitute* '("artanis/artanis.scm"
- "artanis/oht.scm")
- (("(#:use-module \\()artanis third-party (json\\))" _
- use-module json)
- (string-append use-module json)))
- (substitute* "artanis/oht.scm"
- (("([[:punct:][:space:]]+)(->json-string)([[:punct:][:space:]]+)"
- _ pre json-string post)
- (string-append pre
- "scm" json-string
- post)))
- (substitute* "artanis/artanis.scm"
- (("[[:punct:][:space:]]+->json-string[[:punct:][:space:]]+")
- ""))
- #t))))
- (build-system gnu-build-system)
- ;; TODO: Add guile-dbi and guile-dbd optional dependencies.
- (inputs `(("guile" ,guile-2.2)
- ("guile-json" ,guile-json)))
- (native-inputs `(("bash" ,bash) ;for the `source' builtin
- ("pkgconfig" ,pkg-config)
- ("util-linux" ,util-linux))) ;for the `script' command
- (arguments
- '(#:make-flags
- ;; TODO: The documentation must be built with the `docs' target.
- (let* ((out (assoc-ref %outputs "out"))
- (scm (string-append out "/share/guile/site/2.2"))
- (go (string-append out "/lib/guile/2.2/site-ccache")))
- ;; Don't use (%site-dir) for site paths.
- (list (string-append "MOD_PATH=" scm)
- (string-append "MOD_COMPILED_PATH=" go)))
- #:test-target "test"
- #:phases
- (modify-phases %standard-phases
- (add-before 'install 'substitute-root-dir
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (substitute* "Makefile" ;ignore the execution of bash.bashrc
- ((" /etc/bash.bashrc") " /dev/null"))
- (substitute* "Makefile" ;set the root of config files to OUT
- ((" /etc") (string-append " " out "/etc")))
- (mkdir-p (string-append out "/bin")) ;for the `art' executable
- #t)))
- (add-after 'install 'wrap-art
- (lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (bin (string-append out "/bin"))
- (scm (string-append out "/share/guile/site/2.2"))
- (go (string-append out "/lib/guile/2.2/site-ccache")))
- (wrap-program (string-append bin "/art")
- `("GUILE_LOAD_PATH" ":" prefix (,scm))
- `("GUILE_LOAD_COMPILED_PATH" ":" prefix (,go)))
- #t))))))
- (synopsis "Web application framework written in Guile")
- (description "GNU Artanis is a web application framework written in Guile
-Scheme. A web application framework (WAF) is a software framework that is
-designed to support the development of dynamic websites, web applications, web
-services and web resources. The framework aims to alleviate the overhead
-associated with common activities performed in web development. Artanis
-provides several tools for web development: database access, templating
-frameworks, session management, URL-remapping for RESTful, page caching, and
-more.")
- (home-page "https://www.gnu.org/software/artanis/")
- (license (list license:gpl3+ license:lgpl3+))))) ;dual license
-
(define-public guile-reader
(package
(name "guile-reader")
@@ -629,6 +542,13 @@ more.")
(native-inputs `(("pkgconfig" ,pkg-config)
("gperf" ,gperf-3.0)))
(inputs `(("guile" ,guile-2.2)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(synopsis "Framework for building readers for GNU Guile")
(description
"Guile-Reader is a simple framework for building readers for GNU Guile.
@@ -684,6 +604,13 @@ many readers as needed).")
(format #f "\"~a/lib/guile/2.2/libguile-ncurses\""
out)))
#t)))))))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(home-page "https://www.gnu.org/software/guile-ncurses/")
(synopsis "Guile bindings to ncurses")
(description
@@ -815,6 +742,13 @@ format is also supported.")
(inputs `(("guile" ,guile-2.2)))
(propagated-inputs
`(("guile-config" ,guile-config)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(synopsis "Guile project tooling")
(description
"Hall is a command-line application and a set of Guile libraries that
@@ -848,6 +782,13 @@ provides tight coupling to Guix.")
("pkg-config" ,pkg-config)))
(inputs `(("guile" ,guile-2.2) ("which" ,which)))
(propagated-inputs `(("guile-lib" ,guile-lib)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(home-page "https://github.com/artyom-poptsov/guile-ics")
(synopsis "Guile parser library for the iCalendar format")
(description
@@ -885,6 +826,13 @@ $(libdir)/guile/@GUILE_EFFECTIVE_VERSION@/site-ccache\n"))
#t)))))
(native-inputs `(("pkg-config" ,pkg-config)))
(inputs `(("guile" ,guile-2.2)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(home-page "https://www.nongnu.org/guile-lib/")
(synopsis "Collection of useful Guile Scheme modules")
(description
@@ -920,6 +868,13 @@ for Guile\".")
(native-inputs `(("pkg-config" ,pkg-config)
("guile" ,guile-2.2)))
(inputs `(("guile" ,guile-2.2)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(synopsis "JSON module for Guile")
(description
"Guile-JSON supports parsing and building JSON documents according to the
@@ -957,6 +912,13 @@ specification. These are the main features:
(build-system guile-build-system)
(native-inputs
`(("guile" ,guile-2.2)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(home-page "https://github.com/ijp/minikanren")
(synopsis "MiniKanren declarative logic system, packaged for Guile")
(description
@@ -995,6 +957,13 @@ See http://minikanren.org/ for more on miniKanren generally.")
(build-system guile-build-system)
(native-inputs
`(("guile" ,guile-2.2)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(home-page "https://github.com/fisherdj/miniAdapton")
(synopsis "Minimal implementation of incremental computation in Guile
Scheme")
@@ -1039,6 +1008,13 @@ understand, extend, and port to host languages other than Scheme.")
#:source-directory "src"))
(native-inputs
`(("guile" ,guile-2.2)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(home-page "http://synthcode.com/scheme/irregex")
(synopsis "S-expression based regular expressions")
(description
@@ -1095,6 +1071,13 @@ inspired by the SCSH regular expression system.")
`(("guile" ,guile-2.2)))
(inputs
`(("gdbm" ,gdbm)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(home-page "https://github.com/ijp/guile-gdbm")
(synopsis "Guile bindings to the GDBM library via Guile's FFI")
(description
@@ -1130,6 +1113,13 @@ Guile's foreign function interface.")
(inputs
`(("guile" ,guile-2.2)
("sqlite" ,sqlite)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(synopsis "Access SQLite databases from Guile")
(description
"This package provides Guile bindings to the SQLite database system.")
@@ -1195,6 +1185,13 @@ Guile's foreign function interface.")
(propagated-inputs
`(("guile-reader" ,guile-reader)
("guile-commonmark" ,guile-commonmark)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(synopsis "Functional static site generator")
(description "Haunt is a static site generator written in Guile
Scheme. Haunt features a functional build system and an extensible
@@ -1227,6 +1224,13 @@ interface for reading articles in any format.")
("pkg-config" ,pkg-config)
("texinfo" ,texinfo)))
(inputs `(("guile" ,guile-2.2)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(synopsis
"Guile application configuration parsing library.")
(description
@@ -1258,6 +1262,13 @@ above command-line parameters.")
("automake" ,automake)
("pkg-config" ,pkg-config)
("guile" ,guile-2.2)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(synopsis "Redis client library for Guile")
(description "Guile-redis provides a Scheme interface to the Redis
key-value cache and store.")
@@ -1336,6 +1347,13 @@ key-value cache and store.")
(native-inputs
`(("python" ,python)
("pkg-config" ,pkg-config)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(synopsis "Whitespace to lisp syntax for Guile")
(description "Wisp is a syntax for Guile which provides a Python-like
whitespace-significant language. It may be easier on the eyes for some
@@ -1388,6 +1406,13 @@ users and in some situations.")
("gsl" ,gsl)
("freeimage" ,freeimage)
("mesa" ,mesa)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(synopsis "2D/3D game engine for GNU Guile")
(description "Sly is a 2D/3D game engine written in Guile Scheme. Sly
features a functional reactive programming interface and live coding
@@ -1425,6 +1450,13 @@ capabilities.")
(("guilemoduledir =.*guile/site" all)
(string-append all "/@GUILE_EFFECTIVE_VERSION@")))
#t))))))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(synopsis "Generate C bindings for Guile")
(description "G-Wrap is a tool and Guile library for generating function
wrappers for inter-language calls. It currently only supports generating Guile
@@ -1468,6 +1500,13 @@ provides access to that interface and its types from the Scheme level.")
`(("guile-dbd-sqlite3" ,guile-dbd-sqlite3))) ; only shared library, no scheme files
(propagated-inputs
`(("guile" ,guile-2.2)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(synopsis "Guile database abstraction layer")
(home-page "http://home.gna.org/guile-dbi/guile-dbi.html")
(description
@@ -1550,6 +1589,13 @@ $(datadir)/guile/site/$(GUILE_EFFECTIVE_VERSION)\n"))
"guilesitedir = \
$(datadir)/guile/site/$(GUILE_EFFECTIVE_VERSION)\n"))
#t)))))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(home-page "https://github.com/artyom-poptsov/guile-dsv")
(synopsis "DSV module for Guile")
(description
@@ -1579,6 +1625,13 @@ Unix-style DSV format and RFC 4180 format.")
("libxext" ,libxext)
("libxinerama" ,libxinerama)
("xosd" ,xosd)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(home-page "https://github.com/alezost/guile-xosd")
(synopsis "XOSD bindings for Guile")
(description
@@ -1604,6 +1657,13 @@ library}.")
`(("pkg-config" ,pkg-config)))
(inputs
`(("guile" ,guile-2.2)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(home-page "https://github.com/alezost/guile-daemon")
(synopsis "Evaluate code in a running Guile process")
(description
@@ -1629,6 +1689,13 @@ you send to a FIFO file.")
`(("guile" ,guile-2.2)))
(native-inputs
`(("pkg-config" ,pkg-config)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(synopsis "CommonMark parser for Guile")
(description
"guile-commonmark is a library for parsing CommonMark, a fully specified
@@ -1661,6 +1728,13 @@ is no support for parsing block and inline level HTML.")
`(("pkg-config" ,pkg-config)))
(inputs
`(("guile" ,guile-2.2)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(home-page "https://github.com/TaylanUB/scheme-bytestructures")
(synopsis "Structured access to bytevector contents for Guile")
(description
@@ -1707,6 +1781,13 @@ $(datadir)/guile/site/$(GUILE_EFFECTIVE_VERSION)\n"))
(native-inputs `(("pkg-config" ,pkg-config)))
(inputs `(("guile" ,guile-2.2)
("aspell" ,aspell)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(home-page "https://github.com/spk121/guile-aspell")
(synopsis "Spell-checking from Guile")
(description
@@ -1807,6 +1888,13 @@ and then run @command{scm example.scm}.")
;; quiet warnings
(setenv "GUILE_AUTO_COMPILE" "0")
#t)))))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(home-page "https://gnu.org/s/8sync/")
(synopsis "Asynchronous actor model library for Guile")
(description
@@ -1847,6 +1935,13 @@ Note that 8sync is only available for Guile 2.2.")
("pkg-config" ,pkg-config)))
(inputs
`(("guile" ,guile-2.2)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(synopsis "Lightweight concurrency facility for Guile")
(description
"Fibers is a Guile library that implements a a lightweight concurrency
@@ -1886,6 +1981,13 @@ is not available for Guile 2.0.")
("libgit2" ,libgit2)))
(propagated-inputs
`(("guile-bytestructures" ,guile-bytestructures)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(synopsis "Guile bindings for libgit2")
(description
"This package provides Guile bindings to libgit2, a library to
@@ -1913,6 +2015,13 @@ manipulate repositories of the Git version control system.")
`(("pkg-config" ,pkg-config)))
(inputs
`(("guile" ,guile-2.2)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(synopsis "General-purpose syntax highlighter for GNU Guile")
(description "Guile-syntax-highlight is a general-purpose syntax
highlighting library for GNU Guile. It can parse code written in various
@@ -1939,6 +2048,13 @@ HTML (via SXML) or any other format for rendering.")
("pkg-config" ,pkg-config)))
(inputs
`(("guile" ,guile-2.2)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(home-page "https://gitlab.com/dustyweb/guile-sjson")
(synopsis "S-expression based json reader/writer for Guile")
(description "guile-sjson is a json reader/writer for Guile.
@@ -1960,6 +2076,13 @@ It has a nice, simple s-expression based syntax.")
(build-system guile-build-system)
(native-inputs
`(("guile" ,guile-2.2)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(home-page "https://github.com/NalaGinrut/guile-colorized")
(synopsis "Colorized REPL for Guile")
(description
@@ -2018,6 +2141,13 @@ It has a nice, simple s-expression based syntax.")
#t)))))
(native-inputs
`(("guile" ,guile-2.2)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(synopsis "Purely functional data structures for Guile")
(description
"This package provides purely functional data structures written in R6RS
@@ -2051,6 +2181,13 @@ Vicare Scheme and IronScheme. Right now it contains:
"0044c105r3q9vpl17pv3phl1b79kjm1llhkakqgiasixyav01blh"))))
(build-system guile-build-system)
(native-inputs `(("guile" ,guile-2.2)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
;; https://savannah.nongnu.org/projects/guile-aa-tree
(home-page "https://qlfiles.net/guile-aa-tree/")
(synopsis "AA tree data structure for Guile")
@@ -2093,6 +2230,13 @@ convenient nested tree operations.")
`(("guile" ,guile-2.2)))
(inputs
`(("zeromq" ,zeromq)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(home-page "https://github.com/jerry40/guile-simple-zmq")
(synopsis "Guile wrapper over ZeroMQ library")
(description
@@ -2182,6 +2326,13 @@ messaging library.")
("guile" ,guile-2.2)
("guile-json" ,guile-json)
("guile-simple-zmq" ,guile-simple-zmq)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(synopsis "Guile kernel for the Jupyter Notebook")
(description
"This package provides a Guile 2.x kernel for the Jupyter Notebook. It
@@ -2206,6 +2357,13 @@ allows users to interact with the Guile REPL through Jupyter.")
`(("pkg-config" ,pkg-config)))
(inputs
`(("guile" ,guile-2.2)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(home-page "https://github.com/roelj/guile-sparql")
(synopsis "SPARQL module for Guile")
(description "This package provides the functionality to query a SPARQL
@@ -2233,6 +2391,13 @@ using S-expressions.")
(native-inputs
`(("guile" ,guile-2.2)
("pkg-config" ,pkg-config)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(home-page "https://savannah.gnu.org/projects/guile-debbugs/")
(synopsis "Guile interface to the Debbugs bug tracking service")
(description
@@ -2263,6 +2428,13 @@ tracker's SOAP service, such as @url{https://bugs.gnu.org}.")
("automake" ,automake)))
(inputs
`(("guile" ,guile-2.2)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(home-page "https://git.systemreboot.net/guile-email")
(synopsis "Guile email parser")
(description "This package provides an email parser written in pure
@@ -2321,6 +2493,13 @@ Guile.")
`(("autoconf" ,autoconf)
("automake" ,automake)
("pkg-config" ,pkg-config)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(synopsis "Guile bindings to Newt")
(description
"This package provides bindings for Newt, a programming library for
@@ -2351,6 +2530,13 @@ Scheme by using Guile’s foreign function interface.")
`(("guile" ,guile-2.2)
("gnutls" ,gnutls)
("guile-json" ,guile-json)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site/2.2")))
+ (search-path-specification
+ (variable "GUILE_LOAD_COMPILED_PATH")
+ (files '("lib/guile/2.2/site-ccache")))))
(home-page "https://framagit.org/prouby/guile-mastodon")
(synopsis "Guile Mastodon REST API module")
(description "This package provides Guile modules to access the
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 84bd795a8..28ce26223 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -67,6 +67,7 @@
#:use-module (gnu packages admin)
#:use-module (gnu packages adns)
#:use-module (gnu packages apr)
+ #:use-module (gnu packages bash)
#:use-module (gnu packages check)
#:use-module (gnu packages cran)
#:use-module (gnu packages documentation)
@@ -6878,3 +6879,97 @@ instructions on how to use Guix in a shared HPC environment.")
"This package provides UI widget and layout functions for writing Shiny apps that
work well on small screens.")
(license l:gpl3)))
+
+(define-public artanis
+ (let ((release "0.3.1")
+ (revision 3))
+ (package
+ (name "artanis")
+ (version (if (zero? revision)
+ release
+ (string-append release "-"
+ (number->string revision))))
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnu/artanis/artanis-"
+ release ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0hqr5m3mb558bdhkc2sadmd9cbrhp3y525wx7cwirgy6i0zmay68"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (delete-file-recursively "artanis/third-party/json.scm")
+ (delete-file-recursively "artanis/third-party/json")
+ (substitute* '("artanis/artanis.scm"
+ "artanis/lpc.scm"
+ "artanis/oht.scm")
+ (("(#:use-module \\()artanis third-party (json\\))" _
+ use-module json)
+ (string-append use-module json)))
+ (substitute* "artanis/oht.scm"
+ (("([[:punct:][:space:]]+)(->json-string)([[:punct:][:space:]]+)"
+ _ pre json-string post)
+ (string-append pre
+ "scm" json-string
+ post)))
+ (substitute* "artanis/artanis.scm"
+ (("[[:punct:][:space:]]+->json-string[[:punct:][:space:]]+")
+ ""))
+ #t))))
+ (build-system gnu-build-system)
+ ;; TODO replace bundled csv with guile-csv
+ ;; TODO: Add guile-dbi and guile-dbd optional dependencies.
+ (inputs `(("guile" ,guile-2.2)
+ ("guile-json" ,guile-json)))
+ (native-inputs `(("bash" ,bash) ;for the `source' builtin
+ ("pkgconfig" ,pkg-config)
+ ("util-linux" ,util-linux))) ;for the `script' command
+ (arguments
+ '(#:make-flags
+ ;; TODO: The documentation must be built with the `docs' target.
+ (let* ((out (assoc-ref %outputs "out"))
+ (scm (string-append out "/share/guile/site/2.2"))
+ (go (string-append out "/lib/guile/2.2/site-ccache")))
+ ;; Don't use (%site-dir) for site paths.
+ (list (string-append "MOD_PATH=" scm)
+ (string-append "MOD_COMPILED_PATH=" go)))
+ #:test-target "test"
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'install 'substitute-root-dir
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (substitute* "Makefile" ;ignore the execution of bash.bashrc
+ ((" /etc/bash.bashrc") " /dev/null"))
+ (substitute* "Makefile" ;set the root of config files to OUT
+ ((" /etc") (string-append " " out "/etc")))
+ (mkdir-p (string-append out "/bin")) ;for the `art' executable
+ #t)))
+ (add-after 'install 'wrap-art
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin"))
+ (scm (string-append out "/share/guile/site/2.2"))
+ (go (string-append out "/lib/guile/2.2/site-ccache")))
+ (wrap-program (string-append bin "/art")
+ `("GUILE_LOAD_PATH" ":" prefix (,scm))
+ `("GUILE_LOAD_COMPILED_PATH" ":" prefix (,go)))
+ #t)))
+ (delete 'strip))))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_LOAD_PATH")
+ (files '("share/guile/site")))))
+ (synopsis "Web application framework written in Guile")
+ (description "GNU Artanis is a web application framework written in Guile
+Scheme. A web application framework (WAF) is a software framework that is
+designed to support the development of dynamic websites, web applications, web
+services and web resources. The framework aims to alleviate the overhead
+associated with common activities performed in web development. Artanis
+provides several tools for web development: database access, templating
+frameworks, session management, URL-remapping for RESTful, page caching, and
+more.")
+ (home-page "https://www.gnu.org/software/artanis/")
+ (license (list l:gpl3+ l:lgpl3+))))) ;dual license
--
2.19.2
^ permalink raw reply related [flat|nested] 2+ messages in thread
end of thread, other threads:[~2019-01-02 22:50 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <3a50ddf2-c212-aa80-987e-c1b4074ae0b6@riseup.net>
[not found] ` <87muolg9ky.fsf@elephly.net>
2019-01-02 21:50 ` bug#33932: Artanis fails to build - 0.3.1 is out swedebugia
2019-01-02 22:50 ` bug#33932: [PATCH] gnu: artanis: Move to web.scm and update to 0.3.1. (was: Re: bug#33932: Artanis fails to build - 0.3.1 is out) swedebugia
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).