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.