Skip to content

MattiaGaspa/gentoolinux-ohmyzsh

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Gentoo Linux plugin

This plugin adds some aliases and functions to work with Gentoo Linux.

Features

EMERGE

Alias Command Description
emin sudo emerge <atom> Install the packet in the system
eminsl sudo emerge -K <atom> Install the packet using a local binary
eminsr sudo emerge -G <atom> Install the packet using a remote binary
emre sudo emerge -C <atom> Uninstall the packet in the system
emsearch emerge -s <atom> Search the packet in the local repository
emsync sudo emerge --sync Sync the local repository with the remote repository
emup sudo emerge -aDuN world Update the packages in the local system
emclean sudo emerge --depclean Delete the unwanted software

EIX

Alias Command Description
eisync sudo eix-sync Update the local eix cache
eirup sudo eix-remote update Update the remotes by saving locally layman caches
eirov eix -R <overlay> Search all overlay

PORTAGEQ

Alias Command Description
pocolor portageq colormap Display the color.map as environment variables
podist portageq distdir Returns the DISTDIR path
povar portageq envvar Returns a specific environment variable as exists prior to ebuild.sh
pomirror portageq gentoo_mirrors Returns the mirrors set to use in the portage configuration
poorphan portageq --orphaned Match only orphaned (maintainer-needed) packages

GENLOP

Alias Command Description
genstory sudo genlop -l Show full merge history
geneta sudo genlop -c Display the currently compiling packages (if any)
genweta watch -ct -n 1 sudo genlop -c Display the currently compiling packages (if any), with refresh
geninfo sudo genlop -i <atom> Extra infos for the selected (build specific USE, CFLAGS)
genustory sudo genlop -u Show when packages have been unmerged
genstorytime sudo genlop -t <atom> Calculate merge time for the specific <atom(s)>

QLOP

Alias Command Description
qsummary sudo qlop -c Print summary of average merges
qtime sudo qlop -t Print time taken to complete action
qavg sudo qlop -a Print average time taken to complete action
qhum sudo qlop -H Print elapsed time in human readable format
qmachine sudo qlop -M Print start/elapsed time as seconds with no formatting
qmstory sudo qlop -m Show merge history
qustory sudo qlop -u Show unmerge history
qastory sudo qlop -U Show autoclean unmerge history
qsstory sudo qlop -s Show sync histroy
qend sudo qlop -e Report time at which the operation finished (iso started)
qrun sudo qlop -r Show current emerging packages

ECLEAN

Alias Command Description
distclean sudo eclean --deep distfiles Clean files from /usr/portage/distfiles
pkgclean sudo eclean-pkg Clean files from /usr/portage/packages

EUSE

Alias Command Description
newuse sudo euse -E <use> Add th flag in /etc/portage/make.conf
deluse sudo euse -D <use> Delete th flag in /etc/portage/make.conf

VIM

Alias Command Description
make.conf sudo vim /etc/portage/make.conf Open the make.conf configuration file
package.mask sudo vim /etc/portage/package.mask Open the package.mask configuration file
package.use sudo vim /etc/portage/package.use Open the package.use configuration file
repos.conf sudo vim /etc/portage/repos.conf Open the repos.conf configuration file
eix-sync.conf sudo vim /etc/eix-sync.conf Open the /etc/eix-sync.conf configuration file
eixrc sudo vim /etc/eixrc Open the /etc/eixrc configuration file

Installation

You need to install the ohmyzsh framework with:

sh -c "$(wget -O- https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

Next, you have to clone this plugin in ~/.oh-my-zsh/custom/plugins/gentoolinux:

git clone https://github.com/MattiaG-afk/gentoolinux-ohmyzsh.git ${ZSG_CUSTOM:-~/.oh-my-zsh/custom}/plugins/gentoolinux

Finally, open .zshrc and enable the plugins by adding 'gentoo' in 'plugins=(...)':

plugins=(... gentoolinux)

If you don't have gentoolkit installed you will need to install it with the command:

sudo emerge genlop

If you don't have eix installed you will need to install it with the command:

sudo emerge eix

Now restart your terminal, or run:

source ~/.zshrc