-Amélioré fonctions de download des packages
[hvlinux.git] / stage5 / hv-install-1
index 494716b..6320665 100755 (executable)
@@ -1,16 +1,6 @@
-#!/bin/sh
+#!/bin/bash
 
-LFS_STAGE=stage5
-
-export LFS_PKG_DIR="$(dirname $(pwd))/packages/${LFS_STAGE}"
-export LFS_LOG_DIR=/var/log/hvlinux-install/${LFS_STAGE}
-export LFS_LOG_FILE=${LFS_LOG_DIR}/install.log
-export LFS_TMP=/tmp
-
-# Reading system configuration informations, functions and package versions.
-source ../sysinfos
-source ../functions
-source ../packages-list
+source ../functions/main
 source /etc/profile
 
 if [ "x${USER}" != "xroot" ]; then
@@ -20,262 +10,236 @@ fi
 
 init_log_file
 
-if [ "x${INST_TYPE}" = "xworkstation" -o "x${INST_TYPE}" = "xltsp-server" ]; then
+if [ "x${INST_TYPE}" = "xworkstation" -o \
+    "x${INST_TYPE}" = "xltsp-server" ]; then
     # Gtk
-    ipkg_ac    ${LIBSIGCPP}
-    ipkg_ac    ${JASPER} "--enable-shared"
-    ipkg_ac    ${GTK_DOC}
-    ipkg_ac    ${GLIBMM}
-    ipkg_ac    ${CAIRO}
-    ipkg_ac    ${CAIROMM}
-    ipkg_ac_nb ${PANGO}
-    ipkg_ac    ${PANGOMM}
-    ipkg_ac    ${ATK}
-    ipkg_ac    ${GTK}
-    ipkg_ac    ${GTKMM}
-    ipkg_ac    ${GTK_ENGINES}
-    ipkg_ac    ${PYGOBJECT}
-    ipkg_ac    ${PYCAIRO}
-    ipkg_ac    ${PYGTK}
-    ipkg_ac    ${GC}
-
-    ipkg_cust  ${EMACS} cis-emacs
-    ipkg_ac    ${HVCLOCK}
-    ipkg_ac    ${WMNOTIFY}
+    ipkg ${LIBSIGCPP}
+    ipkg ${JASPER} "--enable-shared"
+    ipkg ${GTK_DOC}
+    ipkg ${GLIBMM}
+    ipkg ${CAIRO}
+    ipkg ${CAIROMM}
+    ipkg -m acnb ${PANGO}
+    ipkg ${PANGOMM}
+    ipkg ${ATK}
+    ipkg ${GTK}
+    ipkg ${GTKMM}
+    ipkg ${GTK_ENGINES}
+    ipkg ${PYGOBJECT}
+    ipkg ${PYCAIRO}
+    ipkg ${PYGTK}
+    ipkg ${GC}
+
+    ipkg ${EMACS}
+    ipkg ${HVCLOCK}
+    ipkg ${WMNOTIFY}
 
     # Needed by GNOME-2
-    ipkg_ac    ${DESKTOP_FILE_UTILS}
-    ipkg_ac    ${SHARED_MIME_INFO}
-    ipkg_ac    ${STARTUP_NOTIFICATION}
-    ipkg_ac    ${LIBWNCK}
-    ipkg_cust  ${ISO_CODES} cis-iso-codes
-    ipkg_ac    ${LIBXKLAVIER}
-    ipkg_ac    ${LIBGLADE}
-    ipkg_ac    ${LIBTASN1}
-    ipkg_ac    ${GUILE} \
+    ipkg ${DESKTOP_FILE_UTILS}
+    ipkg ${SHARED_MIME_INFO}
+    ipkg ${STARTUP_NOTIFICATION}
+    ipkg ${LIBWNCK}
+    ipkg ${ISO_CODES}
+    ipkg ${LIBXKLAVIER}
+    ipkg ${LIBGLADE}
+    ipkg ${LIBTASN1}
+    ipkg ${GUILE} \
         --enable-posix \
         --disable-static \
         --enable-networking \
         --enable-regex
-    ipkg_ac    ${LIBGPG_ERROR}
-    ipkg_ac    ${LIBGCRYPT}
-    ipkg_ac_nb ${GNUTLS}
-    ipkg_ac    ${LIBIDL}
+    ipkg ${LIBGPG_ERROR}
+    ipkg ${LIBGCRYPT}
+    ipkg -m acnb ${GNUTLS}
+    ipkg ${LIBIDL}
 
     # GNOME-2.X configuration
     rscr mult "Configuring ${GNOME2_VER}" ./cis-gnome-config
     source /etc/profile
 
     ipkg_gnome ${ORBIT2}
-    ipkg_cust  ${GCONF} cis-gconf
-    ipkg_ac    ${LIBPROXY} "--with-gnome"
+    ipkg ${GCONF}
+    ipkg ${LIBPROXY} "--with-gnome"
     ipkg_gnome ${GNOME_KEYRING}
-    ipkg_ac    ${LIBSOUP}
+    ipkg ${LIBSOUP}
 fi
 
-ipkg_ac   ${HELP2MAN}
-ipkg_ac   ${GSL}
-ipkg_cust ${CUPS}     cis-cups
-ipkg_cust ${CUPS_PDF} cis-cups-pdf
-ipkg_cust ${SPLIX}    cis-splix
-ipkg_cust ${GHOSTSCRIPT} cis-ghostscript
+ipkg ${HELP2MAN}
+ipkg ${GSL}
+ipkg -m acnb ${CUPS}
+ipkg -m noac ${CUPS_PDF}
+ipkg ${SPLIX}
+ipkg ${GHOSTSCRIPT}
 
 if [ "x${INST_TYPE}" = "xworkstation" -o "x${INST_TYPE}" = "xltsp-server" ]; then
-    ipkg_ac    ${IMAGE_MAGICK} "--with-modules --with-gslib=/usr/lib"
+    ipkg ${IMAGE_MAGICK} "--with-modules --with-gslib=/usr/lib"
     # xpdf headers needed by inkscape
-    ipkg_ac    ${POPPLER} "--enable-xpdf-headers --enable-zlib"
-    ipkg_ac    ${LIBRSVG} "--disable-gtk-doc --disable-mozilla-plugin"
-    ipkg_ac    ${BABL}
-    ipkg_ac    ${GEGL}
-    ipkg_ac    ${GIMP} "--disable-print"
-    ipkg_ac_nb ${GUTENPRINT}
-    ipkg_cust  ${BOOST} cis-boost
+    ipkg ${POPPLER} "--enable-xpdf-headers --enable-zlib"
+    ipkg ${LIBRSVG} "--disable-gtk-doc --disable-mozilla-plugin"
+    ipkg ${BABL}
+    ipkg ${GEGL}
+    ipkg ${GIMP} "--disable-print"
+    ipkg -m acnb ${GUTENPRINT}
+    ipkg -m noac ${BOOST}
     # inkscape-0.47 has a problem with poppler >= 0.12.2
-    ####ipkg_ac    ${INKSCAPE} "CFLAGS=\"-DPOPPLER_NEW_GFXFONT\""
+    # Try 0.48.1
+    ipkg ${INKSCAPE} "CFLAGS=\"-DPOPPLER_NEW_GFXFONT\""
 fi
 
-ipkg_cust ${CDRTOOLS} cis-cdrtools
-ipkg_cust ${DVDRWTOOLS} cis-dvd-rw-tools
-ipkg_ac   ${LIBDVDCSS}
-ipkg_ac   ${LIBDVDREAD} "--with-libdvdcss"
-ipkg_cust ${DVDFS} cis-dvdfs
+ipkg ${CDRTOOLS}
+ipkg ${DVDRWTOOLS}
+ipkg ${LIBDVDCSS}
+ipkg ${LIBDVDREAD} "--with-libdvdcss"
+ipkg -m noac ${DVDFS}
 
 if [ "x${INST_TYPE}" = "xworkstation" -o "x${INST_TYPE}" = "xltsp-server" ]; then
-    ipkg_cust ${TETEX_SRC} cis-tetex
+    ipkg ${TETEX_SRC} cis-tetex
 
-    # 'Five years old' bug --> Change the date to something in 2004 before installing.
-    ipkg_cust ${JADETEX}   cis-jadetex
+    # 'Five years old' bug --> Change the date to something in 2004 before
+    # installing.
+    # jadetex is installed automatically by TeX-Live
+    ipkg ${JADETEX}
 fi
 
 if [ "x${SANE_SUPPORT}" = "xyes" ]; then
-    ipkg_cust ${SANE_BACKENDS} cis-sane-backends
-    ipkg_cust ${XSANE} cis-xsane
+    ipkg ${SANE_BACKENDS}
+    ipkg ${XSANE}
 fi
 
-ipkg_pm  ${PERL_MOD_XML_SIMPLE}
-ipkg_pm  ${PERL_MOD_PARSE_REDESCENT}
-ipkg_ac  ${ICON_NAMING_UTILS}
-ipkg_ac  ${TANGO_ICON_THEME}
-ipkg_ac  ${TANGO_ICON_THEME_EXTRAS}
+ipkg -m pm ${PERL_MOD_XML_SIMPLE}
+ipkg -m pm ${PERL_MOD_PARSE_REDESCENT}
+ipkg ${ICON_NAMING_UTILS}
+ipkg ${TANGO_ICON_THEME}
+ipkg ${TANGO_ICON_THEME_EXTRAS}
 
 if [ "x${INST_TYPE}" = "xworkstation" -o "x${INST_TYPE}" = "xltsp-server" ]; then
     # Audio
     if [ "x${SOUND_CARD}" = "xyes" ]; then
         # Needed by some packages, mostly audio applications.
-        ipkg_ac    ${LIBOIL}
+        ipkg ${LIBOIL}
 
         # ALSA
-       ipkg_cust  ${ALSA_LIB}   cis-alsa-lib
-       ipkg_cust  ${ALSA_UTILS} cis-alsa-utils
-       ipkg_ac    ${ALSA_OSS}
+       ipkg ${ALSA_LIB}
+       ipkg ${ALSA_UTILS}
+       ipkg ${ALSA_OSS}
 
         # Audio raw utilities
-        ipkg_ac    ${LIBSAMPLERATE}
+        ipkg ${LIBSAMPLERATE}
 
         # Audio file formats
-       ipkg_ac    ${LIBOGG}
-       ipkg_ac    ${LIBVORBIS}
-       ipkg_ac_nb ${FLAC}
-       ipkg_ac    ${LAME}
-        ipkg_ac    ${LIBA52} "--enable-shared"
-       ipkg_cust  ${LIBID3TAG} cis-libid3tag
-       ipkg_cust  ${LIBMAD} cis-libmad
-
-        ipkg_ac_nb ${LIBFAAC}
-        ipkg_ac_nb ${LIBFAAD2}
-        ipkg_ac    ${LIBTHEORA}
-        ipkg_cust  ${XVIDCORE} cis-xvidcore
+       ipkg ${LIBOGG}
+       ipkg ${LIBVORBIS}
+       ipkg -m acnb ${FLAC}
+       ipkg ${LAME}
+        ipkg ${LIBA52} "--enable-shared"
+       ipkg ${LIBID3TAG}
+       ipkg ${LIBMAD}
+
+        ipkg -m acnb ${LIBFAAC}
+        ipkg -m acnb ${LIBFAAD2}
+        ipkg ${LIBTHEORA}
+        ipkg ${XVIDCORE}
 
         # Audio libraries
-       ipkg_ac_nb ${AUDIOFILE}
-        ipkg_ac    ${PORTAUDIO}
-       ipkg_ac    ${LIBSNDFILE}
+       ipkg -m acnb ${AUDIOFILE}
+        ipkg ${PORTAUDIO}
+       ipkg ${LIBSNDFILE}
 
         # Audio servers
-       ipkg_ac   ${ESOUND}
-        ipkg_ac   ${SPEEX}
-        ipkg_cust ${PULSEAUDIO} cis-pulseaudio
-       ipkg_ac   ${JACK} "--disable-portaudio"
+       ####ipkg ${ESOUND} # Necessary????
+        ipkg ${SPEEX}
+        ##ipkg ${PULSEAUDIO}
+       ipkg ${JACK} "--disable-portaudio"
 
-       ipkg_ac  ${ALSA_PLUGINS} # Depends on pulseaudio
-       ipkg_ac  ${VORBIS_TOOLS}
+       ipkg ${ALSA_PLUGINS} # Depends on pulseaudio
+       ipkg ${VORBIS_TOOLS}
 
         # Audio applications
-       ipkg_ac_nb ${GRIP} "--disable-id3"
-        ipkg_ac_nb ${CDRDAO}
-        ipkg_ac    ${EASYTAG}
-        ipkg_ac_nb ${LILYPOND}
-
-        ipkg_ac_nb ${FFMPEG} "--enable-shared --enable-pthreads --enable-gpl --enable-nonfree --disable-ffplay \
-                              --enable-libfaac --enable-libfaad --enable-libmp3lame --enable-libtheora \
-                              --enable-libvorbis --enable-libxvid"
+       ipkg -m acnb ${GRIP} "--disable-id3"
+        ipkg -m acnb ${CDRDAO}
+        ipkg ${EASYTAG}
+        ipkg -m acnb ${LILYPOND}
+
+        ipkg -m acnb ${FFMPEG}
     fi
 
-    ipkg_ac    ${SYLPHEED} "--enable-ssl --enable-ldap"
-    ipkg_cust  ${NSS} cis-nss
-    ipkg_cust  ${FIREFOX} cis-firefox
+    ipkg ${SYLPHEED} "--enable-ssl --enable-ldap"
+    ipkg ${NSS}
+    ipkg ${FIREFOX}
 
     # Plugins for Firefox
-    ipkg_cust  ${JAVA} cis-java
-    ipkg_cust  ${AGG} cis-agg
-    ipkg_cust  ${GNASH} cis-gnash
+    ipkg ${AGG}
+    ipkg ${GNASH}
 fi
 
-ipkg_ac   ${LIBGAMIN} "--libexecdir=/usr/sbin"
-ipkg_ac   ${PCMANFM}
+ipkg ${LIBGAMIN} "--libexecdir=/usr/sbin"
+ipkg ${PCMANFM}
 
 # Mail
-ipkg_cust ${SASL2}     cis-sasl2
-ipkg_cust ${OPENLDAP}  cis-openldap
-ipkg_cust ${KERBEROS5} cis-krb5
-ipkg_cust ${SENDMAIL}  cis-sendmail
-
+ipkg ${SASL2}
 if [ "x${INST_TYPE}" = "xserver" -o "x${INST_TYPE}" = "xltsp-server" ]; then
-    ipkg_cust ${PROCMAIL} cis-procmail
-    ipkg_ac   ${LIBSPF2}
-    ipkg_cust ${MILTER_SPF} cis-milter-spf
-    ipkg_cust ${MILTER_GREYLIST} cis-milter-greylist
+    ipkg ${OPENLDAP}
 fi
-
-# fcron needs sendmail installed.
-ipkg_cust ${FCRON}   cis-fcron
-ipkg_cust ${GETDATE} cis-getdate
+ipkg ${KERBEROS5}
+ipkg -m noac ${SENDMAIL} # Replace by SSMTP for workstation...
 
 if [ "x${INST_TYPE}" = "xserver" -o "x${INST_TYPE}" = "xltsp-server" ]; then
-    ipkg_cust ${CLAMAV}       cis-clamav
+    ipkg -m noac ${PROCMAIL}
+    ipkg -m noac ${LIBSPF2}
+    ipkg ${MILTER_SPF}
+    ipkg ${MILTER_GREYLIST}
+    ipkg ${CLAMAV}
 
     # Required PERL modules for SpamAssassin
-    ipkg_pm    ${PERL_MOD_HTML_TAGSET}
-    ipkg_pm    ${PERL_MOD_HTML_PARSER}
-    ipkg_pm    ${PERL_MOD_APACHE_LOGGED_AUTH_DBI}
-    ############ipkg_pm    ${PERL_MOD_DB_FILE}
-# Berkeley DB n'est plus installé...
-########PERL_MOD_DB_FILE="DB_File-1.814"
-    ipkg_pm    ${PERL_MOD_DIGEST_SHA1}
-    ipkg_pm    ${PERL_MOD_URI}
-    ipkg_pm    ${PERL_MOD_LWP}
-    ipkg_pm    ${PERL_MOD_NET_DNS} --no-online-tests
-
-    # Needed by OpenOffice ???
-    #ipkg_pm    ${PERL_MOD_ARCHIVE_ZIP}
-    #ipkg_pm    ${PERL_MOD_COMPRESS_ZLIB}
-    #ipkg_pm    ${PERL_MOD_IO_COMPRESS_BASE}
-    #ipkg_pm    ${PERL_MOD_COMPRESS_RAW_ZLIB}
-    #ipkg_pm    ${PERL_MOD_IO_COMPRESS_ZLIB}
-PERL_MOD_ARCHIVE_ZIP="Archive-Zip-1.30"
-PERL_MOD_COMPRESS_ZLIB="Compress-Zlib-2.015"
-PERL_MOD_IO_COMPRESS_BASE="IO-Compress-Base-2.024"
-PERL_MOD_IO_COMPRESS_ZLIB="IO-Compress-Zlib-2.024"
-PERL_MOD_COMPRESS_RAW_ZLIB="Compress-Raw-Zlib-2.024"
-
-    ipkg_cust ${SPAMASSASSIN} cis-spamassassin
-    ipkg_cust ${UW_IMAP}      cis-uw-imap
-
-    # Apache
-    ipkg_cust ${HTTPD} cis-apache
-    ipkg_cust ${PHP}   cis-php
-
-    ipkg_cust ${SQUIRRELMAIL} cis-squirrelmail
-    ipkg_cust ${MAILMAN} cis-mailman
-    ipkg_ac   ${FETCHMAIL} "--with-ssl"
-    ipkg_ac   ${MUTT} "--enable-imap --with-ssl"
+    ipkg -m pm ${PERL_MOD_HTML_TAGSET}
+    ipkg -m pm ${PERL_MOD_HTML_PARSER}
+    ipkg -m pm ${PERL_MOD_APACHE_LOGGED_AUTH_DBI}
+    ipkg -m pm ${PERL_MOD_DIGEST_SHA1}
+    ipkg -m pm ${PERL_MOD_URI}
+    ipkg -m pm ${PERL_MOD_LWP}
+    ipkg -m pm ${PERL_MOD_NET_DNS} "--no-online-tests"
+    ipkg -m pm ${PERL_MOD_COMPRESS_ZLIB}
+    ipkg -m pm ${SPAMASSASSIN}
+
+    ipkg ${UW_IMAP}
+
+    ipkg ${HTTPD} # Apache
+    ipkg ${PHP}
+
+    ipkg -m noac ${SQUIRRELMAIL}
+    ipkg ${FETCHMAIL} "--with-ssl"
+    ipkg ${MUTT} "--enable-imap --with-ssl"
 
     # Subversion server (client was already installed in stage2) 
-    ipkg_cust ${SUBVERSION} cis-subversion
-    ipkg_ac   ${INDENT}
+    ipkg ${SUBVERSION}
+    ipkg ${INDENT}
 fi
 
 if [ "x${USE_SAMBA}" = "xyes" ]; then
-    ipkg_cust ${SAMBA} cis-samba
+    ipkg ${SAMBA}
 fi
 
 if [ "x${INST_TYPE}" = "xltsp-server" ]; then
-    ipkg_cust ${TFTP_HPA} cis-tftp-hpa
-    ipkg_cust ${LTSP_UTILS} cis-ltsp-utils
+    ipkg ${TFTP_HPA}
+    ipkg ${LTSP_UTILS}
 fi
 
-ipkg_ac_nb ${KVM}
-ipkg_ac_nb ${BRIDGE_UTILS}
-ipkg_cust  ${UML_UTILITIES} cis-uml-utilities
-
-ipkg_cust  ${CKERMIT} cis-ckermit
-
-# BitTorrent client
-ipkg_ac    ${TRANSMISSION} "--disable-daemon"
-
-ipkg_ac    ${GNUPG} "--libexecdir=/usr/lib"
-
-
+ipkg -m acnb ${KVM}
+ipkg -m acnb ${BRIDGE_UTILS}
+ipkg ${UML_UTILITIES}
 
+ipkg ${CKERMIT}
 
-ipkg_ac  ${LIBGEDA}
-ipkg_ac  ${GEDA_SYMBOLS}
-ipkg_ac  ${GEDA_GSCHEM}
-ipkg_ac  ${GEDA_GNETLIST}
-ipkg_ac  ${GEDA_SYMCHECK}
-ipkg_ac  ${GEDA_GATTRIB}
+ipkg ${TRANSMISSION} "--disable-daemon"
 
+ipkg ${GNUPG} "--libexecdir=/usr/lib"
 
+ipkg ${LIBGEDA}
+ipkg ${GEDA_SYMBOLS}
+ipkg ${GEDA_GSCHEM}
+ipkg ${GEDA_GNETLIST}
+ipkg ${GEDA_SYMCHECK}
+ipkg ${GEDA_GATTRIB}
 
 rscr mult  "Performing post-install" cis-post-install