oriolrius.cat

Des del 2000 compartiendo sobre…

Tag: portage

Abeni – editor gràfic d’ebuils

Reading time: 2 – 2 minutes

Abeni és una IDE Per crear ebuilds (paquets de Gentoo). esta escrit en Python i usa wxPython per generar el seu aspecte GUI. Sembla una bona solució per tal de facilitar la vida als administrador o desenvolupadors que necessitin incorporar nous ebuils al portage.

Features

  • repoman CVS commits for Gentoo devs
  • Create patches with ease.
  • Create syntactically correct ebuilds
  • Access emerge and ebuild commands easily via Toolbar, Fkeys or menu.
  • Converts Source Forge URI’s to mirror:// format automatically
  • Scintilla editor with syntax highlighting of ebuild private portage functions or use your favortite external editor.
  • Function templates for creating live CVS ebuilds, games etc.
  • Toggle FEATURES=”noauto” with icon on toolbar
  • Icon on toolbar to open an xterm in ${WORKDIR}, CVS or ${D}
  • Shows which directories are unpacked – figure out ${S} automagically
  • After you unpack, configure and Makefile are displayed
  • View metadata.xml or edit it when committing to CVS with repoman.
  • Project management, interfaces with Bugzilla, submit ebuilds from Abeni.
  • Be lazy with DEPEND and let Abeni figure out the versions of packages installed
  • Ebuild Quick Reference
  • repoman scan
  • View diff of your ebuild vs version in PORTDIR
  • View eclasses or portage private functions with the built-in help system

Ara mateix encara esta marcat com a hard-masqued dintre del portage però espero que ben aviat pugui passar com a mínim a ~x86.

Gentoo: portage 2.1 funció elog

Reading time: 2 – 2 minutes

La versió 2.1 del portage de Gentoo que va entrar en mode estable fa uns mesos realment és un salt important en la gestió de paquets d’aquesta metadistribució. Així que si encara no us heu mirat les millores que incorpora us ho recomano moltíssim. La gent de linux.com han escrit un article que parla del ‘secrets’ d’aquesta nova versió del portage (local). De fet, la majora ja en sóc un asidu usuari, per exemple l’esearch o l’eix. Però hi ha una novetat que m’ha agradat moltíssim i que no coneixia. La podeu també trobada en l’article anterior. Però us en faré 5 centims.

Bàsciament es tracta de dues variables que es defineixen a make.conf. Amb aquestes variables podem definir quin és nivell de log que ens ha de mostrar la comanda emerge mentre compila un paquet i a més podem definir si volem que la sortida de missatges es guardi en un fitxer a /var/log/elog així quan compilem més d’un paquet de forma consecutiva podem veure si aquest ha tingut algún problema. De fet, on jo li veig més utilitat és en el típic paquet que dona problemes després d’instal·lar-se correctament. Doncs bé, podem comprobar si ha fallat alguna de les seves parts al compilar.

Les variables que s’han de definir al make.conf:

# This sets what to log
PORTAGE_ELOG_CLASSES="warn error log"
# And this is how to do it
PORTAGE_ELOG_SYSTEM="save"

Gentoo trick: eina quickpkg

Reading time: < 1 minute

Dins del paquet gentoolkit podem trobar una eina que fins fa una estoneta no coneixia i que per culpa d’això m’havia fet perdre molt de temps, l’eina és realment interessant s’anomena quickpkg i ens permet crear un paquet binari a partir d’un paquet ja existent en el sistema. Realment útil quan volem tenir la còpia de seguretat de la versió d’un paquet que ja funciona en la nostre màquina i volem provar una nova versió sense haver de perdre altre vegada tot el temps fins que es torna a fer la compilació del paquet. Així doncs amb aquest eina podem estalviar realment moltes hores perdudes, almenys en el meu cas les havia perdut fins ara tontament.

Els paquets que es crein amb quickpkg obviament quedaran a:

${PKGDIR}/All
${PKGDIR}/

Gentoo trick: USE flags amb que s’ha instal·lat un paquet

Reading time: 1 – 2 minutes

La tonteria tan gran que posa el títol sovint em fa tornar tonto perquè mai recordo la comanda així que me la guardo aquí:

# equery uses gnumeric
[ Colour Code : set unset ]
[ Legend      : (U) Col 1 - Current USE flags        ]
[             : (I) Col 2 - Installed With USE flags ]
 U I [ Found these USE variables in : app-office/gnumeric-1.2.0 ]
 - - libgda  : Adds GNU Data Access (CORBA wrapper) support for gnumeric
 - - gnomedb : unknown
 + + python  : Adds support/bindings for the Python language
 + + bonobo  : Adds support for gnome-base/bonobo (Gnome CORBA interfaces)

L’exemple esta extret del handbook de gentoo, on no només es dona aquest solució a través d’un paquet del gentoolkit sinó que també hi ha una altre solució amb l’emerge.

emerge --pretend --verbose mozilla
These are the packages that I would merge, in order:
Calculating dependencies ...done!
[ebuild   R   ] www-client/mozilla-1.7.12-r2  USE="crypt gnome java mozsvg ssl
truetype xprint -debug -ipv6 -ldap -mozcalendar -mozdevelop -moznocompose
-moznoirc -moznomail -moznoxft -postgres -xinerama" 0 kB