domingo, 17 de enero de 2016

Establecer gnome-terminal en Geany

Geany

Geany es un editor de texto pequeño y ligero basado en Scintilla con características básicas de entorno de desarrollo integrado (IDE). Utiliza bibliotecas GTK para su funcionamiento. Está disponible para distintos sistemas operativos, como GNU/Linux, Mac OS X, BSD, Solaris y Microsoft Windows. Es distribuido como software libre bajo la Licencia Pública General de GNU. 

Este editor viene en los repositorios en casi la mayoría de las distros linux, es mi favorito en cuando a programación en C, C#, gtk+, o en la utilización de ncurses o librerías pequeñas que no requieren un entorno completo de programación.

Hoy les voy a enseñar como configurarlo para compilar programas de GTK utilizando geany, de echo lo pueden utilizar para diversos programas como c++, c, gtk, etc.

Configurando entorno de ejecución

La configuración es realmente sencilla, como ya han de saber, para compilar un proyecto de por ejemplo, hola.vala, que ahora utiliza GTK+, desde consola se hace de la siguiente manera:
valac -g --save-temps debug-demo.vala
Pero, para agregar eso en geany se hace de la siguiente manera:
Ir al Menú->Construir->Establecer comandos de construcción y agregar valac -c "%f" --pkg gtk+-3.0 y valac "%f" --pkg gtk+-3.0 como se muestra en la imagen siguiente:
Y con eso queda listo y configurado Geany para compilar y ejecutar archivos de vala con GTK+, de hecho, si quisieran agregar más comandos de compilación, todo lo que hay que hacer es agregarlos en las filas que se agregaron las instrucciones y con eso podrán compilar con un solo clic.

Adicionalmente pueden modificar la terminal que se muestra durante la compilación, por ejemplo, en el menú Editar->Preferencias->Herramientas y modificar la línea xterm -e "/bin/sh" %c por gnome-terminal -x "/bin/sh" %c como se muestra en la imagen:
Y ahora un ejemplo de compilación:


Gracias por visitar...
M2

lunes, 11 de enero de 2016

Nombres de campos de tablas a minusculas postgresql

Hace poco estaba trabajando con un software que exporta los nombres de los campos de las tablas en mayúscula. El problema de esto es que en postgresql, es necesario utilizar comillas para indicar un campo en mayúscula, ejemplo "NOMBRE", y si hubiera que utilizar ese cambo muchas veces es necesario cambiarlo a todo.

Lo más recomendable es pasarlo a minúsculas, bueno, el problema a parte de solo pasar los nombres de los campos a minúsculas, es que tenía 43 tablas, y cada tabla tenía aproximandamente 10 cambos, es decir, que tenía que ejecutar más de 340 script's sql para cambiar nombre de columnas de las tablas.

Hasta cierto punto esto es tedioso, sobre todo porque, requiero actualizar la base de datos cada cierto tiempo.

De tal modo que requería una función en postgresql para buscar los campos de todas las tablas de la base de datos que estén en mayúscula y pasarlas a minúscula, todo eso en una sola función.

Y aquí está dicha función:
do language plpgsql $$
declare
    r record;
    sche varchar(12);
begin
    -- el esquema lo cambian a conveniencia
    sche = 'mgm';
    for r in
        select relname, attname
        from pg_attribute a
        inner join pg_class c on a.attrelid = c.oid
        inner join pg_namespace n on c.relnamespace = n.oid
        where
            n.nspname = 'mgm'
            and
            attname != lower(attname)
            and
            not attisdropped
    loop
        execute format(' alter table %1$s.%1$I rename column %2$I to %3$s ', sche,r.relname, r.attname, lower(r.attname));
    end loop;
end;
$$;

En esta función lo único que hay que cambiar es el esquema al que queremos cambiarle los nombres de los campos de las tablas.

domingo, 10 de enero de 2016

Instalar Google Chrome en Fedora 23


La instalación de Google Chrome en Fedora requiere de un repositorio, la instalación son los siguientes pasos:

Crear el repositorio de la siguiente manera:
cat << EOF > /etc/yum.repos.d/google-chrome.repo
[google-chrome]
name=google-chrome - \$basearch
baseurl=http://dl.google.com/linux/chrome/rpm/stable/\$basearch
enabled=1
gpgcheck=0
gpgkey=https://dl-ssl.google.com/linux/linux_signing_key.pub
EOF

Ahora instalar el navegador:
sudo dnf -y install google-chrome-stable

Y listo, con eso ya está instalado.

Reporsitorios no oficiales para Fedora 23 2016



Los que ya somos usuarios de linux en general, sabemos que necesitamos de repositorios extras cuando en los oficiales no está el software que necesitamos.

Estos software pueden ser de codecs de audio, bases de datos, reproductores de video, etc.

Yo recomiendo que antes de instalar cualquier programa en Fedora 23, primero agregar todos los repositorios no oficiales y luego, actualizar y por último a instalar sin problemas todo el software básico.

En esta ocasión les traigo un archivo compreso el cual se debe descomprimir en la ruta /etc/yumes.repos.d y luego a actualizar.

El link de descarga los repositorios es el siguiente:
https://mega.nz/#!TIQQXRZA!nkn_is_x1T-1KV-DspL_v7Mn_4XU6N067HNT2wAGPQM


Descargar, descomprimir y colocar los archivos en la ruta: /etc/yum.repos.d

Los repositorios incluidos son:
  1. rpm fusion: repositorios para codecs de audio, vídeo, vlc y algunos controladores
  2. HandBrake: empaquetador de archivos MKV, así como para pegar súbtitulos en archivos de video, mp4, avi, mkv etc.
  3. VirtualBox: potente software para virtualizar máquinas.
  4. Qgis: contiene archivos y bibliotecas para administrar mapas digitales.
  5. pgdg: Contiene repositorios para postgresql 9.4
  6. MySQL: contiene repositorios para la instalación del servidor de base de datos MySQL, así como también alguna de sus herramientas para Fedora.
  7. Megasync: repositorio para instalar la aplicación de sincronización con cuentas del servidor Mega.
  8. jsundermeyer: repositorio para instalar TexStudio, editor de latex más completo para Fedora.
  9. google-earth: repositorio para instalar google earth.
  10. google chrome: repositorio para instalar el navegador más utilizado por todos.
  11. dropbox: repositorio para instalar la aplicación para sincronizar dropbox con la pc en Fedora.
  12. adobe-linux: repositorio para instalar el plugin de flash player, ya que algunas páginas lo requieren.

Una vez agregado los repositorios actalizar con el comando:
sudo dnf -y update && sudo dnf -y upgrade

 Ahora si desean instalar todos los software que no requiren configuraciones adicionales de una sola vez, sería de la siguiente manera:

sudo dnf -y install gstreamer1-libav gstreamer1-plugins-bad-free-extras gstreamer1-plugins-bad-freeworld gstreamer1-plugins-good-extras gstreamer1-plugins-ugly gstreamer-ffmpeg xine-lib-extras xine-lib-extras-freeworld k3b-extras-freeworld gstreamer-plugins-bad gstreamer-plugins-bad-free-extras gstreamer-plugins-bad-nonfree gstreamer-plugins-ugly mencoder gstreamer1-plugins-base-tools gstreamer1-plugins-bad-free gstreamer1-plugins-good  gstreamer1-plugins-base gstreamer1 ffmpeg libdvdread libdvdnav lsdvd libdvdcss vlc soundconverter flash-plugin google-chrome-stable HandBrake-gui HandBrake-cli drobox megasync texstudio

Solo postgresql, mysql, googleearth y virtualbox, sugiero que se instalen individualmente, ya que requieren ciertas configuraciones post instalación.

sábado, 9 de enero de 2016

Compresores en Linux


En ciencias de la computación la compresión de datos es la reducción del volumen de datos tratables para representar una determinada información empleando una menor cantidad de espacio. Al acto de compresión de datos se denomina compresión, y al contrario descompresión.

El espacio que ocupa una información codificada (datos, señal digital, etc.) sin compresión es el cociente entre la frecuencia de muestreo y la resolución. Por tanto, cuantos más bits se empleen mayor será el tamaño del archivo. No obstante, la resolución viene impuesta por el sistema digital con que se trabaja y no se puede alterar el número de bits a voluntad; por ello, se utiliza la compresión, para transmitir la misma cantidad de información que ocuparía una gran resolución en un número inferior de bits.


En el mundo de la compresión de archivos, en Linux, hay muchas herramientas para comprimir archivos, unos mejores que otros. En lo personal uso 7zip, es el que mejor comprime los archivos o carpetas. Sin embargo, cada quien define su gusto.

A continuación les muestro como insalar cada uno de los siguientes compresores en Fedora 23:
  1. bzip2
  2. rar
  3. p7zip
  4. lbzip2
  5. xz
  6. lrzip
  7. arj
  8. lzma

Instalación de winrar:

1.- Primero descargar el archivo instalador del siguiente link, ojo, seleccionar el tipo de archivo de acuerdo con la arquitectura de su computadora.
o pueden descargarlo desde este otro link https://mega.nz/#!2YAkRL7C!snKzPiqeWHEXsVn8j11gEjtJKw0_rnl2H6aF0Pvf2aI
2.- Descomprimir el archivo y entrar a la carpeta desde la terminal
cd rar
3.- Ejecutar los siguientes comandos:
sudo make
sudo make install
4.- Salirse de la terminal con
exit
5.- Ya pueden eliminar la carpeta de instalación

Instalación del resto de compresores

sudo dnf install zx bzip2 unrar p7zip lbzip2 lrzip arj lzma arj lzop cpio

Ahora para comprimir archivos, solo basta seleccionarlos del menú de fileroller.