sábado, 8 de diciembre de 2007

Cedille Je T' aime!

Hoy, cansado de tener que usar un applet de Gnome llamado Tabla de caracteres para poder escribir la famosa c cedilla de otros idiomas como portugués o francés, me decidí a buscar otra forma de configurarla en el teclado Latinoamericano de amidala (mi re bautizada laptop).
Al principio pensé que como estaba usando Gnome 2.20 iba tener una forma de mapear esta tecla sin muchos problemas pero no fue así. Lo lógico (para mí) es que si presiono <ALT GR> + c aparezca ç, pero no es así, en su lugar me aparecia ¢.
La solución fue agregar un archivo llamado .Xmodmap en mi home. Con el siguiente contenido

keycode 54 = c C ccedilla Ccedilla ccedilla Ccedilla
Y con esto después de reiniciar la sesión me apareció una ventana preguntándome si quería cagar el archivo .Xmodmap con la nueva configuración a lo que obviamente conteste que si. Y finalmente obtuve una forma mas natural de escribir mi querida Ç.

sábado, 1 de diciembre de 2007

Openoffice 2.3 + Gusty

Una de las cosas que no terminaban de cerrarme en ubuntu gusty era que existe un bug intersante en openoffice 2.3, el cual hace que se muera cuando abrimos ppts u opciones de configuración (al menos esas cosas probé).

Leyendo por ahí averigué que el problema se produce por alguna incompatibilidad entre los temas de gnome y openoffice, osea, usando el tema human todo andaba de 1000 maravillas pero con otros sucedía esto.

Soluciones alternativas hay ... (borrar openoffice.org-gtk) pero me quedo con esta, si agregamos a nuestros repositorios gusty-proposed la versión que figura ahí de ooffice tiene este problema corregido( a simple vista y con las pocas pruebas que hice ya no se muere)

domingo, 11 de noviembre de 2007

mounting vfat devices on gusty

problema:
joe@casper:~$ gnome-mount -vtd /dev/sdb1
gnome-mount 0.6
** (gnome-mount:5863): DEBUG: Mounting /org/freedesktop/Hal/devices/volume_uuid_4737_7883
** (gnome-mount:5863): DEBUG: read mount point 'w600' from gconf string key '/system/storage/drives/_org_freedesktop_Hal_devices_storage_serial_Sony_Ericsson_Sony_Ericsson_W600_357445002000624_0/mount_point'
** (gnome-mount:5863): DEBUG: read default option 'shortname=mixed' from gconf strlist key /system/storage/default_options/vfat/mount_options
** (gnome-mount:5863): DEBUG: read default option 'uid=' from gconf strlist key /system/storage/default_options/vfat/mount_options
** (gnome-mount:5863): DEBUG: read default option 'utf8' from gconf strlist key /system/storage/default_options/vfat/mount_options
** (gnome-mount:5863): DEBUG: read default option 'umask=077' from gconf strlist key /system/storage/default_options/vfat/mount_options
** (gnome-mount:5863): DEBUG: read default option 'exec' from gconf strlist key /system/storage/default_options/vfat/mount_options
** (gnome-mount:5863): DEBUG: read default option 'usefree' from gconf strlist key /system/storage/default_options/vfat/mount_options
** (gnome-mount:5863): DEBUG: Mounting /org/freedesktop/Hal/devices/volume_uuid_4737_7883 with mount_point='w600', fstype='', num_options=6
** (gnome-mount:5863): DEBUG: option='shortname=mixed'
** (gnome-mount:5863): DEBUG: option='uid=1000'
** (gnome-mount:5863): DEBUG: option='utf8'
** (gnome-mount:5863): DEBUG: option='umask=077'
** (gnome-mount:5863): DEBUG: option='exec'
** (gnome-mount:5863): DEBUG: option='usefree'

** (gnome-mount:5863): WARNING **: Mount failed for /org/freedesktop/Hal/devices/volume_uuid_4737_7883
org.freedesktop.Hal.Device.Volume.UnknownFailure : mount: wrong fs type, bad option, bad superblock on /dev/sdb1, missing codepage or helper program, or other error In some cases useful info is found in syslog - try dmesg | tail or so

la opcion usefree no es reconocida.

solución simple:

from https://bugs.launchpad.net/ubuntu/+source/gnome-mount/+bug/151025

Go into gconf-editor and navigate to /system/storage/default_options/vfat/mount_options, and then remove the "usefree" option from the list. Exit gconf-editor, and try hotplugging your drive again. It works :-)


PD: esto me sucede usando el kernel de feisty (2.6.20) en gusty (para poder suspender correctamente)

sábado, 10 de noviembre de 2007

suspend & mplayer

Antes de juzgar el título aclaro que no tiene nada de relación, simplemente meto dos post en uno.

Puntualmente el problema es que suspende ok sin problemas pero cuando hace el resume se queda la pantalla en blanco sin responder teclado mouse touchpad red o cualquier medio, dejando como única alternativa un hard-reset.
El tema del suspend era lo que me venía matando desde hace rato (apesta esperar 2 minutos cada vez que quiero prender mi laptop... lo que sucede aproximadamente cada media hora :p). Después de indagar por muchos lados y probar de las más diversas maneras estas son mis conclusiones:

* kernel 2.6.22.x (de fábrica en gusty) tiene algún bug ya reportado en la parte de suspend, porque es increíble la cantidad de gente que ha posteado el mismo problema con los mas diversos hardwares

* hibernate no tiene nada que ver en esto, es más luego de modificar por todos lados probé hasta eliminarlo obteniendo el mismo resultado

* no era problema de framebuffer ni de compiz ni nada gráfico porque booteando en vga normalito sin fb pasaba lo mismo desde consola

* kernel 2.6.23 recién salido del horno suspende correctamente y vuelve todo a la normalidad pero por causas que no me puse a investigar aún no me levantaba la wifi así que fué descartado

entonces... la solución momentánea fue: agregar momentaneamente repositorios de feisty, bajar mi querido 2.6.20 que andaba bien y probar con esa imagen. teniendo o sin tener hibernate la función de suspender anda perfecto. Y si.. se siente raro volver a un kernel "viejo" teniendo uno nuevo que andaba tan lindo (salvo por el suspend) pero bueno, hasta que deje andando 2.6.23 esta es una buena opción.

Respecto a mplayer hace casi una semana que no veía ninguna serie y hoy me encontré con la grata sorpresa de que al levantar mplayer pasaba entre 5 y 10 segundos sin hacer nada... y luego arrancaba. Miento llegaba hasta la parte donde deshabilita gnome-screensaver y ahi se quedaba sin error ni nada.. a la espera del infinito, hasta que luego continuaba como si nada.

Despues de borrar mover probar varias versiones llegué a la conclusión de que el problema lo está dando la nueva línea añadida a /etc/mplayer/mplayer.conf
stop-xscreensaver = "yes"

Por razones que aún no descubro esto hace que corriendo mplayer como usuario haga lo que comenté más arriba mientras que corriendo como root va a los pelos. Así que opté por comentarla y seguir como siempre haciendo un killall gnome-screensaver antes de ver alguna peli :p

Si... estoy en vago... pero bueh, son las 2:30 y se me parte la cabeza
chau

martes, 23 de octubre de 2007

2do acercamiento a gutsy

Bueno, como había dicho antes no tenía el tiempo disponible pero pasé mi siesta ayer haciendo una instalación limpia y dejando todo como yo quería.
De entrada el tema de tzdata que me había fallado en la actualización aquí no presentó problemas. Sin embargo el tema de las consolas en blanco (por problemas con los módulos de framebuffer) siguió igual

remember

Para que funcione hay qe agregar a /etc/initramfs-tools/modules las siguientes lineas
fbcon
vesafb
vga16fb

y faltaba agregar que debemos comentar estos módulos de /etc/modprobe.d/blacklist-framebuffer
y por último update-initramfs -u

algunas cosillas para hacernos la vida mas fácil, el viejo y querido ubuntu-mediapack no existe más pero tenemos su reemplazo parcial en ubuntu-restricted-extras
Para qué: Para instalar varios programas propietarios o con dificultades para distribuirse, entre ellos el plugin de Flash, Java, Unrar, códecs (mp3, dvix, dvd, etc…) y varias fuentes de Microsoft.

y mucho muy importante hacer
apt-get install compizconfig-settings-manager para que en las opciones personalizadas de efectos (en apariencia) podamos cambiar las configuraciones y plugins hablitados de compiz

Me queda pendiente aún el tema de arreglar la parte de suspend & hibernate
pero en principio todo anda como me gusta ahora. Aunque no noté grandes cambios entre mi actualización y la instalación desde cero me siento feliz por dentro sabiendo que no tengo paquetes a lo tonto instalado y que mi sistema está un poco mas limpio

Por último un par de screenshot

lunes, 22 de octubre de 2007

intento de acercamiento a gutsy

bueno, no tenia tiempo al dope pero una cosa lleva a la otra y me vi actualizando mi ubuntu feisty a gutsy.

La primera impresión que me llevo es la siguiente

tzdata:

En mi primer intento de upgrade fracasó en esto... tzdata no se configuraba y dejaba muchas dependencias rotas.. la siguiente vez que intenté vi que se solucionaba cambiando /etc/timezone a una aceptada porque no dejaba configurar con la zona de argentina/mendoza
se puede cambiar luego con dpkg-reconfigure tzdata

fb consola:
si salimos del cochino 640x480 y queremos poner por ej.. vga=791 obtenía una linda consola en negro hasta que arrancaba gdm

Para que funcione hay qe agregar a /etc/initramfs-tools/modules las siguientes lineas
fbcon
vesafb
vga16fb

luego ejecutar update-initramfs -u

cairo:
todas las aplicaciones que usaban cairo no andaban (update-manager
awn-manager... basta con borrar lo que hay en /usr/local/lib y ejecutar ldconfig


kernel 2.6.22:
aparte de las mejoras que incluye respecto a scheduling y no se cuantas cosas mas (wifi mejorado.. etc) lo único que logré con el nuevo kernel fue perder mis poderes para suspender la notebook, suspende pero no vuelve correctamente. Por mas que habían algunas posibles soluciones ninguna me funcionó y estoy sin respuesta para esto momentáneamente. De cualquier forma por lo que vi este problema es en general y está reportado como bug en ubuntu

Fuera de esto... el resto se comportó sumamente estable, bastante simpático queda todo ordenadito con compiz-fusion de fábrica (ahora dentro de una nueva aplicación llamada "apariencia" que se puede encontrar en el panel de control de gnome. También encontramos ahí lo referido a los temas gtk, fuentes, wallpapers.

Deskbar no lo noté ni más rápido ni más lento pero visiblemente es distinto, ahora aparece separado como una ventana mas cuando lo llamamos para consultar algo (no es muy molesto y es fácil acostumbrarse)


Pero... pero... lo que me molestó realmente fue que tardara una enormidad en iniciar.. los 40seg de siempre mas 1minuto en arrancar gnome !!!, como sea se que seguramente el problema es mio y de cualquier forma que la instalación me quedara en 4.4gb (siendo que es de 5gb mi particion de linux) no me resultó divertido.

Así que decidí hacer las cosas bien he instalarlo desde cero en alguna partición cuando tenga un rato libre. Una vez más mi backup sincronizado con rsync me salvo de las papas y volví a feisty en 30min


ahora extraño gutsy... jajaja

jueves, 4 de octubre de 2007

wpa sin networkmanager

Algo que no me convencía era depender de networkmanager (y de gnome por lo tanto) para poder asociarme a una red wpa, así que aquí va la papa..

ejemplo práctico:

root@casper:/# apt-get install wpasupplicant

root@casper:/# iwconfig
lo no wireless extensions.

eth0 no wireless extensions.

eth1 unassociated ESSID:"HOMELINUX"
Mode:Managed Frequency=2.462 GHz Access Point: Not-Associated
Bit Rate:0 kb/s Tx-Power=20 dBm Sensitivity=8/0
Retry limit:7 RTS thr:off Fragment thr:off
Encryption key:off
Power Management:off
Link Quality:0 Signal level:0 Noise level:0
Rx invalid nwid:0 Rx invalid crypt:25 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:18 Missed beacon:0

root@casper:/# iwlist eth1 scan
eth1 Scan completed :
Cell 01 - Address: 00:0E:2E:8D:2A:2A
ESSID:"HOMELINUX"
Protocol:IEEE 802.11bg
Mode:Master
Channel:11
Encryption key:on
Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 6 Mb/s
9 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s; 36 Mb/s
48 Mb/s; 54 Mb/s
Quality=91/100 Signal level=-37 dBm
IE: WPA Version 1
Group Cipher : TKIP
Pairwise Ciphers (1) : TKIP
Authentication Suites (1) : PSK
Extra: Last beacon: 32ms ago

editamos /etc/wpa_supplicant.conf y agregamos

ctrl_interface=/var/run/wpa_supplicant

network={
ssid="HOMELINUX"
proto=WPA RSN
key_mgmt=WPA-PSK
pairwise=TKIP CCMP
group=TKIP CCMP
psk="acavalaclaveentextoplano"
priority=5
}

y con esto ya estamos en condiciones de empezar a trabajar.

bastará con hacer:
wpa_supplicant -Bw -Dwext -ieth1 -c/etc/wpa_supplicant.conf

y revisar con iwconfig que estemos realmente asociados

root@casper:/# iwconfig
lo no wireless extensions.

eth0 no wireless extensions.

eth1 IEEE 802.11g ESSID:"HOMELINUX"
Mode:Managed Frequency:2.462 GHz Access Point: 00:0E:2E:8D:2A:2A
Bit Rate:54 Mb/s Tx-Power=20 dBm Sensitivity=8/0
Retry limit:7 RTS thr:off Fragment thr:off
Encryption key:5493-7EE8-B928-CB64-E684-7AE5-21BF-AF6A-6B89-B569-3A7B-853F-2133-45DE-384F-9EF6 Security mode:open
Power Management:off
Link Quality=85/100 Signal level=-45 dBm Noise level=-89 dBm
Rx invalid nwid:0 Rx invalid crypt:26 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:18 Missed beacon:0

por último tomaremos ip (en este caso por dhcp) con

dhclient eth1


Listening on LPF/eth1/00:16:6f:2f:a7:7c
Sending on LPF/eth1/00:16:6f:2f:a7:7c
Sending on Socket/fallback
DHCPREQUEST on eth1 to 255.255.255.255 port 67
DHCPACK from 192.168.1.1
bound to 192.168.1.11 -- renewal in 391401 seconds.
root@casper:/# ifconfig eth1
eth1 Link encap:Ethernet HWaddr 00:16:6F:2F:A7:7C
inet addr:192.168.1.11 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:81 errors:26 dropped:44 overruns:0 frame:0
TX packets:40 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:639358 (624.3 KiB) TX bytes:261481 (255.3 KiB)
Interrupt:17 Base address:0xa000 Memory:bc008000-bc008fff

Y eso es todo...

si queremos mantenerlo de forma persistente y evitar estos pasos basta con editar /etc/network/interfaces

auto eth1
iface eth1 inet dhcp
wireless-essid HOMELINUX
pre-up wpa_supplicant -Bw -Dwext -iethX -c/etc/wpa_supplicant.conf
post-down killall -q wpa_supplicant
EOF

lunes, 24 de septiembre de 2007

apt-geteando version especifica (pidgin no me convence)

Estuve probando nuevamente la versión estable de pidgin en feisty pidgin 1:2.2.0-1~getdeb y similar en landure) y esta vez logró quedarse en mi máquina por aproximadamente 15 minutos...
Definitivamente no me gusta para nada que ahora la parte de Tab ocupe el doble de espacio en pantalla y sobre todo que los avatars ya no se muestren en el tamaño normal en el margen inferior sino que aparecen como miniaturas ocupando más espacio... donde??... en el tab por supuesto.

Así que para retomar a mi versión anterior esta vez decidí optar por el camino correcto y en vez de bajarlo a mano e instalarlo con dpkg hice un man apt y re descubrí lo que alguna vez supe

apt-get install pidgin=2.0.1-1~getdeb

y todos felices (al menos yo)

miércoles, 19 de septiembre de 2007

tip for dummies (like me)

always forget this command and lose time searching it again.
when couldn`t umount a device.. you can run "fuser -vm devicemountpoint" and see what process is using it

renombrar archivos con espacios

post estúpido para no olvidarlo luego, de cualquier forma me falta agregarle qe deje la primera letra (no número) en mayúscula y que vaya explorando recursivamente los directorios

for i in *;do archivonuevo=`echo "$i"| tr A-Z a-z`;mv "$i" "$archivonuevo";done

martes, 18 de septiembre de 2007

rsync: respaldando la notebook a un disco extraible

Bueno en esta entrega aprenderemos a hacer un backup de nuestro sistema... digo, porque nunca se tienen suficientes backups y aparte puede partir nuestro disco en el momento menos esperado

#!/bin/bash

LIST="/bin /boot /etc /home /lib /opt /root /sbin /usr /var"
destination="/media/extraible/respaldo/backup-casper/"

for i in $LIST; do
echo "haciendo backup de $i"
rsync -Cavz --delete $LIST $destination
echo "$i completo"
done
echo "backup completo"
####

totalmente barato y entendible puede mejorarse en mil aspectos (incrementales, rotación de backups, permitir que sea dinámico, avisos a través de DBUS, cronearlo .. que se yo) pero cumple con lo que necesito. En mi caso tengo un disco serial ata conectado por usb en el cual voy a guardar el backup de mi notebook completa (salvo los directorios de información como peliculas musica y otras cosillas.. que eso será sincronizado aparte) para actualizarlo de vez en cuando.

La gracia de usar rsync y no cp es que produce menos tráfico (importante cuando se tiene solo usb2.0) y solo re transmitirá lo que vea que haya cambiado. Con -Cavz lo que hacemos es preservar todos los permisos ignorar algunos errores y hacerlo en modo "verbose", --delete es para que si al sincronizar habíamos eliminado algo del directorio de origen sea también eliminado en el directorio de destino, y lo hice finalmente con un for para poder hacer un rsync independiente por cada directorio importante ya que mis anteriores intentos de hacerlo directamente con "/" y --exclude (para cada directorio que no queria respaldar) me daba problemas al momento re comenzar la sincronización si por algún motivo se me había cortado.

y bueno, eso es todo en escencia

jueves, 16 de agosto de 2007

tunneling over ssh

No es nada que no se pueda encontrar leyendo el man de ssh pero sirve para recordarlo.
Sabía que se podía hacer un tunel sobre ssh para acceder a otros puertos/servicios dentro del servidor de destino, pero nunca había probado tratar de acceder a servicios corriendo en maquinas que pertenecían a la red local detrás de ese servidor.

En escencia lo que logramos es evitar cargar reglas para el forward con iptables o similares y poder levantar servicios externamente que no estén visibles normalmente (incrementando la seguridad) a través de un medio encriptado.

bueno.. acá va la papa:

ssh -C -N -L [bindaddress:]port:host:porthost servidor

donde -C indicará que comprima, -N que no se van a ejecutar comandos en "host", -L que haga el tunel en el servidor de destino

Siendo

bindaddress: opcional para indicar a que ip se realizará el tunel (normalmente si no se especifica es 127.0.0.1)
port: el puerto local donde esuchará el servicio una vez establecido el tunel
host: la ip de la maquina destino detrás del servidor al cual estamos accediendo
porthost: es el puerto del servicio que corre en la maquina a la cual queremos acceder
servidor: la ip del servidor publico


y bueno .. eso es todo

sábado, 9 de junio de 2007

tip: i810 + vga-out + mouse pointer

Trouble: when i connect vga-out (switching ctrl+F6) the mouse pointer disappear some times (randomly).

Solution: adding this line to xorg.conf ( video device) the trouble was solved:
Option "SWCursor" "true"

explanation: Apparently when switch resolutions that they aren't the standard (wildscreen's resolutions), hardware cursor don't work correctly and cause this problem, so this option disable the hardware cursor and let my work with software cursor.

miércoles, 6 de junio de 2007

Linux RAS

####################################################
### howto linux RAS v0.1 / joemac@lugmen.org.ar / 2007 - 06 - 06 ###
####################################################

Creo que deben existir algo más de 30millones de tutoriales sobre como configurar un ras en linux, pero bueno... para no olvidarme acá va uno más.

CONFIG MODEM SMARTLINK USB
---------------------------
Comenzamos para este caso bajando los drivers apropiados para manejar estos modems genéricos, dependiendo de la distribución sera en mayor o menor medida dificil dejarlo en condiciones. pero basicamente tendremos que tener por lo menos los headers del kernel que estemos usando (en el caso de los precompilados) para poder generar el modulo que se insertará luego en /lib/modules/kernelver/misc/

En mi caso al instalarlo en una distribución basada en debian pude usar module-assistant que se encargó de bajar el driver-source de este modem y algunas cosillas mas para automatizar la carga de este al arranque (creación de nodos, etc)

Por alguna razón los nodos que creo para este modem se borran (solo los lsusb, los lsamr permanecen estáticos) pero como solo lo necesito para una presentación y no planeo usarlo luego podemos crearlos a mano.

mknod -m 600 /dev/slamr0 c 242 0 ; mknod -m 600 /dev/slamr1 c 242 1 ; mknod -m 600 /dev/slamr2 c 242 2 ; mknod -m 600 /dev/slamr3 c 242 3 ; echo -n
mknod -m 600 /dev/slusb0 c 243 0 ; mknod -m 600 /dev/slusb1 c 243 1 ; mknod -m 600 /dev/slusb2 c 243 2 ; mknod -m 600 /dev/slusb3 c 243 3 ; echo -n


luego de esto hay qe cargar el módulo slusb (si es que no se autocargó con udev y hotplug) y ejecutar

slmodemd /dev/slusb0 (con esto creamos el enlace simbolico a /dev/ttySL0)

CONFIG MGETTY
-------------------------
Para mi caso solo necesito agregar a /etc/mgetty/login.config

/AutoPPP/ - a_ppp /usr/sbin/pppd file /etc/ppp/options.SL0

Con lo cual le especificamos que auto levante ppp cuando reciba una conexion en el modem y que use los parámetros especificados en options.SL0

CONFIG PPP
-------------------------
Acá vamos a definir los métodos de conexion permitidos, velocidades, dns, ip, etc

Para este caso creamos el archivo /etc/ppp/options.SL0 con lo siguiente:

-detach
asyncmap 0
modem
crtscts
proxyarp
lock
require-pap
refuse-chap
ms-dns 192.168.10.2
usepeerdns
192.168.10.3:192.168.10.250
noauth

La primera ip es la que se le asignará al modem del lado del servidor al momento de establecer la conexión y la segunda es la ip que se le asignará al modem cliente que está llamando

Luego editamos /etc/ppp/pap-secrets agregando

* * "" *

Es bastante precario poner esto pero lo cierto es que por el momento para esta prueba no requería de más. (Si se desea pueden poneres usuarios y passwords específicos para determinada conexión o determinada ip)

PUESTA EN MARCHA
---------------------------

Luego de esto estamos en condiciones de aceptar conexiones entrantes y atenderlas con mgetty

Desde una terminal ejecutamos

mgetty /dev/ttySL0

(Podemos también si es nuestra intención dejar este servicio andando continuamente si agregamos a /etc/inittab
SL0:2345:respawn /sbin/mgettty /dev/ttySL0)

y probamos conectarnos desde alguna máquina remota con user y pass de alguien que esté creado en el sistema. (creando una conexión de acceso telefónico por ej)


Para habilitar el acceso a otros puntos de la red y compartir internet por ej, hacemos:

echo "1" > /proc/sys/net/ipv4/ip_forward

y listo tenemos acceso a la red local. Podriamos jugar un poco con iptables para hacer los ruteos un poco mas convenientes pero este no es el caso.


ALTERNATIVA SIN LINEA TELEFONICA (enlace punto a punto directo)
---------------------------

Una alternativa es usar programas como minicom y al momento de efectuar la llamada desde el cliente levantar el modem con un ATA y posteriormente insertar un script (que lleve /sbin/mgetty -r /dev/ttySL0), esto se hace ejecutando Alt+K pero debe haberse definido previamente en la configuración de minicom este script.
Puede ser que mgetty no atienda porque quiera trabajar sobre el mismo lockfile que minicom, podemos solucionarlo editando la configuración de minicom y estableciendo un nuevo archivo (en una ruta distinta) para el lock.
Por ej: originalmente está en /var/lock, y podríamos cambiarlo a /tmp/lock (cada programa usará un lock propio)

EOF

lunes, 28 de mayo de 2007

feisty updates (TV-OUT intel915)

Ok, ever since i have made the update to feisty, i haven`t a chance to test vga and tv out.
This weekend (i was boring) i can do it.
In my frist try ubuntu startup correctly and tv-out work in console mode (1024x768 i think..), but when X started.. everything what i saw was a gdm crash. The simple way (just MonitorLayout option in xorg) don`t work anymore.

I tried the same whit vga-out and everything works well , i did not have to change resolution ( 1280x800 to 1027x768) or anything... Now the Fn+F7 switch (CRT, LCD, LCD+CRT) works fine. (the mouse pointer is not lost after switch and y can alternate outputs whit no crash desktop).

Finally, i let the tv-out working whit a new xorg.conf, and now when X starts the screen is cloned and i can switch between TV+LCD, TV only and LCD only.

X --config /etc/X11/xorg.conf.sclone

the config is something like this:


###

Section "Device"
Identifier "SVIDEO"
Driver "i810"
Option "MonitorLayout" "TV,LFP"
Option "FlipPrimary" "True"
Option "TVStandard" "PAL-N"
Option "TVOutFormat" "SVIDEO"
Option "ConnectedMonitor" "TV"
Option "Clone" "True"
BusID "PCI:0:2:0"
EndSection

Section "Monitor"
Identifier "LCD"
Option "DPMS"
HorizSync 30 - 81
VertRefresh 56 - 76
EndSection

Section "Monitor"
Identifier "TV"
HorizSync 30-50
VertRefresh 60
EndSection

Section "Screen"
Identifier "TV"
Device "SVIDEO"
Monitor "TV"
DefaultDepth 24

SubSection "Display"
Depth 24
Modes "800x600" "640x480"
EndSubSection
EndSection

Section "ServerLayout"
Identifier "LCDandTV"
Screen "TV"
InputDevice "Generic Keyboard"
InputDevice "Configured Mouse"
InputDevice "Synaptics Touchpad"
Option "AIGLX" "true"
EndSection

Section "ServerFlags"
Option "DefaultServerLayout" "LCDandTV"
EndSection

TO-DO: TVStandard option don`t work well because although i set PAL-N, the svideo out keep going NTSC

jueves, 17 de mayo de 2007

Wi-Fi en mi laptop

Estos son los pasos que tuve que hacer para configurar la tarjeta de red inalambrica de mi laptop en Ubuntu.
Después de haber leído mucha info que hay dando vuelta por internet sin obtener los resultados que quería y llegando a pensar que mi tarjeta de red wi-fi ya no servia para nada, no me quedo otra que profundizar en el tema y ver que rayos era el problema.
El problema principal que tuve fue el de encontrar el driver adecuado para mi chipset más alla de que en muchas guías y howtos dicen bajate este driver que es el que funciona.
Probé muuuuchos drivers que encontré, pero para saber cual es que funciona hay que buscar el ID del dispositivo PCI, se puede ver con
$ lspci | grep BCM
05:02.0 Network controller: Broadcom Corporation BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (rev 02)
y el primer número de la línea nos sirve como identificador para buscar el ID usando lspci -n 05:02.0
entonces en este caso el ID es 14e4:4318, los primeros 4 digitos son el ID del fabricante y los otros son el ID del dispositivo. Estos últimos 4 son los números que tenemos que buscar en los archivos .ini que acompañan al driver que descargamos. Por ejemplo, tengo 10 directorios, cada uno con un driver que encontré en internet y que supuestamente era el que funcionaba. Si hago un cat *.ini | grep 4318 en cada directorio, puedo ver solo 2 tienen una línea que menciona al identificador de mi tarjeta wi-fi. Y estos son los drivers que funcionaron en mi laptop.
Una vez que tenemos identificado el driver que funciona, tenemos que instalar el firmware para que el módulo de nuestro kernel lo utilize al ser cargado.
Esto lo podemos hacer con el paquete bcm43xx-fwcutter que se encuentra en los repositorios de Ubuntu.
Para instalar el firmware solo tenemos que hacer
$ sudo bcm43xx-fwcutter -w /lib/firmware/ driver.sys
Con esto debería estar instalado y solo faltaría hacer un
$ sudo rmmod bcm43xx
$ sudo modprobe bcm43xx
Para recargar el módulo y que comienze a funcionar.

-- Actualización 17.05.2007 --
Después de probar el módulo bcm43xx que viene con el kernel, creo que es mejor usar ndiswrapper; ya que proporciona mejor desempeño que el bcm43xx, que por ejemplo solo se conecta a 11M y con ndiswrapper llego a 54M.
Lo que hace ndiswrapper es usar directamente el driver para Windows de la tarjeta Wi-Fi.

miércoles, 16 de mayo de 2007

Configurando Beryl en mi v2615

Esta es la configuración mínima con la que me funciona la aceleración en mi laptop.
Tengo instalado el paquete xorg-driver-fglrx que proporciona el driver para la aceleración de la ATI Radeon XPRESS 200M. Con

$ sudo apt-get install xorg-driver-fglrx

Para configurar la aceleración primero se puede ejecutar el comando

$ sudo dpkg-reconfigure xserver-xorg

Seleccionando como driver fglrx y dejando las otras opciones como estan por defecto. Luego hay que hacer algunos cambios al archivo /etc/X11/xorg.conf
En la sección de los módulos lo dejé así


Section "Module"

Load "i2c"
Load "bitmap"
Load "ddc"
Load "dri"
Load "extmod"
Load "freetype"
Load "glx"
Load "int10"
Load "type1"
Load "vbe"
EndSection


La sección Device se ve así

Section "Device"
Identifier "aticonfig-Device[0]"
Driver "fglrx"
Option "VideoOverlay" "on"
Option "OpenGLOverlay" "off"
EndSection

Y por último agregué una sección como esta al final del archivo

Section "Extensions"
Option "Composite" "Off"
EndSection

Y ahora reiniciando gdm con

$ sudo /etc/init.d/gdm restart

Deberiamos poder iniciar nuestra sesión en modo gráfico con aceleración. Para probarlo desde una terminal en modo gráfico escribimos

$ glxinfo | grep rendering

y veremos una línea como la siguiente

direct rendering: Yes

Bueno con esto ya tenemos la aceleración habilitada.

mejorando el rendimiento [ chipset intel915 - lg lw20 ]

Recién hace unos días, por cuestiones de la vida vine a darme cuenta que tenia tan solo 8mb dedicados a video (la placa puede usar hasta 128mb compartidos).

Con beryl y compiz noté una sutil diferencia en cuanto a manejo de ventanas cuando tenia varias abiertas (digamos mas de 3 por cada escritorio), así que aunque mis pruebas con glxgears no demostraron una mayor velocidad en cuanto a fps, si pude notar una mejoría en el trabajo diario.

(vamos a ver cuanto duran los efectitos y menus hasta que me aburran, otra vez y vuelva a mi parco entorno de todos los dias... pero rápido)

solo agregué unas lineas a la sección devices de xorg para poder manejar la cantidad de ram dedicada a video

Section "Device"
Identifier "Intel Corporation Mobile 915GM/GMS/910GML Express Graphics Controller"
Driver "i810"
BusID "PCI:0:2:0"
# Option "MonitorLayout" "TV, LFP"
# Option "TVStandard" "PAL-M"
# Option "MonitorLayout" "CRT+DFP,LFP" // deberia servir para probar con 2 salidas Option "VBERestore" "true"
# VideoRam 131072
Option "DRI" "true"
Option "AperTexSize" "65536"
# Option "DevicePresence" "true"

Ahora bien parece que automáticamente al definir AperTexSize toma el máximo ese disponible, sino directamente se puede trabajar con VideoRam y obtener los mismos resultados

Por ahora con 64mb de video noto una buena diferencia y no me quedo sin ram (hasta que compre el módulo de 1gb)

PD: la opción DevicePresence debería servir (no la he probado aun) para detectar correctamente la conexión de dispositivos de salida externo cuando estos son puestos al estilo hotplug (hasta ahora el vga-out anda jolia pero el tv-out si no lo pongo antes de prender al maquina se ve en blanco y negro por mas que configure la norma... bueh esto es otro tema que algún día cuando tenga tiempo revisaré)

miércoles, 11 de abril de 2007

ej filtro con bash

un poco de scripteria barata... (si no después me olvido y no tengo ganas de ponerme a pensar ni un minuto en algo qe ya hice antes jejeje)

deberia devolver mails enviados a cierto usuario en un dia determinado mostrando id del mensaje + direccion de correo de la persona que lo mando + hora de llegada + hora de entrega

for i in $(grep usuario /var/log/exim4/mainlog.1 | grep "=>" | grep "04-10" | cut -d " " -f 3) ; do echo;echo $i; grep $i /var/log/exim4/mainlog.1 | grep "<=" | cut -d " " -f 5;grep $i /var/log/exim4/mainlog.1 | grep "=" | cut -d " " -f 2;done>salida

viernes, 23 de febrero de 2007

mmm... rotar slogan con Drupal

Quizás no muchos sepan que últimamente me estoy dedicando, entre otras cosas, a desarrollar módulos para un CMS llamado Drupal.
La idea es que tengo ganas de hacer un módulo que eliga de una lista de slogans uno al azar para mostrar cada vez que se carga alguna página del sitio web. Puede ser que esta idea no sea muy original, es más quizás ya existe este módulo. Pero bueno si existe voy a ver en que estado está y sino lo voy a crear.
De más esta decir lo bueno que esta Drupal para desarrollar sitios web, es increíble!!, bien documentado, diseño modular, claro, etc....

jueves, 15 de febrero de 2007

hibernate on lg lw20 (unstable)

Yeah, me again. I`m on fire :D. After fix the halting, hibernate was the next steep.
I Installed the hibernate script from suspend2 (apt-get), but when i decided to run it ... X crash in restore, or (later of unload modules mmc_core , and other that don' t remember now) the resolution isn't correct (virtual desktop 1280x800 in 1024x768).

One more time google have the answer ( http://www.warpedview.com/archives/9 ). Add this line to your hibernate.conf:

OnResume 97 915resolution 5c 1280 800

This forces 915resolution to run very early in the resume process, which is necessary to repatch the mode into the BIOS before X resumes.

Now, supposedly with this everything should be work... , run hibernate script and... WTF ... X crash. One week testing and the result was the same. Today (sunday 18) i tested again and... it WORK !!!, i don't fucking believe it. Search my last changes in grub (acpi=force), hibernate.conf (commented OnResume option), common.conf (uncommented Runi915resolution yes, LoadModules auto UpInterfaces auto). So... truly i not understand what happen here, but hibernate work fine. Module unload isn't needed for this.

ToDO: suspend don't resume, now shut down correctly but nothing happen when i press power button (force unload sdhci mmc_core and ipw2200).


PD: sorry if my English is really poor/bad but i must practice... and make my feel a little more interesting.

miércoles, 14 de febrero de 2007

halt LG-LW20

Hi, this is my first post here...
Keep this easy. Mini HowTo about poweroff + ubuntu Edgy + LG LW20

Trouble: when i press shutdown, the system is halted but dont poweroff the notebook. the module snd_hda_intel isn`t unloaded correctly.

Solution: create a script that force module unload before halt signal.

joe@mobile:~$ nano -w /etc/init.d/kill_lame_snd


#!/bin/sh
case "$1" in
start)
# No-op
;;
restart|reload|force-reload)
echo "Error: argument '$1' not supported" >&2
exit 3
;;
stop|"")
rmmod -f snd_hda_intel
rmmod -f snd_hda_codec
;;
*)
echo "Usage: kill_lame_snd [start|stop]" >&2
exit 3
;;
esac


then do chmod +x /etc/init.d/kill_lame_snd and update-rc.d kill_lame_snd start 80 0 6 .

enjoy halting !!!

EOF

miércoles, 31 de enero de 2007

Mi nueva propuesta

Actualmente tengo instalado Ubuntu 6.10 en mi laptop y en el desktop del trabajo. Mi idea es comenzar a realizar todas las tareas haituales como las haría un usuario no informático, esto es, usando para todo la interfaz gráfica, en mi caso xorg+gnome. Voy a intentar no abrir ninguna terminal a menos que sea extremadamente necesario.
Todo es para ver si puedo encontrar alguna deficiencia en las interfaces y ayudar a corregirla, para acercar un poco más el desktop a los usuarios no informáticos.
Y supongo que los resultados los voy a ir publicando en el blog.