Archivo de la categoría: Programas

Planificar un ruta en GoogleMaps, cargarla en OSMAnd

OSMAnd+ (web/store) es genial, en particular porque es el único Software GPS que funciona offline. OSMAnd+ es Software Libre que utiliza los datos de OpenStreeMaps. OSMAnd+ es la versión de pago, OSMAnd es la versión gratuita. Con la versión de pago apoyas al proyecto, así que más que una compra hay que verlo como una donación o contribución, y en todo caso, la recomiendo plenamente.

Si bien el ruteo offline de OSMAnd+ es muy bueno, hay veces que me gusta planificar la ruta en GoogleMaps desde mi computadora, en particular si es muy larga o quiero que pase por determinados lugares. Acá describo como cargar una ruta hecha en GoogleMaps a nuestro OSMAnd+.

  1. Crear la ruta en GoogleMaps. Entrar a GoogleMaps, crear la ruta, y guardarla como KML. No voy a discutir ese proceso acá.kml
  2. Instala en tu computadora el Software GPSBabel.
    sudo apt-get install gpsbabel
  3. Convierte el archivo KML a un archivo GPX:
    gpsbabel -i kml -f miarchivo.kml -o gpx -F miarchivo.gpx
  4. Conecta tu dispositivo Android a la computadora, ya sea por medio de una cable USB o de algún otro medio que permita escribir en la memoria del mismo.
  5. Copia el archivo GPX a:
    /osmand/tracks/miarchivo.gpx
  6. Inicia, o reinicia OSMAnd. Asegúrate de reiniciarlo, si es necesario termina el proceso desde el gesto de tareas. Entra a:
    Settings -> Data Management -> GPX Data.
    Dejando presionado la entrada podrás desplegar la ruta en OSMAnd.

Espero les sirva. Saludos.

Anuncios
Etiquetado , , , , ,

Configurar CSipSimple para CallMyWay (VoIP Costa Rica)

CallMyWay es una empresa costarricense proveedora de servicios VoIP (voz sobre IP). CSipSimple es Software Libre para Android que nos permite hacer llamadas por Internet vía un proveedor de servicios.

Requisitos:

  • Teléfono inteligente o algo parecido. En mi caso un Samsung Galaxy Player 5.0.
  • Sistema operativo Android. En mi caso Gingerbread 2.3.5.
  • Instalada la aplicación CSipSimple y Codec Pack for CSipSimple.
  • Cuenta en CallMyWay (proveedor VoIP). Tener a mano usuario y contraseña.
  • Estar conectado a Internet (ah pos si…).

Una vez instalada la aplicación debemos ingresar al panel de cuentas:

  • Add Account -> Generic Wizards -> Basic.
    • Account name: CallMyWay
    • User: [su número de usuario]
    • Server: sip2.callmyway.net
    • Password: [su clave]

Ok. Cuando intenten habilitarla si sale “Internal Server Error”, se ingresa a la configuración:

  • Network:
    • Enable STUN: Check.
  • Media -> Codecs:
    • G729 8 kHz.

Ok. Con ésto ya podrían realizar llamadas. Hasta la fecha no puedo recibir llamadas, pero sigo en eso.

Etiquetado , ,

Instalar VirtualBox con soporte para USB en Ubuntu 12.04 LTS

1) Instalar VirtualBox

sudo apt-get install virtualbox virtualbox-dkms

El primero instala el programa y el segundo los módulos del kernel para ser recompilados automáticamente (DKMS: Dynamic Kernel Module Support), de forma que no sea necesario recompilar los módulos de VirtualBox en cada actualización del kernel. En Ubuntu 12.04 LTS la versión en repositorios es la 4.1.12.

Se requiere instalar en huéspedes los guest additions puede instalar el ISO para ser montado en los mismos con:

sudo apt-get install virtualbox-guest-additions-iso

2) Agregar extensiones propietarias

VirtualBox es Software Libre bajo la GPL desarrollado por Oracle. Sin embargo el soporte para USB es una extensión propietaria bajo una licencia diferente, la PUEL (VirtualBox Personal Use and Evaluation License). Para instalar el soporte USB se debe descargar dicha extensión desde la página de VirtualBox: https://www.virtualbox.org/wiki/Downloads

Para la versión incluida en los repositorios oficiales es ésta.

Al descargar el archivo .vbox-extpack se hace doble click en el mismo y se abrirá VirtualBox. Se acepta la licencia y se ingresa la clave de root para su instalación.

3) Incluir usuarios al grupo de VirtualBox

Todos los usuarios que deseen capturar dispositivos USB en sus máquinas virtuales deben pertenecer al grupo vboxusers. Para agregar el usuario actual al grupo se ejecuta:

sudo usermod -aG vboxusers $USER

Se puede confirmar los grupos a los que pertenece el usuario con el comando id, por ejemplo:

$ id
uid=1000(cjenkins) gid=1000(cjenkins) groups=1000(cjenkins),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),109(lpadmin),124(sambashare),125(vboxusers),1001(bumblebee)

SE DEBE SALIR de la sesión de escritorio y volver a entrar para que los cambios de grupo surtan efecto.

4) (Opcional) Actualizar versión a 4.2

Para actualizar a la versión 4.2 se debe agregar la clave y repositorio de VirtualBox:

wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc -O- | sudo apt-key add -
sudo sh -c 'echo "deb http://download.virtualbox.org/virtualbox/debian $(lsb_release -sc) contrib" > /etc/apt/sources.list.d/virtualbox.list'
sudo apt-get update

Seguidamente se instala la versión 4.2:

sudo apt-get install virtualbox-4.2

Seguramente es necesario instalar la versión de las extensiones propietarias para ésta versión en particular.

Etiquetado , , ,

Steam for Linux on Optimus enabled computer running Ubuntu 12.04 64bits

steam-linux

Install Bumblebee

First step is to make Optimus work. We will use a Software called Bumblebee for that.

1) Install Bumblebee and the nVidia propietary driver

sudo add-apt-repository ppa:bumblebee/stable
sudo add-apt-repository ppa:ubuntu-x-swat/x-updates
sudo apt-get update
sudo apt-get install bumblebee bumblebee-nvidia

Commands explained:

  • Add Bumblebee PPA (Personal Package Archive) to Ubuntu so you can download Bumblebee.
  • Add the drivers updates PPA so you can download the lastest nVidia driver.
  • Update the repository index with the two newly added sources.
  • Install Bumblebee and the package to support nVidia Optimus using the proprietary nVidia driver.

2) Reboot

Seriously.

3) Test Bumblebee

glxspheres

You should get something like this:

OpenGL Renderer: Mesa DRI Intel(R) Sandybridge Mobile
58.335930 frames/sec - 56.737059 Mpixels/sec
57.184303 frames/sec - 55.616995 Mpixels/sec

That is, you are rendering some graphics using the low power video card. Now:

optirun glxspheres

You should get something like this:

OpenGL Renderer: GeForce GT 525M/PCIe/SSE2
108.236036 frames/sec - 105.269502 Mpixels/sec
111.096688 frames/sec - 108.051750 Mpixels/sec
115.719165 frames/sec - 112.547535 Mpixels/sec

That is, you are now rendering some graphics using the high power video card.

Install Primus

The problem with optirun is the use of VirtualGL. VirtualGL has a huge overhead and thus impact on the performance. For a more technical description check this link: http://www.webupd8.org/2012/11/primus-better-performance-and-less.html

There is another alternative: Primus. Primus runs on top of Bumblebee and improves performance a lot.

1) Install Primus

sudo add-apt-repository ppa:zhurikhin/primus
sudo apt-get update
sudo apt-get install primus

Commands explained:

  • Add Primus PPA (Personal Package Archive) to Ubuntu so you can download it.
  • Update the repository index with the newly added sources.
  • Install Primus.

2) Test Primus

vblank_mode=0 primusrun glxspheres

You should get something like this:

OpenGL Renderer: GeForce GT 525M/PCIe/SSE2
214.447849 frames/sec - 208.570262 Mpixels/sec
220.159208 frames/sec - 214.125085 Mpixels/sec
220.226968 frames/sec - 214.190987 Mpixels/sec

Yeah. That’s a huge performance boost.

(Optional) Install nVidia experimental drivers 310

This are supposed to even double the performance of the nVidia card.

1) Install new driver

sudo apt-get install nvidia-experimental-310 nvidia-settings-experimental-310

2) Configure Bumblebee and Primus

Just follow the instructions here:

http://www.webupd8.org/2012/12/use-nvidia-experimental-drivers-310.html

When finished, RESTART. Seriously, you need to restart the X Window server.

3) Test new driver

vblank_mode=0 primusrun glxspheres

You should get something like this:

OpenGL Renderer: GeForce GT 525M/PCIe/SSE2
272.052255 frames/sec - 264.595847 Mpixels/sec
270.377649 frames/sec - 262.967139 Mpixels/sec
270.206138 frames/sec - 262.800328 Mpixels/sec

Yeah. That’s another huge performance boost.

Install Steam

1) Install Downloader

wget http://media.steampowered.com/client/installer/steam.deb
sudo apt-get install gdebi-core
sudo gdebi steam.deb

Commands explained:

  • Download oficial Steam downloader package.
  • Install GDebi to handle dependencies of local Debian packages.
  • Install the Steam downloader.

2) Run Steam

Well, do that. Steam will download and install the real Steam client in the
folder ~/.local/share/Steam.

3) Temporaly fix bug #312 “Failed to load steamui.so”

steam-error

This seem to happen on every 64bits OS. Full bug report here:

https://github.com/ValveSoftware/steam-for-linux/issues/321

Solution:

sudo nano /etc/ld.so.conf.d/steam.conf

Add next two lines to file:

/usr/lib32
/usr/lib/i386-linux-gnu/mesa

Then execute:

sudo ldconfig

Now you should be able to run Steam. Login with your account, confirm the new computer, etc, etc. Close Steam: Steam > Exit.

Install Flash for Steam

  1. Make sure you have libxt6:i386 installed.
  2. Go to your Home folder, unhide hidden files (Ctrl-H) and go to .local/share/Steam/ubuntu12_32/.
  3. Create a folder called “plugins”.
  4. Download Flash player plugin for Linux 32bits from:
    http://get.adobe.com/flashplayer/otherversions/
  5. Select the “.tar.gz” download. Open the downloaded file and extract file called libflashplayer.so to the plugins folder created before.

This will make Flash movies in the store work, but slow as hell in some situations.

In commands:

sudo apt-get install libxt6:i386
mkdir -p ~/.local/share/Steam/ubuntu12_32/plugins
wget -qO- https://get.adobe.com/de/flashplayer/completion/?installer=Flash_Player_11.2_for_other_Linux_%28.tar.gz%29_32-bit | awk -F\' '/location.href/{print $2}'| sed s/http:/https:/ | wget -i- -qO- | tar zxvC ~/.local/share/Steam/ubuntu12_32/plugins libflashplayer.so

(Thanks to user Kano from the Steam forums and Alessio Gaeta for those commands).

Test that videos are working. Again close Steam: Steam > Exit.

(Optional) Move Steam library to another partition/HD

If like me you have a hard drive or partition specific for Steam or multimedia, you can move your Steam installation and games to that drive. To do so:

Move the library and installation folder

mv ~/.local/share/Steam /media/<your-device>/Steam

In my case:

mv ~/.local/share/Steam /media/Black/GNU-Linux/Steam
cd ~/.local/share/
ln -s /media/<your-device>/Steam/ .

Now try restarting Steam.

(Optinal) Configure NTFS partition

If you want to have the Steam library on a NTFS partition make sure that the volume is being mounted with your uid and gid AND files needs to be executable by you or your group, if not, Steam will not even start, and if starts, some games will not work.

If you are getting the dialog that Steam cannot find the library and you have an NTFS partition this should be the main cause.

Note: If setting the execution bit for all the files is too much for you, you can configure the NTFS partition to allow POSIX permissions like ext2/3/4. Is much more advanced (not that much), for more information about this option see:

For removable devices

To configure those settings to ONLY that drive and partition, install the utility udisks-glue and configure it:

sudo apt-get install udisks-glue
nano ~/.udisks-glue.conf

And put:

filter steam {
    optical = false
    partition_table = false
    usage = filesystem
    type = ntfs
    uuid = 40DC5EC613CFD8EB
}

match steam {
    automount = true
    automount_options = { 'dmask=000', 'fmask=000' }
}

Change the uuid token with the UUID of your drive. To know it type once is mounted:

sudo blkid

Finally make udisks-glue to start when the user logs in:

nano ~/.config/autostart/udisks-glue.desktop

And put:

[Desktop Entry]
Type=Application
Name=udisks-glue
Exec=udisks-glue
Comment=udisks-glue is a daemon that can perform user-configurable actions when a certain udisks event is detected
X-GNOME-Autostart-enabled=true

Note: Thas was tested on a NTFS USB 3.0 attached 7200rpm/32MB 3Gbps 1TB drive. My laptop has a 256GB internal SSD.

For static devices

Just edit the file /etc/fstab like this:

UUID=40DC5EC613CFD8EB /media/Black ntfs-3g defaults,uid=1000,gid=1000,dmask=000,fmask=000 0 0

Change the UUID and the mount point. To know them type once is mounted:

sudo blkid

Run Steam games using Primus

As you may have deducted, when you run Steam you’re running it with the low power graphics card. You can launch Steam with your high power graphic card using primusrun:

primusrun steam

This is only useful if you’re planning to use the Big Picture Mode. If not, don’t, is not necessary at all. What is absoluty necessary is to run some games with your high power nVidia graphics card. To do so, do the following.

(Relatively official instructions from http://steamcommunity.com/app/221410/discussions/6/846939854395110175/)

1) Add the OPTIMUS_PREFIX variable to your environment

sudo sh -c 'echo OPTIMUS_PREFIX=\"primusrun\" >> /etc/environment'

2) Logout and login from you session

Seriously. Desktop session, not Steam session. Steam is closed.

3) Configure each game you want

For each game you want to launch using you high powered nVidia card do:

  1. Select a game from the Library page of the Steam client, right-click, and
    select Properties.
  2. Click the SET LAUNCH OPTIONS button and specify $OPTIMUS_PREFIX %command%
    for the command line.
  3. Save your changes.

Post created using Nested: http://nestededitor.sourceforge.net/

Etiquetado , , , ,

Clonar un servidor Ubuntu en VirtualBox

Digamos que tienes que crear una red de computadoras virtual o tienes un servidor base que quieres clonar para especializarlo de forma que te ahorres la instalación y actualización de un servidor. VirtualBox permite clonar una máquina virtual y reiniciar el MAC Address de dicha máquina para que la puedas levantar en la red sin que halla colisiones. Esto es fácilmente realizable con nuestro servidor Ubuntu Server y vale mencionar que por cuestiones de licencia ésto no se puede realizar tal cual en servidores Windows.

El problema es que las máquinas clonadas se llaman igual, y una vez de que reinicias el Mac Address las máquinas no vuelven a tener red. Para distinguirlas en la red y hacer que vuelva a funcionar la interfaz eth0 se debe realizar los siguientes pasos:

  1. Cambiar el nombre del sistema.
  2. Cambiar el nombre del sistema en el archivo de hosts.
  3. Eliminar el archivo de red persistente.

1. Cambiar el nombre del sistema:

sudo nano /etc/hostname

Cambiar el nombre del sistema.

2. Cambiar el nombre del sistema en el archivo de hosts:

sudo nano /etc/hosts

Cambiar la línea 127.0.1.1 nombresistema con el nombre del sistema.

3. Eliminar el archivo de red persistente:

sudo rm /etc/udev/rules.d/70-persistent-net.rules

Este archivo contiene los MAC Address y será regenerado cuando se reinicie el sistema.

Finalmente reiniciamos sudo reboot y listo.

Etiquetado , ,

Cómo migrar los módulos de Drupal

Cuando empecé en el mundo de Drupal colocaba todos los módulos en sites/all/modules/

Varios de los sitios que hice tienen esa estructura. Más adelante, cuando conocí drush y luego gracias a la excelente guía de Felix Delattre conocí una buena práctica para organizar los módulos que probaría ser indispensable una vez que me metí a programar y parchear módulos:

  • sites/all/modules/contrib :: Todos los módulos contribuidos por la comunidad.
  • sites/all/modules/custom :: Los módulos propios creados para el sitio web.
  • sites/all/modules/features :: Almacena las características exportadas del sitio.
  • sites/all/modules/patched :: Almacena los módulos contribuidos que fueron parcheados por uno mismo.

Lo genial de esta estructura es que Drush la reconoce sin problemas, entonces descarga los módulos bajo contrib y no actualiza los que están bajo patched 😀

Como mencioné anteriormente un par de sitios que había hecho no tenían esa estructura y quería mover los módulos, como 40 de ellos. Resultó ser muy simple, sólo es necesario mover los módulos, luego recrear la tabla del sistema y borrar las tablas de caché. En comandos:

cd [...]/sites/all/modules/
mkdir contrib
mv * contrib/
mkdir patched features custom
mv contrib/alguno /carpeta (Se organizan los que eran custom, patched, etc)
drush sm -q
drush cc all

Listo! Lo bueno de esto es que también puede arreglar los típico error de principiante de colocar los módulos contribuidos en /modules/ junto a los módulos del core.

Instalar SuperCollider en Ubuntu

SuperCollider es un entorno y lenguaje de programación para síntesis de sonido en tiempo real y composición de algoritmos. Pueden conocer más de SuperCollider en la página de Wikipedia.

Cómo instalar SuperCollider en Ubuntu:

1. Agregar repositorio PPA:

shell> sudo add-apt-repository ppa:supercollider

2. Actualizar el índice de repositorios:

shell> sudo apt-get update

3. Instalar SuperCollider y el plugin para gedit:

shell> sudo apt-get install supercollider supercollider-gedit

4. Reiniciar la máquina o cerrar la sesión y volver a entrar (esto porque el usuario a sido agregado a otro grupo y los permisos han variado, para poder darle al usuario más control de prioridades y sobre la tarjeta de sonido).

5. Iniciar gedit y activar el modo SuperCollider:

Herramientas -> Modo SuperCollider

6. Iniciar el servidor SuperCollider:

SuperCollider -> Iniciar servidor

Ahora al escribir código pueden evaluarlo con el menú o con Ctrl+E

Iniciar máquinas virtuales de VirtualBox al inicio

Tengo una máquina virtual que quiero que inicie cada vez que bootea el servidor. Tanto mi VM como el servidor físico son Debian Lenny, ambos con openssh-server instalado como demonio de SSH para administrarlos, por lo que adrede no habilito el RDP de la VM y la corro como headless.

1. Iniciar las máquinas virtual

Para iniciar las máquinas ponemos esto en nuestro archivo /etc/rc.local :

#/bin/bash -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# VirtualBox start virtual machines on boot
# VMs Run user
RUN_USER=userexecutesvm
# VM run type. Options are [gui|sdl|vrdp|headless]. Check 'VBoxManage startvm'
VM_RUN_TYPE=headless
# Put the ID of the VMs. You can  put the unique id (ex. da52db1a-5b6e-4297-b4b6-aa9e293efcc8)
# or the human friendly VM name (ex. "Name of the VM").
# Check 'VBoxManage --nologo list vms' for information about your VMs
# Example variable:
# VMS=("Name of the VM 1" "Name of the VM2" da52db1a-5b6e-4297-b4b6-aa9e293efcc8)
VMS=("Name of the VM")
# Check for missing binaries
VIRTUALBOX_BIN=/usr/bin/VBoxManage
test -x $VIRTUALBOX_BIN || { echo "$VIRTUALBOX_BIN not installed"; exit 5; }
# Start the VMs
for i in "${VMS[@]}"
        do
		su - $RUN_USER -c "$VIRTUALBOX_BIN --nologo startvm '${i}' --type $VM_RUN_TYPE"
        done
exit 0

Es importante que cambien el usuario con el que ejecutarán las VM y que no sea root por seguridad. Está de más decir que el usuario es el mismo que con el que ejecutan normalmente la VM. El script /etc/rc.local es llamado sin argumentos por el script /etc/init.d/rc.local , pueden revisarlo para conocer como funciona. Ese script se encuentra enlazado como S99rc.local en los Run Levels 2 al 5 (link simbólico /etc/rcX.d/S99rc.local), que en Debian significan lo mismo. Por lo que entonces tenemos cubierto el inicio de la VMs.

2. Detener las VMs

Inicialmente cree mi propio script para detener las VMs. Sin embargo noté que existe el script /etc/init.d/vboxdrv . Al revisarlo, observé una buena implementación llamada stop_vms. El encabezado de la función menciona:

# enter the following variables in /etc/default/virtualbox:
# SHUTDOWN_USERS="foo bar"
# check for running VMs of user foo and user bar
# SHUTDOWN=poweroff
# SHUTDOWN=acpibutton
# SHUTDOWN=savestate
# select one of these shutdown methods for running VMs

Por lo que creamos el archivo /etc/default/virtualbox (ya que por defecto no existe) de esta forma:

host:~# nano /etc/default/virtualbox

SHUTDOWN_USERS="usuarioejecutavms"
SHUTDOWN=savestate

Ese script se encuentra enlazado como S20vboxdrv en los Run Levels 2 al 5 (link simbólico /etc/rcX.d/S20vboxdrv). Y como K20vboxdrv en los Run Levels 0, 1 y 6 (link simbólico /etc/rcX.d/K20vboxdrv). Es decir, que se llamará el script /etc/init.d/vboxdrv con el argumento stop cuando se apague el sistema (Run Level 0), se inicie como single-user mode (Run Level 1) o se reinicie el sistema (Run Level 6). El script vboxdrv sólo llama a stop_vms cuando se le llama con el argumento stop. Es decir, que las máquinas virtuales de los usuarios de la variables se apagarán usando el método especificado (en mi caso puse savestate) en dichos casos.

Con esto ya queda funcionando el sistema.

En resumen: El sistema al ejecutar rc.local se encarga de iniciar nuestras VMs. Al apagar o reiniciar vboxdrv se encarga de apagar nuestras VMs de forma como lo configuramos en /etc/default/virtualbox.

Etiquetado , ,

Que hacer después de instalar Ubuntu 10.04?

Hay varios post de este tipo, muy completos. Acá pongo mi apt-get nada más 😛

sudo apt-get install inkscape pavucontrol gtk-recordmydesktop audacity audacious keepassx gimp p7zip ntfsprogs phatch vlc lame avant-window-navigator emerald fusion-icon hugin gparted ttf-dejavu dia compizconfig-settings-manager compiz-fusion-plugins-extra gnome-do wine gnome-exe-thumbnailer subversion chromium-browser chromium-browser-l10n chromium-codecs-ffmpeg-extra rar unace libdvdread4 openssh-server liferea glade sshfs miro diffuse pidgin ooo-thumbnailer qalculate-gtk filezilla flashplugin-installer guake fontypython openoffice.org-ogltrans

Si no conocen algún paquete los invito a:

aptitude show paquete

Además de esto, agregué cover-thumbnailer desde aquí.

Todo sigue en Gtk+ y para Gnome. No he instalado las bibliotecas de KDE, aunque tal vez tenga que porque quiero instalar Kdenlive, ni modo :S

Y para Firefox:

  • Inline translator,
  • Personas,
  • FoxyProxy,
  • Firebug,
  • Download Status bar

Saludos

Etiquetado , ,

Videotutoriales de Inkscape

Ya varias veces personas me han preguntado donde pueden encontrar tutoriales sobre Inkscape. Pues no hay mejor recursos que la página de http://screencasters.heathenx.org/ .

Además, si quieren darle seguimiento, pueden inscribirse a la página con Miro: http://www.getmiro.com/ (para los que no lo conocen es un “lector de noticia en vídeo” :P)

Ahí pueden encontrar 10 videotutoriales con lo básico de Inkscape: http://screencasters.heathenx.org/microsodes/

Una vez dominado esto, pueden ver los siguientes 95 vídeos que muestran creaciones artísticas de distintos tipos en vivo.

Saludos

Etiquetado , , , ,