Show Menu
Cheatography

Genbox Cheat Sheet by

Setup

Action
Genb­ox-­0.9
Genb­ox-­1.x
Install
sh ./install.sh
sudo /opt/g­enb­ox/­bin­/ge­nbox-ng --image --download
sudo /opt/g­enb­ox/­bin­/ge­nbox-ng --image --set-­default gbx-0.9
sudo ./genb­ox-­ins­taller /opt/g­enbox
Enter
sudo /opt/g­enb­ox/­bin­/ge­nbo­x-ng
sudo /opt/g­enb­ox/­sbi­n/g­enbox
Enter as user
Not applicable
sudo /opt/g­enb­ox/­sbi­n/g­enbox -u
Uninstall
sudo rm -fr /opt/g­enbox/
sudo /opt/g­enb­ox/­sbi­n/g­enb­ox-­wipe

Package management

Action
Genb­ox-0.9 and Genbox­-1.x
Update packages reposi­tories
emerge --sync
Update installed packages
emerge -uDavn world
Install package <p­kg>
emerge <pk­g>
Install package <p­kg> at version N
emerge =<p­kg>-N
Uninstall package <p­kg>
emerge -C <pk­g>
List all installed packages
list
List all files installed by package <p­kg>
equery files <pk­g>
List with which USE flags package <p­kg> is installed
equery uses <pk­g>
Find to which package belongs <f­ile­> file.
equery belongs <fi­le>
Find which package(s) depends on package <pk­g>
equery depends <pk­g>
Handle config­uration file updates
etc-u­pdate
Find packages matching <p­att­ern­>
emerge -s <pa­tte­rn>
Display path to the ebuild used to install package <p­kg>
equery which <pk­g>
The previous commands are valid for host packages. For target packages, use:
- xmerge instead of emerge
- xlist instead of list
- xquery (Genb­ox-­1.x) or xexec equery (Genb­ox-­0.9) instead of equery
- xtc-­upd­ate instead of etc-­upd­ate

Overlay management

Action
Genb­ox-­0.9
Genb­ox-­1.x
List available host* overlays
Not applicable
layman -L
List installed host* overlays
eov --list
layman -l
Update all host* overlays
Not applicable
layman -S
Update host* overlay <o­v>
eov --sync <ov­>
layman -s <ov­>
Add overlay <ov>
eov --add <ov> --uri=­<ur­i> --prot­o=<­pro­to> --bran­ch=­<br­anc­h>
layman -a <ov­>
Remove overlay <ov>
eov --rm <ov­>
layman -d <ov­>
Display inform­ation about overlay <ov>
Not applicable
layman -i <ov­>
* To do the same actions for the target, use xov instead of eov for Genbox-0.9 and xlay­man instead of layman for Genbox­-1.x.

Target management

Action
Genb­ox-0.9 and Genbox­-1.x
List available targets matching <p­att­ern­>
xtarget -pv <pa­tte­rn>
List installed targets
xtarget -lv
Set <f­oo> as current target
xtarget -s <fo­o>
Sync target descri­ption overlay
xtarget --sync
Install target <t­gt> for arch <a­rch­>
xtarget -c -a <ar­ch> <tg­t>
Install target <t­gt> at version 1.2.3 for arch <a­rch­>
xtarget -c -a <ar­ch> =<t­gt>­-1.2.3
Update target reposi­tories
xmerge --sync*
Update target packages
xmerge -uDavn world
Install package <p­kg> at version N
xmerge =<p­kg>-N
Install masked** package <p­kg>
FEATU­RES­="no­pac­kag­es" xmerge <pkg>
xmerge --igno­re-­pro­fil­e-v­ersion <pk­g> (Genb­ox2016 only)
xmerge -I <pk­g> (Genb­ox2016 only)
* Currently, Genbox-1.x is unable to correctly sync a mercurial reposi­tory.
** Only valid for packages masked by version. It won't work with packages masked by 'corru­ption', 'missing keyword', 'license', 'eapi'...

Working with target

Action
Genb­ox-­0.9
Genb­ox-­1.x
Setup a shell with target enviro­nment
xshell
xshell
Test target ebuild <e­b> instal­lation
xbuild <eb> clean fetch unpack compile install
xbuild <eb> clean install
Add package <p­kg> at version <v­er> to target profile
echo "­*<p­kg>­" >> packages
echo "­=<p­kg>­-<v­er>­" >> packages
echo "­*<p­kg>­" >> packages
echo "­><p­kg>­-<v­er>­" >> packag­e.mask
Update package <pk­g> at version <v­er+­1> in target profile
Edit packages file
Edit packa­ge.m­ask file
Bump package <p­kg> locally cloned in <s­rc> directory
bosse -i <sr­c>
Not ported yet
Bump target <t­gt> based on template ebuild <e­b>
xbump -u <eb> --tag
Not ported yet
Create a prebuilt for target <t­gt> with archit­ecture <a­rch­>
xbuilder -a <ar­ch> =<t­gt>
xbuilder -a <ar­ch> =<t­gt>

Important files changes

Util­ity
Genb­ox-­0.9
Genb­ox-­1.x
Custom settings for Portage
/etc/­mak­e.conf
/etc/­por­tag­e/m­ake.conf
Symlink to profile
/etc/­mak­e.p­rofile
/etc/­por­tag­e/m­ake.pr­ofile
Host overlay base directory
/usr/­loc­al/­por­tage
/var/­lib­/la­yman/ (conf­igu­rable)
Overlay manager config­uration files
/etc/­xov.conf
/etc/­lay­man­/la­yma­n.cfg
xbuild destin­ation directory
${ROO­T}/­wor­k/$­{CA­TEG­ORY­}/$­{PF}
${ROO­T}/­xbu­ild­/po­rta­ge/­${C­ATE­GOR­Y}/­${PF}
 

Comments

No comments yet. Add yours below!

Add a Comment

Your Comment

Please enter your name.

    Please enter your email address

      Please enter your Comment.