You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

127 lines
4.6 KiB

  1. ;;; GNU Guix --- Functional package management for GNU
  2. ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
  3. ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
  4. ;;;
  5. ;;; This file is part of GNU Guix.
  6. ;;;
  7. ;;; GNU Guix is free software; you can redistribute it and/or modify it
  8. ;;; under the terms of the GNU General Public License as published by
  9. ;;; the Free Software Foundation; either version 3 of the License, or (at
  10. ;;; your option) any later version.
  11. ;;;
  12. ;;; GNU Guix is distributed in the hope that it will be useful, but
  13. ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
  14. ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  15. ;;; GNU General Public License for more details.
  16. ;;;
  17. ;;; You should have received a copy of the GNU General Public License
  18. ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
  19. (define-module (gnu packages perl-web)
  20. #:use-module ((guix licenses) #:prefix license:)
  21. #:use-module (gnu packages)
  22. #:use-module (guix packages)
  23. #:use-module (gnu packages perl)
  24. #:use-module (gnu packages perl-check)
  25. #:use-module (guix download)
  26. #:use-module (guix build-system perl)
  27. #:use-module (gnu packages web))
  28. (define-public perl-mojolicious
  29. (package
  30. (name "perl-mojolicious")
  31. (version "7.59")
  32. (source
  33. (origin
  34. (method url-fetch)
  35. (uri (string-append "mirror://cpan/authors/id/S/SR/SRI/Mojolicious-"
  36. version ".tar.gz"))
  37. (sha256
  38. (base32
  39. "11whfrbafj191ahbhlhadws0vkg9kmvqswzkvswgwajhr1x678rh"))))
  40. (build-system perl-build-system)
  41. (home-page "http://mojolicious.org/")
  42. (synopsis "Real-time web framework")
  43. (description "Back in the early days of the web, many people learned Perl
  44. because of a wonderful Perl library called @code{CGI}. It was simple enough
  45. to get started without knowing much about the language and powerful enough to
  46. keep you going, learning by doing was much fun. While most of the techniques
  47. used are outdated now, the idea behind it is not. Mojolicious is a new
  48. endeavor to implement this idea using modern technologies.")
  49. (license license:artistic2.0)))
  50. (define-public perl-uri-db
  51. (package
  52. (name "perl-uri-db")
  53. (version "0.19")
  54. (source
  55. (origin
  56. (method url-fetch)
  57. (uri (string-append
  58. "mirror://cpan/authors/id/D/DW/DWHEELER/URI-db-"
  59. version
  60. ".tar.gz"))
  61. (sha256
  62. (base32
  63. "0n56xxlw7c39pfar0dxckr9mbmp6yrzk53ic0cb24raiykm9v6f4"))))
  64. (build-system perl-build-system)
  65. (native-inputs
  66. `(("perl-module-build" ,perl-module-build)))
  67. (propagated-inputs
  68. `(("perl-uri" ,perl-uri)
  69. ("perl-uri-nested" ,perl-uri-nested)))
  70. (home-page "https://metacpan.org/release/URI-db")
  71. (synopsis "Handle database URIs")
  72. (description
  73. "This module defines a format for database URIs, and provides a @{URI}
  74. class to handle these.")
  75. (license license:perl-license)))
  76. (define-public perl-uri-escape
  77. (package
  78. (name "perl-uri-escape")
  79. (version "1.76")
  80. (source
  81. (origin
  82. (method url-fetch)
  83. (uri (string-append "mirror://cpan/authors/id/O/OA/OALDERS/URI-"
  84. version ".tar.gz"))
  85. (sha256
  86. (base32
  87. "0gj1aj18k43kmzc3y1zhj5giinf8rksacf757r475xfna0fqxjdj"))))
  88. (build-system perl-build-system)
  89. (native-inputs
  90. `(("perl-test-needs" ,perl-test-needs)))
  91. (home-page "https://github.com/libwww-perl/URI")
  92. (synopsis "Percent-encode and percent-decode unsafe characters")
  93. (description "This module provides functions to percent-encode and
  94. percent-decode URI strings as defined by RFC 3986. Percent-encoding URI's is
  95. informally called URI escaping. This is the terminology used by this module,
  96. which predates the formalization of the terms by the RFC by several years.")
  97. (license license:perl-license)))
  98. (define-public perl-uri-nested
  99. (package
  100. (name "perl-uri-nested")
  101. (version "0.10")
  102. (source
  103. (origin
  104. (method url-fetch)
  105. (uri (string-append
  106. "mirror://cpan/authors/id/D/DW/DWHEELER/URI-Nested-"
  107. version
  108. ".tar.gz"))
  109. (sha256
  110. (base32
  111. "1bzg6f11m8wfnmycflvp858rs99xknsx8hkip0xcdfjzlqwi75z1"))))
  112. (build-system perl-build-system)
  113. (native-inputs
  114. `(("perl-module-build" ,perl-module-build)))
  115. (propagated-inputs
  116. `(("perl-uri" ,perl-uri)))
  117. (home-page "https://metacpan.org/release/URI-Nested")
  118. (synopsis "Nested URIs")
  119. (description
  120. "@code{URI::Nested} provides support for nested URIs, where the scheme is
  121. a prefix, and the remainder of the URI is another URI.")
  122. (license license:perl-license)))