Pagina 1 di 1

BuDuScRiPt per MAC OS X e Windows

Inviato: 06/12/2009, 19:59
da BuDuS
Windows
Il porting del solo plugin sarebbe anche tecnicamente possibile. Il problema è il porting degli Script Bash; sono proprio quest'ultimi che aggiungono numerose funzionalità a BuDuScRiPt (Gestione dei file XDCC, l'importazione dei menu mIRC, la gestione dei files di LOG, i comandi di massa, aggiornamenti automatici, ricerca su google, e molto altro) e non credo sia possibile farli funzionare decentemente, anche utilizzando strumenti come MSYS.

Tra l'altro, su Windows, mi pare ci siano già moltissimi script che fanno le stesse cose - e meglio - del BuDuScRiPt, no ?

In poche parole: il porting del mio script su Windows è abbastanza inutile :cry:

MAC OS X
Non possiedo un MAC.
Praticamente, non ne ho mai usato uno.

AGGIORNAMENTO ha scritto:Non è più così: a partire dal Gennaio 2012 ho in dotazione un iMac e, teoricamente, avrei la possibilità di realizzare lo script anche per Mac OS X (nel mio caso, Lion).

Tuttavia sono nuovo a questo sistema e, anche a distanza di mesi, accuso difficoltà nel digerire il suo lato development; sì, assomiglia a Linux e ha un terminale - quasi - identico, ma fino ad un certo punto. Le divergenze sono comunque forti, mancano - di default - alcuni strumenti (il primo che ho notato è WGET, che andrebbe installato a parte manualmente, cosa non per tutti) e non sono per nulla ottimista sulla possibilità di fare un porting che non risulti un bagno di sangue.

Vedrò cosa riesco a fare; sicuramente ho constatato la possibilità di usare il tutto tramite VirtualBox, che funziona molto bene. Sono altresì convinto funzionino bene anche gli altri virtualizzatori e, in tal senso, ritengo rappresenti - per il momento - un ottimo ripiego.


Ho installato un MAC OS X 10.5.5 su VMWare e ci ho smanettato un po'.
Cercando ho notato che per Mac c'è un'apposita versione di XChat chiamata: X-Chat Aqua

E' un ottimo clone del progetto originale, in teoria permetterebbe l'esecuzione di plug-in come BuDuScRiPt, tuttavia:
  • Sulla mia macchina, il Mac emulato, è estremamente lento, faccio fatica ad utilizzarlo, i tempi sono realmente biblici ...
  • Per compilare qualcosa mi sembra di capire che bisogna installare un software chiamato Xcode, dopo opportuna registrazione, e che quest'ultimo gira solo sulla versione più recente (attualmente la 10.6, che non so se gira su VMWare, non ho indagato oltre)
  • Il MAC OS X assomiglia a Linux ... ma, ribadisco, assomiglia; BuDuScRiPt non è solo un plug-in (cioè un modulo dinamico .so che viene caricato da XChat), è un software corredato da numerosi script bash che fanno esteso utilizzo dei tipici programmi offerti da Linux (wget, xterm, grep, awk, ecc...) e che sono proprio la parte che fa la differenza, aggiungendo tutte quelle funzionalità che - credo - rendano interessante il mio programma, come la gestione dei file XDCC, l'importazione dei menu mIRC, la gestione dei files di LOG, i comandi di massa, aggiornamenti automatici, ricerca su google, e molto altro. Ebbene, su MAC OS X (e, soprattutto, su Windows), tutti questi script - probabilmente - non sono in grado di funzionare (o comunque immagino siano necessarie pesanti modifiche).

In poche parole: il porting del mio script su Mac è attualmente proibitivo :cry:

Possibile Soluzione al Problema
Una soluzione al problema per gli utenti Windows e MAC OS X potrebbe essere quella di utilizzare una Macchina Virtuale (VM).

Una Macchina Virtuale è un software che si installa sul proprio sistema operativo e simula, all'interno di una "finestra" (ma anche a schermo intero), un intero computer.

È una soluzione estremamente flessibile e potente che, con l'avvento di macchine a 64bit, con molta RAM (oltre 1Gb) e processori multi-core (nonché con specifiche funzionalità dedicate all'esecuzione di questo tipo di software), risulta facilmente implementabile e persino performante, nonché molto sicura.

Vantaggi
  • Facile da installare e gestire, grazie a comode interfacce grafiche.
  • Consentono l'esecuzione di più sistemi operativi (detti GUEST), anche contemporaneamente (ma dipende dalle risorse del computer reale, detto HOST).
  • È possibile utilizzare praticamente qualsiasi sistema operativo supporti la propria architettura hardware (nel caso delle VM più sofisticate, si può simulare anche hardware completamente diverso dal proprio); Linux, Windows e anche MAC OS X possono essere "simulati", indipendentemente dal sistema operativo utilizzato dall'HOST.
  • Sono molto sicure ed evitano che il sistema operativo dell'HOST si rovini; ad esempio è noto che installare e disinstallare ripetutamente applicazioni su Windows, comporta un'esponenziale decremento delle prestazioni del medesimo con il passare del tempo, che in genere obbliga a "formattare e re-installare tutto". Con una VM il problema non si pone, perché - alcune - consentono di fare degli "Snapshot" (creare una "immagine" della situazione) che possono essere ripristinati a piacimento, in modo da riesumare precise situazioni in modo estremamente semplice. Questo consente di provare i programmi senza subire i problemi di cui sopra.
    Inoltre non si ha il problema che Virus e Malware creino particolari fastidi: se lo fanno è sempre un qualcosa limitato alla VM, che può essere ripristinata con gli Snapshot, ecc...
  • Potendo usare sistemi operativi diversi contemporaneamente (come minimo sono sempre 2, quello dell'HOST e il GUEST) si hanno a disposizione i software di uno e l'altro; con alcune VM c'è modo di "miscelarli" in modo che non ci si accorga proprio di usare una VM.
Svantaggi
  • Durante l'esecuzione della VM le prestazioni del sistema possono calare anche vistosamente, ma tutto dipende dal proprio hardware (quello dell'HOST).
    Su una macchina a 64bit, con 4Gb di RAM e un processore che abbia almeno 2 core direi che il problema non si pone; sotto a questa configurazione i problemi aumentano in modo esponenziale. Io comunque uso la VM su una macchina a 32bit, con 3Gb di RAM e processore P4 a 3Ghz e il tutto funziona piuttosto bene.
  • La VM viene fornita "vuota"; è l'utente che decide come e quando creare la "Macchina Virtuale" e di installarci sopra il sistema operativo che preferisce.
    Nonostante questa cosa possa anche essere guidata da opportuni wizard si tratta comunque di un'operazione che, per alcuni, può risultare piuttosto complicata. Installare un sistema operativo (come Linux), per quanto sia stato semplificato enormemente, non è comunque alla portata di tutti.
    Io la ritengo comunque un'esperienza da fare, che può pure essere formante e gratificante.


Per quanto mi riguarda sento di poter consigliare VirtualBox che è un software gratuito (rilasciato da Oracle, quindi non proprio "topogigio"), facile da usare, piuttosto performante, completo e dotato di un'interfaccia grafica semplice e intuitiva.

Ad esempio, dopo averlo installato, sarà sufficiente:
  • Lanciare il software
  • Creare una VM dedicata a Linux (ad esempio Ubuntu)
  • Lanciare la VM creata; al primo avvio parte un wizard che guida l'utente nell'installazione del sistema opeativo
  • Selezionare l'immagine ISO del CD/DVD del sistema operativo che si intende installare (ad esempio Ubuntu)
  • Installare il sistema operativo
  • Installare XChat (di default generalmente non lo è)
  • Installare BuDuScRiPt

Può sembrare un'operazione complicata, ma in realtà non lo è affatto: ci si impiega più tempo a scaricare software ed ISO che non ad installare le cose, dato che sono tutte cose praticamente automatizzate (tra l'altro, per ogni operazione, su Internet è pieno di guide specifiche passo-passo).

Se poi a uno la cosa non piace, poco male: le cose si tolgono ancora più facilmente e senza problemi.