libidn.scm 3.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. ;;; GNU Guix --- Functional package management for GNU
  2. ;;; Copyright © 2012 Andreas Enge <andreas@enge.fr>
  3. ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
  4. ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
  5. ;;; Copyright © 2017 Mark H Weaver <mhw@netris.org>
  6. ;;;
  7. ;;; This file is part of GNU Guix.
  8. ;;;
  9. ;;; GNU Guix is free software; you can redistribute it and/or modify it
  10. ;;; under the terms of the GNU General Public License as published by
  11. ;;; the Free Software Foundation; either version 3 of the License, or (at
  12. ;;; your option) any later version.
  13. ;;;
  14. ;;; GNU Guix is distributed in the hope that it will be useful, but
  15. ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
  16. ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  17. ;;; GNU General Public License for more details.
  18. ;;;
  19. ;;; You should have received a copy of the GNU General Public License
  20. ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
  21. (define-module (gnu packages libidn)
  22. #:use-module (gnu packages)
  23. #:use-module (gnu packages compression)
  24. #:use-module (gnu packages libunistring)
  25. #:use-module (guix licenses)
  26. #:use-module (guix packages)
  27. #:use-module (guix download)
  28. #:use-module (guix build-system gnu))
  29. (define-public libidn
  30. (package
  31. (name "libidn")
  32. (version "1.33")
  33. (source (origin
  34. (method url-fetch)
  35. (uri (string-append "mirror://gnu/libidn/libidn-" version
  36. ".tar.gz"))
  37. (sha256
  38. (base32
  39. "068fjg2arlppjqqpzd714n1lf6gxkpac9v5yyvp1qwmv6nvam9s4"))))
  40. (build-system gnu-build-system)
  41. ;; FIXME: No Java and C# libraries are currently built.
  42. (synopsis "Internationalized string processing library")
  43. (description
  44. "libidn is a library implementing of the Stringprep, Punycode and IDNA
  45. specifications. These are used to encode and decode internationalized domain
  46. names according to the IDNA2003 specifications. It includes native C, C# and
  47. Java libraries.")
  48. ;; The C code is dual-licensed gpl2+ lgpl3+, the manual is fdl1.3+,
  49. ;; the command line tool is gpl3+.
  50. (license (list gpl2+ gpl3+ lgpl3+ fdl1.3+))
  51. (home-page "https://www.gnu.org/software/libidn/")))
  52. (define-public libidn2
  53. (package
  54. (name "libidn2")
  55. (version "2.0.2")
  56. (replacement libidn2-2.0.4)
  57. (source (origin
  58. (method url-fetch)
  59. (uri (string-append "mirror://gnu/libidn/" name "-" version
  60. ".tar.lz"))
  61. (sha256
  62. (base32
  63. "0pqaj8d01aj4i110669fincqs10kgynyqcrmq2q7pss8v9dcd1jq"))))
  64. (native-inputs
  65. `(("lzip" ,lzip)))
  66. (inputs
  67. `(("libunistring" ,libunistring)))
  68. (build-system gnu-build-system)
  69. (synopsis "Internationalized domain name library for IDNA2008")
  70. (description "Libidn2 is an internationalized domain library implementing
  71. the IDNA2008 specifications. Libidn2 is believed to be a complete IDNA2008
  72. implementation, but has yet to be as extensively used as the original Libidn
  73. library.")
  74. (home-page "https://www.gnu.org/software/libidn/#libidn2")
  75. ;; The command-line tool 'idn2' is GPL3+, while the library is dual-licensed
  76. ;; GPL2+ or LGPL3+.
  77. (license (list gpl2+ gpl3+ lgpl3+))))
  78. (define-public libidn2-2.0.4
  79. (package
  80. (inherit libidn2)
  81. (name "libidn2")
  82. (version "2.0.4")
  83. (source (origin
  84. (method url-fetch)
  85. (uri (string-append "mirror://gnu/libidn/" name "-" version
  86. ".tar.lz"))
  87. (sha256
  88. (base32
  89. "00f2fyw5kwr9is3cdn5h9arzxp0lnvg0z9bb9zyfs0dq81gaqim4"))))))