#!/bin/bash
-# Reading system configuration informations, functions and package versions.
-source ../sysinfos
-source ../functions
-source ../packages-list
+source ../functions/main
echo "Creating /etc/fstab"
cat > ${LFS}/etc/fstab << "EOF"
EOF
if [ -n "${BOOT_PARTITION}" ]; then
- echo "${BOOT_PARTITION} /boot ext2 defaults 1 1" >> ${LFS}/etc/fstab
+ echo "${BOOT_PARTITION} /boot auto defaults 0 0" >> ${LFS}/etc/fstab
fi
if [ -n "${SWAP_PARTITION}" ]; then
echo "${SWAP_PARTITION} none swap sw 0 0" >> ${LFS}/etc/fstab
fi
-echo "${LFS_PARTITION} / reiserfs defaults,noatime 0 0" >> ${LFS}/etc/fstab
+echo "${LFS_PARTITION} / auto defaults,noatime 0 0" >> ${LFS}/etc/fstab
cat >> ${LFS}/etc/fstab << "EOF"
-/dev/cdrom /media/cdrom auto ro,noauto,users 0 0
-/dev/dvd /media/dvd auto ro,noauto,users 0 0
proc /proc proc defaults 0 0
sysfs /sys sysfs defaults 0 0
+tmpfs /run tmpfs defaults 0 0
devpts /dev/pts devpts gid=4,mode=620 0 0
shm /dev/shm tmpfs defaults 0 0
+
+/dev/dvd /media/dvd auto noauto,ro,users
EOF
echo "Creating basic /etc/profile and /etc/profile.d"
USER=`id -un`
LOGNAME=$USER
MAIL="/var/mail/$USER"
-HISTFILESIZE=1000
+
+# Don't put duplicate lines in the history.
+HISTCONTROL=ignoredups:ignorespace
+HISTFILESIZE=2000
HISTSIZE=1000
+
HOSTNAME=`hostname`
EDITOR=_DEFAULT_EDITOR_
-CFLAGS="-pipe -O2"
+CFLAGS="_DEFAULT_CFLAGS_"
CXXFLAGS=${CFLAGS}
# Set default permissions when creating new files.
MANPATH=/usr/share/man:/usr/local/share/man
-LANG="en_US.UTF-8"
+LANG="en_US.utf8"
# The sort order of ls output is affected by the locale and
# can be overridden by the LC_COLLATE environment variable.
# LC_COLLATE equals en_US.ISO8859-1, then leading dots as well
# as case are ignored in determining the sort order.
LC_COLLATE=C
-################# LC_ALL=POSIX
-export PATH MANPATH LANG LC_COLLATE PS1 PS2 USER LOGNAME MAIL HISTFILESIZE HISTSIZE HOSTNAME EDITOR CFLAGS CXXFLAGS
+# If this is not set, some characters (quotes) are not displayed correctly:
+LC_CTYPE=C
+
+export PATH MANPATH LANG LC_COLLATE LC_CTYPE PS1 PS2 USER LOGNAME MAIL HISTFILESIZE HISTSIZE HOSTNAME EDITOR CFLAGS CXXFLAGS
EOF
sed -i -e "s!_DEFAULT_EDITOR_!${DEFAULT_EDITOR}!g" ${LFS}/etc/profile
+sed -i -e "s!_DEFAULT_CFLAGS_!-pipe -O2 ${MARCH_FLAGS}!g" ${LFS}/etc/profile
+
echo "Creating /etc/bashrc"
cat > ${LFS}/etc/bashrc << "EOF"
#!/bin/bash
alias df='df -h'
alias du='du -h -s'
# --show-control-chars is for seeing international characters in filenames
-alias ls='ls -h --color=auto --show-control-chars'
+alias ls='ls -h --color=auto --show-control-chars --time-style=long-iso'
eval $(dircolors --sh /etc/DIR_COLORS)
+alias grep='grep --color=auto'
+alias fgrep='fgrep --color=auto'
+alias egrep='egrep --color=auto'
+alias less='less -RFX'
+
+# Pour que la touche BACKSPACE fonctionne correctement lorsque Bash nous
+# demande une confirmation (quand on veut effacer un fichier par exemple).
+if tty --quiet ; then
+ stty erase '^H'
+fi
# For some unknown reason bash refuses to inherit PS1 in some circumstances
# that I can't figure out. Putting PS1 here ensures that it gets loaded every
fi
EOF
-echo "Installing /etc/DIR_COLORS"
-install -m644 ${SCRDIR}/misc/DIR_COLORS ${LFS}/etc/DIR_COLORS
-
-echo "Creating /etc/inputrc"
-cat > ${LFS}/etc/inputrc << "EOF"
-# Begin /etc/inputrc
-
-# Enable 8bit input
-set meta-flag On
-set input-meta On
-# Turns off 8th bit stripping
-set convert-meta Off
-# Keep the 8th bit for display
-set output-meta On
-
-# none, visible or audible
-set bell-style none
-
-# All of the following map the escape sequence of the value contained inside
-# the 1st argument to the readline specific functions
-"\eOd": backward-word
-"\eOc": forward-word
-# for linux console
-"\e[1~": beginning-of-line
-"\e[4~": end-of-line
-"\e[5~": beginning-of-history
-"\e[6~": end-of-history
-"\e[3~": delete-char
-"\e[2~": quoted-insert
-# for xterm
-"\eOH": beginning-of-line
-"\eOF": end-of-line
-EOF
+install -v -m644 ${SCRDIR}/misc/DIR_COLORS ${LFS}/etc
+
+install -v -m644 ${SCRDIR}/misc/inputrc ${LFS}/etc
cat >> ${LFS}/etc/modules << "EOF"
# /etc/modules: kernel modules to load at boot time.
EOF
chmod 644 ${LFS}/etc/shells
+# This file contains a list of users (1 per line) who are allowed to shutdown
+# the computer. This doesn't mean that these users can invoke the shutdown
+# (or reboot or halt) command(s). Instead, it means that an authorized user
+# can shut down the computer by pressing ctrl+alt+del.
echo "Creating /etc/shutdown.allow"
echo "${REGUSER}" > ${LFS}/etc/shutdown.allow