guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] gnu: Add ircii.


From: ng0
Subject: Re: [PATCH] gnu: Add ircii.
Date: Thu, 04 Aug 2016 19:03:53 +0000

Hi,
ng0 <address@hidden> writes:

> 宋文武 <address@hidden> writes:
>
>> Leo Famulari <address@hidden> writes:
>>
>>> On Mon, Aug 01, 2016 at 07:34:49PM +0000, ng0 wrote:
>>>> * gnu/packages/irc.scm (ircii): New variable.
>>>
>>> Cool!
>>>
>>>> +             (snippet
>>>> +              '(begin
>>>> +                 (substitute* "bsdinstall"
>>>> +                   (("/bin/strip") "strip")
>>>> +                   (("/bin/cp") "cp")
>>>> +                   (("/bin/chmod") "chmod")
>>>> +                   (("/etc/chown") "chown")
>>>> +                   (("/bin/chgrp") "chgrp")
>>>> +                   (("/bin/mkdir") "mkdir")
>>>> +                   (("/bin/rm") "rm")
>>>> +                   (("/bin/mv") "mv"))))))
>>>
>>> Does anyone else think we should put this origin snippet in a build phase
>>> instead? Or, should we leave it in the origin, where it will be applied
>>> to the source code provided by `guix build --source ircii`?
>> I think it should be in snippet.  The 'substitute*' doesn't introduce
>> any guix specified modifitions, it removes the hardcoded paths.
>>
>>>
>>>> +         (delete 'check))))
>>>
>>> Using '#:tests? #f' is preferred instead of deleting the check phase.
>>>
>>>> +    (inputs
>>>> +     `(("libiconv" ,libiconv)
>>>> +       ("ncurses" ,ncurses)
>>>> +       ("openssl" ,openssl)))
>>>
>>> I noticed that the built package does refer to libiconv:
>>>
>>> ---
>>> $ guix gc --references $(./pre-inst-env guix build ircii)
>>> /gnu/store/0kml8g9fix69v00afv59ngf4lgfr1565-openssl-1.0.2h
>>> /gnu/store/9maps38bsia0wcxm82h0v0p2dxyn8j35-ircii-20151120
>>> /gnu/store/9nifwk709wajpyfwa0jzaa3p6mf10vxs-gcc-4.9.3-lib
>>> /gnu/store/m9vxvhdj691bq1f85lpflvnhcvrdilih-glibc-2.23
>>> /gnu/store/xl19qrfzga52vrvp4ncccwjlnrjqwj95-ncurses-6.0
>>> /gnu/store/ykzwykkvr2c80rw4l1qh3mvfdkl7jibi-bash-4.3.42
>>> ---
>>>
>>> But, libiconv is used:
>>>
>>> ---
>>> $ strings 
>>> /gnu/store/9maps38bsia0wcxm82h0v0p2dxyn8j35-ircii-20151120/bin/irc | grep 
>>> iconv
>>> iconv_close
>>> iconv
>>> iconv_open
>>> iconv_open@@GLIBC_2.2.5
>>> iconv@@GLIBC_2.2.5
>>> iconv_close@@GLIBC_2.2.5
>>> ---
>>>
>>> Perhaps libiconv should be propagated?
>> The iconv functions are provided by glibc, libiconv is for systems that
>> do not use glibc.  libiconv should be removed from inputs.
>
> For future references:
>
> As said on irc freenode.net, we might use libiconv if we run into
> problems with other libcs later.
>
> For now, I applied what you said, thanks.

Can someone test this with

/SERVER freenode.org:6697 and tell me if SSL connection works with ircii
or if I need to tweak this for us? There's also the newer *current*
release of ircii, this just packages stable.

> From 51542c0897a8f01af1a0507f8e243c1dec72a9c7 Mon Sep 17 00:00:00 2001
> From: ng0 <address@hidden>
> Date: Mon, 1 Aug 2016 19:31:23 +0000
> Subject: [PATCH] gnu: Add ircii.
>
> * gnu/packages/irc.scm (ircii): New variable.
> ---
>  gnu/packages/irc.scm | 53 
> ++++++++++++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 53 insertions(+)
>
> diff --git a/gnu/packages/irc.scm b/gnu/packages/irc.scm
> index 03f014a..97f015b 100644
> --- a/gnu/packages/irc.scm
> +++ b/gnu/packages/irc.scm
> @@ -194,3 +194,56 @@ with a keyboard, though it also supports mouse.  It is 
> customizable
>  and extensible with plugins and scripts.")
>      (home-page "http://www.weechat.org/";)
>      (license license:gpl3)))
> +
> +(define-public ircii
> +  (package
> +    (name "ircii")
> +    (version "20151120")
> +    (source (origin
> +             (method url-fetch)
> +             (uri (string-append "https://ircii.warped.com/";
> +                                 name "-" version ".tar.gz"))
> +             (sha256
> +              (base32
> +               "178dc279f5j894qvp96dzz7c0jpryqlcqw5g0dc9yaxg9kgw1lqm"))))
> +     (build-system gnu-build-system)
> +    (arguments
> +     `(#:tests? #f
> +       #:phases
> +       (modify-phases %standard-phases
> +         (add-after 'unpack 'patch-bsdinstall-absolute-path-bins
> +           (lambda* (#:key inputs #:allow-other-keys)
> +             (substitute* "bsdinstall"
> +               (("/bin/strip") "strip")
> +               (("/bin/cp") "cp")
> +               (("/bin/chmod") "chmod")
> +               (("/etc/chown") "chown")
> +               (("/bin/chgrp") "chgrp")
> +               (("/bin/mkdir") "mkdir")
> +               (("/bin/rm") "rm")
> +               (("/bin/mv") "mv"))))
> +         (replace 'configure
> +           (lambda* (#:key inputs outputs #:allow-other-keys)
> +             (let ((out (assoc-ref outputs "out"))
> +                   (ncurses (assoc-ref inputs "ncurses"))
> +                   (openssl (assoc-ref inputs "openssl")))
> +               (setenv "CONFIG_SHELL" (which "bash"))
> +               (zero?
> +                (system* "./configure"
> +                         ;; TODO: find a socks4+5 lib with small size
> +                         ;; (string-append "--with-socks5=" ghc-socks)
> +                         (string-append "--prefix=" out)
> +                         (string-append "--enable-ipv6")
> +                         (string-append "--with-openssl=" openssl)
> +                         (string-append "--with-emacs-meta-keys")))))))))
> +    (inputs
> +     `(("ncurses" ,ncurses)
> +       ("openssl" ,openssl)))
> +    (native-inputs
> +     `(("pkg-config" ,pkg-config)
> +       ("perl" ,perl)))
> +    (home-page "http://www.eterna.com.au/ircii/";)
> +    (synopsis "Terminal-based IRC and ICB client")
> +    (description
> +     "ircII is a terminal based IRC and ICB client for UNIX systems.")
> +    (license license:bsd-3)))
> -- 
> 2.9.2
>
>
> -- 
> ♥Ⓐ  ng0
> Current Keys: https://we.make.ritual.n0.is/ng0.txt
> For non-prism friendly talk find me on http://www.psyced.org

-- 
♥Ⓐ  ng0
Current Keys: https://we.make.ritual.n0.is/ng0.txt
For non-prism friendly talk find me on http://www.psyced.org



reply via email to

[Prev in Thread] Current Thread [Next in Thread]