Eix

Eix is a search, diff and binary cache update in your local tree. Feel free to read the complete eix manual.

app-portage/eix comes along with all Calculate Linux flavours. Note that eix is much faster than the package manager. Eix uses its own Portage database, overlays and system settings. This database is updated every time cl-update is launched. Thus, you can update the eix-update database only when making your edits to check the result using the same tool. Eix can also synchronize the Portage tree. In Calculate Linux, cl-update --sync-only will be called in this case.

Here we list the most common eix examples only.

Output syntax

Default output

By default, calling eix without options will result in listing all packages, as shown below:

eix

[I] app-misc/mc
     Available versions:      4.8.15 4.8.18-r1 ~4.8.19 4.8.20-r1{tbz2} ~4.8.20-r2 **9999 {X +edit gpm mclib nls samba sftp +slang spell test unicode +xdg}
     Installed versions:  4.8.20-r1{tbz2}(12:45:03 16.01.2018)(X edit gpm nls samba slang xdg -mclib -sftp -spell -test)
     Homepage:     https://www.midnight-commander.org
     Description:              GNU Midnight Commander is a text based file manager
...

Here you can see all available versions of the package, the installed version, available USE flags as well as USE flags the package was installed with, the developers' site address, a package description.

Compact output

If you only need to check if the package is available, together with its name, version and description, use the -c, or --compact option:

eix -c

[I] app-misc/mc (4.8.20-r1{tbz2}@16.01.2018): GNU Midnight Commander is a text based file manager
...


Package name listing only

If you browse through numerous packages, you might also want to list their names only. To do so, use the -#, or --only-names option:

eix -#

app-misc/mc
...

Verbose output

To view detailed information on a package, such as its license, use the -v, or --verbose option:

eix -v firefox

* www-client/firefox                                                                                    
     Available versions:      52.4.0^d 52.6.0^d 58.0.1^d{                   tbz2}                                                                                                                                        
     IUSE (all versions):     bindist custom-cflags custom-optimization dbus debug eme-free +gmp-autoupdate g                    tk2 hardened hwaccel jack +jemalloc neon pgo pulseaudio rust +screenshot selinux startup-notification system-cairo system                  -harfbuzz system-icu system-jpeg system-libevent system-libvpx system-sqlite test wifi L10N="ach af an ar as ast az bg bn              -BD bn-IN br bs ca cak cs cy da de dsb el en-GB en-ZA eo es-AR es-CL es-ES es-MX et eu fa ff fi fr fy ga gd gl gn gu he h          i hr hsb hu hy id is it ja ka kab kk km kn ko lij lt lv mai mk ml mr ms nb nl nn or pa pl pt-BR pt-PT rm ro ru si sk sl s    on sq sr sv ta te th tr uk uz vi xh zh-CN zh-TW"
     Installed versions:  Version:  58.0.1^d{tbz2}
                            Date:    14:12:21 27.02.2018
                            USE:     dbus gmp-autoupdate hwaccel screenshot system-icu system-jpeg system-libevent system-libvpx system-sqlite -bindist -custom-cflags -custom-optimization -debug -eme-free -hardened -jack -neon -pulseaudio -selinux -startup-notification -system-harfbuzz -test -wifi L10N="bg bs cs da de es-AR es-ES es-MX et fi fr hr hu it kk lt lv nl pl pt-BR pt-PT ro ru sk sl sq sr sv uk -ach -af -an -ar -as -ast -az -bn-BD -bn-IN -br -ca -cak -cy -dsb -el -en-GB -en-ZA -eo -es-CL -eu -fa -ff -fy -ga -gd -gl -gn -gu -he -hi -hsb -hy -id -is -ja -ka -kab -km -kn -ko -lij -mai -mk -ml -mr -ms -nb -nn -or -pa -rm -si -son -ta -te -th -tr -uz -vi -xh -zh-CN -zh-TW"
                            DEPEND:  >=dev-libs/nss-3.34.1 >=dev-libs/nspr-4.17 >=sys-devel/llvm-4.0.1 >=sys-devel/clang-4.0.1 >=dev-lang/yasm-1.1 virtual/opengl >=sys-apps/sed-4 virtual/pkgconfig >=dev-lang/python-2.7.5-r2:2.7[ncurses,sqlite,ssl,threads] app-arch/zip app-arch/unzip >=sys-devel/binutils-2.16.1 sys-apps/findutils || ( ( >=dev-lang/rust-1.21.0 >=dev-util/cargo-0.22.0 ) >=dev-lang/rust-1.21.0[extended] ( >=dev-lang/rust-bin-1.21.0 >=dev-util/cargo-0.22.0 ) ) >=app-text/hunspell-1.5.4:0/1.6= dev-libs/atk dev-libs/expat >=x11-libs/cairo-1.10[X] >=x11-libs/gtk+-2.18:2 x11-libs/gdk-pixbuf >=x11-libs/pango-1.22.0 >=media-libs/libpng-1.6.34:0/16=[apng] >=media-libs/mesa-10.2:* media-libs/fontconfig >=media-libs/freetype-2.4.10 media-libs/alsa-lib virtual/freedesktop-icon-theme >=sys-apps/dbus-0.60 >=dev-libs/dbus-glib-0.72 >=x11-libs/pixman-0.19.2 >=dev-libs/glib-2.26:2 >=sys-libs/zlib-1.2.3 >=virtual/libffi-3.0.10 virtual/ffmpeg x11-libs/libX11 x11-libs/libXcomposite x11-libs/libXdamage x11-libs/libXext x11-libs/libXfixes x11-libs/libXrender x11-libs/libXt >=dev-libs/icu-59.1:0/60.2= >=media-libs/libjpeg-turbo-1.2.1 >=dev-libs/libevent-2.0:0/2.1-6= >=dev-db/sqlite-3.20.1:3[secure-delete,-debug] >=media-libs/libvpx-1.5.0:0/3=[postproc] >=x11-libs/gtk+-3.4.0:3 >=app-portage/elt-patches-20170422 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16:1.16 >=sys-devel/automake-1.15.1:1.15 ) ~sys-devel/autoconf-2.13 >=sys-devel/libtool-2.4 app-arch/unzip
                            RDEPEND: >=dev-libs/nss-3.34.1 >=dev-libs/nspr-4.17 >=app-text/hunspell-1.5.4:0/1.6= dev-libs/atk dev-libs/expat >=x11-libs/cairo-1.10[X] >=x11-libs/gtk+-2.18:2 x11-libs/gdk-pixbuf >=x11-libs/pango-1.22.0 >=media-libs/libpng-1.6.34:0/16=[apng] >=media-libs/mesa-10.2:* media-libs/fontconfig >=media-libs/freetype-2.4.10 media-libs/alsa-lib virtual/freedesktop-icon-theme >=sys-apps/dbus-0.60 >=dev-libs/dbus-glib-0.72 >=x11-libs/pixman-0.19.2 >=dev-libs/glib-2.26:2 >=sys-libs/zlib-1.2.3 >=virtual/libffi-3.0.10 virtual/ffmpeg x11-libs/libX11 x11-libs/libXcomposite x11-libs/libXdamage x11-libs/libXext x11-libs/libXfixes x11-libs/libXrender x11-libs/libXt >=dev-libs/icu-59.1:0/60.2= >=media-libs/libjpeg-turbo-1.2.1 >=dev-libs/libevent-2.0:0/2.1-6= >=dev-db/sqlite-3.20.1:3[secure-delete,-debug] >=media-libs/libvpx-1.5.0:0/3=[postproc] >=x11-libs/gtk+-3.4.0:3
                            EAPI:    6
                            58.0.1^d{tbz2}
     Homepage:     http://www.mozilla.com/firefox
     Find open bugs:   https://bugs.gentoo.org/buglist.cgi?quicksearch=www-client%2Ffirefox
     Description:              Firefox Web Browser
     License:              MPL-2.0 GPL-2 LGPL-2.1
...

If you want to display information about each version of the package line by line, use option - l, --versionlines :

eix -l

[I] www-client/firefox
     Available versions:      
            52.4.0    ^d [bindist custom-cflags custom-optimization dbus debug eme-free +gmp-autoupdate gtk2 hardened hwaccel jack +jemalloc neon pgo pulseaudio rust selinux startup-notification system-cairo system-harfbuzz system-icu system-jpeg system-libevent system-libvpx system-sqlite test wifi L10N="ach af an ar as ast az bg bn-BD bn-IN br bs ca cak cs cy da de dsb el en-GB en-ZA eo es-AR es-CL es-ES es-MX et eu fa ff fi fr fy ga gd gl gn gu he hi hr hsb hu hy id is it ja ka kab kk km kn ko lij lt lv mai mk ml mr ms nb nl nn or pa pl pt-BR pt-PT rm ro ru si sk sl son sq sr sv ta te th tr uk uz vi xh zh-CN zh-TW"]
            52.6.0    ^d [bindist custom-cflags custom-optimization dbus debug eme-free +gmp-autoupdate gtk2 hardened hwaccel jack +jemalloc neon pgo pulseaudio rust selinux startup-notification system-cairo system-harfbuzz system-icu system-jpeg system-libevent system-libvpx system-sqlite test wifi L10N="ach af an ar as ast az bg bn-BD bn-IN br bs ca cak cs cy da de dsb el en-GB en-ZA eo es-AR es-CL es-ES es-MX et eu fa ff fi fr fy ga gd gl gn gu he hi hr hsb hu hy id is it ja ka kab kk km kn ko lij lt lv mai mk ml mr ms nb nl nn or pa pl pt-BR pt-PT rm ro ru si sk sl son sq sr sv ta te th tr uk uz vi xh zh-CN zh-TW"]
            58.0.1    ^d{tbz2} [bindist custom-cflags custom-optimization dbus debug eme-free +gmp-autoupdate hardened hwaccel jack neon pulseaudio +screenshot selinux startup-notification system-harfbuzz system-icu system-jpeg system-libevent system-libvpx system-sqlite test wifi L10N="ach af an ar as ast az bg bn-BD bn-IN br bs ca cak cs cy da de dsb el en-GB en-ZA eo es-AR es-CL es-ES es-MX et eu fa ff fi fr fy ga gd gl gn gu he hi hr hsb hu hy id is it ja ka kab kk km kn ko lij lt lv mai mk ml mr ms nb nl nn or pa pl pt-BR pt-PT rm ro ru si sk sl son sq sr sv ta te th tr uk uz vi xh zh-CN zh-TW"]
     Installed versions:  58.0.1^d{tbz2}(14:12:21 27.02.2018)(dbus gmp-autoupdate hwaccel screenshot system-icu system-jpeg system-libevent system-libvpx system-sqlite -bindist -custom-cflags -custom-optimization -debug -eme-free -hardened -jack -neon -pulseaudio -selinux -startup-notification -system-harfbuzz -test -wifi L10N="bg bs cs da de es-AR es-ES es-MX et fi fr hr hu it kk lt lv nl pl pt-BR pt-PT ro ru sk sl sq sr sv uk -ach -af -an -ar -as -ast -az -bn-BD -bn-IN -br -ca -cak -cy -dsb -el -en-GB -en-ZA -eo -es-CL -eu -fa -ff -fy -ga -gd -gl -gn -gu -he -hi -hsb -hy -id -is -ja -ka -kab -km -kn -ko -lij -mai -mk -ml -mr -ms -nb -nn -or -pa -rm -si -son -ta -te -th -tr -uz -vi -xh -zh-CN -zh-TW")
     Homepage:     http://www.mozilla.com/firefox
     Description:              Firefox Web Browser
...

Using together the -l, --versionlines and -v, --verbose options may be a good idea:

eix -lv

Search options

Search by package name

By default, eix makes search by package name. Search for 'browser' will return 19 matches:

eix browser

* www-client/qutebrowser
     Available versions:      ~1.0.4^t 1.1.1^t **9999^t {test PYTHON_TARGETS="python3_5 python3_6"}
     Homepage:     https://www.qutebrowser.org/ https://github.com/qutebrowser/qutebrowser
     Description:              A keyboard-driven, vim-like browser based on PyQt5 and QtWebEngine
...

Search by package description

If you need to search by package description, use option -S, --description. Search for 'browser' will return 106 matches:

eix -S browser

* www-client/opera
     Available versions:      12.16_p1860-r1 45.0.2552.898[1] 51.0.2830.34 51.0.2830.40 {gtk multilib ELIBC="FreeBSD" L10N="af ar az (+)be (+)bg (+)bn +ca cnr (+)cs (+)da (+)de (+)el (+)en-GB +es (+)es-419 es-ES et fa (+)fi +fil (+)fr (+)fr-CA fy gd (+)he (+)hi (+)hr (+)hu (+)id (+)it (+)ja ka kk (+)ko (+)lt (+)lv mk (+)ms (+)nb (+)nl nn pa (+)pl pt (+)pt-BR +pt-PT (+)ro (+)ru (+)sk (+)sr (+)sv (+)sw (+)ta (+)te (+)th tl (+)tr (+)uk ur uz (+)vi (+)zh-CN (+)zh-TW zu"}
     Homepage:     http://www.opera.com/
     Description:              A fast and secure web browser

[1] "calculate" /var/lib/layman/calculate
...

Search by USE flag

Most Calculate Linux packages have USE flags, which define what functionality is enable for the package. To search by USE flag, use option -U, --use:

eix -U qt5

To search by USE flag among the installed packages only, run something like this:

eix -IU qt5

Compact output is available for this option:

eix -#IU qt5

Eix can search both by a USE flag, but also among installed packages for which a specified USE flag was enabled. To do so, use option --installed-with-use. You can, for instance, get a compact list of the installed packages with the enabled 'qt5' USE flag:

eix -# --installed-with-use qt5

To view the installed packages with a disabled USE flag, use option --installed-without-use. Let's now ask for a compact list of the installed packages with the disabled 'qt5' USE flag:

eix -# --installed-without-use qt5

Search scope

Search among installed packages

To limit your search to the installed packages, use option -I, --installed:

eix -I

Search within a package category

To view the packages grouped into a category, use option -C, --category:

eix -C kde-apps

Search within a slot

Slots allow to have multiple versions of a package in your system: for instance, KDE4 and KDE5 ones. To limit your search to a slot, use option --slot:

eix --slot

When combined to a category option, this command will list all packages with the specified slot belonging to the specified category:

eix -C kde-apps --slot 5

Search in the added overlays

To view all packages provided by the overlays you added to the system, use option -O, --overlay. Such packages or package versions are marked with a numbered footnote. At the end of the list a legend is added:

eix -O

* x11-themes/elementary-icon-theme [1]
     Available versions:      2.7.1-r4^bs ~9999^bs
     Homepage:     https://launchpad.net/elementaryicons
     Description:              Elementary icon theme is designed to be smooth, sexy, clear, and efficient

* x11-themes/calculate-xcursors [1]
     Available versions:      13-r1 14-r1
     Homepage:     http://www.calculate-linux.org/packages/x11-themes/calculate-xcursors
     Description:              Calculate X.Org mouse cursor
...

This output shows that in the 'calculate' overlay, x11-themes/elementary-icon-theme is the only package to have all the ebuilds, while xfce-extra/xfce4-power-manager only has an ebuild for version 1.2.0. It also shows that there are ebuilds in 'calculate' only.

To search by overlay name, use option --in-overlay:

eix --in-overlay calculate

Search for unstable versions

The system can be installed as stable or unstable versions of packages, some of which are unmasked in the 'calculate' overlay. To view the list of unstable packages, use option --installed-unstable:

eix --installed-unstable