giovedì 28 giugno 2012

Elenco di tutti i pacchetti installati da AUR

Se ti interessa un elenco di tutti i pacchetti "non ufficiali" installati da AUR, allora puoi utilizzare il comando pacman -Qm. Se utilizzi Yaourt allora in alternativa puoi utilizzare anche il comando yaourt -Qm che ti darà un output più colorato.

Vedere la coda di stampa su XFCE

XFCE non ha di default una GUI per permettere all'utente di interagire con la coda di stampa.

Per colmare questo vuoto puoi installare il pacchetto disponibile anche su Gnome: system-config-printer-gnome. La versione per Arch Linux si trova nei repo ufficiali. Questa è la pagina del pacchetto.

mercoledì 27 giugno 2012

Recuperare latitudine e longitudine da un indirizzo

Capita spesso di dover convertire la stringa dell'indirizzo dell'utente in latitudine e longitudine terrestri. Per fare ciò è possibile utilizzare le Google Geocoding API impacchettate e già pronte in questa classe da me realizzata.

<?php

/**
 * GooglePlaceRequest uses Google Geocoding API to retrieve information
 * about an address.
 *
 * @author Egidio Caprino
 * @see https://developers.google.com/maps/documentation/geocoding/
 */
class GooglePlaceRequest
{
    /**
     * HTTP request to Google Geocoding API address.
     *
     * @var Zend_Http_Client
     */
    protected $response = null;
 
    /**
     * Constructor method. Will execute the request for the given address.
     *
     * @param string $address
     * @throws Zend_Http_Client_Exception
     */
    function __construct($address)
    {
        $uri = 'https://maps.googleapis.com/maps/api/geocode/json';
     
        $client = new Zend_Http_Client($uri);
        $client->setParameterGet('address', urlencode($address));
        $client->setParameterGet('language', 'en');
        $client->setParameterGet('sensor', 'false');
     
        $response = $client->request(Zend_Http_Client::GET)->getBody();
        $response = Zend_Json_Decoder::decode($response);
     
        if (strcmp($response['status'], 'OK') !== 0) {
            throw new Zend_Http_Client_Exception('Invalid status: "' .
                $response['status'] . '".');
        }
     
        $this->response = $response;
    }
 
    /**
     * Return the formatted address in english language.
     *
     * @return string
     */
    public function getFormattedAddress()
    {
        return $this->response['results'][0]['formatted_address'];
    }
 
    /**
     * Return the latitude of the place.
     *
     * @return int
     */
    public function getLatitude()
    {
        return $this->response['results'][0]['geometry']['location']['lat'];
    }
 
    /**
     * Return the longitude of the place.
     *
     * @return int
     */
    public function getLongitude()
    {
        return $this->response['results'][0]['geometry']['location']['lng'];
    }
}

mercoledì 20 giugno 2012

Sconcertante

Leonard Kleinrock è l'uomo che ha realizzato i principi della commutazione a pacchetto, la tecnologia alla base di Internet. Sentite un po' cosa dice in un'intervista quando gli chiedono cosa vedesse nel futuro delle reti:

[...] Guardando un po' più avanti, vedo un futuro che include i seguenti componenti chiave aggiuntivi. Vedo agenti software intelligenti rilasciati nella rete la cui funzione è scavare nei dati, agire su di essi, osservare tendenze ed effettuare compiti in modo dinamico e adattivo. Vedo molto più traffico in rete generato non tanto dagli uomini ma dai dispositivi integrati e dagli agenti software descritti. Vedo grandi insiemi di sistemi che si auto-organizzano e che controllano questa rete vasta e veloce. Vedo grandi quantità di informazione che si diffondono istantaneamente in questa rete e che vengono sottoposti a enormi elaborazioni e filtraggi. Internet diventerà fondamentalmente un sistema nervoso globale pervasivo. Vedo tutte queste cose e anche di più, mentre ci buttiamo a capofitto nel ventunesimo secolo.

Sconcertante. Leggendo quello che dice mi è venuto in mente lo scenario del film Matrix.

lunedì 11 giugno 2012

Leggere la partizione Linux da Windows

Linux è di default in grado di leggere le partizioni FAT32 e NTFS di Windows, mentre purtroppo non accade il contrario.

Per leggere le partizioni EXT (e altre) da Windows puoi usare questo programma, completamente gratuito.

domenica 3 giugno 2012

Problemi ad avviare Chrome dopo l'ultimo aggiornamento

Ho avuto dei problemi ad avviare Google Chrome dopo l'ultimo aggiornamento del pacchetto su AUR. Per la precisione, l'errore che ho riscontrato era il seguente.

error while loading shared libraries: libudev.so.0: cannot open shared object file: No such file or directory


In pratica è saltato un collegamento con una libreria richiesta dall'eseguibile. Ho risolto creando un link simbolico in questo modo:

sudo ln -sf /usr/lib/libudev.so.1.0.1 /usr/lib/libudev.so.0