TODO
--tar -tf $tarball | head -n1 --> pour extraire le nom du répertoire root
- du package automatiquement...
+Because dependencies are only computed as a side-effect of the compilation, no dependency information exists the first time a package is built. This is OK because all the files need to be built anyway: make does not have to decide which files need to be rebuilt. In fact, dependency tracking is completely useless for one-time builds and there is a configure option to disable this:
--Transférer /mnt/hvrepos directement dans /srv/www/htdocs/hugovil...
-
-basename $(tar -tf mozilla-3.0.1.tar.bz2 | head -n1)
+--disable-dependency-tracking
+ Speed up one-time builds.
--packages update: sauvegarder le fichier téléchargé sous un nom temporaire
- et le copier si tout est OK.
+-Transférer /mnt/hvrepos directement dans /srv/www/htdocs/hugovil...
-Dans le fichier packages-list, utiliser un array pour
définir le nom du module et l'hyperlien pour le télécharger:
-webalizer: needs gd-2.0.33
--install guitartex et lilypond automatiquement:
- lilypond:
- -fontforge
- -mftrace -> t1utils
- -> autotrace
+-install guitartex automatiquement
-installer fonts Deja Vu
${FETCHMAIL}: ${OPENSSL} ${PROCMAIL}
${FUSE}: ${UDEV}
+
+${EVINCE}: ${POPPLER} ${LIBGNOMEUI} ${GNOME_ICON_THEME} ${GNOME_DOC_UTILS} ${TETEX_SRC} ${ESPGS} ${T1LIB}
+
+${DBUS_GLIB}: ${DBUS}
+${EGGDBUS}: ${DBUS_GLIB}
+${GOBJECT_INSTROSPECTION}: ${GLIB} ${LIBFFI}
+${POLKIT}: ${GOBJECT_INSTROSPECTION} ${EGGDBUS}
+
+${GNOME_KEYRING}: ${LIBTASN1}
return 1
fi
- echo ${1} | sed "s!.*-\(\([0-9]\.\)*\).*!\1!g" | sed 's!\.$!!g'
+ echo ${1} | sed "s!.*-\([0-9].*\)!\1!g"
}
# Extracting the base version number from a complete package name.
# Checking if variable contains the new value
if egrep "^${VARIABLE}" ${FILE} | grep "${VALUE}" 1> /dev/null 2>&1; then
- echo "variable ${VARIABLE} already contains value: ${VALUE}"
- exit 0
+ echo "${FUNCNAME}(), variable ${VARIABLE} already contains value: ${VALUE}"
+ return 0
fi
# Adding new value to variable
if ls ${LFS_PKG_DIR}/${1}-*.patch 1> /dev/null 2>&1; then
cd ${LFS_PKG_DIR}
for patch in ${1}-*.patch; do
- echo "******************************"
- echo "* Applying patch: ${patch}"
- echo "******************************"
+ echo "Applying patch: ${patch}:"
patch -Np1 -d ${LFS_TMP}/${TARGET_DIR} -i ${LFS_PKG_DIR}/${patch} || exit 1
done
fi
elif [ $# -eq 2 ]; then
local TOPDIR=${2}
else
- echo
- echo "${FUNCNAME}(): Incorrect number of arguments (must be 1 or 2)"
+ echo "${FUNCNAME}(): Incorrect number of arguments (must be 1 or 2)" > /dev/stderr
return ${EXIT_FAILURE}
fi
local PACKAGE=${1}
if [ ! -f ${LFS_PKG_DIR}/${PACKAGE}.tar.bz2 ]; then
- echo "${FUNCNAME}(): Missing source package: \"${PACKAGE}.tar.bz2\""
+ echo "${FUNCNAME}(): Missing source package: \"${PACKAGE}.tar.bz2\"" > /dev/stderr
return ${EXIT_FAILURE}
fi
echo "------------------------" 1>> ${LFS_LOG_FILE}
echo "Installing" ${LABEL} 1>> ${LFS_LOG_FILE}
- decompress_package ${PACKAGE_NAME} 1>> ${PACKAGE_LOG} 2>&1
+ echo "Decompressing package" 1>> ${PACKAGE_LOG} 2>&1 &&
+ decompress_package ${PACKAGE_NAME} 1> /dev/null 2>> ${PACKAGE_LOG}
eval_retval2
local DECOMPRESSED_DIRNAME=$(static_decompressed_dirname ${PACKAGE_NAME})
# Removing old build directory (if any)
if [ -d ${LFS_TMP}/${PACKAGE_NAME}-build ]; then
- rm -v -rf ${LFS_TMP}/${PACKAGE_NAME}-build 1>> ${PACKAGE_LOG} 2>&1
+ echo "Removing old build directory" 1>> ${PACKAGE_LOG} 2>&1 &&
+ rm -v -rf ${LFS_TMP}/${PACKAGE_NAME}-build 1> /dev/null 2>> ${PACKAGE_LOG}
eval_retval2
fi
# do so by renaming them.
if [ -d ${LFS_TMP}/${PACKAGE_NAME} ]; then
# Removing source directory
- rm -v -rf ${LFS_TMP}/${PACKAGE_NAME} 1>> ${PACKAGE_LOG} 2>&1
+ echo "Removing source directory" 1>> ${PACKAGE_LOG} 2>&1 &&
+ rm -v -rf ${LFS_TMP}/${PACKAGE_NAME} 1> /dev/null 2>> ${PACKAGE_LOG}
eval_retval2
fi
if [ -d ${LFS_TMP}/${PACKAGE_NAME}-build ]; then
# Removing build directory
- rm -v -rf ${LFS_TMP}/${PACKAGE_NAME}-build 1>> ${PACKAGE_LOG} 2>&1
+ echo "Removing build directory" 1>> ${PACKAGE_LOG} 2>&1 &&
+ rm -v -rf ${LFS_TMP}/${PACKAGE_NAME}-build 1> /dev/null 2>> ${PACKAGE_LOG}
eval_retval2
fi
# URL
LFS_BASE_URL="http://www.linuxfromscratch.org"
+CLFS_BASE_URL="http://svn.cross-lfs.org/svn/repos/cross-lfs/trunk"
+HV_BASE_URL="http://www.hugovil.com/hvlinux-repository"
+
LFS_PATCHES_URL="${LFS_BASE_URL}/patches/lfs/development"
-LFS_PACKAGES_URL="ftp://ftp.osuosl.org/pub/lfs/lfs-packages/conglomeration"
BLFS_PATCHES_URL="${LFS_BASE_URL}/patches/blfs/svn"
-HV_BASE_URL="http://www.hugovil.com/hvlinux-repository"
-HV_PACKAGES_URL="${HV_BASE_URL}/packages"
+CLFS_PATCHES_URL="http://patches.cross-lfs.org/dev"
HV_PATCHES_URL="${HV_BASE_URL}/patches"
+
+LFS_PACKAGES_URL="ftp://ftp.osuosl.org/pub/lfs/lfs-packages/conglomeration"
+HV_PACKAGES_URL="${HV_BASE_URL}/packages"
SOURCEFORGE_URL="http://internap.dl.sourceforge.net/sourceforge"
GNOME_URL="http://ftp.gnome.org/pub/gnome/sources"
GNU_URL="http://ftp.gnu.org/pub/gnu"
LFS_PATCHES_LIST=${LFS_PKG_DIR}/patches-list-lfs.html
BLFS_PATCHES_LIST=${LFS_PKG_DIR}/patches-list-blfs.html
+CLFS_PATCHES_LIST=${LFS_PKG_DIR}/patches-list-clfs.html
HV_PATCHES_LIST=${LFS_PKG_DIR}/patches-list-hv.html
# Arg. #1: URL for patches repository.
fi
# Getting list of all patches from LFS server.
- ##action_checkbox "Fetching LFS patches list"
- static_fetch_patches_list ${LFS_PATCHES_URL} ${LFS_PATCHES_LIST}
+ action_checkbox "Fetching LFS patches list" static_fetch_patches_list ${LFS_PATCHES_URL} ${LFS_PATCHES_LIST}
# Getting list of all patches from BLFS server.
action_checkbox "Fetching BLFS patches list" static_fetch_patches_list ${BLFS_PATCHES_URL} ${BLFS_PATCHES_LIST}
+ # Getting list of all patches from CLFS server.
+ action_checkbox "Fetching CLFS patches list" static_fetch_patches_list ${CLFS_PATCHES_URL} ${CLFS_PATCHES_LIST}
+
# Getting list of all patches from hugovil.com server.
action_checkbox "Fetching hugovil.com patches list" static_fetch_patches_list ${HV_PATCHES_URL} ${HV_PATCHES_LIST}
}
if [ -n "${PATCHES_FOUND}" ]; then
for p in ${PATCHES_FOUND}; do
if [ ! -f ${LFS_PKG_DIR}/${p} ]; then
- action_checkbox_time "Fetching ${p}" ${WGETCMD} ${PATCHES_URL}/${p}
+ action_checkbox_time "Fetching ${p} from ${PATCHES_URL}" ${WGETCMD} ${PATCHES_URL}/${p}
fi
done
fi
return 1
fi
- # Checking if patch is available from LFS.
- static_checkpatch ${PACK} ${LFS_PATCHES_LIST} ${LFS_PATCHES_URL}
+ if [ -n "${USE_LFS_PATCHES}" ]; then
+ # Checking if patch is available from LFS.
+ static_checkpatch ${PACK} ${LFS_PATCHES_LIST} ${LFS_PATCHES_URL}
+ fi
+
+ if [ -n "${USE_BLFS_PATCHES}" ]; then
+ # Checking if patch is available from BLFS.
+ static_checkpatch ${PACK} ${BLFS_PATCHES_LIST} ${BLFS_PATCHES_URL}
+ fi
- # Checking if patch is available from BLFS.
- static_checkpatch ${PACK} ${BLFS_PATCHES_LIST} ${BLFS_PATCHES_URL}
+ if [ -n "${USE_CLFS_PATCHES}" ]; then
+ # Checking if patch is available from CLFS.
+ static_checkpatch ${PACK} ${CLFS_PATCHES_LIST} ${CLFS_PATCHES_URL}
+ fi
- # Checking if patch is available from hugovil.com.
- static_checkpatch ${PACK} ${HV_PATCHES_LIST} ${HV_PATCHES_URL}
+ if [ -n "${USE_HV_PATCHES}" ]; then
+ # Checking if patch is available from hugovil.com.
+ static_checkpatch ${PACK} ${HV_PATCHES_LIST} ${HV_PATCHES_URL}
+ fi
}
# Convert multiple compressed gzip files to bzip2.
if detect_file_not_found; then
# If file was not found, maybe a .tar.gz file exist...
${WGETCMD} ${URL}/${PACK}.tar.gz
-
if [ ${?} -eq 0 ]; then
gztobz2 ${LFS_PKG_DIR}/${PACK}.tar.gz || return 1
return 0
fi
if [ ! -h ${LFS_PKG_DIR}/${FILE} ]; then
- # The link does not exist. First check if source file exist.
- #if [ ! -f ${LFS_PKG_BASE}/${SRCSTAGE}/${FILE} ]; then
- # echo "${FUNCNAME} ${*}"
- # echo "Missing source file..."
- # return 1
- #fi
+ # Issue a warning if source file doesn't exist.
+ if [ ! -f ${LFS_PKG_BASE}/${SRCSTAGE}/${FILE} ]; then
+ source_link_status=" (missing source file)"
+ else
+ source_link_status=""
+ fi
# Create link if it doesn't exist
- action_checkbox_time "Linking ${PACKAGE_NAME}" ln -s ../${SRCSTAGE}/${FILE} ${LFS_PKG_DIR}/${FILE}
+ action_checkbox_time "Linking ${PACKAGE_NAME}${source_link_status}" ln -s ../${SRCSTAGE}/${FILE} ${LFS_PKG_DIR}/${FILE}
fi
# Create link for patches corresponding to that package:
PATCHFILE=$(basename ${patch})
if [ ! -h ${LFS_PKG_DIR}/${PATCHFILE} ]; then
# Create link if it doesn't exist
- action_checkbox_time "Linking ${PACKAGE_NAME}" ln -s ../${SRCSTAGE}/${PATCHFILE} ${LFS_PKG_DIR}/${PATCHFILE}
+ action_checkbox_time "Linking ${PATCHFILE}" ln -s ../${SRCSTAGE}/${PATCHFILE} ${LFS_PKG_DIR}/${PATCHFILE}
fi
done
fi
--- /dev/null
+/mnt/hvrepos
\ No newline at end of file
# This file contains the name and version of all packages,
# as well the corresponding patches, if needed.
-HV_FONTS_PATH="/usr/share/fonts"
-
ABIWORD="abiword-2.6.4"
AGG="agg-2.5"
ALSA_DRIVER="alsa-driver-1.0.15"
BRIDGE_UTILS="bridge-utils-1.4"
BZIP2="bzip2-1.0.4"
-CAIRO="cairo-1.6.4"
+CAIRO="cairo-1.8.8"
CAIROMM="cairomm-1.6.0"
CDRTOOLS="cdrtools-2.01"
CDRDAO="cdrdao-1.2.2"
DB4="db-4.6.21"
# Needed by gnome VFS
-DBUS="dbus-1.0.2"
-DBUS_GLIB="dbus-glib-0.74"
+DBUS="dbus-1.2.16"
+DBUS_GLIB="dbus-glib-0.82"
DDCLIENT="ddclient-3.6.7"
# Required by Gnome
-DESKTOP_FILE_UTILS="desktop-file-utils-0.13"
+DESKTOP_FILE_UTILS="desktop-file-utils-0.15"
DHCP="dhcp-3.0.5"
DIFFUTILS="diffutils-2.8.7"
DVDFS="dvdfs-0.2"
DVDRWTOOLS="dvd+rw-tools-7.1"
-
-SGML_COMMON="sgml-common-0.6.3"
-SGML_DTD3_VER="3.1"
-SGML_DTD3="sgml-dtd-${SGML_DTD3_VER}"
-SGML_DTD4_VER="4.4"
-SGML_DTD4="sgml-dtd-${SGML_DTD4_VER}"
-SGML_SPM="SGMLSpm-1.03ii"
DOCBOOK_DSSSL_VER="1.79"
DOCBOOK_DSSSL="docbook-dsssl-${DOCBOOK_DSSSL_VER}"
DOCBOOK_UTILS="docbook-utils-0.6.14"
E2FSPROGS="e2fsprogs-1.40.2"
EASYTAG="easytag-2.1"
ED="ed-0.8"
+EGGDBUS="eggdbus-0.5"
EMACS="emacs-22.3"
ESOUND="esound-0.2.37"
EXPAT="expat-2.0.0"
GEGL="gegl-0.0.22"
GETDATE="getdate_rfc868-1.2"
GETTEXT="gettext-0.17"
-ESPGS="espgs-8.15.2"
+ESPGS="espgs-8.15.4"
GHOSTSCRIPT_FONTS_STD="ghostscript-fonts-std-8.11"
GHOSTSCRIPT_FONTS_OTHER="ghostscript-fonts-other-6.0"
GNASH=" gnash-0.8.5"
GIMP="gimp-2.6.6"
GUTENPRINT="gutenprint-5.2.3"
-GLIB2="glib-2.18.4"
+GLIB="glib-2.22.3"
GTK2="gtk+-2.14.7"
-GTK_ENGINES="gtk-engines-2.10.2"
+GTK_ENGINES="gtk-engines-2.18.4"
GLIBC="glibc-2.10.1"
AVR_LIBC="avr-libc-1.4.5"
# The kernel version specified must not be newer than the
GLITZ="glitz-0.5.6"
# GNOME2 core packages
-GNOME2_VER="gnome-2.18.3"
+GNOME2_VER="gnome-2.28.1"
GNOME2_PREFIX="/opt/${GNOME2_VER}"
-ORBIT2="ORBit2-2.14.7"
-LIBBONOBO="libbonobo-2.18.0"
-GCONF="GConf-2.18.0.1"
-GNOME_MIME_DATA="gnome-mime-data-2.4.3"
-GNOME_VFS="gnome-vfs-2.18.1"
+ORBIT2="ORBit2-2.14.17"
+LIBBONOBO="libbonobo-2.24.2"
+GCONF="GConf-2.28.0"
+GNOME_MIME_DATA="gnome-mime-data-2.18.0"
+GNOME_VFS="gnome-vfs-2.24.2"
GNOME_VFS_MONIKERS="gnome-vfs-monikers-2.15.3"
-LIBGNOME="libgnome-2.18.0"
-LIBGNOMECANVAS="libgnomecanvas-2.14.0"
-LIBBONOBOUI="libbonoboui-2.18.0"
-GNOME_KEYRING="gnome-keyring-0.8.1"
-ICON_NAMING_UTILS="icon-naming-utils-0.8.6"
-GNOME_ICON_THEME="gnome-icon-theme-2.18.0"
-LIBGNOMEUI="libgnomeui-2.18.1"
+LIBGNOME="libgnome-2.28.0"
+LIBGNOMECANVAS="libgnomecanvas-2.26.0"
+LIBBONOBOUI="libbonoboui-2.24.2"
+GNOME_KEYRING="gnome-keyring-2.28.1"
+ICON_NAMING_UTILS="icon-naming-utils-0.8.90"
+GNOME_ICON_THEME="gnome-icon-theme-2.28.0"
+LIBGNOMEUI="libgnomeui-2.24.2"
LIBGAIL_GNOME="libgail-gnome-1.18.0"
# Desktop
-GNOME_THEMES="gnome-themes-2.18.1"
+GNOME_THEMES="gnome-themes-2.28.1"
SCROLLKEEPER="scrollkeeper-0.3.14"
-GNOME_DOC_UTILS="gnome-doc-utils-0.10.3"
-GNOME_DESKTOP="gnome-desktop-2.18.3"
-GNOME_BACKGROUNDS="gnome-backgrounds-2.18.3"
-GNOME_MENUS="gnome-menus-2.18.3"
-GNOME_PANEL="gnome-panel-2.18.3"
-VTE="vte-0.16.6"
-GNOME_TERMINAL="gnome-terminal-2.18.1"
-LIBGTOP="libgtop-2.14.9"
-LIBGNOMEKBD="libgnomekbd-2.18.2"
+GNOME_DOC_UTILS="gnome-doc-utils-0.18.0"
+GNOME_DESKTOP="gnome-desktop-2.28.0"
+GNOME_BACKGROUNDS="gnome-backgrounds-2.28.0"
+GNOME_MENUS="gnome-menus-2.28.0.1"
+GNOME_PANEL="gnome-panel-2.28.0"
+VTE="vte-0.22.2"
+GNOME_TERMINAL="gnome-terminal-2.28.1"
+LIBGTOP="libgtop-2.28.0"
+LIBGNOMEKBD="libgnomekbd-2.28.0"
EEL="eel-2.18.3"
-NAUTILUS="nautilus-2.18.3"
-GNOME_CONTROL_CENTER="control-center-2.18.1"
-GNOME_APPLETS="gnome-applets-2.18.0"
-GNOME_SESSION="gnome-session-2.18.3"
-YELP="yelp-2.18.1"
-GNOME_USER_DOCS="gnome-user-docs-2.18.2"
+NAUTILUS="nautilus-2.28.1"
+GNOME_CONTROL_CENTER="gnome-control-center-2.28.1"
+GNOME_APPLETS="gnome-applets-2.28.0"
+GNOME_SESSION="gnome-session-2.28.0"
+YELP="yelp-2.28.0"
+GNOME_USER_DOCS="gnome-user-docs-2.28.0"
# GNOME2 Additional Packages - Libraries
LIBGNOMECUPS="libgnomecups-0.2.2"
# GNOME2 Additional Packages - Utilities
GEDIT="gedit-2.18.2"
EOG="eog-2.18.2"
-EVINCE="evince-2.24.1"
+EVINCE="evince-2.28.2"
FILE_ROLLER="file-roller-2.18.4"
GCONF_EDITOR="gconf-editor-2.18.0"
GNOME_UTILS="gnome-utils-2.18.1"
GNOME_NETSTATUS="gnome-netstatus-2.12.1"
GCALCTOOL="gcalctool-5.9.14"
GUCHARMAP="gucharmap-1.10.0"
-ZENITY="zenity-2.18.2"
+ZENITY="zenity-2.28.0"
GNOME_KEYRING_MANAGER="gnome-keyring-manager-2.18.0"
GNOME_VOLUME_MANAGER="gnome-volume-manager-2.17.0"
GNOME_SOUND_JUICER="sound-juicer-2.16.4"
-GNOME_TOTEM="totem-2.18.3"
-GDM="gdm-2.18.3"
+GNOME_TOTEM="totem-2.28.1"
+GDM="gdm-2.28.1"
GNOME_MOUNT="gnome-mount-0.6"
-
-LIBSOUP="libsoup-2.4.1"
-GGV="ggv-2.8.4"
-LIBWNCK="libwnck-2.16.1"
-STARTUP_NOTIFICATION="startup-notification-0.8"
-PIDGIN="pidgin-2.1.0"
-
-LIBEXIF="libexif-0.6.16"
-
GNUTLS="gnutls-1.6.3"
-
-LIBGSF="libgsf-1.14.5"
+GOBJECT_INSTROSPECTION="gobject-introspection-0.6.5"
GOFFICE="goffice-0.2.2"
GNUMERIC="gnumeric-1.6.3"
-
+GNUPG="gnupg-1.4.9"
GREP="grep-2.5.3"
GRIP="grip-3.3.1"
GROFF="groff-1.18.1.4"
GRUB="grub-0.97"
-
GSL="gsl-1.11"
GSTREAMER="gstreamer-0.10.20"
GST_PLUGINS_BASE="gst-plugins-base-0.10.20"
GST_PLUGINS_BAD="gst-plugins-bad-0.10.8"
GST_PLUGINS_UGLY="gst-plugins-ugly-0.10.10"
GST_FFMPEG="gst-ffmpeg-0.10.6"
-
GTK_DOC="gtk-doc-1.4"
GLIBMM="glibmm-2.16.2"
GTKMM="gtkmm-2.12.7"
HAL="hal-0.5.9.1"
HELP2MAN="help2man-1.36.4"
-HICOLOR_ICON_THEME="hicolor-icon-theme-0.10"
+HICOLOR_ICON_THEME="hicolor-icon-theme-0.11"
HTTPD="httpd-2.2.8" # Apache
HVCLOCK="hvclock-0.2.0"
LIBBOOST="boost_1_35_0"
LIBDVDCSS="libdvdcss-1.2.10"
LIBDVDREAD="libdvdread-0.9.7"
+LIBFFI="libffi-3.0.8"
LIBGAMIN="gamin-0.1.9"
LIBGLADE="libglade-2.6.0"
LIBIDL="libIDL-0.8.6"
LIBVORBIS="libvorbis-1.2.3"
VORBIS_TOOLS="vorbis-tools-1.2.0"
LIBID3TAG="libid3tag-0.15.1b"
+LIBEXIF="libexif-0.6.16"
+LIBGSF="libgsf-1.14.5"
LIBMAD="libmad-0.15.1b"
LIBJPEG="libjpeg-6b"
LIBPNG="libpng-1.2.35"
LIBMUSICBRAINZ="libmusicbrainz-2.1.5"
LIBRSVG="librsvg-2.16.1"
LIBSNDFILE="libsndfile-1.0.18pre18"
+LIBSOUP="libsoup-2.4.1"
LIBXML2="libxml2-2.6.26"
LIBXSLT="libxslt-1.1.12"
LIBXFT="libXft-2.1.12"
LIBXKLAVIER="libxklavier-2.91"
LIBOIL="liboil-0.3.15"
LIBSAMPLERATE="libsamplerate-0.1.2"
+LIBTASN1="libtasn1-2.2"
LIBTHEORA="libtheora-1.0"
LIBSPF2="libspf2-1.2.5"
LIBNOTIFY="libnotify-0.4.4"
+LIBWNCK="libwnck-2.16.1"
LILYPOND="lilypond-2.12.2"
LTSP_UTILS="ltsp-utils-0.25-0"
-TFTP_HPA="tftp-hpa-0.42"
+TFTP_HPA="tftp-hpa-0.49"
MAILMAN="mailman-2.1.8"
MAKE_PACKAGE="make-3.81"
PERL_MOD_IO_COMPRESS_ZLIB="IO-Compress-Zlib-2.004"
PERL_MOD_COMPRESS_RAW_ZLIB="Compress-Raw-Zlib-2.004"
PERL_MOD_NET_DNS="Net-DNS-0.61"
-
PHP="php-5.2.6"
-PIXMAN="pixman-0.10.0"
+PIDGIN="pidgin-2.1.0"
+PIXMAN="pixman-0.17.4"
PKG_CONFIG="pkg-config-0.22"
-POPPLER="poppler-0.10.5"
+POLKIT="polkit-0.94"
+POPPLER="poppler-0.12.2"
POPT="popt-1.10.4"
PORTAUDIO="portaudio-v19_061121"
PORTMAP="portmap-6.0"
SED="sed-4.1.5"
SENDMAIL="sendmail-8.13.6"
SENDMAIL_GID="bin"
+SGML_COMMON="sgml-common-0.6.3"
+SGML_DTD3_VER="3.1"
+SGML_DTD3="sgml-dtd-${SGML_DTD3_VER}"
+SGML_DTD4_VER="4.4"
+SGML_DTD4="sgml-dtd-${SGML_DTD4_VER}"
+SGML_SPM="SGMLSpm-1.03ii"
SHADOW="shadow-4.0.18.1"
-SHARED_MIME_INFO="shared-mime-info-0.23"
+SHARED_MIME_INFO="shared-mime-info-0.60"
SPAMASSASSIN="Mail-SpamAssassin-3.2.3"
SPEEX="speex-1.2rc1"
SPLINT="splint-3.1.1"
SPLIX="splix-2.0.0"
-SQLITE="sqlite-3.6.16"
+SQLITE="sqlite-3.6.22"
SQUIRRELMAIL="squirrelmail-1.5.1"
+STARTUP_NOTIFICATION="startup-notification-0.8"
STRACE="strace-4.5.15"
-SUBVERSION="subversion-1.4.6"
+SUBVERSION="subversion-1.6.6"
SUDO="sudo-1.6.8p12"
SWEEP="sweep-svn-r586"
SYLPHEED="sylpheed-2.7.1"
WMNOTIFY="wmnotify-0.3.2"
WV="wv-1.2.4"
-XFREE86="XFree86-4.6.0"
+XFREE86="XFree86-4.8.0"
XMLTOMAN="xmltoman-0.4"
XVIDCORE="xvidcore-1.2.2"
#!/bin/sh
LFS_STAGE="stage1"
+USE_LFS_PATCHES=1
+USE_BLFS_PATCHES=1
+USE_HV_PATCHES=1
# Reading system configuration informations, functions and package versions.
source ../sysinfos
#!/bin/sh
LFS_STAGE="stage2"
+USE_LFS_PATCHES=1
+USE_BLFS_PATCHES=1
+USE_HV_PATCHES=1
# Reading system configuration informations, functions and package versions.
source ../sysinfos
--- /dev/null
+#!/bin/sh
+# First argument of this script is the package name
+
+# Reading system configuration informations, functions and package versions.
+source ../sysinfos
+source ../functions
+source ../packages-list
+
+PACKAGE=${1}
+shift
+CONFIGURE_OPTS=${*}
+
+# Applying patches (if any)
+apply_patches ${PACKAGE} &&
+
+# It is a requirement to have a dedicated user and group for polkit to function
+# correctly:
+hv_groupadd -fg 27 polkituser &&
+hv_useradd -c Policy-Kit-Daemon-User -d /dev/null -u 27 \
+ -g polkituser -s /bin/false polkituser &&
+
+cd ${LFS_TMP}/${PACKAGE}-build &&
+../${PACKAGE}/configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ ${CONFIGURE_OPTS} &&
+make &&
+make install &&
+ldconfig
+
+# Return last error
+exit $?
# Applying patches (if any)
apply_patches ${PACKAGE} &&
+# Need to specify mandir manually because of a stupid programming error in tftpd sources...
cd ${LFS_TMP}/${PACKAGE} &&
./configure \
--prefix=/usr \
--sysconfdir=/etc \
+ --mandir=/usr/man \
--without-tcpwrappers \
${CONFIGURE_OPTS} &&
make &&
`grep -lr linux/config.h ../${1}` &&
echo "make World" &&
make World &&
+
echo "make install" &&
make install &&
echo "make install.man" &&
make install.man &&
ldconfig &&
-ln -svf /usr/X11R6/bin /usr/bin/X11 &&
-ln -svf /usr/X11R6/lib/X11 /usr/lib/X11 &&
-ln -svf /usr/X11R6/include/X11 /usr/include/X11 &&
-
-cat > /usr/X11R6/lib/pkgconfig/xrender.pc << "EOF" &&
-prefix=/usr/X11R6
-exec_prefix=${prefix}
-libdir=${exec_prefix}/lib
-includedir=${prefix}/include
-
-Name: Xrender
-Description: X Render Library
-Version: 0.8.3
-Cflags: -I${includedir} -I/usr/X11R6/include
-Libs: -L${libdir} -lXrender -L/usr/X11R6/lib -lX11
-EOF
-
-cat > /usr/X11R6/lib/pkgconfig/xextensions.pc << "EOF" &&
-prefix=/usr/X11R6
-exec_prefix=${prefix}
-libdir=${exec_prefix}/lib
-includedir=${prefix}/include
-
-Name: XExtensions
-Description: Sundry X extension headers
-Version: 1.0.1
-Cflags: -I${includedir}
-EOF
-
-
-# Creation of ~/.xinitrc
-cat > ~/.xinitrc << "EOF" &&
-exec wmaker
-EOF
+ln -svfT /usr/X11R6/bin /usr/bin/X11 &&
+ln -svfT /usr/X11R6/lib/X11 /usr/lib/X11 &&
+ln -svfT /usr/X11R6/include/X11 /usr/include/X11 &&
cat > /etc/X11/XF86Config << "EOF" &&
# XF86Config
# **********************************************************************
Section "Files"
RgbPath "/usr/X11R6/lib/X11/rgb"
-
ModulePath "/usr/X11R6/lib/modules" # Module search path
-
FontPath "_HV_FONTS_PATH_/TrueType"
# Standard XFree86 Fonts
Option "XkbRules" "xfree86"
Option "XkbModel" "pc105"
Option "XkbLayout" "_XF86_KEYBOARD_LAYOUT_"
+ Option "XkbVariant" "_XF86_KEYBOARD_VARIANT_"
+ Option "XkbOptions" "_XF86_KEYBOARD_OPTIONS_"
Option "AutoRepeat" "500 30"
EndSection
-# With kernel 2.6, all mouse are supported through "/dev/input/mice"
Section "InputDevice"
Identifier "Mouse1"
Driver "mouse"
sed -i -e "s!_HV_FONTS_PATH_!${HV_FONTS_PATH}!g" /etc/X11/XF86Config &&
sed -i -e "s!_VIDEO_CARD_DRIVER_!${XF86_CARD_DRIVER}!g" /etc/X11/XF86Config &&
sed -i -e "s!_XF86_KEYBOARD_LAYOUT_!${HV_XF86_KEYBOARD_LAYOUT}!g" /etc/X11/XF86Config &&
+sed -i -e "s!_XF86_KEYBOARD_VARIANT_!${HV_XF86_KEYBOARD_VARIANT}!g" /etc/X11/XF86Config &&
+sed -i -e "s!_XF86_KEYBOARD_OPTIONS_!${HV_XF86_KEYBOARD_OPTIONS}!g" /etc/X11/XF86Config &&
cat > /etc/skel/.xinitrc << "EOF" &&
# ~/.xinitrc
EOF
cat > /etc/skel/.Xdefaults << "EOF" &&
-xterm*background: rgb:BB/AA/99
xterm*scrollBar: false
xterm*rightScrollBar: false
xterm*saveLines: 1000
xterm*geometry: 120x45+70+50
-emacs*geometry:85x45+10+10
+xterm*background: #000000
+xterm*foreground: #A8A8A8
+xterm*color0: #000000
+xterm*color1: #A80000
+xterm*color2: #00A800
+xterm*color3: #A85400
+xterm*color4: #0000A8
+xterm*color5: #A800A8
+xterm*color6: #00A8A8
+xterm*color7: #A8A8A8
+xterm*color8: #545054
+xterm*color9: #F85450
+xterm*color10: #50FC50
+xterm*color11: #F2FC50
+xterm*color12: #5054F8
+xterm*color13: #F854F8
+xterm*color14: #50FCF8
+xterm*color15: #F8FCF8
EOF
cat > /etc/skel/.xsession << "EOF" &&
1)
case $1 in
kde)
- exec startkde
+ exec dbus-launch --exit-with-session startkde
;;
twm)
xsetroot -solid rgb:33/33/55 &
opera -geometry 1100x950+150+10 -iconic -title "Opera 6.0 TP3" &
emacs -geometry 140x60-5+100 -iconic -title "Emacs" &
xterm -ls -geometry 160x60+25-25 -title "xterm" &
- exec twm
+ exec dbus-launch --exit-with-session twm
;;
wmaker)
- exec wmaker
+ exec dbus-launch --exit-with-session wmaker
;;
failsafe)
exec xterm -geometry 80x24-0-0
;;
default)
- exec wmaker
+ exec dbus-launch --exit-with-session wmaker
;;
*)
- exec wmaker
+ exec dbus-launch --exit-with-session wmaker
;;
esac
;;
*)
- exec wmaker
+ exec dbus-launch --exit-with-session wmaker
;;
esac
chmod 755 /etc/skel/.xsession &&
cp /etc/skel/.{xinitrc,Xdefaults,xsession} /root &&
+cp /etc/skel/.{xinitrc,Xdefaults,xsession} /home/${REGUSER} &&
var_add_path "PATH" /etc/profile "/usr/X11R6/bin" &&
var_add_shadow "ENV_SUPATH" /etc/login.defs "/usr/X11R6/bin" &&
string_add "/usr/X11R6/lib" /etc/ld.so.conf &&
-ldconfig
+
+if [ "x${INST_TYPE}" = "xltsp-server" ]; then
+ # Enable remote xdm login for LTSP clients
+ sed -i -e "s@^\(DisplayManager.requestPort.*\)@!\1@g" /etc/X11/xdm/xdm-config &&
+ chmod 644 /etc/X11/xdm/Xaccess &&
+ sed -i -e "s@^#\(\*[\t ]*#any host can get a login window\)@\1@g" /etc/X11/xdm/Xaccess &&
+ chmod 444 /etc/X11/xdm/Xaccess || exit 1
+fi &&
# When needed, XFree86 creates the directory /tmp/.ICE-unix if it does not
# exist. If this directory is not owned by root, XFree86 delays startup by a
# Return last error
exit $?
+
#!/bin/sh
LFS_STAGE="stage3"
+USE_LFS_PATCHES=1
+USE_BLFS_PATCHES=1
+USE_HV_PATCHES=1
# Reading system configuration informations, functions and package versions.
source ../functions
# Gtk
fpkg_gnome ${GTK_DOC}
-fpkg_gnome ${GLIB2}
+fpkg_gnome ${GLIB}
fpkg ${PIXMAN} "http://cairographics.org/releases"
fpkg ${GLITZ} "http://cairographics.org/snapshots"
fpkg ${CAIRO} "http://cairographics.org/releases"
fpkg_hv ${GIT_MANPAGES}
fpkg ${LTSP_UTILS} "http://ltsp.mirrors.tds.net/pub/ltsp/utils"
-fpkg ${TFTP_HPA} "http://freshmeat.net/redir/tftp-hpa/14040/url_bz2"
+fpkg ${TFTP_HPA} "http://www.kernel.org/pub/software/network/tftp"
fpkg_sf ${KVM}
fpkg_hv ${BRIDGE_UTILS}
fpkg ${DOSFSTOOLS} "http://www.daniel-baumann.ch/software/dosfstools"
+
+fpkg ${LIBFFI} "ftp://sourceware.org/pub/libffi"
+fpkg_gnome ${GOBJECT_INSTROSPECTION}
+fpkg ${EGGDBUS} "http://hal.freedesktop.org/releases"
+fpkg ${POLKIT} "http://hal.freedesktop.org/releases"
+
+fpkg ${GNUPG} "ftp://ftp.gnupg.org/gcrypt/gnupg"
+
# Return last error
exit $?
# Gtk
ipkg_ac ${GTK_DOC}
- ipkg_ac ${GLIB2}
+ ipkg_ac ${GLIB}
ipkg_ac ${PIXMAN}
ipkg_ac ${GLITZ}
ipkg_ac ${CAIRO} "--enable-glitz"
ipkg ${DBUS} cis-dbus
ipkg_ac ${DBUS_GLIB} "--disable-tests --disable-dependency-tracking --disable-xml-docs --disable-doxygen-docs"
+ipkg_ac ${EGGDBUS}
ipkg ${HAL} cis-hal
ipkg_ac ${LIBGAMIN} "--libexecdir=/usr/sbin"
ipkg ${DOSFSTOOLS} cis-dosfstools
+ipkg_ac ${LIBFFI}
+ipkg_ac ${GOBJECT_INSTROSPECTION}
+
+ipkg ${POLKIT} cis-polkit
+ipkg_ac ${GNUPG} "--libexecdir=/usr/lib"
+
./cis-postinstall
exit $?
--- /dev/null
+#!/bin/sh
+
+# Reading system configuration informations, functions and package versions.
+source ../sysinfos
+source ../functions
+source ../packages-list
+
+# Common installation script
+./cis-gnome ${*}
+
+# Custom post-installation
+install -v -m755 -d /etc/gnome/${GNOME2_VER}/gconf/gconf.xml.system &&
+
+# Configure D-Bus so that it can search for GNOME installed .conf files
+# (This is assuming that system-local.conf does not exist yet. If it does,
+# then you will need to merge in the changes):
+dbusfile=/etc/dbus-1/system-local.conf &&
+if [ -f ${dbusfile} ]; then
+ cat ${dbusfile} >> ${dbusfile}.old
+ echo "Warning, file ${dbusfile} already exists,"
+ echo "appending content to \"${dbusfile}.old\""
+fi &&
+
+cat > ${dbusfile} << "EOF" &&
+<!DOCTYPE busconfig PUBLIC
+ "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
+ "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
+<busconfig>
+
+EOF
+echo " <!-- Search for .conf files in /etc/gnome/${GNOME2_VER}/dbus-1/system.d -->" >> ${dbusfile} &&
+echo " <includedir>/etc/gnome/${GNOME2_VER}/dbus-1/system.d</includedir>" >> ${dbusfile} &&
+echo "</busconfig>" >> ${dbusfile}
+
+exit $?
../${PACKAGE}/configure \
--prefix=${GNOME2_PREFIX} \
--libexecdir=${GNOME2_PREFIX}/sbin \
- --infodir=${GNOME2_PREFIX}/share/info \
- --localstatedir=/var/lib \
--sysconfdir=/etc/gnome/${GNOME2_VER} \
+ --localstatedir=/var/lib \
${CONFIGURE_OPTS} &&
make &&
make install &&
ldconfig
-# Return last error
exit $?
var_add_path "PATH" /etc/profile "/opt/${GNOME2_VER}/bin" &&
var_export "PATH" /etc/profile &&
var_add_path "PKG_CONFIG_PATH" /etc/profile "/opt/${GNOME2_VER}/lib/pkgconfig" &&
+var_add_path "PKG_CONFIG_PATH" /etc/profile "/opt/${GNOME2_VER}/share/pkgconfig" &&
var_export "PKG_CONFIG_PATH" /etc/profile &&
var_add_path "LIBGLADE_MODULE_PATH" /etc/profile "${GNOME2_PREFIX}/lib/libglade/2.0" &&
var_export "LIBGLADE_MODULE_PATH" /etc/profile &&
+++ /dev/null
-#!/bin/sh
-# First argument of this script is the package name
-
-# Reading system configuration informations, functions and package versions.
-source ../sysinfos
-source ../functions
-source ../packages-list
-
-# Applying patches (if any)
-apply_patches ${1} &&
-
-cd ${LFS_TMP}/${1}-build &&
-../${1}/configure \
- --prefix=${GNOME2_PREFIX} \
- --sysconfdir=/etc/gnome/${GNOME2_VER} &&
-make &&
-make install &&
-install -v -m644 -D man/gnome-vfs-mime.5 \
- ${GNOME2_PREFIX}/man/man5/gnome-vfs-mime.5 &&
-ldconfig
-
-# Return last error
-exit $?
--- /dev/null
+#!/bin/sh
+# First argument of this script is the package name.
+# Remaining arguments are additional configure options.
+
+# Reading system configuration informations, functions and package versions.
+source ../sysinfos
+source ../functions
+source ../packages-list
+
+PACKAGE=${1}
+shift
+CONFIGURE_OPTS=${*}
+
+# Applying patches (if any)
+apply_patches ${PACKAGE} &&
+
+cd ${LFS_TMP}/${PACKAGE} &&
+./configure \
+ --prefix=${GNOME2_PREFIX} \
+ --libexecdir=${GNOME2_PREFIX}/sbin \
+ --sysconfdir=/etc/gnome/${GNOME2_VER} \
+ --localstatedir=/var/lib \
+ ${CONFIGURE_OPTS} &&
+make &&
+make install &&
+ldconfig
+
+exit $?
fpkg_gnome ${LIBGNOMECANVAS}
fpkg_gnome ${LIBBONOBOUI}
fpkg_gnome ${GNOME_ICON_THEME}
+fpkg_gnu ${LIBTASN1}
fpkg_gnome ${GNOME_KEYRING}
fpkg_gnome ${LIBGNOMEUI}
fpkg_gnome ${GNOME_THEMES}
fpkg_gnome ${GEDIT}
fpkg_gnome ${EOG}
fpkg_gnome ${EVINCE}
-fpkg_gnome ${GGV} # Gnome Ghostview
fpkg_gnome ${FILE_ROLLER}
fpkg_gnome ${GCONF_EDITOR}
fpkg_gnome ${GNOME_UTILS}
init_log_file
# GNOME-2.X configuration
-
action_checkbox "Configuring ${GNOME2_VER}" ./cis-gnome-config
action_checkbox "Reloading /etc/profile" source /etc/profile
# Gnome 2 core packages
ipkg_gnome ${ORBIT2}
ipkg_gnome ${LIBBONOBO}
-ipkg_gnome ${GCONF}
-ipkg ${GNOME_MIME_DATA} cis-gnome-mime-data
-ipkg_gnome ${GNOME_VFS}
+ipkg ${GCONF} cis-gconf
+ipkg_gnome ${GNOME_MIME_DATA}
+####ipkg ${GNOME_VFS} cis-gnome-nb
+####ipkg_gnome ${GNOME_VFS_MONIKERS}
ipkg_gnome ${LIBGNOME}
ipkg_gnome ${LIBGNOMECANVAS}
ipkg_gnome ${LIBBONOBOUI}
ipkg_ac ${GNOME_ICON_THEME}
+ipkg_ac ${LIBTASN1}
ipkg_gnome ${GNOME_KEYRING}
ipkg_gnome ${LIBGNOMEUI}
ipkg_ac ${GNOME_THEMES}
-ipkg_ac ${SCROLLKEEPER} "--localstatedir=/var --disable-static --with-omfdirs=/usr/share/omf:/opt/${GNOME2_VER}/share/omf"
+ipkg_ac_nb ${SCROLLKEEPER} "--localstatedir=/var --disable-static --with-omfdirs=/usr/share/omf:/opt/${GNOME2_VER}/share/omf"
ipkg_gnome ${GNOME_DOC_UTILS}
ipkg_gnome ${GNOME_DESKTOP}
ipkg_gnome ${GNOME_BACKGROUNDS}
action_checkbox "Updating the MIME-type application database" update-desktop-database
# Gnome 2 additional packages - Libraries
-ipkg_gnome ${LIBGNOMECUPS}
-ipkg_gnome ${LIBGNOMEPRINT}
-ipkg_gnome ${LIBGNOMEPRINTUI}
+####ipkg_gnome ${LIBGNOMECUPS}
+####ipkg_gnome ${LIBGNOMEPRINT}
+####ipkg_gnome ${LIBGNOMEPRINTUI}
ipkg_gnome ${GTKHTML}
ipkg_gnome ${EVOLUTION_DATA_SERVER} "--with-nss-includes=/usr/include/nss --with-nspr-includes=/usr/include/nspr --with-openldap=yes --with-krb5=/usr"
ipkg_gnome ${GTKSOURCEVIEW}
ipkg_gnome ${GEDIT} "--disable-spell"
ipkg_gnome ${EOG}
ipkg_gnome ${EVINCE}
-ipkg_gnome ${GGV} # Gnome Ghostview
ipkg_gnome ${FILE_ROLLER}
ipkg_gnome ${GCONF_EDITOR}
ipkg_gnome ${GNOME_UTILS}
ipkg_ac ${LIBGSF}
ipkg_ac ${PCRE} "--docdir=/usr/share/doc/pcre --enable-utf8"
-ipkg ${GOFFICE} cis-ac-nobuild
+ipkg_ac_nb ${GOFFICE}
ipkg ${GNUMERIC} cis-gnumeric
ipkg_ac ${WV}
ipkg_ac ${ABIWORD} "--disable-spellcheck"
--- /dev/null
+#!/bin/sh
+
+# This file contains the informations specific to the target system
+# onto which Linux-HV will be installed
+
+# This is the number of make jobs that can be executed
+# simultaneously. Normally, a value of 2 per processor
+# gives good results.
+MAKEJOBS=1
+
+# Installation type: server, ltsp-server or workstation.
+INST_TYPE="ltsp-server"
+
+# New user to create
+REGUSER="hugo"
+
+# Destination path where to install new Linux-HV system
+LFS="/"
+
+# Destination partition where to install new Linux-HV system
+LFS_PARTITION="/dev/sda10"
+
+# Boot partition (if applicable)
+BOOT_PARTITION="/dev/sda1"
+
+# Swap partition (if applicable)
+SWAP_PARTITION="/dev/sda2"
+
+# Used for setting '-march=xxx' option in CFLAGS and CPPFLAGS
+MACHINE_ARCHITECTURE="athlon-xp"
+
+# Keyboard mapping (example: us)
+KEYBOARD="cf"
+
+HV_XF86_KEYBOARD_LAYOUT="us,ca"
+HV_XF86_KEYBOARD_VARIANT="intl,fr"
+HV_XF86_KEYBOARD_OPTIONS="grp:alt_shift_toggle"
+XF86_CARD_DRIVER="nv"
+
+# Sound card support: yes or no
+SOUND_CARD="yes"
+
+# Removable media drives
+CDROM="/dev/hdc"
+DVD="/dev/hdc"
+
+HV_FONTS_PATH="/usr/share/fonts"
+
+# Define this if you want to use a remote CUPS print server
+#CUPS_SERVER="server.hugovil.com"
+
+#--------------------
+# SCANNER definitions
+#--------------------
+# Set to yes to have SANE support
+SANE_SUPPORT="yes"
+# Define to the driver name corresponding to your scanner, if you have one
+# (see SANE documentation for drivers name). Comment out if you will be using
+# a scanner on a remote computer.
+SANE_DRIVER="epson"
+# If your scanner is located onto a remote computer, define the following
+# variable to the IP address of that remote computer.
+SANE_SERVER=""
+
+TIMEZONE="America/Montreal"
+
+# General network settings
+INTERFACES="eth0"
+# GATEWAY is not required if using DHCP
+GATEWAY=""
+MACHINE_NAME="serveur"
+DOMAIN="hugovil.com"
+LAN_NETWORK_MASK="192.168.0.0/24"
+# Define to yes if you have a dynamic address and you use a dynamic dns
+# service.
+USE_DYNAMIC_DNS="no"
+
+# Network interface card #1 settings (INTERNET)
+BOOTPROTO[0]="dhcp"
+IP_ADDRESS[0]=""
+
+# Network interface card #2 settings (LAN)
+#BOOTPROTO[1]="static"
+#IP_ADDRESS[1]="192.168.0.1"
+#PREFIX_LENGTH[1]=24
+
+# DNS servers addresses (not required if using DHCP)
+#NAMESERVER[0]="24.200.243.250"
+#NAMESERVER[1]="24.201.245.106"
+#NAMESERVER[2]="24.200.243.242"
+
+# Define this if you want the mail addressed to the root user automatically
+# be forwarded to someone else
+MAIL_ADMIN="hugo"
+
+# Define to unix (mbox) or mbx
+MAILBOX_FORMAT=unix
+
+# Alternate port for Sendmail (comment this line to use the standard port 25)
+SENDMAIL_PORT="25"
+
+# Alternate port for Apache (comment this line to use the standard port 80)
+HTTPD_PORT="80"
+APACHE_USER="www"
+
+# Samba support
+USE_SAMBA="no"
CDROM="/dev/hdc"
DVD="/dev/hdc"
+HV_FONTS_PATH="/usr/share/fonts"
+
# Define this if you want to use a remote CUPS print server
#CUPS_SERVER="server.hugovil.com"
CDROM="/dev/hdc"
DVD="/dev/hdc"
+HV_FONTS_PATH="/usr/share/fonts"
+
#--------------------
# SCANNER definitions
#--------------------