guix.scm 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. ;;; Haunt --- Static site generator for GNU Guile
  2. ;;; Copyright © 2015 David Thompson <davet@gnu.org>
  3. ;;;
  4. ;;; This file is part of Haunt.
  5. ;;;
  6. ;;; Haunt is free software; you can redistribute it and/or modify it
  7. ;;; under the terms of the GNU General Public License as published by
  8. ;;; the Free Software Foundation; either version 3 of the License, or
  9. ;;; (at your option) any later version.
  10. ;;;
  11. ;;; Haunt is distributed in the hope that it will be useful, but
  12. ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
  13. ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  14. ;;; General Public License for more details.
  15. ;;;
  16. ;;; You should have received a copy of the GNU General Public License
  17. ;;; along with Haunt. If not, see <http://www.gnu.org/licenses/>.
  18. ;;; Commentary:
  19. ;;
  20. ;; GNU Guix development package. To build and install, run:
  21. ;;
  22. ;; guix package -f guix.scm
  23. ;;
  24. ;; To use as the basis for a development environment, run:
  25. ;;
  26. ;; guix environment -l guix.scm
  27. ;;
  28. ;;; Code:
  29. (use-modules (guix packages)
  30. (guix licenses)
  31. (guix git-download)
  32. (guix build-system gnu)
  33. (gnu packages)
  34. (gnu packages autotools)
  35. (gnu packages guile)
  36. (gnu packages texinfo)
  37. (gnu packages pkg-config))
  38. ;; @@: Not used currently, but leaving it here in case we need to use it again :)
  39. (define haunt-from-git
  40. (package
  41. (name "haunt")
  42. (version "git-37b4cde")
  43. (source (origin
  44. (method git-fetch)
  45. (uri (git-reference
  46. (url "git://dthompson.us/haunt.git")
  47. (commit "37b4cde")))
  48. (sha256
  49. (base32
  50. "1n7y2gpgiq0rb1jphr2q05cl3kf0khfsrf52x0n5zwpn60snrnyr"))))
  51. (build-system gnu-build-system)
  52. (arguments
  53. '(#:phases
  54. (modify-phases %standard-phases
  55. (add-after 'unpack 'bootstrap
  56. (lambda _ (zero? (system* "sh" "bootstrap")))))))
  57. (native-inputs
  58. `(("autoconf" ,autoconf)
  59. ("automake" ,automake)
  60. ("pkg-config" ,pkg-config)
  61. ("texinfo" ,texinfo)))
  62. (inputs
  63. `(("guile" ,guile-2.0)))
  64. (propagated-inputs
  65. `(("guile-reader" ,guile-reader)))
  66. (synopsis "Functional static site generator")
  67. (description "Haunt is a static site generator written in Guile
  68. Scheme. Haunt features a functional build system and an extensible
  69. interface for reading articles in any format.")
  70. (home-page "http://haunt.dthompson.us")
  71. (license gpl3+)))
  72. (define guile-syntax-highlight
  73. (package
  74. (name "guile-syntax-highlight")
  75. (version "git-a047675")
  76. (source (origin
  77. (method git-fetch)
  78. (uri (git-reference
  79. (url "git://dthompson.us/guile-syntax-highlight.git")
  80. (commit "a047675")))
  81. (sha256
  82. (base32
  83. "1zjr6sg3n7xbdsliy45i39dqanxvcms58ayx36wxrz72zpq58vq3"))))
  84. (build-system gnu-build-system)
  85. (arguments
  86. '(#:phases
  87. (modify-phases %standard-phases
  88. (add-after 'unpack 'bootstrap
  89. (lambda _ (zero? (system* "sh" "bootstrap")))))))
  90. (native-inputs
  91. `(("autoconf" ,autoconf)
  92. ("automake" ,automake)
  93. ("pkg-config" ,pkg-config)))
  94. (inputs
  95. `(("guile" ,guile-2.0)))
  96. (synopsis "General-purpose syntax highlighter for GNU Guile")
  97. (description "Guile-syntax-highlight is a general-purpose syntax
  98. highlighting library for GNU Guile. It can parse code written in
  99. various programming languages into a simple s-expression that can be
  100. converted to HTML (via SXML) or any other format for rendering.")
  101. (home-page "http://dthompson.us/software/guile-syntax-highlight")
  102. (license lgpl3+)))
  103. (package
  104. (name "8sync-website")
  105. (version "git")
  106. (source #f)
  107. (build-system gnu-build-system)
  108. (synopsis #f)
  109. (description #f)
  110. (license #f)
  111. (home-page #f)
  112. (inputs
  113. `(("guile" ,guile-2.0)))
  114. (propagated-inputs
  115. `(("haunt" ,haunt) ; haunt from Guix proper, for now
  116. ("guile-syntax-highlight" ,guile-syntax-highlight))))