[pacman-dev] makepkg aborts when using unknown terminal
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. ;) Eric
On Thu, Jul 8, 2010 at 10:27 AM, Eric Bélanger <snowmaniscool@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
On Thu, Jul 8, 2010 at 12:50 PM, Dan McGee <dpmcgee@gmail.com> wrote:
On Thu, Jul 8, 2010 at 10:27 AM, Eric Bélanger <snowmaniscool@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. Eric
On Thu, Jul 8, 2010 at 1:46 PM, Eric Bélanger <snowmaniscool@gmail.com> wrote:
On Thu, Jul 8, 2010 at 12:50 PM, Dan McGee <dpmcgee@gmail.com> wrote:
On Thu, Jul 8, 2010 at 10:27 AM, Eric Bélanger <snowmaniscool@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? Output is always helpful. You don't see any errors at all with stock makepkg, it just aborts. dmcgee@clifden ~ $ makepkg ==> ERROR: An unknown error has occurred. Exiting... -Dan
On Thu, Jul 8, 2010 at 2:56 PM, Dan McGee <dpmcgee@gmail.com> wrote:
On Thu, Jul 8, 2010 at 1:46 PM, Eric Bélanger <snowmaniscool@gmail.com> wrote:
On Thu, Jul 8, 2010 at 12:50 PM, Dan McGee <dpmcgee@gmail.com> wrote:
On Thu, Jul 8, 2010 at 10:27 AM, Eric Bélanger <snowmaniscool@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@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)
On 09/07/10 06:31, Eric Bélanger wrote:
On Thu, Jul 8, 2010 at 2:56 PM, Dan McGee<dpmcgee@gmail.com> wrote:
On Thu, Jul 8, 2010 at 1:46 PM, Eric Bélanger<snowmaniscool@gmail.com> wrote:
On Thu, Jul 8, 2010 at 12:50 PM, Dan McGee<dpmcgee@gmail.com> wrote:
On Thu, Jul 8, 2010 at 10:27 AM, Eric Bélanger<snowmaniscool@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@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"
<snip> I'd almost put this down as a configuration error (wrong TERM exported...) but how about we do something like this to fix both issues we are having here: if [[ -t 2 && ! $USE_COLOR = "n" && $(check_buildenv color) = "y" ]]; then # prefer tput for setting font sytle on systems where it is supported if tput setaf 0 &>/dev/null; then [set colour/bold the tput way] else [set colour/bold the old fashioned way] fi fi Allan
participants (3)
-
Allan McRae
-
Dan McGee
-
Eric Bélanger