Compare commits

...

2 commits

2 changed files with 95 additions and 53 deletions

View file

@ -1,50 +0,0 @@
(define-module (termenv-package)
#: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)
#:use-module (guix build-system gnu)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (srfi srfi-1))
(define-public guile-termenv
(package
(name "guile-termenv")
(version "0.1")
(source
(local-file
"../.." "guile-termenv-checkout"
#:recursive? #t
#:select? (lambda (file stat)
(not (any (lambda (my-string)
(string-contains file my-string))
(list ".git" ".dir-locals.el" "guix.scm"))))))
(build-system gnu-build-system)
(arguments
(list
#:make-flags
#~(list "GUILE_AUTO_COMPILE=0")
#:phases
#~(modify-phases %standard-phases
(add-before 'bootstrap 'hall
(lambda _
(system* "hall" "build" "-x")))
(replace 'bootstrap
(lambda _
(system* "autoreconf" "-vif"))))))
(native-inputs (list autoconf
automake
guile-hall
pkg-config
texinfo))
(inputs (list guile-3.0))
(synopsis "Guile port of termenv")
(description
"A library to provide easy control of terminals from Guile using terminal control codes.")
(home-page "https://git.solarpunk.moe/vv/guile-termenv")
(license license:gpl3+)))

View file

@ -1,3 +1,95 @@
(load ".guix/modules/termenv-package.scm")
(use-modules (termenv-package))
guile-termenv
(use-modules
(gnu packages)
(gnu packages autotools)
(gnu packages guile)
(gnu packages guile-xyz)
(gnu packages pkg-config)
(gnu packages texinfo)
(guix build-system gnu)
(guix download)
(guix gexp)
((guix licenses) #:prefix license:)
(guix packages)
(srfi srfi-1))
(package
(name "guile-termenv")
(version "0.1")
(source
(local-file
(dirname (current-filename))
#:recursive?
#t
#:select?
(lambda (file stat)
(not (any (lambda (my-string)
(string-contains file my-string))
(list ".git" ".dir-locals.el" "guix.scm"))))))
(build-system gnu-build-system)
(arguments
`(#:modules
((ice-9 match)
(ice-9 ftw)
,@%gnu-build-system-modules)
#:phases
(modify-phases
%standard-phases
(add-after
'install
'hall-wrap-binaries
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((compiled-dir
(lambda (out version)
(string-append
out
"/lib/guile/"
version
"/site-ccache")))
(uncompiled-dir
(lambda (out version)
(string-append
out
"/share/guile/site"
(if (string-null? version) "" "/")
version)))
(dep-path
(lambda (env modules path)
(list env
":"
'prefix
(cons modules
(map (lambda (input)
(string-append
(assoc-ref inputs input)
path))
,''())))))
(out (assoc-ref outputs "out"))
(bin (string-append out "/bin/"))
(site (uncompiled-dir out "")))
(match (scandir site)
(("." ".." version)
(for-each
(lambda (file)
(wrap-program
(string-append bin file)
(dep-path
"GUILE_LOAD_PATH"
(uncompiled-dir out version)
(uncompiled-dir "" version))
(dep-path
"GUILE_LOAD_COMPILED_PATH"
(compiled-dir out version)
(compiled-dir "" version))))
,''("generate-eastasian"
"generate-emoji"
"generate-graphemes"))
#t))))))))
(native-inputs
(list autoconf automake pkg-config texinfo))
(inputs (list guile-3.0))
(synopsis "Guile port of termenv")
(description
"A library to provide easy control of terminals from Guile using terminal control codes.")
(home-page
"https://git.solarpunk.moe/vv/guile-termenv")
(license license:gpl3+))