Blog dedicado a Linux, programación, Android, smartphones y tecnología en general. Iré contando anécdotas que me ocurran con Linux y como intento solucionarlo. Algo sobre programación, especialmente en Android. Y opiniones sobre productos electrónicos que haya adquirido.
13 noviembre 2014
05 noviembre 2014
Android Studio en Linux 64 bits
Android Studio no tiene ningún problema para correr en versiones Linux de 64 bits, pero algunas herramientas del SDK sí. Como por ejemplo, ADB.
Para solucionar este problema, normalmente se instalan las librerías ia32. El único problema es que son enormes y ocupan mucho espacio. Y la verdad, seguramente no vas a usar ni un 10 % de esas librerías.
La solución pasa por instalar lo que verdaderamente hace falta.
En mi caso uso Debian Testing (Jessie) y lo he solucionado así:
sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install libstdc++6:i386 zlib1g:i386
He instalado estos paquetes con sus dependencias y de momento funciona todo.
Para solucionar este problema, normalmente se instalan las librerías ia32. El único problema es que son enormes y ocupan mucho espacio. Y la verdad, seguramente no vas a usar ni un 10 % de esas librerías.
La solución pasa por instalar lo que verdaderamente hace falta.
En mi caso uso Debian Testing (Jessie) y lo he solucionado así:
sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install libstdc++6:i386 zlib1g:i386
He instalado estos paquetes con sus dependencias y de momento funciona todo.
14 septiembre 2014
Buscar y borrar con un solo comando en Linux
¿Cómo buscar y borrar archivos o carpetas con un solo comando en Linux?
Por ejemplo... Vayamos a borrar los dichosos archivos Thumbs.db.
find /home/usuario -name "Thumbs.db" -exec rm {} ';'
Así de fácil.
Por ejemplo... Vayamos a borrar los dichosos archivos Thumbs.db.
find /home/usuario -name "Thumbs.db" -exec rm {} ';'
Así de fácil.
11 septiembre 2014
Photorec easy file recovery tool
I have been testing Photorec to recover deleted files on a Linux EXT3 partition. It does extremely easy the job of recovering your deleted files! It also can recover files from windows partitions or disk images.
Photorec comes in the testdisk package. In Debian just apt-get install testdisk
Author:
Christophe GRENIER <grenier@cgsecurity.org>
http://www.cgsecurity.org
Photorec comes in the testdisk package. In Debian just apt-get install testdisk
Author:
Christophe GRENIER <grenier@cgsecurity.org>
http://www.cgsecurity.org
09 agosto 2014
Node error using bower on Debian testing
I was setting up bower in my Debian testing, to start developing with Polymer.
When i tried to install Polymer through bower i got the next error:
xxx@xxx:~/xxx$ bower init
/usr/bin/env: node: No existe el fichero o el directorio
When i tried to install Polymer through bower i got the next error:
xxx@xxx:~/xxx$ bower init
/usr/bin/env: node: No existe el fichero o el directorio
The reason is that bower does search for node at /usr/bin/node, but this binary doesn't exist. Instead, /usr/bin/nodejs does exist.
So, the only thing we have to do is a symbolic link:
sudo ln -s /usr/bin/nodejs /usr/bin/node
And we are done! :)
06 julio 2014
Android image drawables - Resize bash linux script
I wrote a bash script to resize image drawables for your apps on android.
It requires the imagemagick package.
The usage is very simple:
./image_resizer <filename> <MDPI size>
./image_resizer.sh filename.png 48
At the moment, you can't provide the filename like /path/to/filename.png.
Instead, you have to copy the image or images, in the script's path.
Also you have to use an image at once. For now, you can't resize two or more images at the same time. Example: *.png it's not supported.
You are free to improve this script, but please, send me a copy to mito150 at gmail.com
#!/bin/bash
#
# Author: Mateu S. <mito150 at gmail.com>
#
# USAGE: ./image_resizer.sh <filename> <MDPI size>
#
# TIP: 1 px = 1 dip on MDPI
#
# Example: ./image_resizer.sh icon.png 48
#
# Path for generated images
RUTA=Drawable-Resized/res
# Detect the extension of the file
EXT=${1##*.}
FILENAME=${1%.*}
# Making Dirs
#mkdir -p $RUTA/drawable-ldpi
mkdir -p $RUTA/drawable-mdpi
mkdir -p $RUTA/drawable-hdpi
mkdir -p $RUTA/drawable-xhdpi
mkdir -p $RUTA/drawable-xxhdpi
# Calculate size for each density
# TIP: LDPI=0.75x, MDPI=1x, HDPI=1.5x, XHDPI=2x, XXHDPI=3x
#SIZE1="$(echo "$2 * 0.75" | bc)"
SIZE2=$2
SIZE3="$(echo "$2 * 1.5" | bc)"
SIZE4="$(echo "$2 * 2" | bc)"
SIZE5="$(echo "$2 * 3" | bc)"
# Scaling images
# TIP: -adaptive-resize is more accurate with details ; -resize less accurate
#convert "$1" -resize $SIZE1 "$RUTA/drawable-ldpi/$FILENAME.$EXT"
convert "$1" -resize $SIZE2 "$RUTA/drawable-mdpi/$FILENAME.$EXT"
convert "$1" -resize $SIZE3 "$RUTA/drawable-hdpi/$FILENAME.$EXT"
convert "$1" -resize $SIZE4 "$RUTA/drawable-xhdpi/$FILENAME.$EXT"
convert "$1" -resize $SIZE5 "$RUTA/drawable-xxhdpi/$FILENAME.$EXT"
16 junio 2014
Aprender a programar en C
Hola! Hoy os quería enseñar el libro con el que aprendí a programar en ANSI C. El título es "C Guía de autoenseñanza" escrito por Herbert Schildt.
Es un libro que empieza desde cero, apropiado para cualquier persona, con conocimientos de programación previos o no. Aunque creo que para primer lenguaje de programación hay otros más aconsejables y sencillos. Este libro trata sobre el lenguaje de programación C estándar o ANSI.
Los temas que se tratan en el libro son:
- Los fundamentos de C.
- Sentencias de control de programa.
- Más sentencias de control.
- Tipos de datos, variables y expresiones.
- Arrays y cadenas.
- Punteros.
- Funciones.
- E/S por consola.
- E/S por archivos.
- Estructuras y uniones.
- Tipos de datos y operadores avanzados.
- Preprocesador de C.
- Funciones de la biblioteca de C.
- Visión general de la programación en Windows.
En mi opinión es un libro que vale la pena. A mí personalmente me gustó mucho y opino que es un gran libro para aprender a programar en el lenguaje de programación C. Lo malo es que creo que ya está descatalogado :(
26 mayo 2014
Linux y Windows GPT partition
El otro día me encontré con un problema al querer instalar Windows + Linux en un mismo portátil. El portátil venía con Windows 8 preinstalado, pero mi amigo quería Windows 7 y Ubuntu Linux.
Instalé Windows 7 y todo lo relacionado para dejarlo funcionando correctamente. A la hora de instalar Ubuntu, en la parte de particionar el disco duro, me salía como si estuviera vacío, sin ninguna partición. Sospechoso!
Me informé un poco y parece ser que el problema está relacionado con la tabla GPT y no se si por algún bug de alguna librería como libparted.
La solución fue "limpiar" la tabla GPT con un maravilloso programa llamado FixParts.
En la web del programa podemos encontrar un tutorial muy sencillo de seguir, con las instrucciones paso a paso.
Gracias Rod Smith!
Instalé Windows 7 y todo lo relacionado para dejarlo funcionando correctamente. A la hora de instalar Ubuntu, en la parte de particionar el disco duro, me salía como si estuviera vacío, sin ninguna partición. Sospechoso!
Me informé un poco y parece ser que el problema está relacionado con la tabla GPT y no se si por algún bug de alguna librería como libparted.
La solución fue "limpiar" la tabla GPT con un maravilloso programa llamado FixParts.
En la web del programa podemos encontrar un tutorial muy sencillo de seguir, con las instrucciones paso a paso.
Gracias Rod Smith!
Grabar imagen iso a un pendrive desde Linux
Para grabar una imagen iso a un pendrive o disco duro usb desde Linux es muy fácil. Usaremos el comando dd.
Primero de todo debemos tener bien claro cuál es el dispositivo que representa a nuestro pendrive o disco duro usb. Para ello al conectar dicho dispositivo por usb, ejecutaremos el comando dmesg. Debemos obtener una salida similar a ésta:
[ 3945.876038] usb 5-1: new high-speed USB device number 4 using ehci-pci
[ 3946.015789] usb 5-1: New USB device found, idVendor=0718, idProduct=0618
[ 3946.015795] usb 5-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 3946.015798] usb 5-1: Product: Trans-It Drive
[ 3946.015801] usb 5-1: Manufacturer: TDKMedia
[ 3946.015804] usb 5-1: SerialNumber: 07B60103F92D2A82
[ 3946.113010] usb-storage 5-1:1.0: USB Mass Storage device detected
[ 3946.113081] scsi4 : usb-storage 5-1:1.0
[ 3946.113159] usbcore: registered new interface driver usb-storage
[ 3947.294826] scsi 4:0:0:0: Direct-Access TDKMedia Trans-It Drive PMAP PQ: 0 ANSI: 0 CCS
[ 3947.780554] sd 4:0:0:0: [sdb] 7810176 512-byte logical blocks: (3.99 GB/3.72 GiB)
[ 3947.781166] sd 4:0:0:0: [sdb] Write Protect is off
[ 3947.781170] sd 4:0:0:0: [sdb] Mode Sense: 23 00 00 00
[ 3947.781789] sd 4:0:0:0: [sdb] No Caching mode page found
[ 3947.781793] sd 4:0:0:0: [sdb] Assuming drive cache: write through
[ 3947.785915] sd 4:0:0:0: [sdb] No Caching mode page found
[ 3947.785919] sd 4:0:0:0: [sdb] Assuming drive cache: write through
[ 3947.817319] sdb: sdb1 sdb2
[ 3947.822545] sd 4:0:0:0: [sdb] No Caching mode page found
[ 3947.822550] sd 4:0:0:0: [sdb] Assuming drive cache: write through
[ 3947.822555] sd 4:0:0:0: [sdb] Attached SCSI removable disk
sudo dd if=/ruta/al/archivo.iso of=/dev/sdb
Y esperaremos a que finalice el proceso :) Puede tardar unos minutos. Así que tranquilos.
*** Warning: El contenido de /dev/sdb quedará completamente eliminado. Así que asegúrate de haber puesto el dispositivo correcto.
Primero de todo debemos tener bien claro cuál es el dispositivo que representa a nuestro pendrive o disco duro usb. Para ello al conectar dicho dispositivo por usb, ejecutaremos el comando dmesg. Debemos obtener una salida similar a ésta:
[ 3945.876038] usb 5-1: new high-speed USB device number 4 using ehci-pci
[ 3946.015789] usb 5-1: New USB device found, idVendor=0718, idProduct=0618
[ 3946.015795] usb 5-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 3946.015798] usb 5-1: Product: Trans-It Drive
[ 3946.015801] usb 5-1: Manufacturer: TDKMedia
[ 3946.015804] usb 5-1: SerialNumber: 07B60103F92D2A82
[ 3946.113010] usb-storage 5-1:1.0: USB Mass Storage device detected
[ 3946.113081] scsi4 : usb-storage 5-1:1.0
[ 3946.113159] usbcore: registered new interface driver usb-storage
[ 3947.294826] scsi 4:0:0:0: Direct-Access TDKMedia Trans-It Drive PMAP PQ: 0 ANSI: 0 CCS
[ 3947.780554] sd 4:0:0:0: [sdb] 7810176 512-byte logical blocks: (3.99 GB/3.72 GiB)
[ 3947.781166] sd 4:0:0:0: [sdb] Write Protect is off
[ 3947.781170] sd 4:0:0:0: [sdb] Mode Sense: 23 00 00 00
[ 3947.781789] sd 4:0:0:0: [sdb] No Caching mode page found
[ 3947.781793] sd 4:0:0:0: [sdb] Assuming drive cache: write through
[ 3947.785915] sd 4:0:0:0: [sdb] No Caching mode page found
[ 3947.785919] sd 4:0:0:0: [sdb] Assuming drive cache: write through
[ 3947.817319] sdb: sdb1 sdb2
[ 3947.822545] sd 4:0:0:0: [sdb] No Caching mode page found
[ 3947.822550] sd 4:0:0:0: [sdb] Assuming drive cache: write through
[ 3947.822555] sd 4:0:0:0: [sdb] Attached SCSI removable disk
Como podemos ver, nos dice que nuestro dispositivo es accesible desde /dev/sdb
Ahora que ya tenemos la ruta de nuestro dispositivo y la imagen iso ya la podemos "grabar", creo que sería mejor decir, volcar la imagen al dispositivo usb.
El siguiente comando debe ser ejecutado con permisos de root:
sudo dd if=/ruta/al/archivo.iso of=/dev/sdb
Y esperaremos a que finalice el proceso :) Puede tardar unos minutos. Así que tranquilos.
*** Warning: El contenido de /dev/sdb quedará completamente eliminado. Así que asegúrate de haber puesto el dispositivo correcto.
18 marzo 2014
LiquidFun 1.0 Physics Engine
See new features in LiquidFun 1.0, an open-source, cross-platform physics engine from Google. Get the latest code at http://google.github.io/liquidfun/
Suscribirse a:
Entradas (Atom)