Este sitio web es para publicar material que pueda ser de ayuda para algunas personas. Sientase libre de comentar si estos materiales le han servido o si necesita ayuda para la solución de algún problema. Es realizado con material propio o encontrado en la red, sientase libre de realizar cuálquier reclamo/aporte. El nombre del blog es con la intención de inmortalizar el nombre de mi padre a quién le debo el enfoque tecnológico de mi forma de vida.
Buscar este blog
Aviso
sábado, 13 de octubre de 2012
http://solucionesgeograficas.wordpress.com/
Espacio Web con la forma más fácil de obtener soluciones geográficas de geoprocesamiento y análisis a través de herramientas SIG libres y privativas como ArcGIS y gvSIG. La mejor forma de integrar la tecnología y las Ciencias de la Tierra y una iniciativa académica de estudiantes de Ingeniería Catastral de la Universidad Distrital.
lunes, 18 de junio de 2012
Repositorios para Fedora con la mayor cantidad de software posible
- Adobe:
/etc/yum.repos.d/adobe.repo
%
/etc/pki/rpm-gpg/RPM-GPG-KEY-adobe
% - Atomic:
/etc/yum.repos.d/atomic.repo
%
/etc/pki/rpm-gpg/RPM-GPG-KEY-atomic
% - ATrpms:
/etc/yum.repos.d/atrpms.repo
% - Calcforge:
/etc/yum.repos.d/calcforge.repo
%
/etc/pki/rpm-gpg/RPM-GPG-KEY-calcforge
% - Google:
/etc/yum.repos.d/google.repo
% - Infinality:
/etc/yum.repos.d/infinality.repo
% - Kororaa:
/etc/yum.repos.d/kororaa.repo
%
/etc/pki/rpm-gpg/RPM-GPG-KEY-kororaa
% - Livna:
/etc/yum.repos.d/livna.repo
%
/etc/pki/rpm-gpg/RPM-GPG-KEY-livna
% - Olea:
/etc/yum.repos.d/olea.repo
%
/etc/pki/rpm-gpg/RPM-GPG-KEY-ismaelolea
% - Planetccrma:
/etc/yum.repos.d/planetccrma.repo
%
/etc/pki/rpm-gpg/RPM-GPG-KEY-planetccrma
% - Les rpm de remi:
/etc/yum.repos.d/remi.repo
%
/etc/pki/rpm-gpg/RPM-GPG-KEY-remi
% - RPM fusion:
%
- RPM Sphere:
/etc/yum.repos.d/rpm-sphere.repo
%
- Russian Fedora:
%
%
% - Silfreed.net:
/etc/yum.repos.d/silfreednet.repo
%
/etc/pki/rpm-gpg/RPM-GPG-KEY-silfreednet
% - Virtualbox:
/etc/yum.repos.d/virtualbox.repo
%
/etc/pki/rpm-gpg/RPM-GPG-KEY-virtualbox
%
miércoles, 16 de mayo de 2012
Arreglar el problema de falta de memoria para Drupal
Fatal error: Allowed memory size of 67108864 bytes exhausted (tried to allocate 71 bytes) in /home/server/public_html/project/includes/theme.inc on line 1144
La forma de arreglarlo fue modificar el archivo /sites/default/settings.php
y agregarle la línea:
ini_set('memory_limit', '512M');
Al final del archivo. Para lograrlo fue necesario cambiar primero los permisos de dicho archivo a 775 y luego regresarlos a 444; Espero que a alguien le halla servido.
martes, 8 de mayo de 2012
Componer texto en LaTeX sobre el IDE Eclipse en Windows 7 y configurarlo.
- Descargar MiKTex, que es la distribución TeX/LaTex para windows, algo así como un conjunto de todos los programas necesarios (Macros, Compiladores, Tipografías...) para componer un texto.
Actualmente está en la versión 2.9 y la pueden descargar de este link http://miktex.org/2.9/setup.
Recuerden que deben instalar todo lo que sigue para la arquitectura de MiKTeX que elijan (32 o 64 bits). - Descargar Eclipse, que es el IDE más extensible que pueden encontrar y el editor más completo para LaTeX como se muestra en http://en.wikipedia.org/wiki/Comparison_of_TeX_editors por supuesto que hay mejores opciones en cuanto a confort o performance pero es importante saber que para un ingeniero conviene más conocer un entorno de desarrollo como este para futuros proyectos en otras áreas; Descarguen el Eclipse for Testers de la página http://www.eclipse.org/downloads/ ya que es el más liviano y tiene todo lo que se necesita para LaTeX.
- Como Eclipse es un software que está programado en java, se hace necesario instalar el Java Development Kit, este se puede descargar de http://www.oracle.com/technetwork/java/javase/downloads/jdk-7u4-downloads-1591156.html.
- Cuando se tenga todo esto descargado lo primero que se instala es el MiKTeX, luego el Java JDK y por último se descomprime eclipse en nuestro directorio predilecto y se ejecuta sin necesidad de instalar.
- Hasta este punto solo está instalado Eclipse, para hacer que funcione LaTeX es necesario instalar el plugin TeXlipse, esta instalación esta bien documentada en http://marketplace.eclipse.org/marketplace-client-intro?mpc_install=139 también hace falta instalar el plugin Pdf4Eclipse para que se vean los pdf en el mismo entorno, este se instala de forma parecida http://marketplace.eclipse.org/marketplace-client-intro?mpc_install=140077; Pueden indagar más al respecto o buscar más plugins en el marketplace de eclipse para que puedan explotar todas las ventajas de este IDE.
- Tal vez sea necesario configurar los programas para TeXlipse, hay un buen tutorial en http://texlipse.sourceforge.net/manual/configuration.html y recuerden dejar el Pdf4Eclipse como visor de pdf ya que es mucho más rápida la visualización.
miércoles, 2 de mayo de 2012
Montar sistemas ext3/ext4 en windows xp/7
Pues para los que no conoscan, existe Ext2Fsd para windows que monta en modo lectura y escritura las particiones ext3 y ext4 para que podamos acceder a nuestros archivos fácilmente; y para leer los de windows en linux también existe un programa llamado ntfs-3g que permite leer y escribir las particiones windows.
El ntfs-3g ya viene preinstalado en la mayoría de las distros así que no hay necesidad de explicar eso; Sin más explico como instalar el Ext2Fsd en windows 7 y como configurarlo para que nuestras particiones se monten automáticamente en modo lectura y escritura al inicio del sistema.
- Descargar el software de este link, http://sourceforge.net/projects/ext2fsd/files/Ext2fsd/
clickea como se muestra en la imágen.
- Instalalo como usuario administrador. Dale a todo siguiente hasta terminar, recuerda selecciónar lo que hay en las imágenes.
- Ya instalado hay que configurar para que se monten las particiones
Luego presiona la tecla F5 para refrescar y ya debería estar montada tu partición linux en read/write mode.
martes, 1 de mayo de 2012
Arreglar problema de reproducción de videos con flash player en fedora con servidor jack
El problema que ocurría es que los videos con el plugin de flash no reproducían bien, algo así como si estuvieran entrecortados, la solución fue instalar la biblioteca flash support. Como lo prometido es deuda escribo los comandos que solucionaron el problema.
- Instalar dependencias del paquete.
$ sudo yum install -y libsamplerate-devel libv4l-devel openssl-devel gtk+-devel
- Descargar los repositorios de git del libflashsupport e instalarlo
$ git clone git://repo.or.cz/libflashsupport-jack.git
$ cd libflashsupport-jack
$ nano flashsupport.c
Modifica la línea número 184 que es cambiar videodev.h por:
#include <libv4l1-videodev.h>
$ sh bootstrap.sh
$ make
$ sudo make install
$ sudo ln -s /usr/local/lib/flashsupport.so /usr/lib64
IDJC, Jack y Pulseaudio en Fedora
Para la emisora Radio GLUD se hizo necesario instalar jack-audio-conection-kit y qjackctl para hacer correr idjc, aparte de eso hay la necesidad de conectar el audio de pulseaudio y alsa al servidor jack; Después de eso me di cuenta del problema al reproducir videos en flash y lo solucioné también, pero este tema es tan grande que me vi en la necesidad de ponerlo como otra entrada.
- Instalar los siguiente paquetes.
$ sudo yum install -y jack-audio-connection-kit alsa-plugins-jack qjackctl pulseaudio-module-jack idjc
- Agregar tu usario al los grupos relacionados con el audio
$ sudo usermod -a -G audio,jackuser,pulse $USER
- Configurar el archivo limits.conf.
$ sudo nano /etc/security/limits.conf
Agregar al final del archivo las líneas.
@audio - rtprio 99 @audio - memlock unlimited @audio - nice -10 @jackuser - rtprio 99 @jackuser - memlock unlimited @jackuser - nice -10 @pulse - rtprio 99 @pulse - memlock unlimited @pulse - nice -10
- Modifica el archivo default.conf.
$ sudo nano /etc/pulse/default.pa
Deja la parte del archivo que se muestra de esta forma:
### Load audio drivers statically (it's probably better to not load ### these drivers manually, but instead use module-udev-detect -- ### see below -- for doing this automatically) #load-module module-alsa-sink #load-module module-alsa-source device=hw:1,0 #load-module module-oss device="/dev/dsp" sink_name=output source_name=input #load-module module-oss-mmap device="/dev/dsp" sink_name=output source_name=input #load-module module-null-sink #load-module module-pipe-sink load-module module-jack-source load-module module-jack-sink ### Automatically load driver modules depending on the hardware available #.ifexists module-udev-detect.so #load-module module-udev-detect #.else ### Alternatively use the static hardware detection module (for systems that ### lack udev support) #load-module module-detect #.endif
- Agregar qjackctl a las aplicaciones en el inicio. Para este fin ejecuta el comando:
$ gnome-session-properties
- Abrir qjackctl y configuralo activando las opciones:
- Iniciar el servidor jack al iniciar qjackctl
- Habilitar ícono en bandeja del sistema
- Iniciar minimizado en la bandeja del sistema
- Para activar el soporte de mp3 para idjc instala.
$ sudo yum install -y lame lame-libs
- Ahora por un problema de nombres de algunos archivos ejecuta.
$ sudo ln -s /usr/lib64/libmp3lame.so.0.0.0 /usr/lib64/libmp3lame.so
$ sudo ln -s /usr/lib64/libmad.so.0.2.1 /usr/lib64/libmad.so
- Solución de problemas comunes: Si al completar todos los pasos por alguna razón no te funciona el arranque del servidor jackd con qjackctl, prueba quitando el pulseaudio de la lista de aplicaciones al inicio y de no funcionar algunos lo solucionan destildando el tiempo real en el setup de qjackctl e incluso he escuchado que ejecutándolo como sudo funciona, y pues por si las dudas miren que la interfaz que se encuentra por defecto en (default) sea la correcta .
domingo, 29 de abril de 2012
Hacer tu usb multiarranque con grub2
Con cierta alegría y satisfacción les presento un "tutorial" de como hacer nuestro PENDRIVE o memoria usb Multidistros con Grub2. La idea es tener en una sola USB varios instaladores de distribuciones de LINUX ademas de un par de herramientas como GPARTED, que lógicamente nos trae beneficios. Vamos a comenzar con el proceso:
- Antes de todo debemos tener nuestra USB recién formateada en fat. Recuerda el nombre que le pusiste a tu USB ya que lo necesitaremos más adelante.
%en este numeral cabe resaltar que no deben existir particiones en el disco, para eliminar todas usa el comando.
$ sdX=sdb
$ NombreMem=Multiboot
%acá establecí una variable de entorno con el valor del dispositivo sdb y el nombre Multiboot. Por cuestión de copiar y pegar código. %donde NombreMem; es el nombre de quieras ponerle a tu usb y sdX será el enlace al dispositivo por lo general sdb, puedes ver cual es con el programa gráfico palimpsest que dispositivo es recuerda que el dispositivo es sin numero, solo sdb, los que contienen números son las particiones que serán del estilo sdb1 sdb2.
$ sudo umount /dev/$sdX
$ sudo dd if=/dev/zero of=/dev/$sdX bs=1M count=1
$ sudo mkfs.vfat -n $NombreMem /dev/$sdX -I
%puedes ahora extraer e insertar tu memoria o tipear estos comandos, si lo haces con los comandos tendrás que ejecutar las opciones de copia o ejecución como sudo:
$ sudo mkdir /media/$NombreMem
$ sudo mount /dev/$sdX /media/$NombreMem
- Crearemos una carpeta en la cual crearemos "el boot" de nuestra USB.
$ mkdir $HOME/grubusb
%pueden crear la carpeta donde quieran y con el nombre que quieran tan solo deben tenerlo presente durante todo el proceso
- Cambiamos el directorio de la terminal.
$ cd $HOME/grubusb
- Instalamos un programa que necesita el grub2-mkrescue
$ sudo yum install -y xorriso
- Creamos la imagen (.iso) con un grub por defecto:
$ grub2-mkrescue -o arranque.iso
%el nombre del .iso lo deciden también ustedes.
- Le damos todos lo permisos a los archivos contenidos en la carpeta:
$ chmod -Rfv 777 $HOME/grubusb/
- Luego entramos con nautilus a la carpeta de trabajo.
$ nautilus $HOME/grubusb/
%esto nos abrirá la carpeta de trabajo
- Extraemos el .iso que se encuentra en el directorio que abrimos, le damos clic derecho sobre el archivo arranque.iso y luego en la opción extraer aquí. Esto crea la carpeta arranque y dentro de esta crearemos| otra carpeta llamada isos. En esta colocaremos todas las distribuciones que queramos tener en la USB.
- A continuación volvemos a nuestra terminal e instalamos el grub2 en nuestra USB con el comando.
$ sudo grub2-install --force --no-floppy --root-directory=/media/$NombreMem /dev/$sdX
- Copiamos toda nuestra carpeta de trabajo en la raíz de nuestra USB.
$ cp -avf $HOME/grubusb/arranque/* /media/$NombreMem
- Por ultimo nos dirigimos a nuestra USB y buscamos la carpeta boot y dentro de ella buscamos a la carpeta grub2, en esta creamos un nuevo documento.
$ gedit /media/$NombreMem/boot/grub2/grub.cfg
- En este archivo escribimos lo siguiente:
%en donde dice distro_1 debe ir el nombre del .iso de la distribucion que esta en la carpeta "iso". Estas mismas lineas debemos hacerlas para cada iso que queramos que aparezca en el arranque de nuestra USB. Estas isos hay que copiarlas dentro de la USB
%por lo general este comando sirve en la mayoría de las distros, pero si quieren ver otras, tal vez te sirva ver http://www.panticz.de/MultiBootUSB
- Guardamos nuestro archivo grub.cfg y con esto hemos terminado el proceso de convertir nuestra USB en live-USB multidistros.
- Nuestro compañero leonardo se tomó el trabajo de hacer un grub.cfg para varias distribuciónes, así que lo pego tal cual.
- Oh olvidaba, si quieren borrar todos los archivos que creamos.
$ rm -rf $HOME/grubusb/
%Se ha encontrado gran parte de la solución en:
http://www.ubuntu-es.org/node/123018
y muchos otros blogs y foros
sábado, 21 de abril de 2012
Instalar Utorrent en RPM y ver SRC Fedora 16
1) Descargar el archivo .rpm de http://www.mediafire.com/?y6beox2ax1yrc7b y si sabes hacer paquetes te interesará también el .src.rpm de http://www.mediafire.com/?4qoglby68571odo
2) Instalalo con el comando:
$ sudo yum install --nogpgcheck utorrent-server-3.0-1.i686.rpm
3) Si no te funciona puedes intalarlo con:
$ sudo rpm -i --nodeps utorrent-server-3.0-1.i686.rpm
4) Se puede ejecutar buscándolo en el menú como utorrent o ejecutando el comando en consola
$ utorrent-server
5) Acceder a utorrent a través del navegador web que desees escribiendo en la barra de direcciones:
http://localhost:8080/gui
El usario de acceso es admin y das clic en aceptar sin escribir ninguna contraseña
Buena suerte instalándolo y que se diviertan descargando :D
He aquí una copia del archivo SPEC para quien le interese
Name: utorrent-server Version: 3.0 Release: 1 URL: http://www.utorrent.com/ Summary: uTorrent es un cliente BitTorrent ligero y eficiente para Windows o Mac con muchas caracteristicas. License: Freeware Group: Applications/Internet Source0: utorrent-server-3.0.tar.bz2 Buildroot: %{_tmppath}/%{name}-%{version}-buildroot Provides: %{name} %description Utorrent es el mejor para descargar torrents. %prep %setup -q -a 0 %install rm -rf $RPM_BUILD_ROOT install -D -m 755 utserver $RPM_BUILD_ROOT/opt/utorrent/utserver install -D -m 755 webui.zip $RPM_BUILD_ROOT/opt/utorrent/webui.zip install -D -m 755 utorrent.desktop $RPM_BUILD_ROOT/usr/share/applications/utorrent.desktop install -D -m 755 utorrent-server $RPM_BUILD_ROOT/usr/bin/utorrent-server %clean rm -rf $RPM_BUILD_ROOT %post ln -s /usr/lib/libssl.so.1.0.0h /usr/lib/libssl.so.0.9.8 ln -s /lib/libcrypto.so.1.0.0h /lib/libcrypto.so.0.9.8 %files %defattr(-,root,root) /opt/utorrent/ /opt/utorrent/utserver /opt/utorrent/webui.zip /usr/share/applications/utorrent.desktop /usr/bin/utorrent-server %changelog * Sat Apr 21 2011
- Jorge Ulises Useche Cuellar <http://ulisesuseche.blogspot.com> - Se construyó el paquete con los enlaces simbolicos para que funcione
miércoles, 18 de abril de 2012
Instalar Jdownloader desde RPM en Fedora linux
1) Descargar el paquete de los repos de PCLINUX ftp://ftp.pbone.net/mirror/www.pclinuxos.com/apt/pclinuxos/2010/RPMS.main/JDownloader-0.9579-1pclos2010.noarch.rpm
2) Instalar haciendo doble click en el archivo instalado.
3) Si quieren solo hacerlo por consola, copia y pega en una terminal:
$ wget ftp://ftp.pbone.net/mirror/www.pclinuxos.com/apt/pclinuxos/2010/RPMS.main/JDownloader-0.9579-1pclos2010.noarch.rpm; sudo yum install JDownloader-*; rm -f JDownloader-*
Espero que a mi amigo y a alguien más le sirva.
Instalar gpaint (gnu-paint) en Fedora 16 verne
1) Forma gráfica:
- Descarga el paquete de este link.
- Dale doble clic al archivo descargado e instala.
2) Por terminal:
- Tipea esto en consola
$ wget ftp://rpmfind.net/linux/mageia/distrib/cauldron/x86_64/media/core/release/gpaint-0.3.3-8.mga1.x86_64.rpm; sudo yum install -y gpaint-*; rm -f gpaint-*
Usemos Fedora!!! :D
domingo, 15 de abril de 2012
La facilidad que nos trae algunos programas en Fedora
Apoyo mucho el proyecto Fedora, en especial el spin Electronic-Lab y los otros que me parecen que le dan mucha facilidad al instalador de entregar software a un usuario que no conoce los programas en GNU/Linux; Puedes conocer los spins actuales de proyecto en http://spins.fedoraproject.org/. También sé que apoyan la "rama desarrollo" (upstream) y eso realmente me gusta; Para saber más de Fedora Project pueden ir al link http://fedoraproject.org/es/about-fedora.
A muchos habré convencido de usar Fedora con lo que he dicho anteriormente, pero algunos al no tener herramientas tan facilistas (a punta de clicks) como el "Centro de Software" deciden dejar Fedora y pasar a usar alguna otra distribución con más tweaks que le hagan la vida diaria fácil. Tal vez Fedora no alcance ese nivel de personalización predeterminada debido a su filosofía colaborativa con Uptream pero hay algunos programas que te harán la vida mucho más fácil como usuario Fedora:
1) Yumex: Para mi la mejor utilidad gráfica de gestión de software para Fedora, no podrá ser tan potente como synaptic package manager, pero ciertamente cuando uno desea ese nivel de personalización en gestión de paquetes es mejor ir a una terminal.
Para instalarlo solo basta con tipear en terminal:
$ sudo yum install yumex
2) Ailurus: Es un tweaker y también Instalador de Software en el que puedes instalar aplicaciones que no están en los repositorios, configurar algunos aspectos del Sistema Operativo, obtener información del sistema, configurar repositorios, limpiar tu sistema e incluso aprender algunos tips de linux.
$ sudo yum install ailurus
3) easyLife: Instalar y configurar software de una manera muy sencilla, esta es la que uso para instalar cosas como skype o los controladores de tarjetas gráficas o desactivar el SELINUX. Para instalar:
$ wget http://sourceforge.net/projects/easylife-linux/files/latest/download; sudo yum install easylife-*; rm -f easylife-*
4) Fedora Utils: Es una aplicación muy completa, puedes instalar codecs multimedia, flash, java, microsoft fonts etc, ponerle colores a la terminal, configurar el autologueo del sistema (que inicie sin pedir clave), configurar sudo, instalar algunas extensiones para gnome-shell, arreglar problemas conocidos o instalar aplicaciones de google como earth o talk y muchos otros que no se pueden instalar con los dos anteriores.
$ wget http://sourceforge.net/projects/fedorautils/files/latest/download; sudo yum install fedorautils-*; rm -f fedorautils-*
5) Bleachbit: Sería el ccleaner de linux; Un programa para limpiar tu disco de cosas que tal vez nunca te hayas dado cuenta que existen. En Fedora 16 se puede instalar con:
$ wget http://sourceforge.net/projects/bleachbit/files/bleachbit/0.9.2/bleachbit-0.9.2-2.1.fc16.noarch.rpm/download; sudo yum install bleachbit-*; rm -f bleachbit-*
A usar fedora :-) !!!
sábado, 14 de abril de 2012
KDE 4 SC (escritorio plasmoide) como windows 7
sábado, 24 de marzo de 2012
Instalar LAMP, Apache MySQL PHP en Fedora 16 verne para instalar Drupal
Me encontré con el problemita que a pesar de instalar los grupos de paquetes completos para servidor web, aún así no eran todas los paquetes que Drupal necesitaba de PHP, así que pongo como instalar LAMP y estos paquetes.
1. Ejecutar estos comandos para instalar los paquetes:
$ sudo yum groupinstall -y "Web Server"
$ sudo yum groupinstall -y "MySQL Database"
$ sudo yum install -y phpMyAdmin php-mysql php-xml php-pecl-apc php-cli php-pear php-pdo php-domxml-php4-php5 php-gd
2. Activar los servicios de apache y mysql.
$ sudo service httpd start
$ sudo service mysqld start
3. Establece la clave al usuario root de las bases de datos, donde el segundo "password" se cambia por la contraseña que desees poner.
$ sudo mysqladmin password password
4. Configurar mysql.
$ sudo mysql_secure_installation
5. Si se quiere ejecutar los servicios al inicio del sistema.
$ sudo systemctl enable httpd.service
$ sudo systemctl enable mysqld.service
Good luck!
Instalar qt-creator y hacer una aplicación qt con bienvenida y botón cerrar en Fedora.
Me propuse a hacer una aplicación con un mensaje y un botón cerrar y así fue que lo hice:
1. Instalar qt-creator en Fedora
$ sudo yum install -y qt-creator
2. Abrir Qt Creator y seleccionar en el menú
File > New File or Proyect
3. Se abre una ventana, en la sección Projects y se selecciona la plantilla Qt Widget Project y luego en Qt Gui Application y acepta los cambios presionando en Choose...
4. Cambiale el nombre al proyecto y dale a todo Next para no complicarnos.
5. En el panel izquierdo de herramientas y una vez estemos sobre la pestaña Edit
busca en la vista del proyecto y dale doble click sobre mainwindow.ui
que está en la carpeta Forms del proyecto; Se abrirá el archivo en la pestaña Design donde agregaremos un botón a la ventana arrastrando el elemento Push Button de la sección Buttons.
6. Ahora dale click derecho sobre el botón que pusimos en la ventana y pulsa en la opción Go to slot y selecciona la opción clicked() para agregarse ese evento al botón y luego pulsa OK
7. El pasó anterior abrió el fichero mainwindow.cpp donde se escribirá la acción del evento. Dentro de dicho archivo deberá registrarse el evento para cerrar ventana de la siguiente manera:
void MainWindow::on_pushButton_clicked() { close(); }
8. Vuelve a la vista Design como lo hicimos anteriormente y agrega el elemento Label, dale click derecho y pulsa en la opción Change plain text cambiandole el texto por "Bienvenida" o lo que tu quieras, también puedes cambiar el texto del botón de forma similar, le puedes poner "Cerrar Ventana".
9. Ahora que ya está el proyecto completado, debemos presionar Ctrl+B para construir el proyecto y Ctrl+R para ejecutarlo.
10. Ya hemos terminado y solo queda por resaltar que el ejecutable está dentro de la carpeta del proyecto, búscala ;)
Buena suerte!!!
martes, 13 de marzo de 2012
Como hacer la traducción de un sitio a varios idiomas por medio de la funcion gettext de PHP
Creo que es mi deber escribir acerca del método haciendo una introducción breve de las herramientas y comentar porque es recomendable para proyectos pequeños.
I. Explicación del método y el porque utilizarlo para pequeños proyectos.
El método consiste en no reformar mucho el código si solo hemos programado en HTML, al agregar algunos "<?php echo _(" ")?>" podemos realizar una traducción sin problemas claro que como el código es php se hizo necesario crear un .php para cada .html que habíamos creado antes, luego de esto el programa Poedit se encarga de leernos los tags php para crearnos un archivo de traducción .mo, el método con Poedit debería repetirse para cada idioma adicional que queramos agregar al sitio web.
II. Conceptos Previos y aplicación del método
-PHP es un lenguaje para programar en la web, este lenguaje posee varias funciones muy interesantes que pueden hacer que tu vida como programador web sea muy sencilla si sabes como implementarlo. Los archivos .php que son ficheros que son ejecutados en el servidor (donde está guardada la página web) y le dan como respuesta al equipo cliente (a la computadora donde estas navegando) un código HTML y/o CSS que el navegador web te muestra renderizado.
-La función gettext de php busca en un fichero .mo la traducción del texto que está dentro de dicha función. Ejemplo:
<?php echo gettext("Este sitio web está en Español")?>
<?php echo _("Este sitio web está en Español")?>
Como vemos, dentro de la función gettext o de su alias _ que son equivalentes, se pondrá el texto que quieras que esté traducible en tu sitio web; Esto se hace en los ficheros .html o .htm.
-Para que el método gettext funcione es recomendable mover a una carpeta dentro del servidor para el caso usaré cod como la carpeta donde están todos los .html o .htm que hayas creado. En el directorio principal que yo denominaré /path tendrás que crear un .php por cada .html que moviste. Dichos .php llamarán el código HTML para presentarlo de acuerdo al idioma que le configuremos; Les mostraré el ejemplo de un .php y las explicaciones son los comentarios entre /* */:
<?php /*$language es una variable que guarda el idioma en que se mostrará el sitio*/ $language="en_US"; /*putenv y setlocale se configuran con el lenguaje en que se desea mostrar el sitio para el caso se configuran con lo que hayan en $language*/ putenv("LC_ALL=$language"); setlocale(LC_ALL, $language); /*el domain es la dirección donde se va a encontrar el archivo .mo, para este caso se va a encontrar en /path/locale/en_US/LC_MESSAGES/en.mo "en" es el nombre del archivo y, este se debe poner sin extensión tanto en bindtextdomain y en textdomain*/ bindtextdomain("en", "./locale"); textdomain("en"); /*acá le decimos que incluya el .html o .htm que corresponde .php que estamos creando*/ include ("cod/index.html"); ?>
-Como vimos la estructura queda resumida de este modo:
/path
Directorio raíz donde se aloja la página/path/cod
Directorio donde se guardan los .html que hemos creado/path/locale/en_US/LC_MESSAGES
Directorio donde se guarda el fichero .mo y .po/path/locale/fr_FR/LC_MESSAGES
Podemos crear otra traducción por ejemplo a Frances/path/locale/en_GB/LC_MESSAGES
O a Inglés Británico teniendo en cuenta el ISO-639 e ISO-3166 pueden encontrar una tabla de estos en esta página: http://frontaccounting.com/wb3/pages/download/language-definitions.php-Uso del programa Poedit para la creación de los archivos .po y .mo. Estos archivos son los que almacenan la traducción del idioma original del sitio a otro. El archivo .mo es algo así como un binario que contiene la información de las traducciones y es el archivo que usa PHP para ejecutar la función gettext. El .po contiene el código de generación del .mo para que se pueda actualizar, agregar nuevas traducciones y éste es el archivo que reconoce el programa Poedit.
El uso del programa es muy sencillo y su instalación igual, en Fedora se puede hacer de este modo:
$ sudo yum install poedit
Ahora que está instalado abrimos el programa y accedemos a Archivo > Nuevo catálogo..., luego nos aparecerá una ventana con las opciones del catálogo; En Información de proyecto llenamos según nuestro proyecto y lo importante es que el Idioma y País que preguntan son los del idioma al que vamos a traducir y que el Juego de caracteres y el Juegos de caracteres del código fuente sean UTF-8
En la pestaña Carpetas de acuerdo al ejemplo se llenaría de la siguiente forma; El campo Directorio Raíz se llenaría con /path y al agregar en la sección lista de Carpetas un Nuevo elemento lo llenaríamos con cod que es el subdirectorio que me almacena los .html o .htm que anteriormente debimos haber transformado con la funcion gettext de PHP.
En la pestaña Palabras clave escogeremos la que usamos en la transformación del código html, yo utilicé la palabra alias de gettext _ ya que me pareció más legible en el código, las otras palabras tenemos la opción de borrarlas para que no se presente ningún conflicto con otra característica. A continuación click en Aceptar.
Tal vez no te halla detectado ninguna traducción, esto se debe a que por defecto esta aplicación no lee los ficheros con extensión .html o .htm, para agregar estas extensiones ve a Edición > Preferencias > Procesadores > PHP > Editar, la lista de extensiones debe quedar con *.php;*.html;*.htm y la línea de comandos debe quedar con xgettext --language=PHP --from-code=UTF-8 --forcepo -o %o %C %K %F; Dale enter y a continuación acepta todos los cambios.
Para Actualizar el catálogo bastaría con Catálogo > Actualizar desde fuentes tal vez te salga algún Poedit error es normal ya que por defecto las extensiones .html no son reconocidas, acepta todos los resultados de la actualización y luego verás nuevas entradas donde dice Texto original solo basta con llenar la Traducción y guardar los cambios en el directorio:
/path/locale/en_US/LC_MESSAGES/en.po
lunes, 5 de marzo de 2012
Realizar una transferencia de archivos por cable cruzado entre GNU/Linux Fedora
1. Instalar vsftpd en el servidor de origen.
$ sudo yum install vsftpd
2. Configurar vsftpd por medio del archivo vsftpd.conf
$ sudo nano /etc/vsftpd/vsftpd.conf
3. Modificamos las líneas.
anonymous_enable=YES
Cambiándole el YES por el NO como se aprecia en la línea siguiente.
anonymous_enable=NO
4. Descomentamos las líneas quitandoles el # que la antecede dejándola de la siguiente manera.
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
5. Creamos el archivo con la lista de los usuarios que queremos que se logueen y accedan a sus archivos por ftp.
$ sudo nano /etc/vsftpd/chroot_list
6. Agregamos una linea dentro del archivo con el nombre de usuario, por ejemplo si tu nombre de usuario es jinny dentro del fichero deberás escribir jinny.
7. Desactivamos el firewall o en su defecto liberar el trafico de salida y entrada por el puerto 22. Para desactivar el firewall puedes hacerlo gráficamente con el comando.
$ sudo system-config-firewall
Y luego clickeando en Inhabilitar y luego en Aplicar
8. Desactivamos SELINUX o en su defecto lo ponemos en modo permisivo para que nos acepte el acceso externo de los directorios. Para Desactivar SELINUX en fedora hay que modificar la línea SELINUX=enforcing por SELINUX=disable en el archivo /etc/selinux/config, si nunca has modificado esto puedes cambiarlo con el comando.
$ sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
Si no quieres desactivarlo del todo simplemente ponlo en modo permisivo.
$ sudo sed -i 's/SELINUX=enforcing/SELINUX=permissive/' /etc/selinux/config
9. Instalamos filezilla en el servidor de destino con el comando.
$ sudo yum install filezilla
10. Ahora que tenemos todos los paquetes instalados y configurados es hora de crear una red punto a punto con el cable cruzado, para ello crearemos una nueva red cableada para cada host donde se ha de configurar manualmente los ajustes IPv4 con los siguientes datos.
-Host de origen
Dirección: 192.168.0.1, máscara de red:255.255.255.0, puerta de enlace: 192.168.0.2
-Host de destino
Dirección: 192.168.0.2, máscara de red:255.255.255.0, puerta de enlace: 192.168.0.1
11. Nos conectamos en los respectivos computadores con las redes que ya configuramos y tendremos una red punto a punto.
12. Abrimos filezilla en el servidor de destino y nos situamos en la barra de conexión rápida y escribiremos en servidor 192.168.0.2 y tu usuario y contraseña del equipo de origen en los otros campos y damos click en Conexión Rápida
13. Ahora situados en el árbol de directorio local y en el árbol de directorio remoto con las carpetas que queremos. Arrastraremos el directorio del arbol remoto al árbol local.
14. Para optimizar la transferencia podemos poner en el parámetro Transferencias simultaneas que está en el menú de opciones el número máximo de 10.
Buena suerte.
domingo, 26 de febrero de 2012
Solucionar problemas con las bases de datos y otros problemas de yum
Posteo los pasos que hice en dicho computador:
1. Hacer un backup de las bases de datos, por facilidad se hará con el comando tar que crea un fichero con todos estos datos y se le dirá que lo guarde en la carpeta personal.
$ tar cvzf ~/backup-rpm.tar.gz2 /var/lib/rpm
2. Borrar las bases de datos de yum
$ sudo rm -f /var/lib/rpm/__db*
3. Reconstruir las bases de datos con el comando rpm
$ sudo rpm --rebuilddb -vv
4. Borrar metadatos y caché
$ sudo yum clean all
5. Actualizar el sistema
$ sudo yum -y update
Con esto logré actualizar el sistema e instalar los paquetes que se necesitaban.Buena suerte.
Instalar Alacarte en Fedora 16 Verne
Voy a mostrarles los comandos que usé para hacerlo funcionar con su respectiva explicación:
1. Primero instalamos alacarte que está en los repositorios.
$ sudo yum install alacarte
2. Creamos un directorio y accedemos a él para posteriormente guardarle unas descargas.
$ mkdir download-gm; cd download-gm
3. Descargamos el paquete gnome-menus de los repositorios de centos; Este paquete tiene el gmenu.so y el libgnome-menu.so.2 dos bibliotecas que necesita alacarte para ejecutarse:
-para 32 bits
$ wget ftp://rpmfind.net/linux/centos/6.2/os/x86_64/Packages/gnome-menus-2.28.0-4.el6.i686.rpm
-para 64 bits
$ wget ftp://rpmfind.net/linux/centos/6.2/os/x86_64/Packages/gnome-menus-2.28.0-4.el6.x86_64.rpm
4. Utilizamos un comando para extraer del .rpm todos los directorios y archivos que contiene.
$ rpm2cpio gnome-menus-* | cpio -idmv
5. Luego tipeamos estos comandos, para copiar los archivos antes descritos.
-para 32 bits
$ sudo cp usr/lib/python2.6/site-packages/gmenu.so /usr/lib/python2.7/site-packages/gmenu.so
$ sudo cp usr/lib/libgnome-menu.so.2.4.1 /usr/lib/libgnome-menu.so.2.4.1
$ sudo ln -s /usr/lib/libgnome-menu.so.2.4.1 /usr/lib/libgnome-menu.so.2
-para 64 bits
$ sudo cp usr/lib64/python2.6/site-packages/gmenu.so /usr/lib64/python2.7/site-packages/gmenu.so
$ sudo cp usr/lib64/libgnome-menu.so.2.4.1 /usr/lib64/libgnome-menu.so.2.4.1
$ sudo ln -s /usr/lib64/libgnome-menu.so.2.4.1 /usr/lib64/libgnome-menu.so.2
6. Borramos el directorio download-gm donde anteriormente guardamos las descargas.
cd ..; rm -rfv download-gm
7. Ejecutamos alacarte.
$ alacarte
Espero que les haya resultado de utilidad.
Script en bash para remover kernels viejos en Fedora GNU/Linux
A continuación copiaré el código y vendrá brevemente explicado después del guión:
#!/bin/bash
- elegimos el programa interprete de comandos en este caso bash.echo "Bienvenido, debe ejecutar este script con permisos de Super Usuario o como root."
- echo imprime con un espacio de linea el texto o variables que le indiquemos en consola.echo
- escribir "echo" solo imprime un espacio de linea o un enter por así decirlo.version=`uname -r`
- tenemos la variable "version" la cual es un string o una variable con texto en la cual almacenamos el nombre y la versión del kernel que se está usando, "uname -r" es el comando que nos devuelve esto.echo "kernel actual: kernel-$version"
- imprimimos en pantalla la version actual que el usuario tiene instalada.versiones=`rpm -qa | grep -i kernel | grep -v devel | grep -v loop | grep -v headers | grep -v $version`
- obtenemos por medio del programa rpm, los kernel que están instalados en el sistema menos el actual.if test "$versiones" = ""; then
- este if (condicional) nos dice que si no tienes kernels viejos te salgas del programa ejecutando antes lo que viene debajo.echo "kernels antiguos: Ninguno"; echo; sleep 1
- le decimos al usuario que no tiene kernels antiguos.echo "Al no tener kernels antiguos no se realizará ninguna acción."
else
- si, sí tienes kernels antiguos se ejecutará lo que sigue.echo "kernels antiguos: $versiones"
- informa al usuario los kernel que desinstalara.echo
echo "comando ejecutado \"sudo yum remove -y $versiones\""
- informa al usuario el comando que ejecuta para desinstalarlos.echo "Se desinstalaran los kernels antiguos tenga paciencia..."; sleep 1
sudo yum remove -y $versiones
- se ejecuta el comando que desinstalará los kernels antiguos.echo
echo "Se han eliminado los kernels antiguos éxitosamente."
fi
- termina el condicional.echo; echo "Gracias por usar este script.";echo "Escrito por: Jorge Ulises Useche Cuellar"
Ahora que he terminado de explicarlo les copiaré el código del script que tiene comentado como instalarlo si pensamos hacerlo:
#INSTRUCCIONES DE INSTALACIÓN #1. Guarda el texto de este archivo en un fichero sin extensión, yo lo llamé rmoldkernels. #2. Guardalo en la dirección /usr/bin/rmoldkernels, puedes hacerlo con nano u otro editor #que te permita guardarlo con permisos de root por ejemplo: $ sudo nano /usr/bin/rmoldkernels #y pegar el código con ctrl + shift + v. #3. Dale permisos de ejecución con el comando: $ sudo chmod +x /usr/bin/rmoldkernels #4. Ahora puedes ejecutar el script escribiendo desde una consola: $ sudo rmoldkernels # ##COMIENZO DEL SCRIPT #!/bin/bash echo "Bienvenido, debe ejecutar este script con permisos de Super Usuario o como root." echo version=`uname -r` echo "kernel actual: kernel-$version" versiones=`rpm -qa | grep -i kernel | grep -v devel | grep -v loop | grep -v headers | grep -v $version` if test "$versiones" = ""; then echo "kernels antiguos: Ninguno"; echo; sleep 1 echo "Al no tener kernels antiguos no se realizará ninguna acción." else echo "kernels antiguos: $versiones" echo echo "comando ejecutado \"sudo yum remove -y $versiones\"" echo "Se desinstalaran los kernels antiguos tenga paciencia..." sleep 1 sudo yum remove -y $versiones echo echo "Se han eliminado los kernels antiguos éxitosamente." fi echo; echo "Gracias por usar este script.";echo "Escrito por: Jorge Ulises Useche Cuellar"
Buena suerte.
Más populares
-
El Problema Tiffany, o Efecto Tiffany, se refiere al problema en el que un hecho histórico o realista parece anacrónico o poco realista par...
-
El efecto señuelo describe cómo, cuando estamos eligiendo entre dos alternativas, la adición de una tercera opción menos atractiva (el señue...
-
Que tal a todos, para los que no han migrado a linux pero se han dado cuenta de la importancia de LATEX les dejo un tutorial de como se logr...
-
Aseguramiento de calidad analítico Estático Revisiones / Revisiones Guiadas Walkthroughs Análisis de Flujo de Control Análisis de Flujo de ...
-
const user = { nested: { a: 'foo' , b: [ 'first item' , 'second item' , 'third ite...
-
Acaso la inteligencia se trata de la "capacidad de resolver problemas"? Es la respuesta qué he obtenido al preguntar sobre la defi...
-
Cosas que debes llevar (indispensables) - Pasaporte - Cédula de ciudadanía - Kit de cepillo y crema dental (de no más de 100ml) - Papel, ce...
-
Problema: necesitas decirle a alguien lo bien o mal qué lo ha hecho, tanto para reforzar, como para generar accionables que lleven a la pers...
-
Execute this with the hash of the commit git restore -s 648232e -- . Then you can do a git diff showing the changed to be confirmed.
-
Y como el desparche es infinito (no estoy desparchado) les tengo "El GIF".
Archivo del blog
-
►
2024
(13)
- ► noviembre 2024 (2)
- ► octubre 2024 (1)
- ► agosto 2024 (1)
- ► julio 2024 (2)
- ► junio 2024 (1)
- ► marzo 2024 (3)
- ► febrero 2024 (2)
-
►
2023
(25)
- ► diciembre 2023 (2)
- ► noviembre 2023 (1)
- ► octubre 2023 (2)
- ► septiembre 2023 (1)
- ► agosto 2023 (7)
- ► julio 2023 (1)
- ► abril 2023 (2)
- ► marzo 2023 (1)
- ► febrero 2023 (2)
- ► enero 2023 (1)
-
►
2022
(19)
- ► diciembre 2022 (2)
- ► noviembre 2022 (5)
- ► octubre 2022 (2)
- ► septiembre 2022 (1)
- ► agosto 2022 (2)
- ► junio 2022 (2)
- ► abril 2022 (1)
- ► febrero 2022 (1)
- ► enero 2022 (1)
-
►
2021
(36)
- ► diciembre 2021 (2)
- ► noviembre 2021 (2)
- ► octubre 2021 (4)
- ► septiembre 2021 (4)
- ► agosto 2021 (2)
- ► julio 2021 (4)
- ► junio 2021 (3)
- ► abril 2021 (8)
- ► enero 2021 (3)
-
►
2020
(10)
- ► noviembre 2020 (1)
- ► octubre 2020 (2)
- ► agosto 2020 (5)
- ► julio 2020 (1)
- ► enero 2020 (1)
-
►
2019
(2)
- ► julio 2019 (1)
- ► febrero 2019 (1)
-
►
2018
(7)
- ► diciembre 2018 (1)
- ► septiembre 2018 (3)
- ► junio 2018 (1)
- ► marzo 2018 (1)
- ► febrero 2018 (1)
-
►
2017
(5)
- ► diciembre 2017 (1)
- ► noviembre 2017 (3)
- ► julio 2017 (1)
-
►
2016
(4)
- ► septiembre 2016 (3)
- ► junio 2016 (1)
-
►
2015
(1)
- ► julio 2015 (1)
-
►
2013
(5)
- ► diciembre 2013 (1)
- ► noviembre 2013 (1)
- ► octubre 2013 (1)
- ► septiembre 2013 (1)
- ► abril 2013 (1)
-
▼
2012
(20)
- ► abril 2012 (6)
- ► marzo 2012 (4)