Major infrastructure changes, part 2.

* Moved helpers, common and triggers dirs into xbps-src, where
  they belong.
* Renamed the templates dir to srcpkgs, it was so redundant before.
* Make it possible to add subpkgs with no restriction in names, for
  example udev now has a subpkgs called "libgudev". Previously
  subpkgs were named "${sourcepkg}-${pkgname}".
* xbps-src: changed to look for template files in current directory.
  That means that most arguments from the targets have been removed.
* xbps-src: added a reinstall target, to remove + install.
* xbps-src: do not overwrite binpkgs by default, skip them.

And more that I forgot because it's a mega-commit that I've been
working for some days already...

--HG--
extra : convert_revision : 0f466878584d1e6895d2a234f07ea1b2d1e61b3e
This commit is contained in:
Juan RP
2009-11-22 08:31:44 +01:00
parent 3c58e3ad40
commit 85cc462e1d
1305 changed files with 719 additions and 654 deletions

View File

@@ -0,0 +1,27 @@
#!/bin/sh
PREREQ=""
DESCRIPTION="Setting up /cdrom mountpoint"
. /scripts/casper-functions
prereqs()
{
echo "$PREREQ"
}
case $1 in
# get pre-requisites
prereqs)
prereqs
exit 0
;;
esac
log_begin_msg "$DESCRIPTION"
# Move to the new root filesystem so that programs there can get at it.
mkdir -p /root/cdrom
mount -n -o move /cdrom /root/cdrom
log_end_msg

View File

@@ -0,0 +1,30 @@
#!/bin/sh
PREREQ=""
DESCRIPTION="Setting up live session user '$USERNAME'"
. /scripts/casper-functions
prereqs()
{
echo "$PREREQ"
}
case $1 in
# get pre-requisites
prereqs)
prereqs
exit 0
;;
esac
log_begin_msg "$DESCRIPTION"
# U6aMy0wojraho is just a blank password
chroot ${rootmnt} useradd -c "$USERFULLNAME" -m $USERNAME \
-G audio -p U6aMy0wojraho
if [ -f ${rootmnt}/etc/sudoers ]; then
echo "${USERNAME} ALL=(ALL) NOPASSWD: ALL" >> ${rootmnt}/etc/sudoers
fi
log_end_msg

View File

@@ -0,0 +1,43 @@
#! /bin/sh
PREREQ=""
DESCRIPTION="Setting up system keymap"
. /scripts/casper-functions
prereqs()
{
echo "$PREREQ"
}
case $1 in
# get pre-requisites
prereqs)
prereqs
exit 0
;;
esac
log_begin_msg "$DESCRIPTION"
# commandline
for x in $(cat /proc/cmdline); do
case $x in
keymap=*)
keymap=${x#keymap=}
set_keymap="true"
;;
esac
done
if [ "${set_keymap}" ]; then
sed -i -e "s|qwerty/us|qwerty/${keymap}|" \
"${rootmnt}/etc/conf.d/keymaps"
fi
if [ -f "${rootmnt}/etc/hal/fdi/policy/10-keymap.fdi" ]; then
sed -i -e "s|>us<|>${keymap}<|" \
${rootmnt}/etc/hal/fdi/policy/10-keymap.fdi
fi
log_end_msg

View File

@@ -0,0 +1,29 @@
#!/bin/sh
PREREQ=""
DESCRIPTION="Setting up /etc/fstab"
FSTAB=${rootmnt}/etc/fstab
. /scripts/casper-functions
prereqs()
{
echo "$PREREQ"
}
case $1 in
# get pre-requisites
prereqs)
prereqs
exit 0
;;
esac
log_begin_msg "$DESCRIPTION"
cat > $FSTAB <<EOF
${UNIONFS} / ${UNIONFS} rw 0 0
tmpfs /tmp tmpfs nosuid,nodev 0 0
EOF
log_end_msg

View File

@@ -0,0 +1,47 @@
#!/bin/sh
PREREQ=""
DESCRIPTION="Setting up swap"
FSTAB=${rootmnt}/etc/fstab
. /scripts/casper-functions
prereqs()
{
echo "$PREREQ"
}
case $1 in
# get pre-requisites
prereqs)
prereqs
exit 0
;;
esac
log_begin_msg "$DESCRIPTION"
devices=""
for device in /dev/[hs]d[a-z][0-9]*; do
if ! [ -b "$device" ]; then
continue
fi
/sbin/blkid -o udev -p ${device%%[0-9]*} | \
grep -q "^ID_FS_USAGE=raid" && continue
magic=$(/bin/dd if="$device" bs=4086 skip=1 count=1 2>/dev/null | /bin/dd bs=10 count=1 2>/dev/null) || continue
if [ "$magic" = "SWAPSPACE2" -o "$magic" = "SWAP-SPACE" ]; then
# log "Found $device"
devices="$devices $device"
fi
done
for device in $devices; do
cat >> $FSTAB <<EOF
$device swap swap defaults 0 0
EOF
done
log_end_msg

View File

@@ -0,0 +1,37 @@
#! /bin/sh
PREREQ=""
DESCRIPTION="Setting up system locale"
. /scripts/casper-functions
prereqs()
{
echo "$PREREQ"
}
case $1 in
# get pre-requisites
prereqs)
prereqs
exit 0
;;
esac
log_begin_msg "$DESCRIPTION"
# commandline
for x in $(cat /proc/cmdline); do
case $x in
locale=*)
locale=${x#locale=}
set_locale="true"
;;
esac
done
if [ "${set_locale}" ]; then
echo "system_locale=\"$locale\"" > ${rootmnt}/etc/conf.d/locale
fi
log_end_msg

View File

@@ -0,0 +1,25 @@
#!/bin/sh
PREREQ=""
DESCRIPTION="Setting up automatic login"
. /scripts/casper-functions
prereqs()
{
echo "$PREREQ"
}
case $1 in
# get pre-requisites
prereqs)
prereqs
exit 0
;;
esac
log_begin_msg "$DESCRIPTION"
if [ -f "${rootmnt}/etc/inittab" ]; then
sed -i -e "s|agetty|casper-getty|g" "${rootmnt}/etc/inittab"
fi
log_end_msg

View File

@@ -0,0 +1,38 @@
#! /bin/sh
PREREQ=""
DESCRIPTION="Setting up hostname"
. /scripts/casper-functions
prereqs()
{
echo "$PREREQ"
}
case $1 in
# get pre-requisites
prereqs)
prereqs
exit 0
;;
esac
log_begin_msg "$DESCRIPTION"
echo "hostname=$HOST" > "${rootmnt}/etc/conf.d/hostname"
cat > /root/etc/hosts <<EOF
127.0.0.1 localhost
127.0.1.1 $HOST
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
EOF
log_end_msg

View File

@@ -0,0 +1,46 @@
#!/bin/sh
PREREQ=""
DESCRIPTION="Setting up PolicyKit actions for user '${USERNAME}'"
. /scripts/casper-functions
prereqs()
{
echo "$PREREQ"
}
case $1 in
# get pre-requisites
prereqs)
prereqs
exit 0
;;
esac
conf_file=${rootmnt}/etc/PolicyKit/PolicyKit.conf
if [ ! -f ${conf_file} ]; then
exit 0
fi
log_begin_msg "$DESCRIPTION"
rm -f ${conf_file}
cat >> ${conf_file} <<_EOF
<?xml version="1.0" encoding="UTF-8"?> <!-- -*- XML -*- -->
<!DOCTYPE pkconfig PUBLIC "-//freedesktop//DTD PolicyKit Configuration 1.0//EN"
"http://hal.freedesktop.org/releases/PolicyKit/1.0/config.dtd">
<!-- See the manual page PolicyKit.conf(5) for file format -->
<config version="0.1">
<match action="org.freedesktop.hal.*">
<match user="${USERNAME}">
<return result="yes"/>
</match>
</match>
</config>
_EOF
log_end_msg