;; This file has been automatically generated. (define-module (vkraus packages disfluid) #:use-module (gnu packages base) #:use-module (gnu packages emacs) #:use-module (gnu packages gettext) #:use-module (gnu packages gnupg) #:use-module (guix git-download) #:use-module (guix packages) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix download) #:use-module (guix build-system gnu) #:use-module (gnu packages) #:use-module (gnu packages autotools) #:use-module (gnu packages guile) #:use-module (gnu packages guile-xyz) #:use-module (gnu packages pkg-config) #:use-module (gnu packages texinfo)) (define-public disfluid (package (name "disfluid") (version "0.0.4-79-g0e5e9db") (source (origin (method git-fetch) (uri (git-reference (url "https://labo.planete-kraus.eu/disfluid.git") (commit "0e5e9db2d4f27668a9d9e557e28d3bcfd1cc187b"))) (sha256 (base32 "1nif0s6sgman9x7zwplwihnn74bydzdr91x7048m54izx8qdyw4i")))) (build-system gnu-build-system) (arguments `(#:phases (modify-phases %standard-phases (add-after 'unpack 'fix-mtime (lambda _ (let ((disfluid-mtimes '(("doc/disfluid.texi" . 1665946388)))) (for-each (lambda (fix-mtime) (utime (car fix-mtime) (cdr fix-mtime) (cdr fix-mtime))) disfluid-mtimes)))) (add-before 'bootstrap 'fix-hall.scm (lambda _ (let ((disfluid-version "0.0.4-79-g0e5e9db")) (substitute* "hall.scm" (("SNAPSHOT") disfluid-version))))) (add-after 'fix-hall.scm 'hall-scan (lambda _ (setenv "HOME" (getcwd)) (call-with-output-file "disfluid/config.scm" (lambda (port) (write `(define-module (disfluid config)) port))) (invoke "hall" "scan" "-x") (delete-file "disfluid/config.scm"))) (add-after 'hall-scan 'hall-build-system (lambda _ (invoke "hall" "build-system" "-x"))) (add-after 'hall-build-system 'support-config.scm (lambda _ (substitute* "configure.ac" (("AC_OUTPUT") "\nAX_RECURSIVE_EVAL([$prefix], EXPANDED_PREFIX)\nAX_RECURSIVE_EVAL([$exec_prefix], EXPANDED_EXEC_PREFIX)\nAX_RECURSIVE_EVAL([$guilemoduledir], EXPANDED_GUILEMODULEDIR)\nAX_RECURSIVE_EVAL([$localedir], EXPANDED_LOCALEDIR)\nAC_SUBST([EXPANDED_PREFIX])\nAC_SUBST([EXPANDED_EXEC_PREFIX])\nAC_SUBST([EXPANDED_LOCALEDIR])\nAC_SUBST([EXPANDED_GUILEMODULEDIR])\nAC_CONFIG_FILES([disfluid/config.scm])\nAC_OUTPUT\n")) (let ((port (open-file "Makefile.am" "a"))) (format port "\ndist-hook:\n\trm -rf $(distdir)/disfluid/config.scm\n") (close-port port)) (call-with-output-file "disfluid/config.scm.in" (lambda (port) (for-each (lambda (expr) (write expr port) (newline port)) `((define-module (disfluid config) #:export (localedir guilemoduledir prefix exec-prefix)) (define prefix "@EXPANDED_PREFIX@") (define exec-prefix "@EXPANDED_EXEC_PREFIX@") (define localedir "@EXPANDED_LOCALEDIR@") (define guilemoduledir "@EXPANDED_GUILEMODULEDIR@"))))))) (add-after 'support-config.scm 'gettextize (lambda _ (substitute* "configure.ac" (("AC_OUTPUT") "\nAM_GNU_GETTEXT([external])\nAM_GNU_GETTEXT_VERSION([0.21])\nAC_OUTPUT\n") (("AC_CONFIG_FILES\\(\\[Makefile") "AC_CONFIG_FILES([Makefile po/Makefile.in")) (substitute* "Makefile.am" (("EXTRA_DIST =") "EXTRA_DIST = guix.scm channels.scm")) (rename-file "Makefile.am" "general.am") (call-with-output-file "Makefile.am" (lambda (port) (format port "SUBDIRS = po\ninclude general.am\n"))) (mkdir-p "po") (call-with-output-file "po/Makevars" (lambda (port) (format port "DOMAIN = $(PACKAGE)\nsubdir = po\ntop_builddir = ..\nXGETTEXT_OPTIONS = --keyword=_ --keyword=N_ --keyword=G_\nCOPYRIGHT_HOLDER = Viven Kraus\nPACKAGE_GNU =\nMSGID_BUGS_ADDRESS = vivien@planete-kraus.eu\nEXTRA_LOCALE_CATEGORIES =\nUSE_MSGCTXT = no\nMSGMERGE_OPTIONS =\nMSGINIT_OPTIONS =\nPO_DEPENDS_ON_POT = yes\nDIST_DEPENDS_ON_UPDATE_PO = yes\n"))) (call-with-output-file "collect-potfiles.sh" (lambda (port) (format port "\n(for pattern in '*.scm' ;\n do find . -name \"$pattern\" ;\n done) > po/POTFILES.in\n") (chmod port 493))) (invoke "bash" "collect-potfiles.sh"))) (add-after 'bootstrap 'fix-po-makefile-shell (lambda _ (substitute* "po/Makefile.in.in" (("SHELL = /bin/sh") "SHELL = @SHELL@")))) (add-after 'check 'distcheck (lambda* (#:key make-flags inputs #:allow-other-keys) (apply invoke "make" `(,@make-flags "distcheck" ,(format #f "DISTCHECK_CONFIGURE_FLAGS=SHELL=~a" (search-input-file inputs "/bin/bash")))) (copy-file "disfluid-0.0.4-79-g0e5e9db.tar.gz" "/tmp/disfluid-0.0.4-79-g0e5e9db.tar.gz") (with-directory-excursion "/tmp" (invoke "tar" "xf" "disfluid-0.0.4-79-g0e5e9db.tar.gz") (delete-file "disfluid-0.0.4-79-g0e5e9db.tar.gz") (invoke "tar" "--sort=name" "--mtime=2022-01-01 00:00Z" "--owner=0" "--group=0" "--numeric-owner" "--pax-option=exthdr.name=%d/PaxHeaders/%f,delete=atime,delete=ctime" "-cf" "disfluid-0.0.4-79-g0e5e9db.tar.gz" "disfluid-0.0.4-79-g0e5e9db")) (copy-file "/tmp/disfluid-0.0.4-79-g0e5e9db.tar.gz" "disfluid-0.0.4-79-g0e5e9db.tar.gz"))) (add-after 'install 'install-complete-corresponding-source (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) (mkdir-p (string-append out "/share/disfluid")) (copy-file "disfluid-0.0.4-79-g0e5e9db.tar.gz" (string-append out "/share/disfluid/complete-corresponding-source.tar.gz")))))))) (native-inputs `(,autoconf ,automake ,pkg-config ,texinfo ,guile-hall ,emacs ,gnu-gettext ,autoconf-archive ,findutils)) (inputs `(,guile-3.0)) (propagated-inputs `(,guile-gcrypt ,guile-json-4 ,guile-rdf ,guile-jsonld)) (synopsis "Solid stack implementation") (description "This package provides a Solid implementation, client and server.") (home-page "https://disfluid.planete-kraus.eu") (license license:agpl3+))) disfluid