modules, installation with guix cleaned up

This commit is contained in:
Silas Vedder 2022-10-17 07:31:43 +02:00
parent 3edc7c57da
commit 230a6a9432
12 changed files with 122 additions and 135 deletions

View File

@ -36,7 +36,7 @@ SUFFIXES = .scm .go
SOURCES = bible-tools/latex-export.scm \ SOURCES = bible-tools/latex-export.scm \
bible-tools/count-words.scm \ bible-tools/count-words.scm \
bible-tools/bible-tools.scm bible-tools.scm
TESTS = TESTS =
@ -57,24 +57,23 @@ AM_TESTS_ENVIRONMENT = abs_top_srcdir="$(abs_top_srcdir)"
info_TEXINFOS = doc/bible-tools.texi info_TEXINFOS = doc/bible-tools.texi
dvi: # Don't build dvi docs dvi: # Don't build dvi docs
EXTRA_DIST += COPYING \ EXTRA_DIST += ChangeLog \
HACKING \
README \
README.org \
NEWS \
AUTHORS \ AUTHORS \
ChangeLog \ NEWS \
hall.scm \ README \
.gitignore \ HACKING \
guix.scm \ COPYING \
pre-inst-env.in \
Makefile.am \
configure.ac \
build-aux/test-driver.scm \ build-aux/test-driver.scm \
build-aux/texinfo.tex \ build-aux/texinfo.tex \
build-aux/mdate-sh \ build-aux/mdate-sh \
build-aux/missing \ build-aux/missing \
build-aux/install-sh \ build-aux/install-sh \
configure.ac \ guix.scm \
Makefile.am \ .gitignore \
pre-inst-env.in \ hall.scm \
build-aux/test-driver.scm \ build-aux/test-driver.scm \
$(TESTS) $(TESTS)

4
NEWS
View File

@ -1,9 +1,9 @@
# -*- mode: org; coding: utf-8; -*- # -*- mode: org; coding: utf-8; -*-
#+TITLE: Bible-Tools NEWS ? history of user-visible changes #+TITLE: Bible-Tools NEWS history of user-visible changes
#+STARTUP: content hidestars #+STARTUP: content hidestars
Copyright ? (2022) <INSERT EMAIL HERE> Copyright © (2022) <INSERT EMAIL HERE>
Copying and distribution of this file, with or without modification, Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright are permitted in any medium without royalty provided the copyright

View File

@ -1,4 +1,4 @@
(define-module (count-words) (define-module (bible-tools count-words)
#:use-module (bible-tools) #:use-module (bible-tools)
#:use-module (srfi srfi-1) #:use-module (srfi srfi-1)
#:use-module (srfi srfi-26) #:use-module (srfi srfi-26)

View File

@ -1,4 +1,4 @@
(define-module (latex-export) (define-module (bible-tools latex-export)
#:use-module (bible-tools) #:use-module (bible-tools)
#:use-module (srfi srfi-1) #:use-module (srfi srfi-1)
#:use-module (srfi srfi-26) #:use-module (srfi srfi-26)

View File

@ -2,8 +2,8 @@
(define script-version "2019-01-15.13") ;UTC (define script-version "2019-01-15.13") ;UTC
;;; Copyright ? 2015, 2016 Mathieu Lirzin <mthl@gnu.org> ;;; Copyright © 2015, 2016 Mathieu Lirzin <mthl@gnu.org>
;;; Copyright ? 2019 Alex Sassmannshausen <alex@pompo.co> ;;; Copyright © 2019 Alex Sassmannshausen <alex@pompo.co>
;;; ;;;
;;; This program is free software; you can redistribute it and/or modify it ;;; This program is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by ;;; under the terms of the GNU General Public License as published by

View File

@ -5,7 +5,7 @@ AC_SUBST(HVERSION, "\"1.0\"")
AC_SUBST(AUTHOR, "\"\"") AC_SUBST(AUTHOR, "\"\"")
AC_SUBST(COPYRIGHT, "'(2022)") AC_SUBST(COPYRIGHT, "'(2022)")
AC_SUBST(LICENSE, gpl3+) AC_SUBST(LICENSE, gpl3+)
AC_CONFIG_SRCDIR(bible-tools) AC_CONFIG_SRCDIR(bible-tools.scm)
AC_CONFIG_AUX_DIR([build-aux]) AC_CONFIG_AUX_DIR([build-aux])
AM_INIT_AUTOMAKE([1.12 gnu silent-rules subdir-objects color-tests parallel-tests -Woverride -Wno-portability]) AM_INIT_AUTOMAKE([1.12 gnu silent-rules subdir-objects color-tests parallel-tests -Woverride -Wno-portability])
AM_SILENT_RULES([yes]) AM_SILENT_RULES([yes])

178
guix.scm
View File

@ -1,95 +1,85 @@
(use-modules (guix packages) (use-modules
((guix licenses) (guix packages)
#:prefix license:) ((guix licenses) #:prefix license:)
(guix download) (guix download)
(guix git-download) (guix build-system gnu)
(guix build-system gnu) (guix gexp)
(gnu packages) (gnu packages)
(gnu packages autotools) (gnu packages autotools)
(gnu packages guile) (gnu packages guile)
(gnu packages guile-xyz) (gnu packages guile-xyz)
(gnu packages pkg-config) (gnu packages pkg-config)
(gnu packages texinfo)) (gnu packages texinfo))
(define-public bible-tools (package
(package (name "bible-tools")
(name "bible-tools") (version "1.0")
(version "1.0") (source (local-file "./bible-tools-1.0.tar.gz"))
(source (build-system gnu-build-system)
(origin (arguments
(method git-fetch) `(#:modules
(uri (git-reference ((ice-9 match)
(url "https://git.silasvedder.xyz/silasfox/bible-tools.git") (ice-9 ftw)
(commit "bc925d8"))) ,@%gnu-build-system-modules)
(file-name "bible-tools-1.0-checkout") #:phases
(sha256 (base32 "07221jw4gl48cg45znwjkc7871in3pfq488ig4vnbjygqbg4wawh")))) (modify-phases
(build-system gnu-build-system) %standard-phases
(arguments (add-after
`(#:modules 'install
((ice-9 match) 'hall-wrap-binaries
(ice-9 ftw) (lambda* (#:key inputs outputs #:allow-other-keys)
,@%gnu-build-system-modules) (let* ((compiled-dir
#:phases (lambda (out version)
(modify-phases (string-append
%standard-phases out
(add-after "/lib/guile/"
'install version
'hall-wrap-binaries "/site-ccache")))
(lambda* (#:key inputs outputs #:allow-other-keys) (uncompiled-dir
(let* ((compiled-dir (lambda (out version)
(lambda (out version) (string-append
(string-append out
out "/share/guile/site"
"/lib/guile/" (if (string-null? version) "" "/")
version version)))
"/site-ccache"))) (dep-path
(uncompiled-dir (lambda (env modules path)
(lambda (out version) (list env
(string-append ":"
out 'prefix
"/share/guile/site" (cons modules
(if (string-null? version) "" "/") (map (lambda (input)
version))) (string-append
(dep-path (assoc-ref inputs input)
(lambda (env modules path) path))
(list env ,''())))))
":" (out (assoc-ref outputs "out"))
'prefix (bin (string-append out "/bin/"))
(cons modules (site (uncompiled-dir out "")))
(map (lambda (input) (match (scandir site)
(string-append (("." ".." version)
(assoc-ref inputs input) (for-each
path)) (lambda (file)
,''()))))) (wrap-program
(out (assoc-ref outputs "out")) (string-append bin file)
(bin (string-append out "/bin/")) (dep-path
(site (uncompiled-dir out ""))) "GUILE_LOAD_PATH"
(match (scandir site) (uncompiled-dir out version)
(("." ".." version) (uncompiled-dir "" version))
(for-each (dep-path
(lambda (file) "GUILE_LOAD_COMPILED_PATH"
(wrap-program (compiled-dir out version)
(string-append bin file) (compiled-dir "" version))))
(dep-path ,''("bible-app" "word-counter" "bible2latex"))
"GUILE_LOAD_PATH" #t))))))))
(uncompiled-dir out version) (native-inputs
(uncompiled-dir "" version)) `(("autoconf" ,autoconf)
(dep-path ("automake" ,automake)
"GUILE_LOAD_COMPILED_PATH" ("pkg-config" ,pkg-config)
(compiled-dir out version) ("texinfo" ,texinfo)))
(compiled-dir "" version)))) (inputs `(("guile" ,guile-3.0)))
,''("bible-app" "word-counter" "bible2latex")) (propagated-inputs `())
#t)))))))) (synopsis "")
(native-inputs (description "")
`(("autoconf" ,autoconf) (home-page "")
("automake" ,automake) (license license:gpl3+))
("pkg-config" ,pkg-config)
("texinfo" ,texinfo)))
(inputs `(("guile" ,guile-3.0)))
(propagated-inputs `())
(synopsis "")
(description "")
(home-page "")
(license license:gpl3+)))
bible-tools

View File

@ -14,8 +14,8 @@
((directory ((directory
"bible-tools" "bible-tools"
((scheme-file "latex-export") ((scheme-file "latex-export")
(scheme-file "count-words") (scheme-file "count-words")))
(scheme-file "bible-tools"))))) (scheme-file "bible-tools")))
(tests ((directory "tests" ()))) (tests ((directory "tests" ())))
(programs (programs
((directory ((directory
@ -24,20 +24,18 @@
(in-file "word-counter") (in-file "word-counter")
(in-file "bible2latex"))))) (in-file "bible2latex")))))
(documentation (documentation
((directory ((text-file "ChangeLog")
"doc"
((texi-file "bible-tools")))
(text-file "COPYING")
(text-file "HACKING")
(symlink "README" "README.org")
(org-file "README")
(text-file "NEWS")
(text-file "AUTHORS") (text-file "AUTHORS")
(text-file "ChangeLog"))) (text-file "NEWS")
(symlink "README" "README.org")
(org-file "README")
(text-file "HACKING")
(text-file "COPYING")
(directory "doc" ((texi-file "bible-tools")))))
(infrastructure (infrastructure
((scheme-file "hall") ((in-file "pre-inst-env")
(text-file ".gitignore") (automake-file "Makefile")
(scheme-file "guix") (autoconf-file "configure")
(directory (directory
"build-aux" "build-aux"
((scheme-file "test-driver") ((scheme-file "test-driver")
@ -45,6 +43,6 @@
(text-file "mdate-sh") (text-file "mdate-sh")
(text-file "missing") (text-file "missing")
(text-file "install-sh"))) (text-file "install-sh")))
(autoconf-file "configure") (scheme-file "guix")
(automake-file "Makefile") (text-file ".gitignore")
(in-file "pre-inst-env"))))) (scheme-file "hall")))))

View File

@ -4,8 +4,8 @@ exec guile -e '(@ (bible-app) main)' -s "$0" "$@"
(define-module (bible-app) (define-module (bible-app)
#:use-module (bible-tools) #:use-module (bible-tools)
#:use-module (latex-export) #:use-module (bible-tools latex-export)
#:use-module (count-words) #:use-module (bible-tools count-words)
#:use-module (srfi srfi-1) #:use-module (srfi srfi-1)
#:use-module (srfi srfi-26) #:use-module (srfi srfi-26)
#:export (main)) #:export (main))

View File

@ -4,7 +4,7 @@ exec guile -e '(@ (bible2latex) main)' -s "$0" "$@"
(define-module (bible2latex) (define-module (bible2latex)
#:use-module (bible-tools) #:use-module (bible-tools)
#:use-module (latex-export) #:use-module (bible-tools latex-export)
#:use-module (srfi srfi-1) #:use-module (srfi srfi-1)
#:use-module (srfi srfi-26) #:use-module (srfi srfi-26)
#:export (main)) #:export (main))

View File

@ -4,7 +4,7 @@ exec guile -e '(@ (word-counter) main)' -s "$0" "$@"
(define-module (word-counter) (define-module (word-counter)
#:use-module (bible-tools) #:use-module (bible-tools)
#:use-module (count-words) #:use-module (bible-tools count-words)
#:use-module (srfi srfi-1) #:use-module (srfi srfi-1)
#:use-module (srfi srfi-26) #:use-module (srfi srfi-26)
#:export (main)) #:export (main))