Category Archives: Sam

Installing ObsPy on Fedora 18

obspy-logo

ObsPy is an open-source project dedicated to provide a Python framework for processing seismological data. It provides parsers for common file formats, clients to access data centers and seismological signal processing routines which allow the manipulation of seismological time series (see Beyreuther et al. 2010, Megies et al. 2011).

The goal of the ObsPy project is to facilitate rapid application development for seismology.

https://github.com/obspy/obspy/wiki

ObsPy packages are available only for Debian/Ubuntu, however is possible to install it on Fedora via Python Package Index (PyPI). Not all deps are explained on ObsPy wiki pages so here is the complete procedure to install the software on Fedora 18:

First set up all the dependencies via yum

[root@sam ~]# yum install -y python-devel python-setuptools numpy scipy python-matplotlib python-matplotlib python-matplotlib gcc-gfortran python-suds python-sqlalchemy python-lxml

Now you can install ObsPy as explained in theirs wiki (https://github.com/obspy/obspy/wiki/Installation-on-Linux-via-PyPI)

[root@sam ~]# easy_install -U distribute; easy_install -N obspy

To test if the installation was successful use obspy-runtests

[daniele@sam ~]$ obspy-runtests
................................................................................................................................................................................................s.....................................................
[...]
----------------------------------------------------------------------
Ran 839 tests in 65.348s
 
OK

That’s all.

References:

 

 

Re-enable “Log out” in GNOME 3.6

user_menu

 

In GNOME 3.6, with a single user, the option “Log out” in user menu is no more available by default.

To re-enable it open a terminal and type:

gsettings set org.gnome.shell always-show-log-out true

Now restart the Shell by pressing Alt+F2 and typing r<return>

References:

https://wiki.archlinux.org/index.php/GNOME#Always_show_the_.22Log_Out.22_entry_in_the_user_menu

Install Arista Transcoder on Fedora 18

aristaArista Transcoder (http://www.transcoder.org/) is a useful transcoder tool build upon Python and GStreamer. It’s not available in Fedora yum repositories, but the installation from source is quite easy.

Let’s go.

First: download the sources from its website and untar them

[daniele@sam ~]wget http://programmer-art.org/media/releases/arista-transcoder/arista-0.9.7.tar.gz; tar xzvf arista-0.9.7.tar.gz

Second: install the dependencies required to build and install Arista and the extra GStreamer plugins (if not already installed) via yum

[daniele@sam ~]sudo yum -y install python3-devel gstreamer-ffmpeg gstreamer-plugins-good gstreamer-plugins-bad-free gstreamer-plugins-bad-nonfree gstreamer-plugins-ugly

Arista uses HAL which is deprecated since Fedora 15 and removed from Fedora 16, so to run Arista you also need to install python-gudev which uses udev instead of HAL.

[daniele@sam ~]sudo yum -y install python-gudev

Third: build and install the software and remove install sources

[daniele@sam ~]cd arista-0.9.7
[daniele@sam arista-0.9.7]$ python setup.py build
[daniele@sam arista-0.9.7]sudo python setup.py install
[daniele@sam arista-0.9.7]$ cd ~; rm -Rf arista-0.9.7

Fourth: run Arista from command line or from your application menu!

[daniele@sam ~]$ arista-gtk

arista-fedora18

Done!

Fixing font in Chromium on Fedora

Font auto-hinting is disabled by default in Chromium on Fedora, so font rendering is quite ugly.

To enable fonts auto-hinting just create file 10-chromium.conf in /etc/fonts/conf.d/ with this xml:

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
        <match target="font">
                <edit mode="assign" name="hinting">
                        <bool>true</bool>
                </edit>
        </match>
        <match target="font">
                <edit mode="assign" name="antialias">
                        <bool>true</bool>
                </edit>
        </match>
        <match target="font">
                <edit mode="assign" name="autohint">
                        <bool>true</bool>
                </edit>
        </match>
</fontconfig>

and then restart Chromium.

Riferences:

http://code.google.com/p/chromium/issues/detail?id=47865

Gnome 3: gli stumenti indispensabili

Il 6 aprile 2011 è (finalmente?) uscito Gnome 3: l’idea di desktop è stata in buona parte rivoluzionata; devo dire che tuttavia sul netbook non è così male la nuova impostazione.

La prima impressione che ho avuto con Gnome 3 è stata l’impossibilità di accedere a molte impostazioni per personalizzare almeno un poco il comportamento del desktop: infatti il pannello di controllo, almeno attualmente, molto limitante nella configurazione.

Tuttavia esistono due tool, a mio dire indispensabili, che permetto di aggirare parzialmente questo limite.
Essi sono:

gnome-tweak-tool


E’ una gui molto semplice per abilitare e/o modificare alcuni comportamenti e caratteristiche di base.

dconf-editor

Sostituisce il vecchio gconf-editor e permette una gestione più completa e raffinata delle impostazioni.

Per installarli, su Fedora 15 (beta), è sufficiente usare yum

yum install -y dconf-editor gnome-tweak-tool

Personalmente ho fatto le seguenti modifiche

  • Attivata la data a fianco dell’orologio
  • Attivato il pulsante di minimizzazione delle finestre
  • Attivato il pulsante “power-off” nel menu utente (tramite il pacchetto gnome-shell-extensions-alternative-status-menu)

 

Lettore SD HP Mini 110

L’HP Mini 110-3100 monta un lettore di schede SD costruito da Realtek. Esso viene visto in linux come

01:00.1 Class ff00: Realtek Semiconductor Co., Ltd. Device 5288 (rev 01)

tuttavia allo stato attuale non è ancora disponibile, all’interno del kernel Linux, il driver che ne possa garantire il funzionamento.
Realtek fornisce sul proprio sito i sorgenti (GPL) per poter compilare il modulo e utilizzare così il reader. Tali driver sono in stato di “staging” per l’inclusione (essendo appunto GPL) direttamente upstream nel kernel ufficiale. L’inclusione è in corso e non è immediata, gli sviluppatori stanno integrando il codice del modulo riscrivendone alcune parti; infatti il driver Realtek, pur funzionando alla perfezione, è molto esoso di interrupt, causando tra le altre un uso di energia superiore: la cosa, non trascurabile su di un net/notebook è facilmente evidenziabile grazie all’ottimo tool Intel powertop.

Per compilare il modulo è necessario scaricare i sorgenti dal sito Realtek (sono 77kb) e disporre di gcc, degli header e dei sorgenti del kernel; con Fedora è sufficiente eseguire

yum install -y gcc kernel-headers kernel-devel

quindi scompattare il tar bz2

tar xjvf rts_pstor.tar.bz2

ed infine compilare ed installare il modulo

cd rts_pstor
make
make install
depmod

Al successivo riavvio il modulo sarà caricato automaticamente e il lettore SD funzionerà senza problemi.
Se si volesse disattivare il caricamento automatico è sufficiente creare il file /etc/modprobe.d/blacklist-rts.conf inserendo la riga

blacklist rts_pstor

In questo modo, qualora si volesse utilizzare il lettore, si dovrà prima eseguire da terminale il comando

modprobe rts_pstor

Firefox 4 su Fedora 14

Per installare Firefox 4 su Fedora 14 utilizzando i pacchetti RPM è sufficiente aggiungere il seguente repository:

[fedora-firefox4]
name=Firefox 4 Web Browser
baseurl=http://repos.fedorapeople.org/repos/spot/firefox4/fedora-$releasever/$basearch/
enabled=1
gpgcheck=0

salvandolo in un file .repo in /etc/yum.repos.d/ (es. fedora-firefox4.repo).

A questo punto sarà sufficiente un

yum install firefox4

L’installazione avverrà parallelamente a Firefox 3. Per rimuove Firefox 3.6 eseguire il comando

yum erase --remove-leaves firefox

Il flag –remove-leaves funziona solo se si ha installato il plugin per yum remove-with-leaves che consiglio:

yum install yum-plugin-remove-with-leaves

Yum plugin to remove dependencies which are no longer used because of a removal

SSH SOCKS forwarding

A volte può capitare la necessità di effettuare tunneling verso un altra rete, vuoi per la necessità di accedere alla rete stessa, vuoi per poter fare da ponte e utilizzare un altro gateway verso il web.

Il primo caso può essere utile ad esempio per accedere a un host in una rete locale non raggiungibile attraverso il NAT, che è quello che a me spesso capita.

Le soluzioni più eleganti e raffinate prevedono l’utilizzo di VPN, ma c’è una soluzione ancora più semplice. Avendo una macchina all’interno della rete a cui ci si vuole collegare ed avendo installato SSH raggiungibile dall’esterno è possibile utilizzare il tunneling (criptato) tramite il forwarding SOCKS5 con un semplice comando:

ssh -C2qTnN -D 8080 username@remotehost

Questo comando va eseguito sulla macchina locale (deve anche qui essere installato SSH). Per Windows è possibile utilizzare putty. Esso creerà una connessione SSH verso remotehost senza shell e rimarrà in ascolto sulla porta locale 8080. Si presume che la porta remota sia la 22, se così non fosse è possibile specificare con il flag -p la porta di SSH sull’host remoto.

E’ possibile attivare il farwarding e una shell remota contemporaneamente; per farlo vanno tolti i flag -T -n e -N.

Ora che il tunnel è creato è possibile attivare l’accesso ad esso: per i browser è sufficiente andare nella configurazione proxy ed attivare il proxy attraverso SOCKS5: i parametri saranno localhost come host e 8080 la porta (o quella definita dal parametro -D). Inserendo un indirizzo della rete locale a cui si è connessi in tunnel sarà possibile accedere ad esso.

Per le applicazioni che non supportano SOCKS, o per cui non esiste una gui apposita di configurazione, esiste in Linux un comodissimo wrapper: tsocks.

Per prima cosa bisogna provvedere ad installarlo: su Fedora è sufficiente un

yum install tsocks

per poi creare il file di configurazione /etc/tsocks.conf così impostato

server = localhost
server_port = 8080
server_type = 5
local = 127.0.0.0/255.0.0.0

infine per l’utilizzo sarà sufficiente dare da shell il comando

tsocks applicazione

(è possibile anche creare una nuova shell con attivo di default il wrapper eseguendo il solo comando tsocks).
Per verificare se è attivo il wrapping delle connessioni il comando

export | grep tsocks

deve restituire

declare -x LD_PRELOAD="libtsocks.so"

Per terminare il forwarding sarà sufficiente chiudere il processo ssh (con ctrl-c nel caso non sia stato allocato un tty).

Riferimenti

  • man ssh
  • man tsocks