X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=guix.scm;h=49f91c13e6fdf26bde136b2e004bd504daf9a105;hb=38afa0b278e17953b64764d800beaaa6368f70be;hp=5a450d2865aa970459f703a6eb6a9ebb377442ca;hpb=638dea67896ab4d6048e297bc20b93112f9294a7;p=8sync.git diff --git a/guix.scm b/guix.scm index 5a450d2..49f91c1 100644 --- a/guix.scm +++ b/guix.scm @@ -2,10 +2,6 @@ ;;; Copyright (C) 2016 Jan Nieuwenhuizen ;;; Copyright (C) 2017 Christopher Allan Webber ;;; -;;; Also borrowing code from: -;;; guile-sdl2 --- FFI bindings for SDL2 -;;; Copyright © 2015 David Thompson -;;; ;;; This file is part of 8sync. ;;; However, unlike most of 8sync, which is under the LGPLv3+, this ;;; file in particular is licensed under GPLv3+. @@ -53,39 +49,58 @@ ((guix build utils) #:select (with-directory-excursion)) (gnu packages) (gnu packages autotools) + (gnu packages gettext) (gnu packages guile) (gnu packages pkg-config) (gnu packages texinfo)) (define %source-dir (dirname (current-filename))) -(define git-file? - (let* ((pipe (with-directory-excursion %source-dir - (open-pipe* OPEN_READ "git" "ls-files"))) - (files (let loop ((lines '())) - (match (read-line pipe) - ((? eof-object?) - (reverse lines)) - (line - (loop (cons line lines)))))) - (status (close-pipe pipe))) - (lambda (file stat) - (match (stat:type stat) - ('directory #t) - ((or 'regular 'symlink) - (any (cut string-suffix? <> file) files)) - (_ #f))))) +(define guile-fibers-git + (package + (inherit guile-fibers) + (name "guile-fibers") + (version "git") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/wingo/fibers.git") + (commit "0fa1fd6adf9980229a46956503a6bf36e8154a78"))) + (sha256 + (base32 + "0a782aa0v2d115427h1h57jkxy04axklan60dzgnsry4axw9iq8r")))) + (arguments + `(#:phases (modify-phases %standard-phases + (add-before 'configure 'bootstrap + (lambda _ + (zero? (system* "./autogen.sh")))) + (add-before 'configure 'setenv + (lambda _ + (setenv "GUILE_AUTO_COMPILE" "0")))) + ;; We wouldn't want this in the upstream fibers package, but gosh + ;; running tests takes forever and is painful + #:tests? #f)) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool) + ("texinfo" ,texinfo) + ("gettext" ,gettext-minimal) + ,@(package-native-inputs guile-2.2))))) (package (name "guile-8sync") (version "git") - (source (local-file %source-dir #:recursive? #t #:select? git-file?)) + (source (local-file %source-dir + #:recursive? #t + #:select? (git-predicate %source-dir))) (build-system gnu-build-system) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) - ("guile" ,guile-next) + ("guile" ,guile-2.2) ("pkg-config" ,pkg-config) ("texinfo" ,texinfo))) + (propagated-inputs `(("guile-fibers" ,guile-fibers-git))) (arguments `(#:phases (modify-phases %standard-phases (add-before 'configure 'bootstrap