summaryrefslogtreecommitdiff
path: root/gnu/packages/golang-web.scm
diff options
context:
space:
mode:
authorSharlatan Hellseher <sharlatanus@gmail.com>2023-11-29 22:35:06 +0000
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2024-01-03 16:35:18 -0500
commit8a8b218b3fa963e078d63b38774539ee1cf9ae15 (patch)
treee1f7f808260a78cc0686218e072efcb436726687 /gnu/packages/golang-web.scm
parenta3a25490ec6d7da6f8da2bc374e28d11ccc3a4d8 (diff)
gnu: go-github-com-bep-golibsass: Move to (gnu packages golang-web).
* gnu/packages/golang.scm (go-github-com-bep-golibsass): Move from here... * gnu/packages/golang-web.scm: ...to here. Change-Id: I514ae05a8c04eea2084cbcb7e4d84c83b6b71bb4
Diffstat (limited to 'gnu/packages/golang-web.scm')
-rw-r--r--gnu/packages/golang-web.scm61
1 files changed, 60 insertions, 1 deletions
diff --git a/gnu/packages/golang-web.scm b/gnu/packages/golang-web.scm
index 9aa3fe8233..72f2a7d84c 100644
--- a/gnu/packages/golang-web.scm
+++ b/gnu/packages/golang-web.scm
@@ -3,6 +3,7 @@
;;; Copyright © 2020 Martin Becze <mjbecze@riseup.net>
;;; Copyright © 2020 Martin Becze <mjbecze@riseup.net>
;;; Copyright © 2020 Oleg Pykhalov <go.wigust@gmail.com>
+;;; Copyright © 2020 Ryan Prior <rprior@protonmail.com>
;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
;;; Copyright © 2021, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2022 Giacomo Leidi <goodoldpaul@autistici.org>
@@ -34,7 +35,8 @@
#:use-module (guix git-download)
#:use-module (gnu packages)
#:use-module (gnu packages golang)
- #:use-module (gnu packages golang-check))
+ #:use-module (gnu packages golang-check)
+ #:use-module (gnu packages web))
;;; Commentary:
;;;
@@ -95,6 +97,63 @@ the parse trees produced by the html package.")
(description "This package provides a CSS parser and inliner.")
(license license:expat)))
+(define-public go-github-com-bep-golibsass
+ (package
+ (name "go-github-com-bep-golibsass")
+ (version "0.7.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/bep/golibsass")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0xk3m2ynbydzx87dz573ihwc4ryq0r545vz937szz175ivgfrhh3"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (delete-file-recursively "libsass_src")
+ #t))))
+ (build-system go-build-system)
+ (arguments
+ '(#:import-path "github.com/bep/golibsass/libsass"
+ #:unpack-path "github.com/bep/golibsass"
+ ;; The dev build tag modifies the build to link to system libsass
+ ;; instead of including the bundled one (which we remove.)
+ ;; https://github.com/bep/golibsass/blob/v0.7.0/internal/libsass/a__cgo_dev.go
+ #:build-flags '("-tags" "dev")
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'generate-bindings
+ ;; Generate bindings for system libsass, replacing the
+ ;; pre-generated bindings.
+ (lambda* (#:key inputs unpack-path #:allow-other-keys)
+ (mkdir-p (string-append "src/" unpack-path "/internal/libsass"))
+ (let ((libsass-src (string-append (assoc-ref inputs "libsass-src") "/src")))
+ (substitute* (string-append "src/" unpack-path "/gen/main.go")
+ (("filepath.Join\\(rootDir, \"libsass_src\", \"src\"\\)")
+ (string-append "\"" libsass-src "\""))
+ (("../../libsass_src/src/")
+ libsass-src)))
+ (invoke "go" "generate" (string-append unpack-path "/gen"))
+ #t))
+ (replace 'check
+ (lambda* (#:key tests? import-path #:allow-other-keys)
+ (if tests?
+ (invoke "go" "test" import-path "-tags" "dev"))
+ #t)))))
+ (propagated-inputs
+ (list libsass))
+ (native-inputs
+ `(("go-github-com-frankban-quicktest" ,go-github-com-frankban-quicktest)
+ ("libsass-src" ,(package-source libsass))))
+ (home-page "https://github.com/bep/golibsass")
+ (synopsis "Easy to use Go bindings for LibSass")
+ (description
+ "This package provides SCSS compiler support for Go applications.")
+ (license license:expat)))
+
(define-public go-github-com-chris-ramon-douceur
(package
(name "go-github-com-chris-ramon-douceur")