summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicolás Reynolds <apoyosis@correo.inta.gob.ar>2011-05-18 17:15:13 -0300
committerNicolás Reynolds <apoyosis@correo.inta.gob.ar>2011-05-18 17:15:13 -0300
commit3a6288aaf80c172c2559e7623bb314a7e5d96db5 (patch)
tree8d0c694d0562441555054d4f120fd376d228d754
parent9de4af841974c542bdb519b09633063a64c75391 (diff)
This is the one (I hope...)
-rw-r--r--Makefile7
-rw-r--r--boot-files/syslinux/syslinux.cfg5
-rwxr-xr-xdownload-repo.sh2
-rw-r--r--instructions19
-rw-r--r--mkinitcpio.conf2
-rw-r--r--overlay/etc/archiso/functions14
-rw-r--r--overlay/etc/archiso/getshell9
-rw-r--r--overlay/etc/fstab7
-rw-r--r--overlay/etc/rc.conf33
-rwxr-xr-xoverlay/etc/rc.d/archiso81
-rw-r--r--packages.x86_641
11 files changed, 72 insertions, 108 deletions
diff --git a/Makefile b/Makefile
index 2bec1f8..383da58 100644
--- a/Makefile
+++ b/Makefile
@@ -7,8 +7,8 @@ APPLICATION="Parabola Live Medium"
PACCONFIG="overlay/etc/pacman.conf"
WORKDIR=work
-INSTALL_DIR=arch
-COMPRESS=gzip
+INSTALL_DIR=libre
+COMPRESS=xz
ARCH?=$(shell uname -m)
@@ -82,7 +82,8 @@ $(WORKDIR)/iso/$(INSTALL_DIR)/isomounts: isomounts root-image
# Rule for make the [core] repo packages
core-pkgs:
- ./download-repo.sh core $(WORKDIR)/core-pkgs/src/core/pkg
+ mv core-pkgs $(WORKDIR)/
+# ./download-repo.sh core $(WORKDIR)/core-pkgs/src/core/pkg
# Clean-up all work
diff --git a/boot-files/syslinux/syslinux.cfg b/boot-files/syslinux/syslinux.cfg
index 37929c2..0437e87 100644
--- a/boot-files/syslinux/syslinux.cfg
+++ b/boot-files/syslinux/syslinux.cfg
@@ -4,11 +4,6 @@ MENU TITLE Parabola GNU/Linux-libre
MENU BACKGROUND /%INSTALL_DIR%/boot/splash.png
TIMEOUT 3000
-# TODO: Replace these crappy messages with something useful
-F1 boot.txt
-F2 options.txt
-F3 help.txt
-
MENU WIDTH 78
MENU MARGIN 4
MENU ROWS 5
diff --git a/download-repo.sh b/download-repo.sh
index 0c06685..cd4fd88 100755
--- a/download-repo.sh
+++ b/download-repo.sh
@@ -58,7 +58,7 @@ if [ -n "$PKGS" ]; then
fi
done
if [ "$REPO_CHANGED" = "y" ]; then
- wget -nv "$baseurl/$REPO.db.tar.gz" -O "$DEST/$REPO.db.tar.gz"
+ wget -nv "$baseurl/$REPO.db" -O "$DEST/$REPO.db"
fi
else
echo "No packages to download... what'd you break?"
diff --git a/instructions b/instructions
index 5998788..b549144 100644
--- a/instructions
+++ b/instructions
@@ -1,4 +1,4 @@
- Arch Linux
+ Parabola GNU/Linux-Libre
Installation and Live-CDs
----------------------------
@@ -9,7 +9,7 @@ All iso files can also be written to hard disks/usbkeys.
Flavors:
--------
-Netinstall images are the preferred install media for Arch Linux.
+Netinstall images are the preferred install media for Parabola.
You can always get up to date packages using these media.
Core images contain a snapshot of the core repository, which makes them ideal
for offline installations when no Internet access is available
@@ -21,16 +21,15 @@ an architecture at boot.
How to obtain and use these installation images:
-------------------------------------
Torrents are preferred (they are webseed enabled), but you can also just get the images
-from an Arch mirror.
+from a Parabola mirror.
-The Official Arch Linux Install Guide gives you more info:
- http://wiki.archlinux.org/index.php/Official_Arch_Linux_Install_Guide
+The Official Parabola Install Guide gives you more info:
+http://wiki.parabolagnulinux.org/installation_guide
More info / getting in touch:
----------------------------
-http://bugs.archlinux.org/
-http://mailman.archlinux.org/mailman/listinfo/arch-releng
+http://bugs.parabolagnulinux.org/
+http://list.parabolagnulinux.org/listinfo.cgi/dev-parabolagnulinux.org
+irc://irc.freenode.net/#parabola
-Happy installing!
-Happy ARCHing!
-- Arch Linux Release Engineering team
+Happy hacking!
diff --git a/mkinitcpio.conf b/mkinitcpio.conf
index f5f8c79..aea436d 100644
--- a/mkinitcpio.conf
+++ b/mkinitcpio.conf
@@ -3,4 +3,4 @@ MODULES=""
BINARIES=""
FILES=""
HOOKS="base udev memdisk archiso archiso_pxe_nbd archiso_loop_mnt pata scsi sata usb fw pcmcia filesystems usbinput"
-COMPRESSION="lzma"
+COMPRESSION="xz"
diff --git a/overlay/etc/archiso/functions b/overlay/etc/archiso/functions
index fdd48f4..9fffdcb 100644
--- a/overlay/etc/archiso/functions
+++ b/overlay/etc/archiso/functions
@@ -1,12 +1,20 @@
# vim: set ft=sh:
-cmdline_param ()
+# kernel_cmdline <param> <default>
+# Looks for a parameter on the kernel's boot-time command line.
+#
+# returns: 0 if param was found. Also prints its value if it was a K=V param.
+# 1 if it was not. Also prints value passed as <default>
+#
+kernel_cmdline ()
{
- for param in ${CMDLINE}; do
+ for param in $(/bin/cat /proc/cmdline); do
case "${param}" in
- $1=*) echo "${param##*=}"; return ;;
+ $1=*) echo "${param##*=}"; return 0 ;;
+ $1) return 0 ;;
*) continue ;;
esac
done
[ -n "${2}" ] && echo "${2}"
+ return 1
}
diff --git a/overlay/etc/archiso/getshell b/overlay/etc/archiso/getshell
deleted file mode 100644
index a6f8775..0000000
--- a/overlay/etc/archiso/getshell
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/bin/sh
-
-. /etc/archiso/functions
-
-shell="$(cmdline_param shell)"
-[ -n "${shell}" ] && shell="/bin/bash"
-[ ! -e "${shell}" ] && shell="/bin/sh"
-
-exec ${shell}
diff --git a/overlay/etc/fstab b/overlay/etc/fstab
index 3c43a5e..dd7d9bb 100644
--- a/overlay/etc/fstab
+++ b/overlay/etc/fstab
@@ -1,7 +1,4 @@
# /etc/fstab: static file system information
+#
# <file system> <dir> <type> <options> <dump> <pass>
-aufs / aufs noauto 0 0
-none /dev/pts devpts defaults 0 0
-none /dev/shm tmpfs defaults 0 0
-
-### Auto generated entries get added here:
+union / auto noauto 0 0
diff --git a/overlay/etc/rc.conf b/overlay/etc/rc.conf
index 3893268..f6fc65e 100644
--- a/overlay/etc/rc.conf
+++ b/overlay/etc/rc.conf
@@ -4,22 +4,33 @@
. /etc/archiso/functions
LOCALE_DEFAULT="en_US.UTF-8"
-CLOCK_DEFAULT=""
-TIMEZONE_DEFAULT=""
+DAEMON_LOCALE_DEFAULT="no"
+CLOCK_DEFAULT="UTC"
+TIMEZONE_DEFAULT="Canada/Pacific"
KEYMAP_DEFAULT="us"
+CONSOLEFONT_DEFAULT=
+CONSOLEMAP_DEFAULT=
+USECOLOR_DEFAULT="yes"
+VERBOSE_DEFAULT="3"
-LOCALE="$(cmdline_param locale ${LOCALE_DEFAULT})"
-HARDWARECLOCK="$(cmdline_param clock ${CLOCK_DEFAULT})"
-TIMEZONE="$(cmdline_param timezone ${TIMEZONE_DEFAULT})"
-KEYMAP="$(cmdline_param keymap ${KEYMAP_DEFAULT})"
-CONSOLEFONT="$(cmdline_param consolefont)"
-CONSOLEMAP="$(cmdline_param consolemap)"
-USECOLOR="yes"
+LOCALE="$(kernel_cmdline locale ${LOCALE_DEFAULT})"
+DAEMON_LOCALE="$(kernel_cmdline daemon_locale ${DAEMON_LOCALE_DEFAULT})"
+HARDWARECLOCK="$(kernel_cmdline clock ${CLOCK_DEFAULT})"
+TIMEZONE="$(kernel_cmdline timezone ${TIMEZONE_DEFAULT})"
+KEYMAP="$(kernel_cmdline keymap ${KEYMAP_DEFAULT})"
+CONSOLEFONT="$(kernel_cmdline consolefont ${CONSOLEFONT_DEFAULT})"
+CONSOLEMAP="$(kernel_cmdline consolemap ${CONSOLEMAP_DEFAULT})"
+USECOLOR="$(kernel_cmdline usecolor ${USECOLOR_DEFAULT})"
+VERBOSE="$(kernel_cmdline verbose ${VERBOSE_DEFAULT})"
MOD_AUTOLOAD="yes"
+MODULES=()
+
+UDEV_TIMEOUT=30
+USEDMRAID="no"
+USEBTRFS="no"
+USELVM="no"
HOSTNAME="libreiso"
-#TODO add more auto-daemons here, especially the live-cd specific stuff
-DAEMONS=(syslog-ng network archiso)
#TODO: auto-network find-disks find-user-home
diff --git a/overlay/etc/rc.d/archiso b/overlay/etc/rc.d/archiso
index 3355737..1d4443c 100755
--- a/overlay/etc/rc.d/archiso
+++ b/overlay/etc/rc.d/archiso
@@ -1,66 +1,6 @@
# vim: set ft=sh:
. /etc/rc.conf
. /etc/rc.d/functions
-. /etc/archiso/functions
-
-
-scan_network ()
-{
- netparam () { echo ${2} | sed "s|.*${1}\([^ ]*\).*|\1|gi"; }
- #
- netdevs=$(cat /proc/net/dev | grep ':' | cut -d':' -f1)
- for net in ${netdev}; do
- stats=$(ifconfig ${net} | tr -s "\n" " ")
- done
-}
-
-scan_mount_pts ()
-{
- #iterate over all block devices
- stat_busy "Scanning local block devices"
- for dev in $(echo /sys/block/*/dev /sys/block/*/*/dev); do
-
- devname="/dev/$(echo ${dev} | cut -d'/' -f3,4 | cut -d'/' -f1)"
- mountpt="/mnt/$(basename '${devname}')"
- mkdir -p "${mountpt}" 2>/dev/null
- mount ${options} "${devname}" "${mountpt}" >/dev/null 2>&1
-
- fstype=$(awk '{ if ($1=="${devname}") { print $3" "$4;q }}' /proc/mounts)
- fstype="${fstype%%,*}"
- case "${fstype%% *}" in
- *fat*|ntfs|*dos) options="user,exec,uid=0,gid=100,umask=00070" ;;
- *) options="users,defaults,exec" ;;
- #TODO handle 'sync' on usb devices...
- esac
-
- echo "${devname} ${mountpt} ${fstype} ${options} 0 0 #configured by archiso" >>/etc/fstab
- done
- stat_done
-}
-
-scan_swap ()
-{
- #Archie finds a pagefile.sys for windows/dos machines... may add later
- stat_busy "Finding existing swap partitions"
- swapdev="$(fdisk -l 2>/dev/null | grep swap | cut -d' ' -f1)"
- if [ -e "${swapdev}" ]; then
- swapon ${swapdev}
- echo "${swapdev} swap swap defaults 0 0 #configured by archiso" >>/etc/fstab
- fi
- stat_done
-}
-
-do_homedir ()
-{
- stat_busy "Scanning for existing HOME directory"
- user="$(cmdline_param homeuser)"
- for hdir in $(find /mnt -name "home/${user}" 2>/dev/null); do
- mkdir -p "/home/libre/"
- # break after the first success...
- mount --bind "${hdir}" "/home/libre/" && break
- done
- stat_done
-}
do_makeuser ()
{
@@ -86,11 +26,32 @@ do_fix_perms ()
stat_done
}
+# If an alternate console was specified on the kernel command line,
+# start agetty on it too.
+do_special_console()
+{
+ cmdline_console="$(kernel_cmdline console)"
+ [ $? -ne 0 ] && return
+
+ dev="${cmdline_console%%,*}"
+ args="${cmdline_console##*,}"
+ baud="${args%%[neo]*}" && baud="${baud:-"9600"}"
+ [ "x${args}" != "x${args%%r}" ] && rts="-h"
+
+
+ stat_busy "Starting agetty on console: ${cmdline_console}"
+ echo "${dev}" >> /etc/securetty
+ echo "z0:2345:respawn:/sbin/agetty ${rts} ${baud} ${dev} linux" >> /etc/inittab
+ /sbin/telinit q
+ stat_done
+}
+
case "$1" in
start)
do_locale_gen
do_makeuser
do_fix_perms
+ do_special_console
;;
esac
exit 0
diff --git a/packages.x86_64 b/packages.x86_64
index f34f532..0a79879 100644
--- a/packages.x86_64
+++ b/packages.x86_64
@@ -5,6 +5,7 @@ btrfs-progs-unstable
crda
curl
ddrescue
+dhclient
dialog
dmraid
dnsutils