erlug
[Top] [All Lists]

Re: [Erlug] Quale scheda video?

To: ERlug - Lista Pubblica <erlug@xxxxxxxxxxxxxx>
Subject: Re: [Erlug] Quale scheda video?
From: Fabio Muzzi <kurgan@xxxxxxxxxx>
Date: Wed, 15 Apr 2009 17:57:07 +0200
Davide Bolcioni wrote:

dai "dpkg-reconfigure exim4-config".

Ti stai riferendo a debconf ? Sono appunto in procinto di
interessarmene, per questo lo chiedo. Non gli stai facendo
esattamente buona pubblicità :-)

Non so se usi debconf, e` uno script in /etc/exim4 che serve a compilare la configurazione.


Per darti un'idea di dove e` arrivato l' UCAS di
Debian, la loro config e` un set di qualcosa come 40 files
contenenti ognuno uno spezzone di configurazione (anche roba
da 3 righe per file) i quali in realta` contengono la configurazione scritta in un metalinguaggio
che viene interpretato dal compilatore di configurazioni il
quale produce a sua volta altri 40 files che questa volta
pero` sono nel liguaggio di configurazione di Exim e che poi Exim e` costretto a leggere a forza di include.

Raccontato così, sembra sendmail.cf costruito tramite m4, non è
una così brutta cosa.

Guarda, visto da uno che conosce exim, sembra una cazzata colossale.

Exim ha un ottimo file di configurazione monolitico, che puo` avere degli include, che supporta nativamente i lookup su db e su text file, che supporta nativamente la definizione di variabili da usarsi nello stesso.

Ha senso tenerlo monolitico e al limite includere qualche pezzo, o leggere da qualche file esterno dei dati.


Quello che hanno fatto in Debian e` sbagliato per due motivi:


1- hanno scritto la configurazione in un metalinguaggio che contiene variabili (del metalinguaggio) che settano variabili (del linguaggio di exim). Vogliamo farla un po` piu` complessa? Possiamo astrarre ancora per altri 10 livelli, ottenendo cosi` un meta-meta-meta-meta-meta... ci siamo capiti.

2- hanno sparpagliato la configurazione per decine di microfiles. Piccolo problema: in exim la configurazione ha un ordine, non si possono mettere i pezzi dentro alla cazzo, altrimenti non funziona. Allora hanno dovuto numerare tutti i pezzi, rendendo la cosa ancora piu` complessa. E poi hanno diviso a mio avviso troppo, praticamente arrivando all' assurdo di avere una divisione quasi atomica, che genera enorme difficolta` nel capire quale pezzo contiene quale parte della configurazione, e rende quasi impossibile capire cosa succede se si modifica qualcosa.


Voglio dire: seppure con qualche limite, trovo che le configurazioni di Apache2 e di Bind siano stato spezzate con criterio, senza aggiungere inutile complicazione, e in modo che si capisca dove mettere le mani. Quasi, perche` la scelta di mettere "NamedVirtualHost *:80" dentro al file che si chiama "ports" mi sembra un po` idiota, a dire il vero. Ma comunque si vede che seguendo l'esempio si riesce a mettere assieme molto bene una configurazione con diversi virtuali e diversi moduli, eccetera. Se guardi la configurazione di Exim, l'unica cosa che esce dal tuo cervello e` un enorme "WHAT THE FUCK?!?", dopodiche` passi immediatamente ad un "aptitude purge exim4". Il motivo per cui io non ho seguito la stessa strada e` che ho imparato ad usare Exim (versione 3) facendo una configurazione bella complessa e studiando la documentazione sul sito di Exim, e all'epoca Debian proponeva un file di configurazione "normale", ovvero monolitico, ordinato, e non precompilato, dove si usavano le variabili direttamente nella sintassi di Exim, e non delle metavariabili per settare delle variabili che poi fanno le cose.


Spero di aver reso l'idea di quanto io possa odiare questa cosa.


--

Fabio "Kurgan" Muzzi

Everything is better with Bluetooth

<Prev in Thread] Current Thread [Next in Thread>