Hi, ng0 <n...@we.make.ritual.n0.is> writes: > 宋文武 <iyzs...@member.fsf.org> writes: > >> Leo Famulari <l...@famulari.name> 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 <n...@we.make.ritual.n0.is> > 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