RSS

Prove su Ubuntu 12.04 Alpha 2

Su distrowatch ho letto la notizia sull’uscita della versione Alpha 2 dell’ultima versione della Ubuntu 12.04 e ho voluto provarla, ho scaricato la versione DVD live da qui.

Sono curioso di provare i software che saranno inclusi nella futura versione Long Term, questa versione infatti sarà mantenuta aggiornamenti fino al 2014, e avrà supporto fino al 2017 http://www.ubuntu-it.org/progetto/rilasci, questi rilasci sono stati concepiti per il settore professionale dove si investe in hardware a lungo termine, questo perchè certi sistemi operativi commerciali (windows) diventano sempre più esosi di risorse, memoria ram, e potenza di calcolo, le aziende che opteranno per questo sistema operativo basato su linux per 5 anni potranno tranquillamente utilizzare i propri pc senza avere altre spese per upgradarli.

Per testarlo ho utilizzato un software per la creazione di dischi d’avvio, inserendo la distribuzione in una chiavetta Usb e riservando un Giga per poter salvare i test che effettuerò, dopo una quindicina di minuti ecco pronta la chiavetta per mi servirà per effettuare i test.

est.

Ubuntu 12.04 avrà di defoult Unity un Desktop Evoirement creato ad ok per questa distribuzione Linux.

 Per quanto riguarda i programmi per l’ufficio è stato scento Libreoffice 3.5.

 Per la navigazione su Internet è stato scelto Firefox e per la posta elettronica Thinderbird.

Gli altri programmi sono accessibili dalla Dash di Unity (il primo pulsante alla destra del vostro desktop).

Per visualizzare le foto Shotwell.

Per ascoltare i vostri file musicali mp3 o internet radio è stato scelto Rhythmbox che si integra eggregiamente con Unity.

Negli accessori potete trovare un programma per il Backup Déjà Dup e per la creazione di cd/dvd dati o cd musicali o cd/dvd video Brasero.

Per fare grafica potete trovare Inkscape un programma per grafica vettoriale e The Gimp per fotoritocco e grafica 2D.

Altri programmi utili per usare al meglio Internet è un client di chat Empathy e un client per i più blasonati social network (come twitter o facebook) Gwibber.

Per quanto riguarda la multimedialità troverete un editor di filmati Pitivi e un riprodutore multimediale Totem.

Per sviluppare software trovate Emacs.

Se non vi bastano i pachetti software inclusi nel DVD d’installazione potete cercare e scaricare molti software utili dai repository ufficiali, li potete ricercare nell’Ubuntu Software Center.

 
2 commenti

Pubblicato da su febbraio 3, 2012 in Linux, Ubuntu

 

Instalazzione Ubuntu 11.10, Gnome 3.2 e altri progammi Utili

Posto la presentazione che ho illustrato al Linux Day a Este il 22/10/2011.

 

 
Lascia un commento

Pubblicato da su ottobre 23, 2011 in Gnome, Linux, Ubuntu

 

Tag: , ,

In preparazione al Linux Day 2011 a Este considerazioni personali su come espandere l’uso di Linux.

Quest’anno parteciperò al Linux Day a Este, (PD), dopo un po’ di anni di assenza, presenterò una semplice installazione di Ubuntu, la distribuzione Linux più gettonata del momento, con grosse novità, semplice da installare e da usare, molto completa, di default dopo installato l’utente può navigare in internet usare la posta elettronica usare i social network, guardare foto, ascoltare musica, scrivere documenti, creare e usare fogli elettronici, database e presentazioni, il tutto senza dover installare software aggiuntivo, e senza preoccuparsi di virus o trojan.

Per fare dei test ho utilizzato un vecchio P4 e devo dire che l’installazione è andata a buon fine e il PC sembra rispondere bene, se pensate alle specifiche tecniche, di altri sistemi operativi proprietari, è un buon risparmio economico.

Resto comunque dell’idea che il mondo del Desktop per Linux resti una nicchia, e che molti utilizzatori finali non installeranno mai una distribuzione Linux, in quanto gioco forte hanno già il PC con il sistema operativo già pronto, anche se già si vedono timidi cambiamenti a riguardo con Netbook con Windows e Android preinstallati.

I pro per utilizzare Linux sono molteplici e quelli che vedo io sono:

  • Economico: molte distribuzioni una volta istallate hanno programmi preinstallati, che ci permettono di ascoltare musica, vedere e archiviare foto, visualizza video, navigare su internet utilizzare la posta elettronica, creare e visualizzare Documenti, utilizzare i propri social network, chattare, archiviare i dati su CD e DVD,e molti altri software liberi possono essere scaricati e utilizzati per produrre immagini, video, grafica 3D, musica, il tutto gratuitamente.
  • Sicurezza: Linux risulta essere immune a virus e trojan che infestano la rete, non necessita acquistare o installare prodotti mirati come antivirus firewall.
  • Privacy: Linux essendo un sistema open source, (chi scrive i programmi rende la sorgente disponibile a tutti) non ha back door o meccanismi segreti che possono essere utilizzati per controllare gli utenti e i dati presenti nel suo pc.

Pertanto è vero che merito della Microsoft, che ha reso l’uso del pc, alla portata di tutti, ma è anche vero che è merito dell’Open Source, che lo ha reso libero e gratuito, ma questo non basta, perché non vi sono pc con linux preinstallato, anche se, alcuni produttori di PC tempo fa vendevano PC con linux preinstallato, poi Microsoft poi disse la sua, dicendo che molti di questi poi usavano copie piratate di Windows.

Con vista ho visto l’interesse crescere verso Linux e Ubuntu, per la pesantezza del sistema operativo, e per le novità non apprezzate in ambiente desktop, con l’avvento di Seven l’interesse resta, ma resta confinato in una cerchia più o meno ristretta.

Che dire, il Linux Day serve per divulgare questo sistema operativo, ma i nostri mezzi restano limitati, in quanto gli molti utenti credo non affronteranno mai un altro sistema operativo nel PC, le motivazioni sono molteplici, non solo la pigrizia e secondo me sono:

  • Bisogna partizionare l’HD (con il rischio irrisorio di perdere tutti i dati dentro il PC)
  • Porta via tempo libero che potrebbe essere utilizzato per altro
  • La procedura d’istallazione pur essendo ormai molto semplificata non viene capita da chi non conosce bene i PC
  • I benefit risparmio economico sicurezza informatica etica, non bastano perché tanto l’utente ha già tutti i mezzi a sua disposizione con l’acquisto del PC
  • Molti software commerciali non hanno la versione per Linux possono e alcuni di questi non girano su wine.

Quando incominciai io a utilizzare Linux il problema più grosso era la mancanza di driver, ormai questo problema quasi non sussiste più, ma Linux ancora resta un sistema di nicchia.

Quindi mi chiedo perché alcuni produttori o rivenditori di PC non vendono i propri PC con due sistemi operativi, Windows e Linux, a livello economico credo non impatti molto, vi sono mezzi di ridurre i tempi d’istallazione a pochi minuti.

C’è anche da dire che in poco tempo molto è stato fatto, ma credo che il passo successivo, è che le case protutrici di PC, si accorgano di Linux e dei benefici che può dare agli utenti forse un piccolo passo potrebbe essere, regalare nella confezione del PC una chiavetta USB, con una distribuzione linux installata già usabile forse la curiosità degli utenti potrebbe già bastare.

Ne deve passare molta di acqua sotto i ponti perché sia un valore aggiunto la vendita di PC con Linux, ma potrebbe venire apprezzata dai clienti, anche solo come omaggio, magari questo lo vedo più fattibile a livello locale, dove singoli negozi di PC effettuano questa operazione a titolo di promozione, il costo di una chiavetta USB è veramente irrisorio e i vantaggi sono:

  • Pubblicitari:  la chiavetta USB può essere facilmente marchiata con logo e dati del negoziate
  • Commerciale: resta pur sempre un omaggio i restanti GB possono essere utilizzati per altri scopi dal cliente
  • Fidelizzazione del cliente: aggiornamenti ai software possono essere fatti insieme al negoziante e questo potrebbe portare la vendita di altri prodotti presenti nel negozio.

Concludendo, credo che merito della diffusione di Windows sia la vendita di pc già pronti all’uso, e poco noi utenti o utilizzatori di Linux possiamo fare per tutto questo, solo spendere il nostro tempo libero per divulgare Linux, a mo di volontariato, il che non mi pesa anzi mi piace, ma credo che non basti per modificare l’equilibrio.

Molti buoni programmatori, bravi traduttori, molta gente disposta a scrivere buone guide e articoli, ma pochissimi addetti al Marketing, ecco cosa per me manca a Linux.

 
1 Commento

Pubblicato da su ottobre 21, 2011 in Linux, Ubuntu

 

Tag: , ,

Instalazione pachetti aggiuntivi Xubuntu

Durante questo week end ho aggiornato I miei pc alle ultime versioni di Ubuntu, la 11.10.

Il pc fisso è destinato ad archiviare dati e documenti, filmati, audio e foto, generalmente viene usato mixare un po’ di musica o creare file multi-mediali, quindi l’aspetto grafico passa in secondo piano, essendo datato, ma ancora buono per eseguire i compiti assegnati, ho optato per un Desktop Envoirement, leggero e veloce e stabile come XFCE.

Dopo aver scaricato l’ultima ISO di Xubuntu 11.10, ho provveduto ad installare la distribuzione nel pc, la procedura è la stessa della Ubuntu, (qui trovate una buona guida in inglese) poi ho installato i seguenti programmi dal Ubuntu Software Center

Libreoffice: La famosa e sempre utile suite per gli uffici, per gestire documenti di testo, fogli elettronici, presentazioni e database.

Audacity: un programma per registrare e manipolare file audio, con presenti molti effetti e filtri.

Dvdstyler: un programma che mi permette di creare DVD con menu.

Blender: un programma molto potente per creazione grafica 3D.

Tomboy: un programma che gestisce e crea note, molto utile in caso di tenere delle note, con possibilità di lincare le note tra di loro.

Skype: un programma che permette di chattare e telefonare (non Open Source).

Imagination: un programma che crea presentazioni multi-mediali partendo da foto o immagini con molti effetti per la transizione e con la possibilità di inserire audio.

PiTiVi Video Editor: un editor video.

Thoggen: DVD ripper.

Vlc: un lettore multi-mediale molto potente.

Avant-window-navigator: per aggiungere una barra per lanciare i programmi, allo stile di Mac Os, con la possibilità di aggiungere applet molto utili.

Mixxx: un programma per Mixare file audio e trasmettere in streaming.

Inkskape editor di Grafica Vettoriale, che mira ad essere fedele allo standard SVG, open source, reattivo ed estendibil

Filezilla: un client ftp

Banshee: Lettore MP3 e file audio

Tux Commander: file manager

Ho installato altri programmi scaricandoli dal web

Frostwire: Un client Torrents e Gnutella (da scaricare dal loro sito)

RealPlayer: lettore multimediale (non Open Source)

Picassa: Organizzare, editare, creare collage e condividere le foto (non Open Source)

Secondlife: client per il metamondo

Google Chome: Web browser di casa google

 
Lascia un commento

Pubblicato da su ottobre 17, 2011 in Ubuntu

 

Gnome 3.2 su Ubuntu 11.10

Avete installato e aggiornato la vostra Ubuntu, e sorpresa Unity è diventato il D.E. ufficiale di Ubuntu 11.10.

Per chi non si trovasse o a chi non piacesse basta andare sull’Ubuntu Software Center.

Digitare “Gnome-shell” sulla casellina con lente d’ingrandimento e pigiare Installa

Ed ecco come appare Ubuntu 11.10 con Gnome 3.2 devo dire FINALMENTE ARRIVATO

A questo punto per avere Gnome quando si loga piguate sulla rotellina dentata e selezionate Gnome.

Ciao e alla Prox.

 
Lascia un commento

Pubblicato da su ottobre 15, 2011 in Gnome, Ubuntu

 

Trojan spione in Germania

Un’amico ha postato questo articolo sulla mail list Blah mailing list

In pratica il Chaos Computer Club ha scovato un Trojan che a quanto sembrerebbe poteva registrare le informazioni digitate nella tastiera su applicazioni tipo Firefox Skype Windows Live Messager e ICQ e sembrerebbe che potesse catturare screeshot e registrare audio e catturare immagini tramite la web cam.

Da fonti ufficiali il Trojan è stato prodotto da un’azienda Asiatica per il governo tedesco, per la lotta contro il terrorismo e evasione fiscale.

Quello che mi chiedo è se l’episodio è circoscritto solo nello stato tedesco o se anche in Italia dobbiamo preoccuparci, ritengo altamente ingiusto che un programma possa fare questo a mia insaputa, accidenti dovrò stare attento quando sto davanti al pc e tenere come minimo un comportamento decoroso, (niente più canottiera e boxer davanti al pc).

A parte i scherzi, lo san tutti che siamo monitorati da enti più o meno governativi, ma questo mi sembra eccessivo, usare il mio pc a mia insaputa, e tutto per cosa, per vivere in un paese protetto dal terrorismo e dall’evasione fiscale?

Credo che in tutto questo si sta esagerando qui non si parla più di navigazione in internet o se A comunica a B di voler fare X, qui si parla di spionaggio vero e proprio, se si lascia passare questo modus operandi, quanta libertà dobbiamo cedere per poter vivere in un mondo migliore, è veramente un mezzo che possa combattere terrorismo e evasione fiscale, o è solo un mezzo per tener monitorato il popolo?

Non mi stupirei che tutto questo potesse capitare in Italia, e mi chiedo ma dove si ferma il controllo, come fanno a decidere se una persona può essere un possibile terrorista o possibile evasore fiscale, e chi mi dice che il materiale raccolto in questo metodo non vada a cadere in mani sbagliate, e usato a sua volta da persone che non hanno di certo scopi sociali?

Se da un lato s’inneggia alla protezione della privacy dall’altra si controlla il popolo sfruttando mezzi informatici senza avvertire che questo possa accadere, dove va a finire il libero arbitrio.

Un altro pericolo può essere i falsi positivi, una persona sulla base dei suoi comportamenti in rete potrebbe essere scambiato per un terrorista, o in base ai suoi documenti elettronici potrebbe passare per un evasore fiscale, senza che lui abbia commesso un reato o non ne abbia la benché minima idea di farlo.

Io sono dell’idea che per avere una società libera da queste piaghe sociali, bisognerebbe concentrarsi di più su altro  e non usare certi mezzi, credo che la gente non ne possa più di crimini reali son quelli che bisognerebbe combattere.

Si io voglio vivere in un paese libero dal terrorismo e dall’evasione fiscale, ma voglio stare in canottiera e boxer davanti il pc e soprattutto rutto libero.

 
1 Commento

Pubblicato da su ottobre 11, 2011 in Notizie dal WEB

 

Pericolo per Wikipedia.

Questa mattina, mi è arrivato questo link da una mail list, devo dire che la cosa mi preoccupa, in quanto va a toccare il diritto di ognuno di dire la propria e di contribuire all’informazione e alla cultura.

Wikipedia:Comunicato_4_ottobre_2011

Il primo commento che mi è venuto in mente è: “siamo in italia”, i problemi sono molteplici e gravi in italia, prima di tutto l’economia e il “tirare a campare”, vi sono altre notizie che mi hanno lasciato sgomento, di certo voi direte che tutto ciò non interessa alle famiglie delle vittime del crollo di Barletta, o non può interessare al precario che fa fatica a mantenersi e a mantenere la propria famiglia dignitosamente, o al disoccupato che ha seri problemi nell’andare avanti, si sono d’accordo con voi e a quanto sembra vi è qualcuno che invece cerca in tutti i modi si opera per mettere a tacere chi invece cerca d’informare gratuitamente e liberamente la gente.

Si sono d’accordo con tutti voi, ci sono molti che sperano un futuro migliore dove l’informazione e la cultura non sia in mano a pochi, ma vorrei ricordare a tutti che le chance nella vita spesso sono proprio determinate dalla propria cultura e qui vedo sempre di più il divario tra chi se lo può permettere e chi non può,

Se un articolo o una informazione scomoda può essere smentita o cancellata entro 48 ore senza che vi sia un organo preposto a verificare e a giustificare quello che è scritto corrisponde a verità, vi è veramente libertà d’opinione?

Presto fatto voi direte che si organizzino e creino una redazione che si organizzino per espletare le norme di legge, ma non credo che sia questo il problema, il problema è quel sottile bavaglio che si vuol mettere all’informazione libera, imbrigliarla nei stessi nodi che ha l’informazione commerciale.

Tutto per cosa, credo per paura di non poter fare i propri comodi senza che nessuno possa dire la sua, la paura che ha chi per primo si è messo alla mercé dell’opinione pubblica, perché le sue azioni creano interessi o mutano tenori di vita o modifica interessi altrui.

Mi piacerebbe che la notizia che ho riportato fosse riportata dai Mass Media, non toccando lo spazio a problemi più gravi che il nostro paese sta vivendo, ma magari per un giorno parlar meno della gnoccolona di turno.

 
2 commenti

Pubblicato da su ottobre 5, 2011 in Notizie dal WEB

 

Installazione Mixxx

Mixxx e webradio

Questo articolo vi spiegherà come fare i DJ virtuali con strumenti open source e trasmettere musica in una web radio, le web radio trasmettono dei brani tramite dei servizzi di broadcasting, con soluzioni opensource tipo icecast o proprietarie shoutcast.

La prima pur essendo libera, a malincuore è la meno utilizzata, non tanto per la qualità di trasmissione, (personalmente la trovo superiore), in quanto va a tramettere musica codificata ogg, mentre la seconda va a trasmettere la musica in MP3.

Mixxx è un potente emulatore di console da DJ, vi permette di mixare la vostra musica, di poter registrare una traccia per poi riascoltarla o di poter trasmettere quello che state mixando in una web radio.

Mixxx su ubuntu

Mixxx gira sia su win su mac e linux.

Installazione su Ubuntu 10.04 e 10.10

Su Ubuntu 10.04 (Lucid) e 10.10 (Maverick) l’istallazzione della versione 1.9 è molto semplice, viene fatta utilizzando i reposity app mantenuti dalla comunità Mixxx.

Aprire un terminale e scrivere:

  • sudo add-apt-repository ppa:mixxx/mixxx
  • sudo apt-get update
  • sudo apt-get install mixxx libportaudio2

Seguendo queste semplici istruzioni siete pronti per mixare e trasmettere la vostra musica in internet.

Instalazzione su Fedora 15

Mixxx su fedora 15

Scaricare e installare i seguenti pachetti:

Andare su attività –> strumenti di sistema –> Agiungi/Rimuovi Software e cercare mixxx, e lo troverete su audio e video

Aggiungi rimuovi software su fedora

Se avete un Netbook vi conviene cambiare l’interfaccia, io uso Shade 1024×600 Netbook, per poterlo fare basta andare su options –> preference –> interface una volta avviato Mixxx

Installazzione su Windows

Per windows vi suggerisco per avere la possibilità di trasmettere in shoutcast di seguire queste istruzioni:

  • Scaricare ed installare MIXXX http://www.mixxx.org/
  • Scaricare ed installare 7-Zip http://www.7-zip.org/
  • Riavviare
  • Scaricare LAME 3.98.4 da http://lame.bakerweb.biz
  • Aprire il file lame-3.98.4.7z con 7-zip e posizionarsi nella cartella x86 (o x64 se si usa un sistema a
  • 64 bit)
  • Aprire il file manager e posizionarsi in C:\Program Files\Mixxx
  • Trascinare da 7-zip il file libmp3lame.dll dentro il file manager con aperta la cartella C:\ProgramFiles\Mixxx

Libreria Lame x Mixxx su Windows

  • Rinominare il file libmp3lame.dll in lame_enc.dll

Rinominare Libreria Lame

Trasmettere in Shoutcast

Per poter trasmettere la vostra musica in shoutcast e far sentire ai vostri amici, che siete dei bravi DJ basterà avviare Mixxx e selezionare preferenze dal menu Options poi posizionarsi su Live Broadcasting

Inserire i dati per lo streaming

  1. Inserire il Type Shoutcast
  2. L’ip (o l’indirizzo) nella casellina Host
  3. Mettere il numero della Porta nella casellina Port
  4. Inserire la Passoword nella casellina Passord
  5. Nel riquadro encoding selezionare il formato MP3

Selezionare da Options Enable live Broadcasting

Abilitare il Broadcasting dal vivo

Se tutto procede per il meglio Mixxx ve lo comunicherà a questo punto basta fare play e trasmetterete in brodcasting la vostra musica.

Mixxx che trasmette


 
Lascia un commento

Pubblicato da su luglio 23, 2011 in Fedora, Mixxx, Ubuntu

 

Installazione Fedora 15 con Gnome 3

1 Introduzione

Ho installato Fedora 15 per provare il nuovo Gnome 3, una volta scaricata l’ultima iso di Fedora 15 , l’ho inserita nella chiavetta USB per poi installarla nel NetBook sudo dd if=Fedora-15-i686-Live-Desktop.iso of=/dev/sdb, credo che per voi sia più comodo masterizzarla su un cd.

Il primo approccio con Gnome 3 è stato positivo, infatti è molto comode per le operazioni che si compiono normalmente con il PC, come navigare, guardare foto e ascoltare musica.

Non spaventatevi se dopo aver seguito questi semplici passi vi troverete il vostro Desktop in inglese, basterà pigiare su Actvities selezionare Applications andare su Sistem Tools e su Sistem Settings selezionare la lingua italiana, una volta dato il Log Out, quando vi rilogherete troverete Gnome 3 in italiano.

Premetto che ho installato la nuova versione di fedora in un NetBook, e per fare questo ho preparato il disco fisso con una distribuzione Linux Live, questo per essere più sicuro che quello che facevo mi portava ad ottenere il risultato voluto con il minor rischio per i dati presenti nel NetBook, questo non toglie che voi potete ottenere il stesso risultato con altri sistemi.

Tornando alla prima impressione di Gnome 3, devo dire che ho apprezzato gli sforzi degli sviluppatori atti a dare un sistema amichevole ma allo stesso tempo potente.

Con questa nuova versione potete navigare chattare ascoltare musica, utilizzando il vostro sistema operativo (OS) basato su GNU Linux.

Come filesystem, non mi sono scervellato, ho optato l’ormai testato EXT4, in quando è un filesystem ormai maturo, basato sul suo predecessore EXT3, che molti di voi ricorderanno.

Devo dire che in pochi semplici passi sono riuscito a istallare questa distribuzione nel mio NetBook e ora la sto utilizzando per scrivere queste righe.

Non aspettatevi un sistema che ha tutto, infatti mancano molti pacchetti per l’ufficio per modificare le foto e gli audio, ma avete un sistema minimale che vi permette poi di essere personalizzato con molti pachetti utili per il vostro PC.

2 Preparazione dell’Hard Disk.

La preparazione dell’Hard Disk del NetBook l’ho fatta con Gparted, che è una Distribuzione Live che mi permette di modificare le partizioni presenti nel pc, in questo modo ho creato una partizione per la nuova Fedora, e un’altra partizione, per altri test.

3 Istallazione

1. L’istallazione della nuova Fedora 15 si basa su una distro live minimale, una volta comparso il desktop di Gnome 3 ho selezionato l’icona Install to Hard Drive

2. Ho selezionato il linguaggio Italian

3. Come Devices ho selezionato Basic Storage Devices (per l’istallazione sul Hard Disk)

4. Ho dato un nome al computer

5. Ho selezionato il Time Zone (Europe, Rome)

6. Ho creato la password dell’utente Root (Super Utente)

7. Ho selezionato come tipo d’installazione “Create Custom Layout”

8. Ho selezionato la partizione SDA5 per contenere i file necessari al sistema operativo “/” come filesystem ho selezionato EXT4 poi ho selezionato la partizione SDA7 come spazio di SWAP

9. Il sistema mi ha avvertito che dovrà formattare la partizione SDA5 in EXT4, io ho acconsentito pigiando il bottone Format.

10. A questo punto il programma d’istallazione ha copiato i file dell’immagine live all’interno della partizione SDA5 nel disco fisso.

11. A operazioni concluse il sistema si è congratulato con me comunicandomi che l’istallazione è stata completata e che necessitava il reboot.

4 Configurazione del nuovo Sistema Operativo

1. Il nuovo OS mi ha dato il benvenuto e ho proseguito pigiando il pulsante “Forward”

2. Mi ha informato della licenza d’uso e ho proseguito premendo “Forward”

3. Ho creato un utente di base da utilizzare nel nuovo sistema operativo creando una password di sicurezza.

4. Ho Controllato la data e l’ora.

5. A questo punto ho potuto decidere se inviare il profilo Hardware a Fedora.

 
2 commenti

Pubblicato da su giugno 9, 2011 in Fedora, Gnome

 

Cherrypy: Gestiamo i nostri db con SQLAlchemy

1 Premessa

SQLAlchemy, http://www.sqlalchemy.org/, é una libreria che ci permette di utilizzare in python svariati database tra cui:SQLite, Mysql, Postgresql, Firebird e altri database, anche proprietari

2 Connettersi a un database SQLlite

La connessione a un db in SQLite (http://www.sqlite.org/) é molto semplice basta puntare a un file nel nostro HD
Creare il file ‘engine.py’ e inserire il seguente codice:

#!/usr/bin/python
# coding: latin-1

from sqlalchemy import create_engine

# mi collego al db slqilte puntando al file e scrivo l'output
engine = create_engine('sqlite:///database.sqlite', echo=True)

SQLite é un database semplice da utilizzare ma allo stesso tempo potente, tutti i dati vengono inseriti in un unico file, dati tabelle viste ecc ecc. SQLite ci permette di creare un database e svilupparlo, in modo intuitivo e veloce, e allo stesso tempo non si rischia di compromettere altri database, pertanto ne cosiglio l’uso per creare i vostri prototipi.

3 Le tabelle

3.1 Sessione di conessione al database

Creare un file ‘tables.py’ e inserire il seguente codice:

#!/usr/bin/python
# coding: latin-1

from sqlalchemy import Sequence
from sqlalchemy import Table, Column, Integer, String, MetaData, ForeignKey
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker
import engine

engine = engine.engine

# creo la base per le tabelle
Base = declarative_base()

# creo il metadata dalla base
metadata = Base.metadata

# creo la sessione al database
Session = sessionmaker(bind=engine)
session = Session()

Questo codice ci permette di connetterci al nostro database e di creare una sessione che andremo poi ad utilizzare.

3.2 Definire una tabella

Aggiungere il seguente testo al file ‘tables.py’:

class User(Base):
    # nome della tabella
    __tablename__ = 'users'
    # definisco che id_user \'e un numero intero in sequenza e chiave primaria
    id_user = Column(Integer, Sequence('user_id_seq'), primary_key=True)
    # definisco che nome \'e una stinga
    name = Column(String)
    # definisco che fullname \'e una stringa
    fullname = Column(String)

    # inizializzo la classe
    def __init__(self, name, fullname):
        self.name = name
        self.fullname = fullname

Questo codice ci permette di definire una tabella permettendoci di utilizzare la nostra classe in fase di inserimento e visualizzazione dei dati.

Abbiamo definito i campi cosí:

  • Il campo id user é una sequenza di numeri ed é una chiave primaria.
  • Il campo name é una stringa
  • Il campo fullname é una stringa

3.3 Funzione per la creazione delle tabelle

Aggiungere il seguente testo al file ‘tables.py’:

def initializze_sql():
    # crea le tabelle all'interno del database
    metadata.create_all(engine)

Questo funzione ci permette di creare le nostre tabelle nel database, e potremo utilizzarla successivamente.

4 Pagine html dinamiche

4.1 Messaggio di benvenuto e creazione del database

Creare un file ‘visitatori.py’ e inserire il seguente codice:

#!/usr/bin/python
# coding: latin-1

import cherrypy
import tables

# prendo la conessione al database
engine = tables.engine

# creo una sessione dalla conessione al db
session = tables.session

# attivo la tabella user
users = tables.User

class Benvenuto:
	def index(self):
   		return "Benvenuto!"
	index.exposed = True

	def create_db(self):
		# creo il db e tutte le tabelle nel database
		out = tables.initializze_sql()
		return "DB creato, Tabelle Create."
	create_db.exposed = True

Chiudere il file ‘visitatori.py’ inserendo il seguente codice

cherrypy.quickstart(Benvenuto())

Eseguiremo la nostra applicazione web aprendo un terminale e dando i seguenti comandi

cd Progetto
python visitatori.py

A questo punto si puo’ puntare il nostro browser sull’indirizzo http://localhost:8080/ e vedremo apparire il messaggio di benvenuto.
Puntando all’indirizzo http://localhost:8080/create_db creeremo il db e la tabella users

4.2 Scheda Visitatore

Creare il file ‘visitatore.html’ e inserire il seguente codice

<h1>Scheda Visitatore</h1>
<p><b>Prego inserire il tuo nome e cognome</b></p>
<form action="inserisci" method="post">
<div>Nome
<input type="text" name="nome" value="" size="15" maxlength="40"/>
</div>
<div>Cognome
<input type="text" name="cognome" value="" size="15" maxlength="40"/>
</div>
<p><input type="submit" value="Inserisci"/></p>
<p><input type="reset" value="Pulisci"/></p>
</form>'

Inserire la funzione ‘visitatore’ nel file ‘visitatori.py’ con il seguente codice:

    def visitatore(self):
        # leggo il file visitatore.html in sola lettura
        filehtml = open('visitatore.html', 'r')
        # inizializzo la variabile per l'output del html
        out_html = ''
        # leggo tutte le rige del file html
        listato = filehtml.readlines()
        # inserisco le righe del file html inserendole nella variabile del html
        for x in listato:
            out_html = out_html+ x
        # restituisco all'output la variabile con il file html
        return out_html
        visitatore.exposed = True

Questa funzione va a leggere il file visitatore.html e lo rende disponibile al client web.
Puntando, con il nostro client web, alla pagina indirizzo http://127.0.0.1:8080/visitatore abbiamo una scheda che ci permette di inserire il nome e cognome che poi andremo ad utilizzare nella funzione successiva.

4.3 Salvataggio dei dati in db

Inserire la funzione ‘inserisci’ nel file ‘visitatori.py’ con il seguente codice:

    def inserisci(self, nome, cognome):
        # prendo l'input dal post e creo un nuovo utente 
        new_user=users(nome,cognome)
        # invio alla mia sessione un nuovo utente nella tabella users
        session.add(new_user)
        # invo la sessione e creo il nuovo utente in db
        session.commit()
        out_html = nome + ' ' + cognome + ' Benvenuto!!'
        return out_html
    inserisci.exposed = True

Questa funzione ci permette di prendere i dati ‘nome’ e ‘cognome’ di inserirli nel database e successivamente di dare il benvenuto.
Inserendo i dati nella scheda descritta precedentemente e premendo il pulsante inserisci andremo a salvare i dati nel database.

4.4 Listato dei visitatori

Inserire la funzione ‘lista_visitatori’ nel file ‘visitatori.py’ con il seguente codice:

    def lista_visitatori(self):
        # apro il mio output scrivendo il titolo della pagina
        out = "<h1><b>Lista Visitatori</b></h1>"
        # inserisco nell'output le etichette in grassetto
        out = out + "<p><b>Nome & Cognome</b></p>"
        # creo una maschera per la riga che andr\'a a ospitare i dati dal db
        riga_masq = "<div>{nome} {cognome}</div>"
        # per ogni riga della tabella Users
        # 	inserisco nell'output la maschera con il nome e il cognome
        for row in session.query(users.__table__).all():
            out = out + riga_masq.format(nome=row.name,cognome=row.fullname)
        return out
	lista_visitatori.exposed = True

Questa funzione ci permette di leggere i dati salvati nella tabella ‘users’ e di renderli disponibili al client web. // Puntando, con il nostro client web, alla pagina indirizzo http://127.0.0.1:8080/lista_visitatori, avremo la lista di tutti i visitatori che hanno inserito il loro nome e cognome.

5 Listato dei file

5.1 engine.py

#!/usr/bin/python
# coding: latin-1

from sqlalchemy import create_engine

# mi collego al db slqilte puntando al file e scrivo l'output
engine = create_engine('sqlite:///database.sqlite', echo=True)

5.2 tables.py

#!/usr/bin/python
# coding: latin-1

from sqlalchemy import Sequence
from sqlalchemy import Table, Column, Integer, String, MetaData, ForeignKey
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker
import engine

engine = engine.engine

# creo la base per le tabelle
Base = declarative_base()

# creo il metadata dalla base
metadata = Base.metadata

# creo la sessione al database
Session = sessionmaker(bind=engine)
session = Session()

class User(Base):
    # nome della tabella
    __tablename__ = 'users'
    # definisco che id_user \'e un numero intero in sequenza e chiave primaria
    id_user = Column(Integer, Sequence('user_id_seq'), primary_key=True)
    # definisco che nome \'e una stinga
    name = Column(String)
    # definisco che fullname \'e una stringa
    fullname = Column(String)

    # inizializzo la classe
    def __init__(self, name, fullname):
        self.name = name
        self.fullname = fullname

def initializze_sql():
    # crea le tabelle all'interno del database
    metadata.create_all(engine)

5.3 visitatori.py

#!/usr/bin/python
# coding: latin-1

import cherrypy
import tables

# prendo la conessione al database
engine = tables.engine

# creo una sessione dalla conessione al db
session = tables.session

# attivo la tabella user
users = tables.User

class Benvenuto:
	def index(self):
   		return "Benvenuto!"
	index.exposed = True

	def create_db(self):
		# creo il db e tutte le tabelle nel database
		out = tables.initializze_sql()
		return "DB creato, Tabelle Create."
	create_db.exposed = True

	def visitatore(self):
        # leggo il file visitare.html in sola lettura
        filehtml = open('visitatore.html', 'r')
        # inizializzo la variabile per l'output del html
        out_html = ''
        # leggo tutte le rige del file html
        listato = filehtml.readlines()
        # inserisco le righe del file html inserendole nella variabile del html
        for x in listato:
            out_html = out_html+ x
        # restituisco all'output la variabile con il file html
        return out_html
        visitatore.exposed = True

    def inserisci(self, nome, cognome):
        # prendo l'input dal post e creo un nuovo utente 
        new_user=users(nome,cognome)
        # invio alla mia sessione un nuovo utente nella tabella users
        session.add(new_user)
        # invo la sessione e creo il nuovo utente in db
        session.commit()
        out_html = nome + ' ' + cognome + ' Benvenuto!!'
        return out_html
    inserisci.exposed = True

    def lista_visitatori(self):
        # apro il mio output scrivendo il titolo della pagina
        out = "<h1><b>Lista Visitatori</b></h1>"
        # inserisco nell'output le etichette in grassetto
        out = out + "<p><b>Nome & Cognome</b></p>"
        # creo una maschera per la riga che andr\'a a ospitare i dati dal db
        riga_masq = "<div>{nome} {cognome}</div>"
        # per ogni riga della tabella Users
        # 	inserisco nell'output la maschera con il nome e il cognome
        for row in session.query(users.__table__).all():
            out = out + riga_masq.format(nome=row.name,cognome=row.fullname)
        return out
    lista_visitatori.exposed = True		

cherrypy.quickstart(Benvenuto())

File translated from TEX by TTH, version 3.85.
On 10 Mar 2011, 08:49.


 
2 commenti

Pubblicato da su marzo 10, 2011 in Cherrypy, Python, SQLAlchemy