I'm trying to build man-pages-ja-git from AUR.
Installation doesn't proceed. It stops here.
==> Entering fakeroot environment... ==> Starting package()... spawn make perl -w script/configure.perl [INSTALLATION INFORMATION] (just Return if you accept default) Install directory [/usr/share/man/ja_JP.utf8] ?:
I think configure.perl in src/jm/pkgbuild/tmp/man-pages-ja-20131012/scipt/ doesn't receive keyboard input.
I removed <STDIN> in this script to check where the script stops, then it stopped in next <STDIN>.
Does anyone have any ideas?
Thanks in advance.
Last edited by syusui (2013-12-29 11:10:46)
PKGBUILD are not supposed to be interactive.
Maybe there's an option in makefile / configure.perl to use settings from a file or just use the defaults ?
If not, try redirecting STDIN to a file using something like : perl -w script/configure.perl < answers.txt
(you'll have to create answers.txt yourself)
I apologize for the delay in replying to you.
I could solve this problem by using redirection.
After that, I found an mkconfig.expect.
The cause was that this script does not match output string.
I inserted this in PKGBUILD:42
sed -i 's/"Install directory .*"/"Install directory *\/usr\/share\/man\/*"/g' ./mkconfig.expect
Looks like Kunia (unless that's you ?) added that as an additional sourcefile.
If Kunia is a different person, best alert them to your change so they can correct that file.
I found that the install script works correctly when the system wide locale is defined as ja_JP.utf8.
The system wide locale had been set to C when the installation failed.
echo LANG="ja_JP.utf8" | sudo tee /etc/locale.conf
It will be the problem when the user does not know this.
I hope that there are some way the user can select the locale when installing.
I'll ask Kunia for help.
Sorry. I wrote that the install script had worked when the locale had been set to ja_JP.utf8, but it was wrong. It was ja_JP.UTF-8.
Last edited by syusui (2014-05-10 11:50:28)
nice catch, syusui .
That does suggest upstream made the assumption ja_JP.utf8 would be activated, but doesn't check if it is.
The project looks active (http://sourceforge.jp/projects/linuxjm/ … man-pages/) , you might want to alert upstream about this.
When I changed the system locale to C, the install script displayed, "Install directory [/usr/share/man/C] ".
The install script (configure.perl) recognizes the system locale. Probably, this is not a upstream problem.
This expect script(mkconfig.expect) does not work when the locale is not ja_JP.UTF-8. (mkconfig.expect:Line11)
The proposal is to let mkconfig.expect recognize the system locale. I confirmed that this worked.
expect "Install directory *\/usr\/share\/man\/$env(LANG)" send "$env(PKGDIR)\/usr\/share\/man\/$env(LANG)\n"