directoris d’ús comú

avui estic automatitzador :)

si abans feia un script per a poder baixar el codi font de manera més còmode i així escriure menys ara el que explicaré és pel següent cas:

normalment quan inicieu un terminal us deixa com a pwd a ~ però segur que allà no hi teniu directament tot el que voleu, en canvi teniu un altre directori (per exemple ~/gnome/codi) on hi teniu tot el codi font dels mòduls que us heu baixat amb l’script d’abans :) i per accedir-hi sempre heu de fer un cd gnome/codi

doncs bé, hi ha una variable d’entorn que ens permet afegir tants directoris com vulguem en el camí de directoris, altrament dit, que si posem export CDPATH=$CDPATH:~/gnome/codi al nostre ~/.bashrc a partir de llavors, des de qualsevol directori podrem accedir directament a qualsevol directori de ~/gnome/codi :)

en vaig sentir a parlar al planeta GNOME i avui cercant he anat a parar a Working more productively with bash 2.x/3.x, no està gens malament :D

baixar el codi amb 3 paraules

logotip del Subversioncansat d’haver d’escriure cada dia el svn co svn+ssh://gforcada@svn.gnome.org/svn/$mòdul/$branca $directori avui per fi m’he fet un script que només li has de dir el mòdul, la branca i opcionalment el directori (sinó agafa el mateix valor que el mòdul) i llestos ja t’ho baixa :)

exemple de crida:

svnco.sh NetworkManager trunk nm

a més ja hi he posat l’usuari i servidor com a variables al principi de tot perquè si algú el vol utilitzar li sigui ben fàcil canviar-ho :)

per a poder-lo cridar d’aquesta manera s’ha d’editar el fitxer ~/.bashrc i dir-li que afegeixi en el PATH el directori on deixeu l’script (normalment si sou usuari normal i no teniu permís de sistema seria a ~/.bin), de manera que si editeu el ~/.bashrc hi hauria d’haver una línia a l’estil:

export PATH=$PATH:~/.bin

i llestos, a baixar codi que falta poc pel GNOME 2.22!

ordre del dia

una de tapes … vull dir xargs!

no us heu trobat mai amb la necessitat de passar-li a una ordre el resultat d’una altra? i és que l’xargs l’únic que fa és passar com a arguments el que rep per l’entrada

a vegades amb l’accent tancat en teniu prou, però si no és el cas teniu l’xargs :)

amb aquesta ordre podeu, per exemple, seleccionar totes les imatges que acabeu d’importar i que estan en un directori per moure-les a un altre:

ls DCIM00*.jpg | xargs mv {} ~/Imatges/carpeta_nova

aquí seleccionem les imatges que volem amb ls DCIM00*.jpg, redirigim la sortida de l’ls a l’entrada de l’xargs que al seu moment ho reenvia com a arguments de l’ordre mv que mourà {} (que és el que ens envia l’xargs) a ~/Imatges/carpeta_nova

el {} a vegades no cal, si les volguéssim suprimir només ens hauria calgut fer ls *.jpg | xargs rm , però l’xargs ens dóna la possibilitat d e poder ubicar els paràmetres que volem passar a l’ordre de la manera que volem

fins i tot és tant intel·ligent que si la llista d’arguments és massa llarga la parteix a trossos perquè així no peti l’ordre!

com instal·lar un SAI riello-ups a linux

l’altre dia em van encarregar d’instal·lar i configurar l’aplicació de control d’un SAI [0] (marca Riello-UPS [1]) a un servidor

el model en concret importa poc perquè mentre sigui de la mateixa marca tots van amb el mateix programa, el PowerShield

per començar el primer problema que hi havia és que en el CD que m’havien donat hi havia la tira de directoris per a diferents sistemes operatius i l’únic que hi havia per Linux era per a una versió 2.4 del nucli

per sort, al seu lloc web ja et deixen baixar la versió nova (tenia la versió 2 i ara ja van per la 3) i aquesta sí que estava compilat per a nuclis 2.6 :)

s’instal·la ben fàcilment, és un rpm, ja que la distribució que hi ha en el servidor és un CentOS, però si mireu la pàgina de baixades hi ha paquets per a Gentoo, Debian, Solaris, Novell, Suse, Mac OS X, *BSD entre d’altres, vaja que és difícil no tenir un paquet per al servidor que tinguis :)

a la mateixa pàgina del programa hi ha un manual (en anglès i italià) amb tota la documentació del programa

només heu de tenir el codi del SAI per a poder començar a configurar-lo i la resta és anar seguint el manual

per no canviar la tradició, per a Windows i Mac (no tinc clar si la versió de Mac és nadiua o bé a través de Java, ja que en el manual van junts) hi ha interfície gràfica i per a la resta tenim interfície de terminal

el programa en sí et permet fer de tot i més, gestionar molts SAI, posar-hi alarmes molt personalitzades, etc etc

per exemple (el que havia de fer-hi jo vaja) és que enviï un correu electrònic quan marxi la corrent, doncs per aquest propòsit, que ja està contemplat en el programa et diuen que directament agafis un fitxer que ja hi ha al mateix directori on s’instal·la tot (com a mínim per al paquet de Red Hat era /opt/upsmon) perquè hi fiquis el que et sembla, jo en el meu cas hi vaig posar:

mail correu_a_qui_vulguis_que_avisi -s "Que això s'apaga!" < $1

on a $1 en principi hi va un missatge del propi programa (que també pots canviar però no ho recomanen)

un cop ja està configurat només s’ha de iniciar el dimoni /etc/init.d/upsmon start i a tirar milles [2]

tot i així em vaig trobar amb que no es volia engegar, s’entestava a dir-me:

Cannot allocate memory for shared data !

així que els vaig enviar un missatge a través del seu lloc web i avui molt amablement m’han respost amb:

it means that shared is busy for 33000 (0x80E8) key
So you have to:

ipcs
ipcrm -m <key ID>

example:
ipcs (enter)
0x000080e8 4521990    root      666        76899      0
ipcrm -m 4521990

After this restart upsagent

i voilà ja funciona :)

P.D. ara no feu com he fet jo que he reiniciat el servidor per a comprovar que tot funcioni bé, que arrenqui, etc etc i resulta que el servidor es penja :(

[0] ara entenc l’UPS en el nom de l’empresa, fins ara no sabia que SAI en anglès és UPS :)
[1] no és per fer publicitat, sinó que com que tenen programari propi per un altre SAI no serveix de massa
[2] per què diem tirar milles si a Catalunya sempre hem fet servir quilòmetres?

ja rebo els propis correus

fa uns dies comentava que no rebia els correus que enviava des de l’Evolution amb un compte de GMail, ja que el GMail, a saber per quin motiu, no deixa baixar per POP els correus que t’enviïs a tu mateix (encara que siguin d’una llista de correu)

molt amablement en Toni Hermoso em va fer un comentari i després d’uns quants correus ja tenia un compte de correu de Softcatalà amb el que podia fer servir el SMTP de Softcatalà per a enviar els correus del GMail :)

així que si voleu rebre els propis correus que envieu a qualsevol client de correu des d’un compte de GMail feu servir algun altre servidor de SMTP per a enviar-los :)

així ara mateix la meva llista de correus ha augmentat a:

gilforcada guifi net
gilforcada gmail com
gforcada gnome org
gil.gnome gmail com
gforcada softcatala org

:)

ara l’únic problema que em queda per solucionar és com dir-li a l’Evolution que quan responc a una llista de correus em faci servir l’adreça amb la que hi estic subscrit

alguna idea?

el gtranslator ja és útil!

logotip del gtranslatorara mateix estic fent la traducció del manual de la miniaplicació de l’indicador de teclat i com que he trobat una cadena de la interfície que era errònia m’he baixat el codi font del gnome-applets per a poder mirar la cadena i arreglar-la (que també m’ha costat lo seu trobar-la)

com que he vist que li quedaven poques cadenes m’he decidit a acabar-lo, així ja faltarà menys per estar al 100% de cara a d’aquí 2 mesos i 1 dia que sortirà el GNOME 2.22 però m’he trobat amb un problema i es que estava editant amb el vim el fitxer de traducció hi he vist que hi havia els caràcters dels símbols de temperatura per a graus celsius i farenheit i com que no ser com copiar i enganxar (des de teclat) amb el vim ho he deixat en primera instància però després m’he recordat que hi ha uns gallecs (diria) que estan tornat a treballar amb el gtranslator

una de les novetats que hi ha ara mateix a la branca GOBJECT_WORK és una paleta de caràcters:

gtranslator en funcionament

els observadors també hauran vist que hi ha una pestanya a sota de la llista de cadenes que posa «alternate language» que serveix per tenir un alter fitxer po obert, en principi el mateix que s’està traduint però en un altre idioma, o per exemple, una memòria de traducció (com la de Softcatalà)

encara no n’han fet cap llançament però una de les altres novetats importants (i que en principi ja hi ha a la branca GOBJECT_WORK tot i que no l’he sabut veure com s’activa) és la possibilitat de fer consultes a open-tran.eu, un lloc web on es poden consultar traduccions de diferents projectes de programari lliure (de moment GNOME, Mozilla, KDE, Debian i Cor Jousma)

també s’està treballant en un connector a l’estil al que acabo de comentar per al damned-lies (el programari que hi ha darrere l10n.gnome.org) la qual cosa permetrà fer consultes només a cadenes del GNOME

el títol de l’entrada tot i així no és per res del que acabo de comentar, sinó que com que un dels motius pels que quan tradueixo ho faig amb el Gedit o el vim és que tant el gtranslator o el poedit sempre s’entesten a modificar les referències al codi font de manera que quan acabes de traduir un programa i li fas un diff amb la versió anterior per enviar-la a les llistes de Softcatalà et trobes que el diff no serveix per res precisament perquè hi ha tants canvis que no es poden arribar a veure a simple vista els canvis que hagis pogut fer

però almenys amb les quatre cadenes que hi he canviat aquesta vegada ho he comprovat i no ha canviat res de res :)

ordres del dia

tcpdump: per mirar el trànsit a la xarxa (la versió gràfica podria ser tranquil·lament el wireshark)

du: espai del disc ocupat per un fitxer o directori (amb -sh et diu el resum i en format humà :) (la versió gràfica podria ser el baobab)

svn info: gràcies a en Josep veig que sí que hi ha una manera més elegant de veure en quina branca estàs treballant, gràcies!

quina branca m’he baixat amb l’SVN?

logotip del Subversionno us ha passat mai que uns dies o setmanes abans vau baixar algun codi font a través de Subversion i quan el torneu a mirar no sabeu si era la branca principal o una branca de desenvolupament paral·lel?

la solució fàcil i ràpida és obrir el fitxer .svn/entries que està en qualsevol directori dintre de l’arbre de fitxers i mirar l’URL amb el que us vau baixar el codi font :)

suposo que hi deu haver una manera més elegant per saber-ho, a veure qui és el primer que la diu ;)

P.D. diria que és la primera entrada de l’any, així que feliç 2008

la viquipèdia permet exportar a odt

logotip de la Viquipèdia commemorant els 300 anys d’Almansatot mirant informació sobre el teorema de Rolle, m’ha picat la curiositat de mirar quantes edicions se n’havien fet de l’article i per la meva sorpresa he vist que hi ha un enllaç (no molt clar tot sigui dit) que et permet exportar l’article en qüestió al format odt

realment s’hauria de canviar el text ja que diu “Llista exportable: format odt – altres” i com que estàs a la pàgina de revisions (almenys a mi) et dona a entendre que el que exportaràs és la llista de revisions no l’article en sí …

veig que a la versió anglesa no hi ha l’enllaç per a baixar els articles en odt, veig que si intentes modificar l’URL perquè et doni altres articles d’altres edicions de la wikipedia dóna errors d’ubicació de memòria, suposo que està encara en proves (veig que tampoc exporta les imatges per exemple)

tot amb tot MOLT interessant per si has de copiar un bon grapat de text per a després modificar-lo, o d’altres coses :)

còpies de seguretat de l’Evolution

logotip del GNOME Lovedes de que es van fer les notes de llançament del GNOME 2.20 que tenia una espina clavada

i es que per molt que havia intentat trobar una característica de l’Evolution que hi havia en una de les captures de pantalla no hi havia manera

avui per casualitat he mirat els programes que em deixava instal·lar el synaptic i resulta que hi ha conjunts de connectors per a l’Evolution i en un d’ells hi ha el connector per a crear còpies de seguretat dels correus i tota la pesca:

còpia de seguretat de l’Evolution