jump to navigation

DesktopBSD 10 Aprile 2008

Posted by giovanniceribella in BSD, Informatica, Yoyo.
1 comment so far

DesktopBSD Logo

Il Logo di DesktopBSD

Sono incappato in DesktopBSD (www.desktopbsd.net) per sbaglio dalla pagina di Wikipedia su FreeBSD. Così, quando un po’ di tempo fa ho deciso di reinstallare il diavoletto sul mio computer, ho pensato senza indugi a questa “distribuzione FreeBSD”.

DesktopBSD è un sistema operativo completo, che consiste in FreeBSD con sopra delle applicazioni già bell’ e pronte, come Xorg 7.3, l’ultimo KDE3, VLC (riproduttore video, capace di leggere praticamente tutti i formati), FFMPEG (per convertire video e audio da linea di comando), Amarok, Firefox  e Thunderbird 2 e molti altri. Sono riuscito a far funzionare anche Flash (purtroppo solo parzialmente), che su FreeBSD è una vera impresa.

L’installazione dei programmi avviene tramite le due solite vie di FreeBSD: i packages e i ports. Ma, in più, gli sviluppatori di DesktopBSD hanno creato un’ applicazione specifica attraverso la quale è possibile installare i programmi in maniera grafica, senza preoccuparsi di usare ports o packages: si può infatti selezionare l’opzione attravarso la quale il software installa sempre la versione più recente, sia essa nei packages o nei ports.

Installatore

Selezionando il secondo pulsante radio, il package manager installerà sempre la versione più recente dei pacchetti, prelevandoli in automatico dai ports o dai packages.

 

Dunque, se aveste voglia di provare un sistema BSD, vi consiglio di usare DesktopBSD: non vi deluderà e vi risparmierete un bel po’ di bile… :-P

FreeBSD (4): Portfind 7 Novembre 2007

Posted by giovanniceribella in BSD, Informatica.
add a comment

FreeBSD Logo Python Logo

Come citavo nel mio precedente post, ci sono due metodi per trovare un port su FreeBSD: il primo é utilizzare l’utility unix “whereis”:

%whereis celestia
celesia: /usr/ports/astro/celestia
%

Whereis viene utilizzato anche per trovare il percorso di un comando, ad esempio “whereis chmod” risponderà “chmod: /bin, /sbin, /usr/bin, /usr/sbin”. La seconda maniera é quella di usare “make search” nella directory dei ports:

%cd /usr/ports
%make search name=celestia display=name,path,info
Port: celestia-glut-1.4.1_1
Path: /usr/ports/astro/celestia
Info: Scriptable space flight simulator for X
%

Il secondo metodo conviene rispetto al primo, in quanto dà più informazioni e trova più elementi. Ma, come vi sarete accorti, la sua dicitura é lunghetta. In effetti, il “display=name,path,info” serve a non far stampare al comando anche tutte le dipendenze del port. Ecco il risultato senza specificazione:

%cd /usr/ports
%make search name=celestia
Port: celestia-glut-1.4.1_1
Path: /usr/ports/astro/celestia
Info: Scriptable space flight simulator for X
Maint: jylefort@FreeBSD.org
B-deps: expat-2.0.0_1 fontconfig-2.3.2_6,1 freetype2-2.2.1_1 gettext-0.14.5_2 gmake-3.81_1 jpeg-6b_4 libdrm-2.0.2 libglut-6.4.2 libiconv-1.9.2_2 libtool-1.5.22_2 pkg-config-0.21 png-1.2.12_1 xorg-libraries-6.9.0
R-deps: expat-2.0.0_1 fontconfig-2.3.2_6,1 freetype2-2.2.1_1 gettext-0.14.5_2 jpeg-6b_4 libdrm-2.0.2 libglut-6.4.2 libiconv-1.9.2_2 pkg-config-0.21 png-1.2.12_1 xorg-libraries-6.9.0
WWW: http://www.shatters.net/celestia/
%

Piuttosto dispersivo, non trovate? Tuttavia scrivere ogni volta un papiro di comando non mi piace. Così, ho pensato di scrivere uno script python che automatizza la cosa: l’ho chiamato portfind. La sintassi é semplicissima: “portfind nomeport” cerca nei ports uno che contenga nel nome “nomeport” . In più, a differenza di make search, potete eseguire portfind in ogni cartella del vostro sistema: lui si prenderà cura di memorizzarla e di riportarsi lì, una volta finita la ricerca.

Ho inserito anche un’opzione “-k” che invece di cercare tra i nomi, cerca tra le keywords; esempi di utilizzo:

%echo $PWD
/home/giovanni/Desktop
%portfind celestia
Port: celestia-glut-1.4.1_1
Path: /usr/ports/astro/celestia
Info: Scriptable space flight simulator for X
%echo $PWD
/home/giovanni/Desktop
%

Qui, “echo $PWD” ci dice in che cartella siamo, e come potete notare, portfind, dopo essersi spostato in /usr/ports per cercare il port, ci riporta indietro in /home/giovanni/Desktop. Ovviamente, se avete installato i port in un percorso differente da /usr/ports dovrete modificare lo script. Vediamo un altro esempio:

%portfind goodies
%

In questo caso portfind non ha trovato niente che avesse nel nome “goodies”; proviamo, invece, a cercare nelle keywords:

%portfind -k goodies
Port: xfce4-netload-plugin-0.3.2_2
Path: /usr/ports/sysutils/xfce4-netload-plugin
Info: Network Load plugin for XFce4
 
Port: xfce4-systemload-plugin-0.3.4_6
Path: /usr/ports/sysutils/xfce4-systemload-plugin
Info: System Load plugin for XFce4
 
… (molti altri)
 
%

Specificando “-k”, portfind trova tutto ciò che cercavamo. L’opzione “-k” può essere messa sia prima che dopo il nome: il risultato non cambia.

Che mi resta da dirvi? Scaricate subito il mio portfind! Scarica. Una volta decompresso l’archivio, copiate il file in una path valida per l’esecuzione (ad esempio /usr/local/bin o ~/bin). Lo script é scritto in python, quindi dovete aver installato l’interprete python: il port è in /usr/ports/lang/python… ma potete trovarlo anche con portfind!

FreeBSD (3) 28 Settembre 2007

Posted by giovanniceribella in BSD.
2 comments

FreeBSD Logo

 

Come promesso, continuiamo con l’esplorazione di FreeBSD da parte di un profano come me.

Oggi vi parlerò più in particolare dei ports, come mi è stato suggerito anche da Lobotomia. Colgo l’occasione per dire che, se qualcuno trovasse qualcosa di impreciso o volesse aggiungere qualcosa, non esiti a mandarmi un commento: sono ancora agli inizi e è probabile che non conosca qualcosa.

Dicevamo, i ports. Innanzitutto, cosa sono? FreeBSD mette a disposizione un grande archivio che contiene tutte le informazioni per lo scaricamento, compilazione e installazione di software, e questa è la collezione dei ports. È un po’ come portage di Gentoo, ma, a differenza di quest’ultimo, i ports prelevano il software direttamente dal sito del progetto. Un esempio banale: ho installato tramite ports bash, la shell predefinita dei sistemi GNU, ma non di FreeBSD. Lo scaricamento è avvenuto direttamente da ftp://ftp.gnu.org/gnu/bash, senza intermediari. Il meccanismo ha del mirabile, come facciano a tener traccia di tutti i cambiamenti resta un mistero. L’albero dei ports è costantemente aggiornato, anche se qualche software, forse anche per problemi di compatibilità, resta un po’ indietro. È l’esempio di firefox, che nei package (la versione precompilata dei ports) è presente stabilmente con la vecchia versione 1.5 (c’è da dire che però funziona egregiamente) o di Xfce, alla versione 4.2 . Una volta scaricato l’archivio, vengono eseguite delle operazioni di verifica, per essere sicuri dell’integrità dell’archivio, e sono applicate delle patch specifiche. Il port si cura anche di cercare le dipendenze del software, scaricandole e compilandole. Una volta installate tutte le dipendenze di compilazione, il software viene compilato e installato. Finito, viene eseguito un altro controllo per verificare la presenza di tutte le dipendenze di esecuzione: se ne mancasse qualcuna, il software pur essendo compilato correttamente, non funzionerebbe.

Tutto questo in via assolutamente automatica. Diamo ora un’ occhiata all’esecuzione:

Il funzionamento dei ports è organizzato dal famoso programma make, che ha un suo linguaggio, il makefile, ustato nei ports per fare tutte le operazioni citate sopra. Qui un esempio di installazione: installeremo il simulatore Celestia:


localhost# cd /usr/ports
localhost# make search name=celestia display=name,path

name = celestia
path = /usr/ports/astro/celestia

localhost# cd astro/celestia
localhost# make install clean

Per prima cosa ci spostiamo nella directory dei ports, /usr/ports; ecco che utilizziamo per la prima volta make: l’opzione search dice a make che vogliamo cercare un software, il parametro name specifica il nome di tale software e con display diciamo a make che vogliamo che ci mostri solo il nome e la path del port. Trovato il port (nell’esempio si trova in /usr/ports/astro/celestia) ci spostiamo nella sua cartella, diamo un bel make install clean e così parte lo scaricamento. Facile, vero?

I ports sono sicuramente un ottimo sistema per installare software, ma considerando la variabilità degli stessi, qualche volta possono non funzionare alla perfezione. In tal caso, basta provare ad usare i package, e riferire tramite un bug report del problema. Buon portaggio!

FreeBSD (2) 16 Settembre 2007

Posted by giovanniceribella in BSD, Informatica.
4 comments

FreeBSD

 

Salve e scusate per la mia lunga assenza. La motivazione di tale vacuum è la mia ripresa scolastica. Oserei azzardare che il triennio si fa sentire.

Se ricordate, avevo accennato al fatto che Gentoo/FreeBSD non andava molto bene; in particolare, al momento di installare software portage aveva qualche problema.

Nel mio modo di pensare, se non uso qualcosa per un po’, significa che non serve. Il risultato è stato che ho cancellato Gentoo/FreeBSD dal disco. Ma ciò non significa che non avessi perso la voglia di provare FreeBSD…

(more…)

Monaco 30 Agosto 2007

Posted by giovanniceribella in BSD, Gentoo, Humor, Informatica, Yoyo.
1 comment so far

Se vuoi saltare direttamente alla parte informatica di questo post, salta al punto tre.

Eccomi di nuovo, dopo un viaggetto alla solita Monaco: ormai conosco a memoria il percorso che bisogna fare per andare dall’ufficio dei brevetti a Marienplatz…

Marienplatz

Si va a destra. Poi si prende la destra e subito la prima a sinistra. Si va dritti, si fa qualche giretto e poi dritti, dritti, sinistra, dritti, dritti. Altrimenti, si prende la U-Bahn.

Sono stato piacevolmente sorpreso di constatare che, comunque, le visite al sito non sono calate di molto, in media si sono mantenute sugli 80. Vi aggiorno un po’ sulla situazione attuale e chiedo qualche delucidazioni:

  1. Devo, in 10 giorni, finire tutta la lezione estiva. Quindi non avrò molto tempo da dedicare al sito. Tra le argomentazioni restanti: latino, equazioni di secondo grado parametriche, dracula, galli parlanti (così avete anche uno squarcio di cos’è la scuola oggi).
  2. Mi sono deciso a comprare un nuovo veicolum semovente : ho deciso che la vespa nera andava bene e così ho preso una vespa nera.

    Vespa

    O, per meglio dire, l’ho ordinata.

  3. Bestie

  4. Ho installato Gentoo|FreeBSD in maniera corretta ed ora godo di una invidiabile posizione di double-boot Linux-mio/Linux-di-ubuntu/FreeBSD. La rete funziona a meraviglia e me la cavo abbastanza bene anche senza Xserver. Purtroppo c’è un fastidioso problema che mi impedisce di compilare GCC… l’errore riportato è emake failed with profiledbootstrap e il log dice di postare un bug sul sito! :o Mentre vedo come risolvere l’inconveniente, se qualcuno dei lettori ha un consiglio, lo dia pure! Purtroppo finchè non risolvo mi tocca usare metà sistema compilato da me e metà nell’originale dell’installazione… penso il problema sia risolvibile ma non ho idea della maniera che può essere utilizzata per fare ciò. Sono molto soddisfatto di FreeBSD, l’unica cosa che non digerisce è il comando halt, al quale manda in reboot la macchina. La velocità è buona ed è anche facile da usare. Si profila un futuro roseo nel quale i diavoli e i pinguini condividono spazio vitale sul PC..
  5. La massima distanza che abbia mai compiuto da casa in bici è aumentata di botto quando, domenica, sono andato a poleo in bicicletta a trovare mia cugina e Rafiq. Il risultato sul mio fisico è trascurabile, mentre il risultato sulla bicicletta no: catena che cade ogni 7 minuti, cambio scambiato e altri simpatici gadgets quali la sella che, completamente inchiodata, può comunque compire un giro di π radianti lungo il suo asse…

Non mi pare ci sia altro, ma naturalmente se mi viene in mente qualcosa poi lo aggiungo. Ciao!