Convertire JPG-PNG-GIF in ASCII con Jp2a

 

 

Jp2a è una piccola utility che serve a convertire immagini JPG in ASCII, è scritto in C ed è rilasciato sotto licenza GPL. E' presente nei repo Debian,Gentoo,FreBSD, ed i comandi sono abbastanza semplice:

Convertire immagine jpg in ascii:

$ jp2a --width=60 image.jpg

Convertire immagine direttamente da un sito, tipo questa:

$ jp2a --width=70

a questo punto volendo convertire immagini png o gif, dobbiamo rivolgerci a ImageMagick con l'opzione convert:

$ convert image.png jpg:- | jp2a --width=60 -

$ convert image.gif jpg:- | jp2a --width=60 -

per altre opzioni consultare il man.

Driver nvidia module-assistant e Debian

 

 

Installare i driver Nvidia in maniera veloce con module-assistant:

# apt-get install nvidia-kernel-common module-assistant nvidia-glx nvidia-glx-dev nvidia-xconfig

# m-a -i prepare

passare in tty1 con Ctrl-Alt-F1

# m-a a-i -i -t -f nvidia-kernel

# depmod -a

# nvidia-xconfig

# /etc/init.d/gdm3 restart oppure /etc/init.d/gdm restart

Overclock scheda video Nvidia con Gnu/Linux

 

 

Questa guida serve all'overclock di schede grafiche Nvidia, ma naturalmente bisogna prestare attenzione, non vorrei proprio essere io la causa della frittura della vostra amata scheda :). Diciamo subito che le nostre schede possono essere overcloccate senza nessun rischio se il tutto viene fatto con intelligenza, dato che la stessa Nvidia ci offre lo strumento per farlo, e si è tenuta un po bassa con la frequenza di clock. Lo strumento  che ci offre Nvidia si chiama Coolbits, ed andiamo subito ad usarlo. Se andiamo ad analizzare NVIDIA X Server Settings, notiamo che non c'è nessuna opzione per l'overclock:

quello che dobbiamo fare è:

# nano /etc/X11/XF86Config

oppure:

# nano /etc/X11/xorg.conf

ed inseriamo il famoso Coolbits nella sezione Device:

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    Option "Coolbits" "1"
EndSection

salvare e riavviare:

Ctrl+o

Ctrl+x

# reboot

 

Adesso andando a controllare di nuovo NVIDIA X Server Settings, troviamo una nuova voce, Clock Frequencies:

a questo punto siamo pronti all'overclock sfruttando il pulsante Auto Detect, che ci indica il valore supportato della nostra scheda, nel mio caso è passata da 550 a 628.

Un altro metodo è quello di usare nvclock presente nei repository:

# apt-get install nvclock nvclock-gtk

lo avviamo con:

# nvclock_gtk

e proviamo l'overclock, tenendo ben presente 2 cose:

  1. non esagerare ho per cena si rischia di mangiare una scheda fritta 🙂
  2. Alt +Stamp+b in caso di emergenza 😉

Da Html a Pdf con Gnu/Linux

 

Wkhtmltopdf è un ottimo programma che serve alla conversione di pagine html in pdf, dato che non lo conoscevo ho voluto provarlo, e devo dire che questo è un ottimo programma visto l'alta possibilità di configurazione. Su Debian Sid è presente nei repository nella versione 0.9.5-1, quindi è inutile ricompilare. Per chi volesse farlo i requisiti obbligatori son le Qt 4, quindi:

# apt-get install libqt4-dev qt4-dev-tools wkhtmltopdf

Per usarlo bastano pochi semplici comandi:

comando base:

$ wkhtmltopdf https://edmondweblog.com edmondweblog.pdf

comando con più opzioni:

$ wkhtmltopdf https://edmondweblog.com prova.pdf -n  -B 10mm -L 10mm -R 10mm -T 10mm –minimum-font-size 10

conversione di un file locale:

wkhtmltopdf file.html file.pdf

conversione di un file PS:

wkhtmltopdf file.html file.ps

per tutto il resto c'è il man.

Debian GNU/Hurd su VirtualBox

 

Questa guida può aiutare tutti coloro che volessero provare Debian GNU/Hurd su VirtualBox, e senza volere entrare troppo sul tecnico, rimando al sito del progetto, ed in più segnalo una lettura veloce di questo post di Guiodic giusto per comprendere la differenza tra un kernel monolitico ( Linux ) ed un microkernel ( GNU Mach ).

Requisiti:

VirtualBox con su installata una distribuzione Gnu/Linux.

debian-L1-hurd-i386-mini.iso scaricabile da qua.

Installazione:

Avviare VirtualBox e come scheda di rete scegliere la PCnet-PCI II (Am79C970A), il resto a piacimento. L'installer è molto intuitivo, settare la tastiera, partizionare, attivare partizione di swap e partizione Gnu/Hurd ed installare il sistema base dopo di chè scegliere:

cdrom → continue → list → /instmnt/install

reboot the system

Avviare VirtualBox con la propria distribuzione Gnu/Linux installata ( es. Debian ), e digitare:

# sudo update-grub

dopo di chè riavviare ed accedere alle opzioni di Grub, per aggiungere l'opzione

-s

che indica di avviare come single-user.

e poi cancellare

--readonly

per non avviare con un file system in solo lettura.

sotto un esempio, con la partizione Gnu/Hurd in hd0s6:

insmod ext2
    set root=(hd0,6)
    multiboot /boot/gnumach.gz root=device:hd0s6 -s
    module /hurd/ext2fs.static ext2fs  \
            --multiboot-command-line='${kernel-command-line}' \
            --host-priv-port='${host-port}' \
            --device-master-port='${device-port}' \
            --exec-server-task='${exec-task}' -T typed '${root}' \
            '$(task-create)' '$(task-resume)'
    module /lib/ld.so.1 exec /hurd/exec '$(exec-task=task-create)'

a questo punto siamo pronti ad  avviare Gnu/Hurd, avendo un po di pazienza in quanto ci vorranno almeno 5 minuti poichè si bloccherà qui:

e nel caso il file system dovrebbe essere in readonly, ovviare al problema con:

# fsysopts / --writable

se tutto è andato bene ci apparirà una shell:

sh-4.0#

diventiamo root:

su

è lanciamo:

# ./native-install

che si occuperà di installare il sistema base:

dopo di che:

# reboot

adesso accedere come multi-user, quindi senza l'opzione -s, ed eseguire il login come:

login root

settare utente e password:

# adduser Utente

# passwd

aggiungere partizione di swap ( es: hd0s5 )

# cd ..

# cd /dev

# ./MAKEDEV hd0s5

correggere e decommentare fstab:

# nano /etc/fstab

/dev/hd0s5  none    swap    sw   0   0

# reboot

adesso abbiamo bisogno del sources.list e di una connessione di rete:

sources.list:

# nano /etc/apt/sources.list

deb https://ftp.it.debian.org/debian unstable main
deb https://ftp.debian-ports.org/debian unreleased main

connessione di rete:

per verificare se  la nostra scheda di rete viene riconosciuta:

# devprobe eth0

come output si avrà eth0.

per connettersi con ip statico:

# settrans -fgap /servers/socket/2 /hurd/pfinet -i eth0 -a 10.0.2.15 -g 10.0.2.255 -m 255.255.255.0

# reboot

aggiornare il sistema:

su

# apt-get update

# apt-get upgrade

si ottiene questo errore, che sinceramente mi ha fatto perdere non poco tempo, dato che non me l'aspettavo:

tanto è vero che:

# echo $PATH

mi restituiva questo:

mentre accedendo come root con:

su -

si risolve il problema, infatti:

In effetti,come viene spiegato qua, la differenza sta nel fatto che, usando su senza il trattino, si ottiene una shell interattiva normale, mentre con il trattino si ottiene una «shell di login». Dal lato pratico, la differenza sta nel fatto che nel secondo caso vengano eseguiti script che nel primo caso sono ignorati; dal punto di vista pratico, quello che conta è sapere che la differenza esiste e dipende dalla configurazione del sistema operativo. Arrivati a questo punto siamo in grado di installare qualche programma:

# apt-get install links

Per il momento mi fermo qua, ma credo di proseguire prossimamente, sperando che a qualcuno interessi 😉

Update:

Installazione Debian GNU/Hurd Video

 

Driver nouveau con kernel 2.6.33 e Debian

 

Il progetto nouveau mira alla creazione di driver di alta qualità per schede grafiche nvidia, e siccome era un po che volevo testarli, finalmente mi sono deciso. Inizio subito con il dire che per il momento il 3D non è supportato integralmente ,quindi per chi vuole compiz obbligatoriamente attivo e meglio che lasci perdere, mentre per chi vuole una Debian o altro con software open al 100%, forse è venuto il momento di provare questi driver nouveau, che a me sinceramente hanno stupito per velocità. Comunque per maggiori informazioni consiglio di visitare il sito. Per chi vuole testarli basta seguire i passi indicati di seguito, tenendo presente che io uso Debian Sid:

Inserire i repo experimental, dato che alcuni pacchetti li troviamo là:

deb https://ftp.it.debian.org/debian/ experimental main contrib non-free
deb-src https://ftp.it.debian.org/debian/ experimental main contrib non-free

a questo punto installiamo ciò che ci serve:

# apt-get update

# apt-get install linux-source-2.6.33 libdrm-nouveau1 libdrm2 xserver-xorg-video-nouveau

adesso dobbiamo ricompilare il kernel, perchè dobbiamo abilitare i nostri driver open nouveau, che troviamo nel percorso:

Device Drivers  —> Staging drivers  —>  Nouveau (nVidia) cards

una volta finita la compilazione ed installato il nuovo kernel, prima di riavviare ricordiamoci di modificare xorg.conf oppure XF86Config nella sezione device:

# nano /etc/X11/XF86Config

sostituire nvidia o nv con nouveau

Section "Device"
    Identifier     "Device0"
    Driver         "nouveau"
EndSection

una volta avviato il nuovo kernel non ci rimane altro che testare i nostri driver open:

$ lsmod | grep nouveau

Webcam virtuale con Webcamstudio

 

 

WebcamStudio è un ottima applicazione rilasciata sotto licenza GPL, che tra le tante caratteristiche ne ha una molto particolare, e cioè la possibilità di simulare una webcam, e quindi,  può riuscire ad ingannare la persona con cui stiamo interloquendo tramite amsn o skype, facendogli vedere un filmato ed ingannandola di conseguenza,  in quanto crede che quello che sta vedendo avviene in diretta. Sul sito si può scaricare il pacchetto .deb per chi usa Ubuntu, per gli altri, che usano distro diverse compreso me che sono su Debian Sid, bisogna prima verificare se sia presente il modulo vloopback, altrimenti compilarlo:

debianbox:/home/edmond# lsmod | grep vloopback
vloopback               9678  0
videodev               25211  4 vloopback,tuner,saa7134,v4l2_common

in caso negativo lo compiliamo con module-assistant:

# apt-get install module-assistant vloopback-source

# m-a prepare

# m-a a-i vloopback-source

# reboot

a questo punto verifichiamo che il modulo sia presente e poi avviamo WebcamStudio:

tar zxvf WebcamStudio_0.53.tar.gz

cd webcamstudio

java -jar "WebcamStudio.jar"

(Update) Installare Debian GNU/kFreeBSD

 

 

Questa guida è un aggiornamento a Installare Debian GNU/kFreeBSD step by step fatta precedentemente, poichè mi sono accorto che alcune cose che con me hanno funzionato adesso non funzionano più, e quindi questo aggiornamento serve a quelle persone che si sono cimentate nell'installazione senza riuscirci, per colpa di vari errori con il debian-installer. Quindi sommando queste due guide cercherò di farne almeno una buona :). La base da cui partire è sempre questa guida, ma quando si arriva al punto di scegliere tra Stable-Squeeze-Sid, bisogna scegliere Squeeze, poiche se si sceglie Sid si incorre in un errore già nell'installazione base. Proseguiamo fino al punto in cui ci viene chiesto cosa installare, e scegliamo solo il Sistema Standard:

quindi niente interfaccia grafica per il momento altrimenti incorriamo in dei problemi legati a mono-runtime. Una volta finita l'installazione avviamo dalla nostra distribuzione abituale e montiamo la partizione con Debian GNU/kFreeBSD:

mount -t ufs -o ro,ufstype=ufs2,nodev,nosuid /dev/sdaX /mnt

entriamo quindi in /mnt/boot/grub ed andiamo a copiare il menuentry che si trova in grub.cfg e lo incolliamo nel nostro /etc/grub.d/40_custom, quindi subito dopo update-grub. A questo punto siamo pronti a riavviare ed accedere su Debian GNU/kFreeBSD. Dopo il logini dato che non abbiamo interfaccia grafica siamo pronti ad installarla con:

# apt-get install gnome-desktop-environment

così facendo non abbiamo problemi con mono, dato che non lo installiamo. Adesso dobbiamo creare e configurare Xorg.

# X -configure

# mv /root/xorg.conf.new /etc/X11/xorg.conf

ma questo solamente non basta:

# nano /etc/X11/xorg.conf

ed aggiungiamo alla fine questo:

Section "ServerFlags"
        Option "AllowEmptyInput" "No"
        Option "AutoAddDevices" "No"
EndSection

dopo di chè controllare anche la parte riguardante il mouse poichè bisogna inserire il Device esatto, nel mio caso il mouse Logitech, Inc. MX-1000 Cordless Mouse Receiver è identificato come /dev/ums0:

Section "InputDevice"
    Identifier  "Mouse0"
    Driver      "mouse"
    Option        "Protocol" "auto"
    Option        "Device" "/dev/ums0"
    Option        "ZAxisMapping" "4 5 6 7"

per caricare il modulo per la mia scheda audio intel:

# kldload snd_hda

Adesso siamo pronti a provare Debian GNU/kFreeBSD e a modificarla a nostro piacimento, tenendo presente che siamo solo all'inizio e quindi tante cose ancora non funzionano, o non sono presenti.

Scrittura filesystem UFS con Debian

 

 

Questa guida nasce dopo l'installazione di Debian GNU/kFreeBSD, e quindi dalla necessità di dover scrivere dall'interno della mia Debian Sid il filesystem ufs. Al momento mi trovavo nella situazione solamente di lettura e montavo il filesystem ufs con il comando:

mount -t ufs -o ro,ufstype=ufs2,nodev,nosuid /dev/sdaX /mnt

e quando cercavo di scrivere con il comando:

mount -t ufs -o rw,ufstype=ufs2,nodev,nosuid /dev/sdX /mnt

mi restituiva il seguente errore:

debianbox:/home/edmond# mount -t ufs -o rw,ufstype=ufs2,nodev,nosuid /dev/sda9 /mnt
mount: wrong fs type, bad option, bad superblock on /dev/sda9,
       missing codepage or helper program, or other error
       In some cases useful info is found in syslog – try
       dmesg | tail  or so

debianbox:/home/edmond# dmesg | tail -n 1
[ 6931.531458] ufs was compiled with read-only support, can't be mounted as read-write

quindi non potevo scrivere il filesystem ufs in quanto il kernel era stato compilato con l'opzione di solo lettura. A questo punto ho deciso di ricompilare il kernel anche se è considerato “dangereous/experimental”:

sudo apt-get install build-essential bin86 kernel-package libncurses5 libncurses5-dev fakeroot module-init-tools

# cd /usr/src

# uname -r

# apt-get install linux-source-2.6.32

# bzip2 -dc linux-source-2.6.32.tar.bz2 |tar xf -

# ln -sf linux-source-2.6.32 linux

# cd linux

# cp /boot/config-2.6.32-trunk-686 .config

# make menuconfig

spostari nelle sezioni File systems  —> Miscellaneous filesystems  scegliere UFS file system write support (DANGEROUS) e poi salvare. A questo punto siamo pronti per compilare:

io ho due cpu, quindi:

# CONCURRENCY_LEVEL=2 make-kpkg --initrd --append-to-version=-ufs kernel-image kernel-headers

al completamento siamo pronti ad installare il kernel-header ed il kernel-image creati con:

# dpkg -i tutti_e_due_i_kernel

riavviamo e proviamo il nuovo kernel, se nel caso ci troviamo di fronte ad un kernel panic, il motivo è legato al fatto che non trova l'initrd, quindi risolviamo con:

# cd /usr/src

#  update-initramfs -c -k nome_kernel -t

 

Conclusioni:

Devo dire che sono due giorni che provo a scrivere nella partizione freebsd ed al momento non ho riscontrato nessun problema 🙂

Installare Debian GNU/kFreeBSD step by step

 

 

Questa guida può essere utile a chi vuole provare Debian GNU/kFreeBSD, ovvero "un port che consiste di uno spazio utente GNU che usa la libreria C GNU e un kernel FreeBSD sottostante, abbinati con il normale insieme di pacchetti Debian". Sinceramente ho fatto molte prove d'installazione, sia su VirtualBox che su hard disk, e dopo molteplici tentativi sono riuscito ad avere una box con DebianGNU/kFreeBSD funzionante. I problemi principalmente derivano dal debian-installer che nel mio caso falliva spesso e volentieri, poi con la mini.iso del 20100210-11:20 è andato tutto ok, di seguito i link per il download   kfreebsd-amd64 e kfreebsd-i386. Di seguito indicherò solamente i passi secondo me importanti, dato che comunque il debian-installer è semplice ed intuitivo.

Installazione:

Una volta avviata l'installazione ci appare questa immagine:

premere Go Back, per tornare alla pagina principale e selezioniamo Change debconf priority

e selezioniamo medium:

a questo punto proseguiamo con l'installazione, e quindi con la configurazione della rete non facendo caso alla voce em0 (eth0) interfaccia sconosciuta, poichè la riconosce, e quando ci chiede di scegliere un mirror, scegliamo Sid:

l'installazione prosegue fino a quando ci chiede quale kernel installare, e naturalmente scegliamo quello più recente. Se tutto è andato a buon fine si arriva all'installazione di Grub, e qui bisogna fare alcune considerazioni, a secondo di quale strada scegliamo, o meglio di quale versione di Grub abbiamo gia installato nel nostro sistema. Nel mio caso avendo Debian Sid la versione è Grub-pc_1.98~20100128-1.1_i386 e quindi va benissimo, per chi usa un altra distribuzione che ha la versione di Grub inferiore, gli conviene aggiornare in quanto in un dual boot, non riesce a volte ad avviare il kernel freebsd (a me è successo questo). Chiaramente quanto scritto sopra è valido se il debian-installer non riesce ad installare Grub, oppure nell'eventualità che bisogna ripristinarlo da un livecd., quindi di conseguenza la versione di Grub è quella precedente. Comunque manualmente  per un dual boot da inserire sulla propria Distro in /etc/grub.d/40_custom la seguente stringa seguita da un update-grub:

menuentry "Debian GNU/kFreeBSD" {
    insmod ufs2
    set root=(hd0,8)
    echo            Loading kernel of FreeBSD 8.0-1-686 ...
    kfreebsd        /boot/kfreebsd-8.0-1-686.gz
    set kFreeBSD.vfs.root.mountfrom=ufs:/dev/ad0s8
    set kFreeBSD.vfs.root.mountfrom.options=rw
}

considerando che la mia installazione e  nella partizione /dev/sda8.

Una volta avviato il sistema non dovrebbero esserci problemi, ma nel caso non funzionasse il mouse, premere Ctrl-alt-F1:

cd /root

X -configure

e poi:

cp xorg.conf.new /etc/X11/xorg.conf

Per montare il filesystem ufs da linux:

mount -t ufs -o ro,ufstype=ufs2,nodev,nosuid /dev/sda8 /mnt

stringa eventualmente da inserire in /etc/fstab:

/dev/sda8 /mnt      ufs auto,ro,ufstype=ufs2,nodev,nosuid   0 0

 

Installazione su VirtualBox:

Per quanto riguarda l'installazione su VirtualBox non ci sono problemi, l'unica cosa a cui bisogna prestare attenzione è su un paio di cosette. Nella creazione di una nuova macchina virtuale scegliamo come sistema operativo BSD e come versione FreeBSD. Nella configurazione della rete scegliamo come scheda la Intel PRO/1000 MT Desktop o la  PCnet-FAST III connessa con bridge. Durante l'installazione scegliere come kernel il 486.

Guida in continuo aggiornamento 🙂

  1. update