[pacman-dev] makepkg aborts when using unknown terminal
Eric Bélanger
snowmaniscool at gmail.com
Thu Jul 8 16:31:36 EDT 2010
On Thu, Jul 8, 2010 at 2:56 PM, Dan McGee <dpmcgee at gmail.com> wrote:
> On Thu, Jul 8, 2010 at 1:46 PM, Eric Bélanger <snowmaniscool at gmail.com> wrote:
>> On Thu, Jul 8, 2010 at 12:50 PM, Dan McGee <dpmcgee at gmail.com> wrote:
>>> On Thu, Jul 8, 2010 at 10:27 AM, Eric Bélanger <snowmaniscool at gmail.com> wrote:
>>>> Hi,
>>>>
>>>> This problem is somewhat related to the terminal color problem so I
>>>> apologize if it's already taken care by these patches.
>>>>
>>>> I use rxvt-unicode as my terminal. Since pacman 3.4, when building
>>>> packages with makechrootpkg, makepkg aborts with the following error:
>>>> tput: unknown terminal "rxvt-unicode"
>>>>
>>>> This happens because I use a clean chroot in which rxvt-unicode isn't
>>>> installed so the terminal definition file
>>>> /usr/share/terminfo/r/rxvt-unicode isn't present. As a workaround, I
>>>> added a 'TERM=xterm' in the wrapper script I use.
>>>>
>>>> It would be nice if, instead of aborting on unknown terminals, makepkg
>>>> would fallback to the dumb terminal. The dumb terminal currently
>>>> doesn's work as I believe it doesn't support colors. This change along
>>>> with the color patch would make makpkg more robust when handling
>>>> different and unusual terminals.
>>>>
>>>> Personnally, I will keep my workaround as I like color. ;)
>>>
>>> http://mailman.archlinux.org/pipermail/pacman-dev/2010-June/011263.html
>>>
>>>
>>
>> I tested Nezmer's patch and it fix this problem. However, the error
>> message is still printed for each call to tput (maybe it should be
>> sent to /dev/null) but makepkg doen't abort anymore.
>
> What error is printed?
The one mentionned in my first post:
tput: unknown terminal "rxvt-unicode"
> Output is always helpful. You don't see any
> errors at all with stock makepkg, it just aborts.
>
> dmcgee at clifden ~
> $ makepkg
>
> ==> ERROR: An unknown error has occurred. Exiting...
>
Yes, you do. As I wrote in my first post, to get the tput error, you
need to build a package in a clean chroot with a terminal whose
terminfo file isn't provided by ncurses like rxvt-unicode. Output
below:
Stock makepkg:
$ echo $TERM
rxvt-unicode
$ sudo makechrootpkg -c -r /mnt/current64 -l copy_1 -- --noconfirm --holdver
creating clean working copy...done
grep: /home/eric/.makepkg.conf: No such file or directory
grep: /home/eric/.makepkg.conf: No such file or directory
tput: unknown terminal "rxvt-unicode"
==> ERROR: An unknown error has occurred. Exiting...
Build failed, check /mnt/testing64/copy_1/build
After aplying Nezmer's patch on the chroot's makepkg:
$ sudo makechrootpkg -c -r /mnt/current64 -l copy_2 -- --noconfirm --holdver
creating clean working copy...done
grep: /home/eric/.makepkg.conf: No such file or directory
grep: /home/eric/.makepkg.conf: No such file or directory
tput: unknown terminal "rxvt-unicode"
tput: unknown terminal "rxvt-unicode"
tput: unknown terminal "rxvt-unicode"
tput: unknown terminal "rxvt-unicode"
tput: unknown terminal "rxvt-unicode"
tput: unknown terminal "rxvt-unicode"
==> Making package: bash-completion 1.2-1 (Thu Jul 8 20:23:55 UTC 2010)
==> Checking Runtime Dependencies...
==> Checking Buildtime Dependencies...
==> Retrieving Sources...
-> Found bash-completion-1.2.tar.bz2
==> Validating source files with md5sums...
bash-completion-1.2.tar.bz2 ... Passed
==> Validating source files with sha1sums...
bash-completion-1.2.tar.bz2 ... Passed
==> Extracting Sources...
-> Extracting bash-completion-1.2.tar.bz2 with bsdtar
==> Starting build()...
<snip> build output </snip>
==> Entering fakeroot environment...
tput: unknown terminal "rxvt-unicode"
tput: unknown terminal "rxvt-unicode"
tput: unknown terminal "rxvt-unicode"
tput: unknown terminal "rxvt-unicode"
tput: unknown terminal "rxvt-unicode"
tput: unknown terminal "rxvt-unicode"
==> Starting package()...
<snip> packaging output </snip>
==> Tidying install...
-> Purging other files...
-> Compressing man and info pages...
-> Stripping unneeded symbols from binaries and libraries...
==> Creating package...
-> Generating .PKGINFO file...
-> Compressing package...
==> Leaving fakeroot environment.
==> Finished making: bash-completion 1.2-1 (Thu Jul 8 20:23:57 UTC 2010)
More information about the pacman-dev
mailing list