Secciones

martes, 17 de noviembre de 2015

Scripts Básicos de Instalación para Linux (Condensado)

#!/bin/sh -x
# PURGE
sudo apt-get -y purge thunderbird*
sudo apt-get -y purge openjdk*

# ADD REPO
sudo add-apt-repository -y ppa:kilian/f.lux
sudo add-apt-repository -y ppa:stellarium/stellarium-releases
sudo add-apt-repository -y ppa:ubuntu-wine/ppa
sudo add-apt-repository -y ppa:n-muench/burg
sudo add-apt-repository -y ppa:ingalex/super-boot-manager
sudo add-apt-repository -y ppa:gezakovacs/ppa
sudo add-apt-repository -y ppa:webupd8team/java
sudo sh -c "sed -i 's/trusty/raring/g' /etc/apt/sources.list.d/ingalex-super-boot-manager-trusty.list"
sudo apt-get -y update

# APT-GET INSTALL
sudo apt-get -y install \
chromium-browser \
fluxgui \
pdftk \
stellarium \
build-essential libqt4-dev \
gparted \
super-boot-manager \
unetbootin extlinux \
multitail \
meld \ 
flashplugin-installer
sudo apt-get -y install -f

# WGET DEB TAR ZIP
wget https://www.dropbox.com/download?dl=packages/ubuntu/dropbox_2015.10.28_amd64.deb -O /tmp/dropbox.deb
wget http://download.teamviewer.com/download/teamviewer_amd64.deb -O /tmp/teamviewer.deb
wget http://get.code-industry.net/public/master-pdf-editor-3.4.12_i386.deb -O /tmp/masterpdf.deb
wget http://sourceforge.net/projects/synkron/files/synkron/1.6.2/Synkron-1.6.2-src.tar.gz -O /tmp/Synkron.tar.gz
wget "https://github.com/harelba/packages-for-q/raw/master/deb/q-text-as-data_1.5.0-1_all.deb" -O /tmp/q.deb
wget db.tt/XI8Zbywp -O /tmp/TEE.zip

# DEB INSTALL
sudo dpkg -i /tmp/teamviewer.deb
sudo dpkg -i /tmp/masterpdf.deb
sudo dpkg -i /tmp/dropbox.deb
sudo dpkg -i /tmp/q.deb

# TAR COMPILE UNZIP START
mate-terminal -e "sudo dropbox start -i"
#Si el daemon no funciona insertar el comando @reboot ~/.dropbox-dist/dropboxd
#con el comando crontab -e
tar -xzvf /tmp/Synkron.tar.gz -C /opt
cd /opt/Synkron-1.6.2-src
sudo lrelease-qt4 Synkron.pro && qmake-qt4 Synkron.pro && make 
#Para lanzar Synkron sudo /opt/Synkron-1.6.2-src/synkron
sudo unzip /tmp/TEE.zip -d /opt
alias tf='/opt/TEE-CLC-12.0.2/tf'
tf eula -accept

# MULTITAIL:
cat << EOF > ~/.multitailrc
colorscheme:tomcat
cs_re:white,,bold:\[[a-zA-Z_]*?\.[a-zA-Z_]*?\.[a-zA-Z_]*?]
cs_re:cyan:[0-9]{4}-[0-9]{2}-[0-9]{2}\s[0-9]{2}:[0-9]{2}:[0-9]{2},[0-9]{3}
cs_re:green,,bold:INFO
cs_re:yellow,,bold:WARN
cs_re:magenta,,bold:DEBUG
cs_re:red,,bold:ERROR
cs_re:red,,bold:FATAL
cs_re:white:^.*INFO.*$
cs_re:white:^.*WARN.*$
cs_re:white:^.*DEBUG.*$
cs_re_s:white,red:ERROR (.*)
cs_re:red:.*
EOF

# CHROME
# Configuración > Sistema>
# Desactivar la casilla [ ] Usar aceleración de hardware cuando esté disponible

# Cambio al Bootloader
# sudo pluma /etc/default/burg
#    GRUB_DEFAULT = 1 - Seleccion de SO, empieza en 0
#    GRUB_GFXMODE = 1024x768 - Resolución
# burg-emu # Simulación de BootLoader
# update-burg # Sincronización de cambios al BootLoader

#APT-GET Necesita configuracion por parte del usuario
sudo apt-get -y install -f
sudo apt-get -y install burg burg-themes oracle-java8-installer oracle-java8-set-default

lunes, 16 de noviembre de 2015

Scripts de Instalación para Linux

Bash

Si se adiciona -x a la primera línea de un archivo bash, se mostrará qué comando se están ejecutando.
#!/bin/sh -x

Uninstall

sudo apt-get -y purge thunderbird*

Apps

# DROPBOX
wget "https://www.dropbox.com/download?dl=packages/ubuntu/dropbox_2015.10.28_amd64.deb" -O /tmp/dropbox.deb
sudo dpkg -i /tmp/dropbox.deb
mate-terminal -e "sudo dropbox start -i"
#Si el daemon no funciona insertar el comando @reboot ~/.dropbox-dist/dropboxd
#con el comando crontab -e

# CHROME
sudo apt-get -y install chromium-browser
# Configuración > Sistema>
# Desactivar la casilla [ ] Usar aceleración de hardware cuando esté disponible

# TEAMVIEWER
wget http://download.teamviewer.com/download/teamviewer_amd64.deb -O /tmp/teamviewer.deb
sudo dpkg -i /tmp/teamviewer.deb

# F.LUX: Sync screen color to the time of day
sudo add-apt-repository -y ppa:kilian/f.lux
sudo apt-get update
sudo apt-get -y install fluxgui

# MASTERPDF
wget http://get.code-industry.net/public/master-pdf-editor-3.4.12_i386.deb -O /tmp/masterpdf.deb
sudo dpkg -i /tmp/masterpdf.deb

# PDFTK: PDF Toolkit
sudo apt-get install pdftk
#Uso
pdftk DERECHO.pdf DERECHO_2015100121*.pdf cat output ../DERECHO.pdf

# STELLARIUM
sudo add-apt-repository -y ppa:stellarium/stellarium-releases
sudo apt-get -y update
sudo apt-get -y install stellarium

# WINE
sudo add-apt-repository -y ppa:ubuntu-wine/ppa
sudo apt-get -y update
sudo apt-get -y install wine1.7 winetricks wine-gecko2.21 wine-mono0.0.8

# SYNKRON
sudo apt-get install build-essential libqt4-dev
wget http://sourceforge.net/projects/synkron/files/synkron/1.6.2/Synkron-1.6.2-src.tar.gz -O /tmp/Synkron.tar.gz
tar -xzvf /tmp/Synkron.tar.gz -C /opt
cd /opt/Synkron-1.6.2-src
sudo lrelease-qt4 Synkron.pro && qmake-qt4 Synkron.pro && make 
#Para lanzar Synkron sudo /opt/Synkron-1.6.2-src/synkron

Boot

# BURG BOOT LOADER
sudo add-apt-repository -y ppa:n-muench/burg
sudo apt-get -y update
sudo apt-get -y install burg burg-themes
# Cambio al Bootloader
sudo pluma /etc/default/burg
#    GRUB_DEFAULT = 1 - Seleccion de SO, empieza en 0
#    GRUB_GFXMODE = 1024x768 - Resolución
burg-emu # Simulación de BootLoader
update-burg # Sincronización de cambios al BootLoader

# SUPER BOOT MANAGER: GUI for GRUB BURG (http://goo.gl/j3AW77)
sudo add-apt-repository -y ppa:ingalex/super-boot-manager
sudo sh -c "sed -i 's/trusty/raring/g' /etc/apt/sources.list.d/ingalex-super-boot-manager-trusty.list"
sudo apt-get -y update
sudo apt-get -y install super-boot-manager
sudo apt-get -y install -f

# GPARTED: Particionador de discos
sudo apt-get -y install gparted

# UNETBOOTIN: Live USB Creator (http://unetbootin.github.io)
sudo add-apt-repository ppa:gezakovacs/ppa
sudo apt-get update
sudo apt-get install unetbootin extlinux

Develop

# MELD: Compara archivos y carpetas
sudo apt-get install meld

# JDK8 ORACLE
sudo apt-get -y remove --purge openjdk*
sudo add-apt-repository -y ppa:webupd8team/java
sudo apt-get -y update
sudo aptitude -y install oracle-java8-installer
sudo apt-get -y install oracle-java8-set-default
java -version

# Q: Text as Data, comandos SQL en archivos de texto
# Tutorial http://harelba.github.io/q/tutorial.html
wget https://github.com/harelba/packages-for-q/raw/master/deb/q-text-as-data_1.5.0-1_all.deb -O /tmp/q.deb
sudo dpkg -i /tmp/q.deb

# TEAM EXPLORER EVERYWHERE: Repositorio
wget db.tt/XI8Zbywp -O /tmp/TEE.zip
sudo unzip /tmp/TEE.zip -d /opt
alias tf='/opt/TEE-CLC-12.0.2/tf'
tf eula -accept

# MULTITAIL: Formatea archivos LOG (-f: Monitorea cambios)
sudo apt-get install multitail
cat << EOF > ~/.multitailrc
colorscheme:tomcat
cs_re:white,,bold:\[[a-zA-Z_]*?\.[a-zA-Z_]*?\.[a-zA-Z_]*?]
cs_re:cyan:[0-9]{4}-[0-9]{2}-[0-9]{2}\s[0-9]{2}:[0-9]{2}:[0-9]{2},[0-9]{3}
cs_re:green,,bold:INFO
cs_re:yellow,,bold:WARN
cs_re:magenta,,bold:DEBUG
cs_re:red,,bold:ERROR
cs_re:red,,bold:FATAL
cs_re:white:^.*INFO.*$
cs_re:white:^.*WARN.*$
cs_re:white:^.*DEBUG.*$
cs_re_s:white,red:ERROR (.*)
cs_re:red:.*
EOF
# Uso
multitail -cS tomcat -f apache-tomcat-8.0.15/bin/logs/segurosApp.log

Develop-Ide

# IntelliJ IDEA
wget http://download.jetbrains.com/idea/ideaIC-15.0.1.tar.gz -O /tmp/intellij.tar.gz
mkdir ~/intellij
tar -xzvf /tmp/intellij.tar.gz -C ~/intellij

# Android Studio
wget http://dl.google.com/dl/android/studio/ide-zips/1.5.0.4/android-studio-ide-141.2422023-linux.zip -O /tmp/androidstudio.zip
mkdir ~/androidStudio
tar -xzvf /tmp/androidstudio.zip -C ~/androidStudio

Develop-Web

# APACHE2 + PHP5 + MYSQL - Tutorial: http://community.linuxmint.com/tutorial/view/486
# Default access user:root psw:admin
sudo apt-get -y install apache2
sudo apt-get -y install php5 libapache2-mod-php5
sudo /etc/init.d/apache2 restart
sudo apt-get -y install mysql-server libapache2-mod-auth-mysql php5-mysql
# This is where things may start to get tricky. Begin by typing the following into Terminal:
#   mysql -u root
# Following that copy/paste or type this line:
#   mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('yourpassword');
# (Make sure to change yourpassword to a password of your choice.)
# After that is installed our next task is to get PHP to work with MySQL. 
# To do this we will need to open a file entitled php.ini. To open it type the following:
#   gksudo gedit /etc/php5/apache2/php.ini
# Now we are going to have to uncomment the following line by taking out the semicolon (;).
# Change this line:
#   ;extension=mysql.so
# To look like this:
#   extension=mysql.so
# Now just restart Apache and you are all set! 
#   sudo /etc/init.d/apache2 restart

# NODEJS
curl -sL https://deb.nodesource.com/setup_5.x | sudo -E bash -
sudo apt-get -y install nodejs

# TOMCAT
sudo apt-get -y install tomcat6 tomcat6-admin
# Variable JAVA_HOME (sudo update-alternatives --config java)
# sudo nano /etc/default/tomcat6 
# Descomentar la palabra JAVA_HOME
# Asignarle el valor /usr/lib/jvm/java-8-oracle
# sudo service tomcat6 start #Iniciar servicio

# ADMINER: Administrador de Base de Datos en PHP
sudo mkdir /var/www/html/adminer
wget "http://www.adminer.org/latest.php" -O /var/www/html/adminer/index.php

# SQLBUDDY
sudo mkdir /var/www/html/sqlbuddy
wget http://github.com/calvinlough/sqlbuddy/raw/gh-pages/sqlbuddy.zip -O /var/www/html/sqlbuddy/index.php

# PHPMYADMIN: Administrador de Base de Datos en PHP
sudo apt-get -y install phpmyadmin
# If you get a 404 error upon visiting http://localhost/phpmyadmin:
# You will need to configure apache2.conf to work with Phpmyadmin.
#   sudo gedit /etc/apache2/apache2.conf
# Include the following line at the bottom of the file, save and quit.
#   Include /etc/phpmyadmin/apache.conf
# Then just restart Apache
#   sudo /etc/init.d/apache2 restart

Instaladores en Línea de Comandos para Windows

Chocolatey

Administrador de Paquetes basado en la infraestructura NuGet y Powershell.
# INSTALACIÓN (Más en https://github.com/chocolatey/choco/wiki/Installation)
#    Política: unrestricted o bypass
set-executionpolicy -s cu unrestricted 
iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))
# USO (cmd o Powershell)
#    cinst y choco install son sinónimos
choco search git # Busca paquetes local o remotamente - https://chocolatey.org/packages
choco install nodejs.install # Node + NPM + SYSTEM PATH
choco install powershell4 -v # Verbose
choco install python -y # Sí, por defecto

choco outdated # Busca paquetes desactualizados
choco upgrade chocolatey 7zip # Actualiza paquetes

choco feature enable -n autoUninstaller
choco uninstall git

Scoop

Instalador de programas open-source y en línea de comandos para desarrolladores.
# INSTALACIÓN
#    PRE-REQUISITO: Powershell3 ($PSVersionTable.PSVersion)
#    Política: unrestricted
set-executionpolicy -s cu unrestricted 
iex ((new-object net.webclient).DownloadString('https://get.scoop.sh'))
scoop help #Prueba
# USO (cmd o Powershell)
scoop install curl 7zip git grep touch openssh ruby vim figlet
scoop pshazz #https://github.com/lukesampson/pshazz
whoami
net user demo
$env:path #Path de Windows
scoop search ssh #Búsqueda de Programas

Ninite.com

Instalación y actualización de programas populares.

sábado, 14 de noviembre de 2015

Generador de Datos Falsos

Faker (en NodeJS)

Instalación 

sudo npm install faker

Uso

node
var faker = require('faker');
//Localización: https://www.npmjs.com/package/faker
faker.locale = "es";
//Prueba
faker.name.jobTitle();

Casual

Instalación

sudo npm install casual

Uso

Work in progress, please come back later ...

Framework Test para WebApps en AngularJS: Uso

PRE-REQUISITO: Proctractor [Instalación] (protractor --version)

Crear un directorio nuevo para las pruebas. Se necesita un archivo de configuración y otros de especificación (que contienen las pruebas).

Configuración (conf.js)
exports.config = {
  //Ubicación de Selenium Server
  seleniumAddress: 'http://localhost:4444/wd/hub',
  //Archivos de especificación: Test files
  specs: ['spec.js']
};
Nota: El navegador por defecto es Chrome.

Especificación [Pruebas] (spec.js)
describe('angularjs homepage todo list', function() {
  it('should add a todo', function() {
    browser.get('https://angularjs.org');

    element(by.model('todoList.todoText'))
        .sendKeys('write first protractor test');
    element(by.css('[value="add"]')).click();

    var todoList = element.all(by.repeater('todo in todoList.todos'));
    expect(todoList.count()).toEqual(3);
    expect(todoList.get(2).getText())
         .toEqual('write first protractor test');

    // You wrote your first test, cross it off the list
    todoList.get(2).element(by.css('input')).click();
    var completedAmount = element.all(by.css('.done-true'));
    expect(completedAmount.count()).toEqual(2);
  });
});
Ejecución
# Iniciar servidor Selenium Server
mate-terminal -e "sudo webdriver-manager start"
protractor conf.js
Más información https://angular.github.io/protractor/#/toc
Probar Selectores de Protractor: Elementor
# Iniciar servidor Selenium Server
# Instalación (https://github.com/andresdominguez/elementor)
npm install elementor -g
# Ejecución
mate-terminal -e "sudo webdriver-manager start"
elementor https://angularjs.org

Framework Test para WebApps en AngularJS: Instalación

PRE-REQUISITOS:
  1. Node.js [Instalación] (node -v)
  2. JDK de Java [Instalación] (java -v) //Para el Selenium Server
  3. Python > 2.0, incompatible con 3.x [Instalación] (python -V) //Viene con Ubuntu
Instalación global de Protractor a traves de NPM (package manager de NodeJS)

   
   # Se instalará protractor y webdriver-manager
   # (Windows) Usar v1.8 npm install -g protractor@1.8.0
   sudo npm install -g protractor
   # Comprobar la instalación
   protractor --version   

   # webdriver-manager permite obtener una instancia de Selenium Server
   # Obtener Selenium Server y Browser Driver
   sudo webdriver-manager update
   # Iniciar servidor Selenium Server   
   sudo webdriver-manager start
Para ver información sobre el servidor se deberá entrar a http://localhost:4444/wd/hub

Resaltar código en Blogger: Uso

PRE-REQUISITO: SyntaxHighlighter [Instalación]

Al agregar una entrada al blog, se debe ir a la sección HTML e insertar, por ejemplo el siguiente código:
<pre class="brush: sql">
SELECT *
FROM users
WHERE user_id = 1212
</pre>
IMPORTANTE: Los caracteres especiales HTML, dentro del tag PRE, como "<", ">" y "&" deben ser convertidos a HTML Entities (usar esta página

Lenguajes Soportados:
Para esta instalación se consideraron: bash, c, css, js, java, php, ps, py, ruby, sql, vb, xml, html 
(Aquí para ver todos)

HTML-Script:
En caso se tenga código HTML, para considerar los script adicionales se debe proceder como en el ejemplo:
<pre class="brush: php; html-script: true">
...
</pre>
Configuración: Resaltado de Líneas
Agregar el parámetro highlight, como en el ejemplo:
<pre class="brush: js; highlight: [2, 4, 6]">
...
</pre>
(Aquí para ver configuración adicional)

viernes, 13 de noviembre de 2015

Resaltar código en Blogger: Instalación

Dentro del menú de Blogger: Plantilla > Editar HTML
Buscar el tag:
</b:skin>
Copiar y pegar debajo:
<link href='//alexgorbatchev.com/pub/sh/3.0.83/styles/shCore.css' rel='stylesheet' type='text/css'/>
<!--Tema Actual: ThemeFadeToGrey-->
<!--Para más temas visitar: http://alexgorbatchev.com/SyntaxHighlighter/manual/themes -->
<link href='//alexgorbatchev.com/pub/sh/3.0.83/styles/shThemeFadeToGrey.css' rel='stylesheet' type='text/css'/>
<script src='//alexgorbatchev.com/pub/sh/3.0.83/scripts/shCore.js'/>
<!--Para más lenguajes visitar: http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes -->
<script src='//alexgorbatchev.com/pub/sh/3.0.83/scripts/shBrushBash.js'/>
<script src='//alexgorbatchev.com/pub/sh/3.0.83/scripts/shBrushCpp.js'/>
<script src='//alexgorbatchev.com/pub/sh/3.0.83/scripts/shBrushCss.js'/>
<script src='//alexgorbatchev.com/pub/sh/3.0.83/scripts/shBrushJScript.js'/>
<script src='//alexgorbatchev.com/pub/sh/3.0.83/scripts/shBrushJava.js'/>
<script src='//alexgorbatchev.com/pub/sh/3.0.83/scripts/shBrushPhp.js'/>
<script src='//alexgorbatchev.com/pub/sh/3.0.83/scripts/shBrushPowerShell.js'/>
<script src='//alexgorbatchev.com/pub/sh/3.0.83/scripts/shBrushPython.js'/>
<script src='//alexgorbatchev.com/pub/sh/3.0.83/scripts/shBrushRuby.js'/>
<script src='//alexgorbatchev.com/pub/sh/3.0.83/scripts/shBrushSql.js'/>
<script src='//alexgorbatchev.com/pub/sh/3.0.83/scripts/shBrushVb.js'/>
<script src='//alexgorbatchev.com/pub/sh/3.0.83/scripts/shBrushXml.js'/>
<script>
    SyntaxHighlighter.config.bloggerMode = true;
    //Elimina la numeración
    SyntaxHighlighter.defaults['gutter'] = false; 
    //Elimina el menú flotante
    SyntaxHighlighter.defaults['toolbar'] = false; 
    SyntaxHighlighter.all();
</script>
Nota: Para copiar el código hacer doble click sobre él y presionar CTRL + C

Guardar y esperar, puede demorar un poco.