# [SOLVED] Popsuty output portage-utils

## lazy_bum

Od jakiegoś czasu potrafi mi się rozjechać kilka komend. W zasadzie znam jedną, która robi to notorycznie → q (app-portage/portage-utils). Otwarcie nowego xterm, urxvt czy konsole i wpisanie „q” skutkuje taką oto kaszą:

```
maszyn ~ aarkgreearkgreen<arg> * Module pathte xpak archivessckagepackages

  -v, --verbose        * Make a lot of noise

  -q, --quiet          * Tighter output; suppress warnings

  -C, --nocolor        * Don't output coloror applets

  -h, --help           * Print this help and exite

  -V, --version        * Print version and exitcache

maszyn ~ ): ath  
```

Zrzut ekranu, gdyby trudno to było to sobie wyobrazić.

Tymczasem powinno to wyglądać tak (tyle, że kolorowo):

```
maszyn ~ (: q -C

Usage: q <applet> <args>  : invoke a portage utility applet

Currently defined applets:

        q <applet> <args> : virtual applet

    qatom <pkg>           : split atom strings

   qcache <action> <args> : search the metadata cache

   qcheck <pkgname>       : verify integrity of installed packages

 qdepends <pkgname>       : show dependency info

    qfile <filename>      : list all pkgs owning files

    qglsa <action> <list> : check GLSAs against system

    qgrep <misc args>     : grep in ebuilds

    qlist <pkgname>       : list files owned by pkgname

     qlop <pkgname>       : emerge log analyzer

   qmerge <pkgnames>      : fetch and merge binary package

     qpkg <misc args>     : manipulate Gentoo binpkgs

  qsearch <regex>         : search pkgname/desc

    qsize <pkgname>       : calculate size usage

    qtbz2 <misc args>     : manipulate tbz2 packages

     quse <useflag>       : find pkgs using useflags

    qxpak <misc args>     : manipulate xpak archives

Options: -[irmM:vqChV]

  -i, --install        * Install symlinks for applets

  -r, --reinitialize   * Reinitialize ebuild cache

  -m, --metacache      * Reinitialize metadata cache

  -M, --modpath  <arg> * Module path

  -v, --verbose        * Make a lot of noise

  -q, --quiet          * Tighter output; suppress warnings

  -C, --nocolor        * Don't output color

  -h, --help           * Print this help and exit

  -V, --version        * Print version and exit

```

Problem występuje na jednej maszynie. Zarówno w przypadku istniejących użytkowników, jak i nowego (czystego). Po „unset TERM” q wygląda tak jak należy (bez kolorów). Nie mam za bardzo pomysłu gdzie może leżeć problem. Wyglada na to, że jest to gdzieś na linii z kolorami, ale gdzie? Jakiś zagubiony plik w /etc, pozostałość po jakiejś aplikacji, problem z bashem…? Sprawdzałem zarówno wersję stable jak i ~arch portage-utils, różne wersje rxvt-unicode — bez zmian.

Ustawienie TERM (echo $TERM) dla poszczególnych terminali:

konsole → TERM=xterm

xterm → TERM=xterm

urxvt → TERM=rxvt

screen → TERM=screen

tty → TERM=linux

----------

## nifk

Nie wiem czy problem jest jeszcze aktualny, ale możesz spóbować tego:

```
$ q | hexdump -C | less
```

Przynajmniej będzie wiadomo jakie sekwencje specjalne generuje q.

Możliwe, że nic to nie da, bo jak piszesz nie tylko z q jest problem. Tym bardziej, że spojrzałem na szybko w kod q i z tego co widze nie używają żadnych bibliotek, sami wszystkie sekwencje generuja.

Masz może plik '/etc/portage/color.map'? Co prawda nigdy o nim nie słyszałem, ale kod sugeruje, że też może zawierać sekwencje specjalne.

----------

## lazy_bum

Dzięki za odpowiedź, trafną zresztą. Rzeczywiście mam /etc/portage/color.map, w którym (kiedyś, hoho albo jeszcze dawniej) zmieniałem kolory wyjścia emerge. Po całej zabawie został mi w zasadzie jeden wpis zmieniający granatowy na zielony. Najwyraźniej to powodowało problem, bo portage-utils[1] (dzięki mziab) zdaje się nie rozumieć mojego zapisu.

[1] Gentoo Wiki Archives

 *Quote:*   

> But please note that colorized output of qfile and possibly some other tools currently (as of portage-utils 0.1.20) were not written initially to take RGB values into account. For such colors you should use ASCII escape sequences instead:
> 
> turquoise=34;1m

 

----------

