Gestione dei metapacchetti: differenze tra le versioni

Vai alla navigazione Vai alla ricerca
(sostituito "kdebase" (non più presente))
Riga 1: Riga 1:
{{Versioni compatibili}}
{{Versioni compatibili}}
== Cosa sono i metapacchetti ==
== Cosa sono i metapacchetti ==
Esiste un tipo particolare di pacchetto detto [[metapacchetto]] che in realtà non contiene alcun eseguibile o sorgente, ma serve semplicemente per installare tutto l'insieme di pacchetti (a volte a loro volta metapacchetti) che lo costituisce.
Esiste un tipo particolare di pacchetto detto [[metapacchetto]] che in realtà non contiene alcun eseguibile o sorgente, ma serve semplicemente per installare tutto l'insieme di pacchetti (a volte a loro volta metapacchetti) che lo costituisce.<br/>
Un esempio è il [[pacchetto]] "kdebase":
Un esempio è il [[pacchetto]] "kde-full" che permette di installare l'intero ambiente KDE in un colpo solo. Scarichiamo il pacchetto:
 
<pre>
<pre> # ls -l
$ apt-get download kde-full
total 6348
</pre>
-rw-r--r--  1 root root 6486276 Jan 26 17:32 kdebase_2.2.2-14.9_i386.deb</pre>
e controlliamo la sua dimensione:
<pre>
$ ls -l kde-full*
-rw-r--r-- 1 pippo pippo 11732 apr 19 2013 kde-full_77+deb7u1_all.deb
</pre>


Già le dimensioni lasciano presagire qualcosa: come può un pacchetto  
Già le dimensioni lasciano presagire qualcosa: come può un pacchetto come "kde-full" occupare solo poco meno di 12 KB? Vediamo cosa contiene:
come kdebase occupare solo poco più di 6 Mb? Spacchettiamolo:


<pre> # ar -x  kdebase_2.2.2-14.9_i386.deb
<pre>
# ls
$ dpkg-deb -c kde-full_77+deb7u1_all.deb  
control.tar.gz  data.tar.gz  debian-binary  kdebase_2.2.2-14.9_i386.deb
drwxr-xr-x root/root        0 2013-04-19 01:18 ./
# tar xvzf data.tar.gz
drwxr-xr-x root/root        0 2013-04-19 01:18 ./usr/
./
drwxr-xr-x root/root        0 2013-04-19 01:18 ./usr/share/
./usr/
drwxr-xr-x root/root        0 2013-04-19 01:18 ./usr/share/doc/
./usr/share/
drwxr-xr-x root/root        0 2013-04-19 01:18 ./usr/share/doc/kde-full/
./usr/share/doc/
-rw-r--r-- root/root      1038 2013-03-25 19:44 ./usr/share/doc/kde-full/copyright
./usr/share/doc/kdebase/
-rw-r--r-- root/root      9582 2013-04-19 01:18 ./usr/share/doc/kde-full/changelog.gz
./usr/share/doc/kdebase/README.pam
./usr/share/doc/kdebase/README.Debian
./usr/share/doc/kdebase/copyright
./usr/share/doc/kdebase/README.gz
./usr/share/doc/kdebase/changelog.Debian.gz
./usr/share/doc/kde/
./usr/share/doc/kde/HTML/
./usr/share/doc/kde/HTML/en/
./usr/share/doc/kde/HTML/en/kcontrol/
./usr/share/doc/kde/HTML/en/kdebugdialog/
./usr/share/doc/kde/HTML/en/kdesu/
...
</pre>
</pre>


L'archivio <code>data.tar.gz</code> contiene solo documentazione e delle librerie.
L'archivio <code>data.tar.gz</code> contiene solo documentazione e delle librerie.<br/>
Diamo un'occhiata al <code>control</code>:
Diamo un'occhiata al file <code>control</code>:


<pre> station:/opt# tar xvzf control.tar.gz
<pre>
./
$ dpkg-deb -I kde-full_77+deb7u1_all.deb
./shlibs
nuovo pacchetto debian, versione 2.0.
./postinst
dimensione 11732 byte: archivio di controllo=888 byte.
./preinst
    1332 byte,    23 righe      control             
./prerm
    137 byte,    2 righe      md5sums            
./postrm
Package: kde-full
./conffiles
Source: meta-kde
./md5sums
Version: 5:77+deb7u1
./control
Architecture: all
station:/opt# cat control
Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
Package: kdebase
Installed-Size: 35
Version: 4:2.2.2-14.9
Depends: kde-plasma-desktop (>= 5:77+deb7u1), kde-plasma-netbook (>= 5:77+deb7u1), kdeadmin (>= 4:4.8.4), kdeartwork (>= 4:4.8.4), kdegraphics (>= 4:4.8.4), kdeedu (>= 4:4.8.4), kdegames (>= 4:4.8.4), kdemultimedia (>= 4:4.8.4), kdenetwork (>= 4:4.8.4), kdeutils (>= 4:4.8.4), kdepim (>= 4:4.4.11), kdeplasma-addons (>= 4:4.8.4)
Section: x11
Recommends: kde-standard (>= 5:77+deb7u1), kdeaccessibility (>= 4:4.8.4), kdesdk (>= 4:4.8.4), kdetoys (>= 4:4.8.4), kdewebdev (>= 4:4.8.4)
Priority: optional
Suggests: kde-l10n (>= 4:4.8.4), calligra (>= 1:2.4.2), xorg
Architecture: i386
Breaks: kde-minimal (<< 5:57)
Depends: kdelibs3 (>= 4:2.2.2-1), libc6 (>= 2.2.4-4), libfam0,
Provides: kde-software-compilation
libjpeg62, libkonq3 (>= 4:2.2.2-14.9), libpng2(>=1.0.12), libqt2 (>=  
Section: metapackages
3:2.3.1-1), libstdc++2.10-glibc2.2 (>= 1:2.95.4-0.010810), xlibs (>>
Priority: optional
4.1.0), zlib1g (>= 1:1.1.4), debianutils (>= 1.6), xfree86-common,
Homepage: http://www.kde.org
libpam-modules, kdewallpapers, kdebase-libs (= 4:2.2.2-14.9)
Description: ...
Recommends: kdebase-doc, konqueror, konsole, kate | kedit | kword,  
</pre>
libarts | libarts-alsa, kdebase-audiolibs | kdebase3-audiolibs, kscreensaver
Suggests: menu (>=1.5-5), kdm | x-display-manager, kde-i18n,
libpam-cracklib, xscreensaver, xscreensaver-gl, xearth, xplanet, usbutils
Provides: x-session-manager
Installed-Size: 16280
Maintainer: Christopher L Cheney <ccheney@debian.org>
Description: KDE core applications
This is a suite of all kde core applications :
Includes:  kicker, kwin, kdesktop and others...</pre>


In realtà, vediamo che a costituire il cuore di KDE sono le sue dipendenze. Senza i metapacchetti bisognerebbe installare uno per uno i pacchetti che costituiscono KDE.
In realtà, vediamo che a costituire il cuore del pacchetto sono le sue dipendenze (a loro volta metapacchetti). Questo permette di installare KDE attraverso l'installazione di '''un solo''' pacchetto. Senza i metapacchetti bisognerebbe installare uno per uno i pacchetti che costituiscono KDE.


== Lista dei metapacchetti ==
== Lista dei metapacchetti ==