miércoles, 23 de mayo de 2012

Configurar la cuenta de email del CSIC para usarla desde GMAIL

Hola,

aquí pongo las instrucciones a seguir para poder recibir los correos del CSIC en GMAIL, y poder escribir los correos desde GMAIL para que se envíen como correos escritos desde la cuenta del CSIC. Además, se puede configurar para que al responder correos se haga automáticamente utilizando la cuenta original receptora del mensaje o no. También se puede decidir si los emails recibidos a través del CSIC vayan directamente con una etiqueta concreta a GMAIL e incluso que se archiven directamente. No voy a entrar en detalle en todas estas opciones, porque me ha parecido que están muy claras. Sí voy a comentar lo que pueda ser menos claro.

1. Enviar correos como cuenta del CSIC desde GMAIL.

Entrar en la cuenta de GMAIL.
Ir al icono del engranaje y pinchar en Configuración.
Ir a la pestaña Cuentas e Importación.
En "Enviar mensajes como:" añadir la cuenta del CSIC.
Seguir las instrucciones de activación, etc y configurar las opciones.

2. Recibir los correos del CSIC en la cuenta de GMAIL.

Entrar en la cuenta de GMAIL.

Ir al icono del engranaje y pinchar en Configuración.
Ir a la pestaña Cuentas e Importación.
En "Comprobar el correo de otras cuentas (mediante POP3):" pichar en "Añadir una cuenta de correo POP3 tuya".
Escribir la cuenta del CSIC.
Cambiar el nombre de usuario al que usamos en el CSIC.
Poner el password de la cuenta del CSIC.
En "Servidores POP:" poner "correo.csic.es".
Ahora el puerto:
- Si no marcamos la opción de "Utilizar siempre una conexión SSL..." poner puerto 110.
- Si sí la marcamos poner el puerto 995.
Cambiar las opciones de etiquetas, etc.

HECHO!

viernes, 23 de marzo de 2012

The quest to install Biopieces

This is my own experience installing Biopieces on Ubuntu 10.04 Lucid Lynx LTS.

sudo apt-get install subversion
sudo perl -MCPAN -e 'install inline'
sudo perl -MCPAN -e 'install JSON::XS'
sudo apt-get install curl
bash -s stable < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)
source ~/.rvm/scripts/rvm
rvm install 1.9.3
sudo gem install rubygems-update
cd /var/lib/gems/1.9.1/bin
sudo ./update_rybygems
sudo gem install gnuplot
sudo apt-get install ruby1.9.3-dev
sudo gem install narray
sudo gem install RubyInline
sudo bash biopieces_install....sh

Warnings: blastall, blat, bwa, bowtie, formatdb, gnuplot, idba, mummer, mysql, prodigal, ray, scan_for_matches, usearch, velveth, velvetg, vmatch

Does biopieces deserve its own Linux distribution?

martes, 20 de marzo de 2012

Some notes about profiles, bash and PATH variable Ubuntu 10.04 LTS

It seems there are 4 places one could edit to get PATH updated permanently.

I. /etc/profile

And the directory for scripts:
/etc/profile.d/*.sh

I could add something like: "export PATH=$PATH:/whatever"

in /etc/profile file using, for instance, pico program.


This file should be running all the .sh files in /etc/profile.d/
And it seems that includes /etc/bash.bashrc


II. /etc/bash.bashrc

# System-wide .bashrc file for interactive bash(1) shells.

III. ~/.profile


Lets take a look at the file ~/.profile:


# ~/.profile: executed by the command interpreter for login shells.
# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
# exists.
# see /usr/share/doc/bash/examples/startup-files for examples.
# the files are located in the bash-doc package.

# the default umask is set in /etc/profile
#umask 022

# if running bash
if [ -n "$BASH_VERSION" ]; then
    # include .bashrc if it exists
    if [ -f "$HOME/.bashrc" ]; then
. "$HOME/.bashrc"
    fi
fi

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi

It seems that includes ~/.bashrc
and adds ~/bin if it exists.
But no words about /etc/profile.d

IV. ~/bashrc

# ~/.bashrc: executed by bash(1) for non-login shells.


We can add lines to the end of the file like:

export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/usr/games:$PATH

---------------------------------------------------------------------------------------------------

From bash man page:

"When bash is invoked as an interactive login shell, or as a non-interactive shell with the --login option, it first reads and executes commands from the file /etc/profile, if that file exists.
After reading that file, it looks for (~/.bash_profile, ~/.bash_login and ~/.profile) in that order, and reads and executes commands from the first one that exists and is readable.
[...]
When an interactive shell that is not a login shell is started, bash reads and executes commands from /etc/bash.bashrc and ~/.bashrc, if these files exist.
[...]








edit .bashrc in your home directory and add the following line:
export PATH=/path/to/dir:$PATH


A path set in .bash_profile will only be set in a bash login shell (bash -l). If you put your path in .profile it will be available to your complete desktop session. That means even metacity will use it.
For example ~/.profile:
if [ -d "$HOME/bin" ] ; then
  PATH="$PATH:$HOME/bin"
fi
Btw, you can check the PATH variable of a process by looking at its environment in/proc/[pid]/environ. (replace [pid] with the number from ps axf)

Further explanations:
http://stefaanlippens.net/bashrc_and_others
http://www.linux-migration.org/ch02s03.html
http://www.admon.org/difference-between-login-shell-and-non-login-shell/
------------------------------------------------------------

So, IMO, I should change /etc files when I have an application installed for all the system. When my application is installed at /home I should instead use the ~/.profile (for login shells) or ~/.bashrc (for non-login shells).

The question then is What the heck are login and non-login shells? As far as I know, a non-login shell is when I open my shell from Ubuntu using the icon in the X-Windows system. But I need more deep on this topic.

Finally, a good patient friend told me to think it this way: what I want to have in my /home in case I am moving to another place? Well, I want to have my clothes, my personal stuff but as I want to save money I want the heating to be central. As everybody in the building needs the heating, I can change the /etc files. As only I want to manage my clothes, photos, etc. this will be on ~/. files. At last, if I want to get everything since I log in, I will change "profile" files. If I just want to use somethings from a bash shell, I change "bashrc" files.

coda: the question that remains for me is Why when I changed the /etc/profile.d/ adding a *.sh file with something like "export PATH=$PATH:/kakakakakakak" didn't seem to work? I will continue researching on this later.

O.,o

lunes, 19 de marzo de 2012

Installing 454 Data Analysis v2.6 on Ubuntu 10.04 LTS


This is a backup text about the problems I had when installing that software, the solution I finally achieved and the opened questions remaining.

- First of all, I tried to execute like this

./setup.sh

with the following result:

export: 9: software/DataAnalysis_2.6_All/setup.sh: bad variable name

- Then, I tried to execute from a copy I burned into a CD. The result was:

i) on the awful white backgrounded installing window:

/sbin/lspci: not found

ii) window with the text

Cannot execute command: type rocks2&gt;&amp;1

- On SeqAnwers it was the solution for me. But as well some strange advices.
First, some people was telling to try:

sudo ln -s /bin/true ~/bin/rocks
sudo ./setup.sh

Since /bin/true returns true, we are cheating the install program. I didn't want to do that and moreover some people was being able to install but getting some errors afterwards.

- Son on SeqAnwers.com I found a solution, altough really long. I actually would like to resolve the errors I am describing above, to get a fast forward install process but... meanwhile:


I am trying the first one.
pico .bashrc

On the pico editor, at the end of the file, type:

"export PATH=$PATH:/opt/454/bin"

Then, create directories:

cd /opt
sudo mkdir 454
sudo mkdir 454/apps
sudo mkdir 454/apps/jre

cd user_directory_at_home/454soft/DataAnalysis_All/packages
cp newbler_CLI-2.6.i686.tgz /opt/454

(Here I had another problem. I first did copy the 64 bits package and I found I could not execute sfffile and similar SFFtools, stil wondering why...)

cp assembly_GUI_2.6.noarch.tgz /opt/454/apps
cp (the same with mapper)
cp (the same with amplicon)

cd opt/454
sudo tar -xzvf newbler...tgz
cd apps
sudo tar -xzvf assembly...tgz
sudo (the same with mapper)
sudo (the same with amplicon)

sudo rm -r .*tgz
cd ..
sudo rm -r .*tgz

ls /opt/454

apps bin config

ls /opt/454/apps

amplicons assembly jre mapper

Now that everything is ready, we have to create the symbolic linnks:
(if you create a link by error, you can erase it with # sudo unlink name_of_link)

cd /opt/454/apps/jre
sudo ln -s /usr/lib/jvm/java-6-openjdk jre1.6.0_13

cd ..
cd assembly/jre
sudo ln -s ../../jre/jre1.6.0_13 jre1.6.0_13
cd ../amplicon/jre
sudo ln (exactly the same)
cd ../mapper/jre
sudo ln (exactly the same)

finally:

cd /opt/454/bin
sudo ln -s ../apps/assembly/bin/gsAssembler gsAssembler
sudo ln -s ../apps/mapper/bin/gsMapper gsMapper
sudo ln -s ../apps/amplicons/bin/gsAmplicon gsAmplicon
sudo ln -s ../apps/amplicons/bin/doAmplicon doAmplicon


TEST! Thank you to WaltL from SeqAnswers.com forum: http://seqanswers.com/forums/showthread.php?t=8944

Finally, I hope to find the anwers to the initial problems, to can get an easier installation.

best wishes!

lunes, 12 de julio de 2010

Función en python que degenera DNA

Es una función sencilla en python, que recoge como parámetro una secuencia de nucleótidos, y devuelve un array con todas las posibles degeneraciones.

 def regenerate(oligo):  
     inp =  'ACGTRYSWKMBDVHN' # len(inp) = 15  
     deg = ['A','C','G','T','AG','CT','CG','AT','GT','AC','CGT','AGT','ACG','ACT','ACGT']   
       
     grow = ['']  
       
     for a in oligo:  
         # If that nucleotide exists  
         if inp.find(a) != -1:  
             degen = deg[inp.find(a)]  
             # Adds the new nucleotides from degen to every seq in grow  
             grow = [x+y for x in grow for y in degen]  
               
     return grow  

sábado, 10 de julio de 2010

Usar WIndows XP SP2 de un PC en otro

Introducción 
(sáltate esto si quieres ir directo al grano)

A veces los sistemas operativos nos lo dan todo mascado. Pero sin embargo, acciones que a priori podrían parecer triviales resulta que no se pueden realizar así como así. Yo, en mi desconocimiento de cómo funciona realmente Windows y su relación con el hardware, pensaba que podría fácilmente coger el disco duro de un PC y ponerlo en otro para, voilá, estar utilizando su instalación en un momento.

Todo esto viene motivado porque me quedé sin lector de DVD/CD. Mi portátil, un Asus M6726NEUH, venía con un lector fabricado por Toshiba, que como suele pasar con este tipo de dispositivos, acabó por morir lentamente tras unos años de uso. Primero dejó de grabar, luego dejó de leer. Tan sólo hace ahora unos ruiditos y aparece como un dispositivo más en Mi PC, y no quito la unidad porque queda un hueco muy feo por donde puede entrar suciedad.

Así que, tras un tiempo quería formatear y volver a instalar Windows XP SP2, además de añadirle alguna distribución de linux. En primer lugar intenté utilizar un lector de DVD externo, por USB, pero pronto me di cuenta de que no quería arrancar por esa vía. Por tanto descarté también la utilización de una memoria USB. ¿Qué me quedaba? Pues o bien comprar un nuevo lector, el cual no pude encontrar en páginas de partes para mi modelo, o sacar el disco duro, meterlo en otro PC, realizar la instalación con el CD de Windows y pasar el disco duro de nuevo al primer PC.

Como he dicho, primero pensé que podría hacerlo sin problemas, sin más. Así que desatornillé la tapita inferior del portátil, empujé un poco el disco hacia detrás para desconectarlo, lo saqué e hice lo mismo en el otro PC para colocarle el primero. Tras instalar Windows XP SP2, volví a cambiar el disco de sitio e inicié, pero para mi sorpresa no arrancó... se quedó con una línea horizontal en blanco sobre fondo negro como el betún.

Así que pregunté por ahí, y me dieron algunas pistas. Por un lado decían que se podía iniciar la instalación, y cuando pidiera reiniciar, tras haber copiado los archivos de instalación al disco, apagar y cambiar el disco para que continuara la instalación en el PC objetivo. Por otro lado, había indicaciones de que lo mejor era instalar el sistema y luego ejecutar un programa, Sysprep, para que el sistema operativo reseteara las dependencias de hardware. Los que abogaban por este último método decían que el primero era una chapuza.

Bien, chapuza o no, a mi me pareció más simple la primera opción. Así que lo intenté, pero nada, de nuevo pantalla negra y rayita blanca.

Así que sólo me quedaba la opción de Sysprep. Encontré la siguiente guía en Vernalex que al principio me pareció infumable. Pero realmente está muy bien y pude comprender qué es lo que estaba haciendo y cómo, aunque pensaba que con todos los cabos sueltos que sabía si tenía que atar o no, algo fallaría. Pero no ocurrió, y así tengo ahora de nuevo el Asus M6726NEUH con sistema operativo recién instalado, limpito.

Nomenclatura

- HD: disco duro.
- SO: sistema operativo.
- XP: Windows XP SP2
- PC2: PC destino, donde quiero tener instalado XP pero no puedo hacerlo con un CD o un USB.
- PC1: PC origen, donde voy a realizar la instalación y las operaciones con Sysprep.
- Sysprep: programa incluido en el CD de XP y que sirve para preparar el sistema para poder migrarlo a otro hardware o realizar copias de seguridad no dependientes del sistema (y otras utilidades que desconozco).

Especificaciones

SO: Windows XP SP2
PC2: Asus M6726NEUH
PC1: Acer Aspire 3003LMi

Sobre los pasos a realizar y software necesario

No controlo mucho de XP ni de Sysprep, y alguna cosa podría ser superflua o incluso incorrecta, pero el resultado es que todo funciona perfectamente. Son 18 pasos, pero es, digamos, granulometría fina: cada paso es en realidad una pequeña cosa que hacer y así queda todo más simplificado.

En cuanto a software, no se necesita más que el CD de instalación de XP.

Al tema

1 - Desatornillar la tapa inferior de los 2 PCs y extraer los HDs.

nota: dejar el HD del PC1 apartado porque no se va a utilizar y así se evitan confusiones que puedan acabar en tragedia (= formateado del HD del PC1)
nota2: las tapas donde están los HDs en los portátiles suelen venir indicadas con el tipo símbolo de HD en forma de cilindro que se usa para todos los dispositivos de almacenamiento.
nota3: extraer el HD es más fácil de lo que parece. Tan sólo hay que empujarlo un poco en dirección contraria a donde está conectado y sale sin problemas.

2 - Colocar el HD del PC2 en el PC1.

nota: el disco del Asus tiene alguna dificultad para entrar en el hueco del Acer, debido a unas pestañitas metálicas laterales, pero con un poco de maña se puede conseguir.

3 - Iniciar el PC1 con el CD de instalación de XP e instalar el SO.

- A partir de ahora estamos ya en XP en el PC1 - 

4 - Ir al administrador de dispositivos, desplegar la línea de equipo y veremos un controlador que hay que cambiar para que sea "Advanced configuration and power interface (ACPI)PC". Para ello hay que entrar en las propiedades del controlador, darle a cambiar el controlador y decirle que lo vamos a elegir manualmente. Nos saldrá una lista y elegimos el que he indicado.

5 - Reiniciar (puede que esto lo hiciera automáticamente, no me acuerdo)

6 - Crear una carpeta c:\sysprep

nota: por lo que dice en la guía, esto es importante y hay que asegurarse de que la carpeta se llama exactamente así.

7 - Buscar en el equipo el archivo "deploy.cab"

8 - Abrir el archivo y copiar su contenido en c:\sysprep

nota: lo que se está haciendo es descomprimir el contenido del archivo cab.

9 - Crear una carpeta "drivers" dentro de c:\sysprep

nota: esto es importante porque el sysprep va a incluir ahí archivos que necesita para manejar los controladores una vez que pongamos el HD en el PC1.

10 - Ejecutar setupmgr.exe, el cual está en c:\sysprep ya que lo hemos movido ahí desde el deploy.cab

nota: en este programa hay que seleccionar la opción de Instalar sysprep y que genere un sysprep.inf, que es un fichero que usará sysprep para su setup.
nota2: en mi caso, aunque ponía que había acabado con éxito, el setupmgr.exe se quedó con los botones inactivos, así que tuve que cerrarlo con la X de la esquina de la ventana, e hizo un pitido leve que me dejó un poco frío, pero parece que no era nada malo porque todo ha funcionado, y de hecho había generado bien el sysprep.inf.

11 - Abrir sysprep.inf con el Wordpad y añadirle al final las siguientes líneas, para que el programa incluya luego una sección necesaria para controladores de los HD.

[Sysprep]
BuildMassStorageSection=yes

[SysprepMassStorage]

nota: no olvidarse de guardar el archivo, lógicamente! xD

12 - Ya podemos ejecutar sysprep.exe. En primer lugar aparece una ventana de advertencia que, como siempre que aparecen, nos la pasamos por el...

13 - En el menú de sysprep, marcar la opción de instalación mínima y asegurarse de que el apagado está en la opción Shutdown, para que no se reinicie solo el equipo y vuelva a configurarse en el mismo PC.

14 - Darle al botón de Reseal.

15 - Quedará el sysprep varios minutos con el relojito de arena y luego se apagará el equipo.

nota: ahora es cuando haríamos una imagen del sistema, con programas que podrás encontrar fácilmente en la web y que yo desconozco, ya que no lo he hecho nunca.

- Pasamos al PC2 - 

16 - Llevar el HD al PC2 e iniciar.

17 - Ahora XP pedirá algunos datos típicos de la instalación: nombre de equipo, grupo de trabajo o dominio

18 - Y listo!!! funciona a las mil maravillas. Ahora sólo queda que dejes el PC1 como estaba y que cierres la tapa del HD del PC2.

Para acabar

Decir que con el sysprep.inf se pueden configurar muchas cosas del comportamiento del programa y el proceso de setup, y que mucha gente, empresas, etc. usa el sysprep para crear imágenes de los HD y así tener copias de seguridad del sistema o pasar XP a otros equipos con la configuración deseada.


Por supuesto, esto se puede aplicar a un XP que tengas en un ordenador y quieras usar en otro, sin necesidad de hacer el formateo ni nada, sólo los pasos del sysprep.