August 8, 2014
git config --global alias.lg "log --oneline --abbrev-commit --all --graph --decorate --color"

August 3, 2014
To install cinnamon and remove unity:
sudo add-apt-repository ppa:gwendal-lebihan-dev/cinnamon-stable
sudo apt-get update
sudo apt-get install cinnamon nemo
logoff or reboot the system and log in in Cinnamon. Now make nemo the default file manager:
xdg-mime default nemo.desktop inode/directory application/x-gnome-saved-search
gsettings set org.gnome.desktop.background show-desktop-icons false
gsettings set org.nemo.desktop show-desktop-icons true
Remove unity:
sudo apt-get autoremove --purge unity unity-common unity-services unity-lens-*      unity-scope-* unity-webapps-* gnome-control-center-unity hud libunity-core-6* libunity-misc4 libunity-webapps* appmenu-gtk appmenu-gtk3 appmenu-qt* overlay-scrollbar* activity-log-manager-control-center firefox-globalmenu thunderbird-globalmenu libufe-xidgetter0 xul-ext-unity xul-ext-webaccounts webaccounts-extension-common xul-ext-websites-integration
sudo rm /usr/lib/thunderbird-addons/extensions/messagingmenu@mozilla.com.xpi
sudo apt-get autoremove --purge compiz compiz-gnome compiz-plugins-default libcompizconfig0
sudo apt-get autoremove --purge nautilus nautilus-sendto nautilus-sendto-empathy nautilus-share
zeitgeist-daemon --quit
sudo apt-get autoremove --purge activity-log-manager-common python-zeitgeist rhythmbox-plugin-zeitgeist zeitgeist zeitgeist-core zeitgeist-datahub
rm ~/.local/share/unity-webapps
rm ~/.compiz
rm ~/.config/compiz-1
rm ~/.config/nautilus
rm ~/.local/share/nautilus
rm ~/.local/share/zeitgeist
source

July 18, 2014
cd liteide/lib/liteide && mkdir bak && mv *Qt* bak/ 
http://code.google.com/p/golangide/issues/detail?id=104

June 13, 2014
sudo aptitude install gimp-plugin-registry

May 24, 2014

Sfx ORM

Generador de Entidades v 0.2

Cada entidade se define en un archivo en formato JSON con la extensión *.ent.
Ejemplos de definición de una entidad simple:
{
    Namespace: 'Demo',
    Label: 'Localidad',
    Description: 'Name',
    Properties: [
        { Name: 'Name', Label: 'Nombre', Type: 'string', Length: 25 },
        { Name: 'Lat', Label: 'Latitud', Type: 'decimal' },
        { Name: 'Lon', Label: 'Longitud', Type: 'decimal' }
    ]
}
Los tipos de datos posibles son:
    String,
    SmallInt,
    Int,
    BigInt,
    Reference,
    Decimal,
    Money,
    Text,
    Date,
    DateTime,
    Bool,
    Link,
    Image,
    File,
    Password,
    Encrypted

Partial Class

Para generar una clase parcial, con un archivo autogenerado y otro personalizable establecer Partial:
{
    Namespace: 'Demo',
    Partial: true,
    Properties: [...]
}

Picklists

{
    Properties: [
        { Name: 'Status', Label: 'Estado', Type: 'picklist' }
    ],
    Picklists: {
       status: [ 
            { name: 'Active', label: 'Activo' },
            { name: 'Inactive', label: 'Inactivo' } 
        ] 
    }
}

Relaciones

Para que se genere una relación con un lookup que muestra la descripción de la tabla relacionada en vez del Id:
Properties: [
    { Name: 'IdSerial', Type: 'reference', Reference: 'Serial.Id', RefDescription: 'Serial.SerialNumber' }    
]
El generador creará automáticamente una propiedad que se llame igual pero sin el prefijo Id. Por ejemplo en el ejemplo anterior se generaría:
public int IdSerial
public string Serial

y serial se cargaría siempre con el valor de SerialNumber en la tabla relacionada. Para que se genere una relación que muestra el Id y otra propiedad que muestra la descripción de la tabla relacionada hay que omitir el valor de RefDescription:
Properties: [
    { Name: 'IdSerial', Type: 'reference', Reference: 'Serial.Id' }
    { Name: 'Serial', Type: 'reference', Reference: 'Serial.SerialNumber' }    
]

Tags

Se pueden añadir tags para utilizar más adelante en el código.
    { Name: 'WeekDay', Type: 'string', Length: 25, Tags: '-t Weekday' }