From: Alex Kost <alezost@gmail.com>
To: Alex Griffin <a@ajgrf.com>
Cc: guix-devel@gnu.org
Subject: Re: [PATCH 1/3] gnu: Add utfcpp.
Date: Sun, 08 May 2016 11:13:35 +0300 [thread overview]
Message-ID: <87h9e9ge6o.fsf@gmail.com> (raw)
In-Reply-To: <1462673439.1215291.601202577.5D6E31AB@webmail.messagingengine.com> (Alex Griffin's message of "Sat, 07 May 2016 21:10:39 -0500")
Alex Griffin (2016-05-08 05:10 +0300) wrote:
> On Sat, May 7, 2016, at 05:19 PM, Leo Famulari wrote:
>> Not a bad idea for a new module, but I wonder if you considered any of
>> the existing modules? Are none of them appropriate?
>
> Nothing else seemed to fit, but I'm open to suggestions.
I suggest (gnu packages textutils); I see 'utf8proc' is placed there. I
think this is also a suitable module for 'libunistring' (currently it is
placed in its own file), but it's a separate question.
> From b91d9f45339b78965af46a951a0922c29cd1de95 Mon Sep 17 00:00:00 2001
> From: Alex Griffin <a@ajgrf.com>
> Date: Sat, 7 May 2016 12:16:39 -0500
> Subject: [PATCH 1/3] gnu: Add utfcpp.
>
> * gnu/packages/unicode.scm: New file.
> ---
> gnu/packages/unicode.scm | 63 ++++++++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 63 insertions(+)
> create mode 100644 gnu/packages/unicode.scm
>
> diff --git a/gnu/packages/unicode.scm b/gnu/packages/unicode.scm
> new file mode 100644
> index 0000000..e386b0b
> --- /dev/null
> +++ b/gnu/packages/unicode.scm
> @@ -0,0 +1,63 @@
> +;;; GNU Guix --- Functional package management for GNU
> +;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
> +;;;
> +;;; This file is part of GNU Guix.
> +;;;
> +;;; GNU Guix is free software; you can redistribute it and/or modify it
> +;;; under the terms of the GNU General Public License as published by
> +;;; the Free Software Foundation; either version 3 of the License, or (at
> +;;; your option) any later version.
> +;;;
> +;;; GNU Guix is distributed in the hope that it will be useful, but
> +;;; WITHOUT ANY WARRANTY; without even the implied warranty of
> +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> +;;; GNU General Public License for more details.
> +;;;
> +;;; You should have received a copy of the GNU General Public License
> +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
> +
> +(define-module (gnu packages unicode)
> + #:use-module ((guix licenses) #:prefix license:)
> + #:use-module (guix packages)
> + #:use-module (guix download)
> + #:use-module (guix build-system trivial)
> + #:use-module (gnu packages zip))
Not a big thing but we indent '#:use-module' by 2 spaces. Out of
curiosity: what editor do you use?
> +
> +(define-public utfcpp
> + (package
> + (name "utfcpp")
> + (version "2.3.4")
> + (source (origin
> + (method url-fetch)
> + (uri
> + (string-append
> + "mirror://sourceforge/project/utfcpp/utf8cpp_2x/Release%20"
> + version "/utf8_v"
> + (string-map (lambda (x) (if (eq? x #\.) #\_ x)) version)
> + ".zip"))
> + (file-name (string-append name "-" version ".zip"))
> + (sha256
> + (base32
> + "1vqhs0aipcvvdrwcs7h3jsryg6mgbmc4s34n5cm6d36q4nxwwwrk"))))
I don't know whether we have an idiomatic way to convert "2.3.4" into
"2_3_4", but I would just use a tarball from github:
(source (origin
(method url-fetch)
(uri (string-append
"https://github.com/nemtrif/utfcpp/archive/v"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1x36184rsxiskwdkkz7hnpp6qvqckl04bxj5db9dnwyii1zx09hs"))))
But let's wait for other opinions.
> + (build-system trivial-build-system)
> + (arguments
> + `(#:modules ((guix build utils))
> + #:builder
> + (begin
> + (use-modules (guix build utils))
> + (let ((source (assoc-ref %build-inputs "source"))
> + (out (assoc-ref %outputs "out"))
> + (unzip (string-append (assoc-ref %build-inputs "unzip")
> + "/bin/unzip")))
> + (mkdir-p out)
> + (with-directory-excursion out
> + (system* unzip source)
> + (mkdir-p "share/doc")
> + (rename-file "doc" "share/doc/utfcpp")
> + (rename-file "source" "include"))))))
> + (native-inputs `(("unzip" ,unzip)))
> + (home-page "https://github.com/nemtrif/utfcpp")
> + (synopsis "Portable C++ library for handling UTF-8")
> + (description "UTF8-CPP is a C++ library for handling UTF-8 encoded text
> + in a portable way.")
Please don't add leading spaces in descriptions :-)
> + (license license:boost1.0)))
--
Alex
next prev parent reply other threads:[~2016-05-08 8:13 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-05-07 18:36 [PATCH 1/3] gnu: Add utfcpp Alex Griffin
2016-05-07 22:19 ` Leo Famulari
2016-05-08 2:10 ` Alex Griffin
2016-05-08 8:13 ` Alex Kost [this message]
2016-05-08 14:43 ` Alex Griffin
2016-05-08 19:42 ` Alex Kost
2016-05-09 3:31 ` Leo Famulari
2016-05-09 8:02 ` Alex Kost
2016-05-10 23:31 ` Alex Griffin
2016-05-12 10:02 ` Alex Kost
2016-05-08 16:12 ` Ludovic Courtès
2016-05-08 19:22 ` Alex Kost
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87h9e9ge6o.fsf@gmail.com \
--to=alezost@gmail.com \
--cc=a@ajgrf.com \
--cc=guix-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.