diff --git a/target/lvp/ChangeLog b/target/lvp/ChangeLog index b479242d2..a8eee8685 100644 --- a/target/lvp/ChangeLog +++ b/target/lvp/ChangeLog @@ -1,4 +1,13 @@ +Mon May 24 12:56:20 CEST 2004 Benjamin Schieder + + * preconfig.in: rename target to LVP + * build.sh: substitute I for --compress-program=bzip2 + * overall: update to ROCK trunk (new build-directory layout, MPlayer 1.0pre4) + * overall: use initrd instead of reading / directly from CD + * initrd: search for LVP in all available CD/DVD-drives + * initrd: eject discs before shutting down + Mon Mar 8 11:28:08 CET 2004 Benjamin 'blindCoder' Schieder * overall: adapted lvp to be used as a pure ROCK Linux target diff --git a/target/lvp/TODO b/target/lvp/TODO index c2a187851..33a239215 100644 --- a/target/lvp/TODO +++ b/target/lvp/TODO @@ -1,3 +1,3 @@ -- use initrd - volume-control - maybe directfb instead of XFree? +- ehm... clean up. lots of it. diff --git a/target/lvp/build.sh b/target/lvp/build.sh index 7ed3b2b2b..422b7d7d2 100644 --- a/target/lvp/build.sh +++ b/target/lvp/build.sh @@ -1,6 +1,10 @@ -lvp_ver="0.4.0" -releasedir="${base}/build/${ROCKCFG_ID}/lvp_${lvp_ver}_${ROCKCFG_X86_OPT}" +lvp_ver="0.4.1" +rootdir="${base}/build/${ROCKCFG_ID}" +ROCKdir="${rootdir}/ROCK" +releasedir="${ROCKdir}/lvp_${lvp_ver}_${ROCKCFG_X86_OPT}" +syslinux_ver="`sed -n 's,.*syslinux-\(.*\).tar.*,\1,p' ${base}/target/${target}/download.txt`" +kernelversion="`grep '\[V\]' ${base}/package/base/linux24/linux24.desc | cut -f2 -d' '`" pkgloop @@ -10,7 +14,7 @@ PATH="${base}/build/${ROCKCFG_ID}/${toolsdir}/diet-bin:${PATH}" echo_header "Creating LVP ..." echo_header "Checking for *.err files ..." -if [ `find "${base}/build/${ROCKCFG_ID}/root/var/adm/logs/" -name '*err' 2>/dev/null | wc -l` -gt 0 ] ; then +if [ `find "${rootdir}/var/adm/logs/" -name '*err' 2>/dev/null | wc -l` -gt 0 ] ; then echo_status "Found some. This is bad :-(" else echo_status "None found. Good :-)" @@ -25,13 +29,71 @@ else . ${base}/target/${target}/${arch}/build.sh fi - echo_status "Creating the live-system" + echo_status "Creating initrd" + echo_status "Creating directory structure" + mkdir -p ${releasedir}/initrd + cd ${releasedir}/initrd + mkdir -p bin etc proc dev tmp mnt + ln -sf bin sbin + ln -sf . usr + cd etc + ln -sf /proc/mounts mtab + ln -sf /proc/mounts fstab + cd .. + + echo_status "Copying programs" + for x in \ + bin/bash \ + bin/cat \ + bin/grep \ + bin/gzip \ + bin/ln \ + bin/ls \ + bin/mount \ + bin/umount \ + bin/rm \ + usr/bin/chroot \ + bin/find \ + bin/gawk \ + bin/loadkeys \ + lib/modules/${kernelversion}-rock/block \ + sbin/agetty \ + sbin/hwscan \ + usr/bin/eject \ + usr/sbin/lspci \ + usr/share/kbd/keymaps ; do - kernelversion="`grep '\[V\]' ${base}/package/base/linux24/linux24.desc | cut -f2 -d' '`" + mkdir -p ${x%/*} + cp -ar ${rootdir}/${x} ${x} + chmod u-s,g-s ${x} + dynamic=`file ${x} | grep -c dynamic` + if [ "${dynamic}" != "0" ] ; then + echo_error "WARNING! ${x} is NOT linked statically!" + fi + done + + cp ${base}/target/${target}/${arch}/initrd/* bin/ + cd bin + chmod +x * + ln -sf gzip gunzip + ln -sf gzip gzcat + cd .. + mv bin/linuxrc . + cp ${rootdir}/sbin/insmod.static ${releasedir}/initrd/sbin/insmod + for x in kallsyms ksyms lsmod modprobe rmmod ; do + ln -sf /sbin/insmod ${releasedir}/initrd/sbin/${x} + done + + echo_status "Copying kernel modules to initrd" + cd ${releasedir}/initrd + tar --use-compress-program=bzip2 -xf ${ROCKdir}/pkgs/linux24.tar.bz2 lib/ + + echo_status "Creating the livesystem" echo_status "Creating directory structure" + mkdir -p ${releasedir}/livesystem cd ${releasedir}/livesystem - tar xfI ${base}/build/${ROCKCFG_ID}/pkgs/00-dirtree.tar.bz2 + tar --use-compress-program=bzip2 -xf ${ROCKdir}/pkgs/00-dirtree.tar.bz2 cd usr/ rm -rf X11 X11R6 mkdir X11R6 @@ -44,21 +106,17 @@ else bin/bash \ bin/cat \ bin/find \ - bin/gawk \ bin/grep \ bin/gzip \ bin/ln \ - bin/loadkeys \ bin/mount \ bin/mv \ bin/rm \ bin/sed \ bin/sh \ bin/uname \ + bin/umount \ etc/mplayer/mplayer.conf \ - lib/modules/${kernelversion}-rock/block \ - sbin/agetty \ - sbin/hwscan \ usr/share/mplayer/font-arial-24-iso-8859-1 \ usr/X11/bin/XFree86 \ usr/X11/bin/X \ @@ -71,10 +129,11 @@ else usr/bin/mplayer \ usr/bin/tail \ usr/sbin/lspci \ - usr/share/kbd/keymaps ; do + sbin/losetup \ + ; do mkdir -p ${x%/*} - cp -ar ${base}/build/${ROCKCFG_ID}/root/${x} ${x} + cp -ar ${rootdir}/${x} ${x} chmod u-s,g-s ${x} dynamic=`file ${x} | grep -c dynamic` if [ "${dynamic}" != "0" ] ; then @@ -84,41 +143,42 @@ else cd etc/ ln -sf /proc/mounts mtab - cd .. - cd usr/share/mplayer - ln -sf font-arial-24-iso-8859-1 font + cd ../usr/share/mplayer + mv font-arial-24-iso-8859-1 font cd ../../.. echo_status "Copying linuxrc as init-replacement ..." - cp ${base}/target/${target}/linuxrc ${releasedir}/livesystem/linuxrc ; chmod +x ${releasedir}/livesystem/linuxrc - echo_status "Copying sbin/login-shell ..." - cp ${base}/target/${target}/login-shell ${releasedir}/livesystem/sbin/login-shell ; chmod +x ${releasedir}/livesystem/sbin/login-shell + cp ${base}/target/${target}/${arch}/livesystem/linuxrc ${releasedir}/livesystem/linuxrc ; chmod +x ${releasedir}/livesystem/linuxrc echo_status "Copying startlvp script ..." - cp ${base}/target/${target}/startlvp ${releasedir}/livesystem/sbin/; chmod +x ${releasedir}/livesystem/sbin/startlvp + cp ${base}/target/${target}/${arch}/livesystem/startlvp ${releasedir}/livesystem/sbin/; chmod +x ${releasedir}/livesystem/sbin/startlvp echo_status "Copying XF86Config ..." mkdir -p ${releasedir}/livesystem/etc/X11 - cp ${base}/target/${target}/XF86Config ${releasedir}/livesystem/etc/X11/XF86Config + cp ${base}/target/${target}/${arch}/livesystem/XF86Config ${releasedir}/livesystem/etc/X11/XF86Config echo_status "Copying xinitrc ..." mkdir -p ${releasedir}/livesystem/usr/X11R6/lib/X11/xinit - cp ${base}/target/${target}/xinitrc ${releasedir}/livesystem/usr/X11R6/lib/X11/xinit/xinitrc + cp ${base}/target/${target}/${arch}/livesystem/xinitrc ${releasedir}/livesystem/usr/X11R6/lib/X11/xinit/xinitrc echo_status "Copying etc scripts ..." mkdir -p ${releasedir}/livesystem/etc/lvp - for x in ${base}/target/${target}/etc_* ; do + for x in ${base}/target/${target}/${arch}/livesystem/etc_* ; do y=${x##*/} cp ${x} ${releasedir}/livesystem/${y//_/\/} done - echo_status "Copying kernel modules ..." - cd ${releasedir}/livesystem - tar xfI ${base}/build/${ROCKCFG_ID}/pkgs/linux24.tar.bz2 lib/ - cp ${base}/build/${ROCKCFG_ID}/root/sbin/insmod.static ${releasedir}/livesystem/sbin/insmod - for x in kallsyms ksyms lsmod modprobe rmmod ; do - ln -sf /sbin/insmod ${releasedir}/livesystem/sbin/${x} - done - echo_status "Compressing binaries ... " - ${base}/build/${ROCKCFG_ID}/root/usr/bin/upx --best --crp-ms=999999 --nrv2d `find ${releasedir}/livesystem -type f | xargs file | grep "statically linked" | grep -v bin/bash | grep -v bin/mount | cut -f1 -d:` >/proc/$$/fd/1 2>/proc/$$/fd/2 >${releasedir}/livesystem/etc/VERSION + echo_status "Compressing binaries ... " + ${rootdir}/usr/bin/upx --best --crp-ms=999999 --nrv2d `find ${releasedir}/livesystem -type f | xargs file | grep "statically linked" | grep -v bin/bash | grep -v bin/mount | cut -f1 -d:` `find ${releasedir}/initrd -type f | xargs file | grep "statically linked" | grep -v bin/bash | grep -v bin/mount | cut -f1 -d:` >/proc/$$/fd/1 2>/proc/$$/fd/2 /dev/null 2>&1 + mkdir ${releasedir}/initrd.tmp.$$ + mount -o loop ${releasedir}/isolinux/initrd ${releasedir}/initrd.tmp.$$ + mv ${releasedir}/initrd/* ${releasedir}/initrd.tmp.$$ + umount ${releasedir}/initrd.tmp.$$ + rm -rf ${releasedir}/initrd.tmp.$$ ${releasedir}/initrd + + echo_status "LVP v${lvp_ver} built for ${ROCKCFG_X86_OPT} is now ready in ${releasedir}." fi -echo_status "LVP v${lvp_ver} built for ${ROCKCFG_X86_OPT} is now ready in ${releasedir}." cd ${base} diff --git a/target/lvp/config.in b/target/lvp/config.in index 7d119ca96..b29155a03 100644 --- a/target/lvp/config.in +++ b/target/lvp/config.in @@ -36,6 +36,7 @@ pkgfilter sed ' / coreutils / { p; d; }; / diffutils / { p; d; }; / ed / { p; d; }; +/ eject / { p; d; }; / findutils / { p; d; }; / flex / { p; d; }; / freeglut / { p; d; }; @@ -101,3 +102,7 @@ ROCKCFGSET_DO_REBUILD_STAGE=0 ROCKCFGSET_CREATE_DOCS=0 ROCKCFGSET_DISABLE_NLS=1 ROCKCFGSET_CREATE_CACHE=0 + +ROCKCFGSET_PKGSEL_TPL=none +ROCKCFGSET_PKG_BASH_HELP_CMD=0 + diff --git a/target/lvp/download.txt b/target/lvp/download.txt index 1d8672dbd..ea7b58ae1 100644 --- a/target/lvp/download.txt +++ b/target/lvp/download.txt @@ -1 +1 @@ -4214885284 syslinux-2.02.tar.bz2 http://www.kernel.org/pub/linux/utils/boot/syslinux/ +4279863212 syslinux-2.08.tar.bz2 http://www.kernel.org/pub/linux/utils/boot/syslinux/ diff --git a/target/lvp/etc_lvp_00-setup.sh b/target/lvp/dump/etc_lvp_00-setup.sh similarity index 100% rename from target/lvp/etc_lvp_00-setup.sh rename to target/lvp/dump/etc_lvp_00-setup.sh diff --git a/target/lvp/etc_lvp_hardware.sh b/target/lvp/dump/etc_lvp_hardware.sh similarity index 100% rename from target/lvp/etc_lvp_hardware.sh rename to target/lvp/dump/etc_lvp_hardware.sh diff --git a/target/lvp/etc_lvp_encryption.sh b/target/lvp/etc_lvp_encryption.sh deleted file mode 100644 index e8a1c44bc..000000000 --- a/target/lvp/etc_lvp_encryption.sh +++ /dev/null @@ -1,47 +0,0 @@ -#!/bin/bash - -if [ -e /lvp.data1 ] ; then - echo -n "Found " - for x in /lvp.data* ; do - echo -n "$x " - done - echo - echo "Starting crypto-subroutine" - - insmod /lib/modules/`uname -r`/block/loop.o >/dev/null 2>/dev/null - insmod /lib/modules/`uname -r`/block/loop_blowfish.o >/dev/null 2>/dev/null && blowfish=1 - insmod /lib/modules/`uname -r`/block/loop_twofish.o >/dev/null 2>/dev/null && twofish=1 - insmod /lib/modules/`uname -r`/block/loop_serpent.o >/dev/null 2>/dev/null && serpent=1 - echo "Please choose which encryption you want to use:" - [ "${blowfish}" == 1 ] && echo -e "\t1\tblowfish" - [ "${twofish}" == 1 ] && echo -e "\t2\ttwofish" - [ "${serpent}" == 1 ] && echo -e "\t3\tserpent" - echo - if [ "${blowfish}" != 1 -a "${twofish}" != 1 -a "${serpent}" != 1 ] ; then - echo "Couldn't find a usable cipher for encryption." >&2 - echo "Can't mount encrypted data." >&2 - echo "Sorry >_<" >&2 - echo >&2 - read -p "Press -- to shut down the system" - echo 'o' >/proc/sysrq-trigger - fi - unset thisenc - while [ -z "${thisenc}" ] ; do - echo -n "Please enter your choice: " - read rthisenc - [ "${rthisenc}" == "1" -a "${blowfish}" == "1" ] && thisenc="blowfish256" - [ "${rthisenc}" == "2" -a "${twofish}" == "1" ] && thisenc="twofish256" - [ "${rthisenc}" == "3" -a "${serpent}" == "1" ] && thisenc="serpent256" - done - echo "Using ${thisenc%256} encryption." - while [ ! -e /mnt1/lvp.xml ] ; do - umount /mnt* >/dev/null 2>&1 - read -p "Please enter passphrase: " -s passphrase - echo - for x in /lvp.data* ; do - echo "${passphrase}" | mount -o encryption=${thisenc} -p 0 ${x} /mnt${x#/lvp.data} 2>&1 - done - [ ! -e /mnt1/lvp.xml ] && echo "Wrong Passphrase!" - done -fi - diff --git a/target/lvp/kernel.conf b/target/lvp/kernel.conf index 228517b1d..b7a7bf0f1 100644 --- a/target/lvp/kernel.conf +++ b/target/lvp/kernel.conf @@ -52,11 +52,12 @@ CONFIG_X86_ALIGNMENT_16=y CONFIG_X86_PPRO_FENCE=y # CONFIG_X86_F00F_WORKS_OK is not set # CONFIG_X86_MCE is not set -CONFIG_TOSHIBA=m -CONFIG_I8K=m -CONFIG_MICROCODE=m -CONFIG_X86_MSR=m -CONFIG_X86_CPUID=m +# CONFIG_TOSHIBA is not set +# CONFIG_I8K is not set +# CONFIG_MICROCODE is not set +# CONFIG_X86_MSR is not set +# CONFIG_X86_CPUID is not set +# CONFIG_EDD is not set CONFIG_NOHIGHMEM=y # CONFIG_HIGHMEM4G is not set # CONFIG_HIGHMEM64G is not set @@ -67,7 +68,6 @@ CONFIG_MTRR=y # CONFIG_X86_UP_APIC is not set # CONFIG_X86_UP_IOAPIC is not set # CONFIG_X86_TSC_DISABLE is not set -CONFIG_X86_TSC=y # # General setup @@ -83,28 +83,18 @@ CONFIG_ISA=y CONFIG_PCI_NAMES=y # CONFIG_EISA is not set # CONFIG_MCA is not set -CONFIG_HOTPLUG=y - -# -# PCMCIA/CardBus support -# +# CONFIG_HOTPLUG is not set # CONFIG_PCMCIA is not set - -# -# PCI Hotplug Support -# # CONFIG_HOTPLUG_PCI is not set -# CONFIG_HOTPLUG_PCI_COMPAQ is not set -# CONFIG_HOTPLUG_PCI_COMPAQ_NVRAM is not set -# CONFIG_HOTPLUG_PCI_ACPI is not set CONFIG_SYSVIPC=y # CONFIG_BSD_PROCESS_ACCT is not set CONFIG_SYSCTL=y CONFIG_KCORE_ELF=y # CONFIG_KCORE_AOUT is not set -CONFIG_BINFMT_AOUT=m +# CONFIG_BINFMT_AOUT is not set CONFIG_BINFMT_ELF=y # CONFIG_BINFMT_MISC is not set +# CONFIG_OOM_KILLER is not set CONFIG_PM=y # CONFIG_APM is not set @@ -112,7 +102,6 @@ CONFIG_PM=y # ACPI Support # CONFIG_ACPI=y -# CONFIG_ACPI_HT_ONLY is not set CONFIG_ACPI_BOOT=y CONFIG_ACPI_BUS=y CONFIG_ACPI_INTERPRETER=y @@ -157,13 +146,14 @@ CONFIG_BLK_DEV_FD=y # CONFIG_BLK_CPQ_DA is not set # CONFIG_BLK_CPQ_CISS_DA is not set # CONFIG_CISS_SCSI_TAPE is not set +# CONFIG_CISS_MONITOR_THREAD is not set # CONFIG_BLK_DEV_DAC960 is not set # CONFIG_BLK_DEV_UMEM is not set -CONFIG_BLK_DEV_LOOP=m +CONFIG_BLK_DEV_LOOP=y CONFIG_BLK_DEV_LOOP_AES=y # CONFIG_BLK_DEV_NBD is not set CONFIG_BLK_DEV_RAM=y -CONFIG_BLK_DEV_RAM_SIZE=4096 +CONFIG_BLK_DEV_RAM_SIZE=8192 CONFIG_BLK_DEV_INITRD=y # CONFIG_BLK_STATS is not set @@ -236,8 +226,8 @@ CONFIG_IDE=y CONFIG_BLK_DEV_IDE=y # CONFIG_BLK_DEV_HD_IDE is not set # CONFIG_BLK_DEV_HD is not set -CONFIG_BLK_DEV_IDEDISK=y -CONFIG_IDEDISK_MULTI_MODE=y +# CONFIG_BLK_DEV_IDEDISK is not set +# CONFIG_IDEDISK_MULTI_MODE is not set # CONFIG_IDEDISK_STROKE is not set # CONFIG_BLK_DEV_IDECS is not set CONFIG_BLK_DEV_IDECD=y @@ -245,57 +235,17 @@ CONFIG_BLK_DEV_IDECD=y # CONFIG_BLK_DEV_IDEFLOPPY is not set # CONFIG_BLK_DEV_IDESCSI is not set # CONFIG_IDE_TASK_IOCTL is not set -CONFIG_BLK_DEV_CMD640=y +# CONFIG_BLK_DEV_CMD640 is not set # CONFIG_BLK_DEV_CMD640_ENHANCED is not set # CONFIG_BLK_DEV_ISAPNP is not set -CONFIG_BLK_DEV_IDEPCI=y -# CONFIG_BLK_DEV_GENERIC is not set -CONFIG_IDEPCI_SHARE_IRQ=y -CONFIG_BLK_DEV_IDEDMA_PCI=y -# CONFIG_BLK_DEV_OFFBOARD is not set -# CONFIG_BLK_DEV_IDEDMA_FORCED is not set -CONFIG_IDEDMA_PCI_AUTO=y -# CONFIG_IDEDMA_ONLYDISK is not set -CONFIG_BLK_DEV_IDEDMA=y -# CONFIG_IDEDMA_PCI_WIP is not set -CONFIG_BLK_DEV_ADMA100=m -CONFIG_BLK_DEV_AEC62XX=m -CONFIG_BLK_DEV_ALI15X3=m -# CONFIG_WDC_ALI15X3 is not set -CONFIG_BLK_DEV_AMD74XX=m -# CONFIG_AMD74XX_OVERRIDE is not set -CONFIG_BLK_DEV_CMD64X=m -CONFIG_BLK_DEV_TRIFLEX=m -CONFIG_BLK_DEV_CY82C693=m -CONFIG_BLK_DEV_CS5530=m -CONFIG_BLK_DEV_HPT34X=m -# CONFIG_HPT34X_AUTODMA is not set -CONFIG_BLK_DEV_HPT366=m -CONFIG_BLK_DEV_PIIX=y -CONFIG_BLK_DEV_NS87415=m -CONFIG_BLK_DEV_OPTI621=m -CONFIG_BLK_DEV_PDC202XX_OLD=m -# CONFIG_PDC202XX_BURST is not set -CONFIG_BLK_DEV_PDC202XX_NEW=m -# CONFIG_PDC202XX_FORCE is not set -CONFIG_BLK_DEV_RZ1000=y -CONFIG_BLK_DEV_SC1200=m -CONFIG_BLK_DEV_SVWKS=m -CONFIG_BLK_DEV_SIIMAGE=m -CONFIG_BLK_DEV_SIS5513=m -CONFIG_BLK_DEV_SLC90E66=m -CONFIG_BLK_DEV_TRM290=m -CONFIG_BLK_DEV_VIA82CXXX=m +# CONFIG_BLK_DEV_IDEPCI is not set # CONFIG_IDE_CHIPSETS is not set -CONFIG_IDEDMA_AUTO=y -# CONFIG_IDEDMA_IVB is not set +# CONFIG_IDEDMA_AUTO is not set # CONFIG_DMA_NONPCI is not set -CONFIG_BLK_DEV_PDC202XX=y -CONFIG_BLK_DEV_IDE_MODES=y -CONFIG_BLK_DEV_ATARAID=m -CONFIG_BLK_DEV_ATARAID_PDC=m -CONFIG_BLK_DEV_ATARAID_HPT=m -CONFIG_BLK_DEV_ATARAID_SII=m +# CONFIG_BLK_DEV_ATARAID is not set +# CONFIG_BLK_DEV_ATARAID_PDC is not set +# CONFIG_BLK_DEV_ATARAID_HPT is not set +# CONFIG_BLK_DEV_ATARAID_SII is not set # # SCSI support @@ -359,6 +309,7 @@ CONFIG_BLK_DEV_ATARAID_SII=m # CONFIG_INPUT_MOUSEDEV is not set # CONFIG_INPUT_JOYDEV is not set # CONFIG_INPUT_EVDEV is not set +# CONFIG_INPUT_UINPUT is not set # # Character devices @@ -401,9 +352,11 @@ CONFIG_PSMOUSE=y # Watchdog Cards # # CONFIG_WATCHDOG is not set +# CONFIG_SCx200 is not set # CONFIG_SCx200_GPIO is not set # CONFIG_AMD_RNG is not set # CONFIG_INTEL_RNG is not set +# CONFIG_HW_RANDOM is not set # CONFIG_AMD_PM768 is not set # CONFIG_NVRAM is not set # CONFIG_RTC is not set @@ -421,23 +374,30 @@ CONFIG_AGP_INTEL=y CONFIG_AGP_I810=y CONFIG_AGP_VIA=y CONFIG_AGP_AMD=y -CONFIG_AGP_AMD_8151=y +CONFIG_AGP_AMD_K8=y CONFIG_AGP_SIS=y CONFIG_AGP_ALI=y CONFIG_AGP_SWORKS=y CONFIG_AGP_NVIDIA=y +CONFIG_AGP_ATI=y + +# +# Direct Rendering Manager (XFree86 DRI support) +# CONFIG_DRM=y # CONFIG_DRM_OLD is not set CONFIG_DRM_NEW=y CONFIG_DRM_TDFX=y +CONFIG_DRM_GAMMA=y CONFIG_DRM_R128=y CONFIG_DRM_RADEON=y CONFIG_DRM_I810=y CONFIG_DRM_I810_XFREE_41=y CONFIG_DRM_I830=y CONFIG_DRM_MGA=y -CONFIG_DRM_SIS=y +# CONFIG_DRM_SIS is not set # CONFIG_MWAVE is not set +# CONFIG_OBMOUSE is not set # # Multimedia devices @@ -503,6 +463,11 @@ CONFIG_EXT2_FS=y # CONFIG_UDF_RW is not set # CONFIG_UFS_FS is not set # CONFIG_UFS_FS_WRITE is not set +# CONFIG_XFS_FS is not set +# CONFIG_XFS_QUOTA is not set +# CONFIG_XFS_RT is not set +# CONFIG_XFS_TRACE is not set +# CONFIG_XFS_DEBUG is not set # # Network File Systems @@ -534,58 +499,23 @@ CONFIG_MSDOS_PARTITION=y # Console drivers # CONFIG_VGA_CONSOLE=y -CONFIG_VIDEO_SELECT=y +# CONFIG_VIDEO_SELECT is not set # CONFIG_MDA_CONSOLE is not set # # Frame-buffer support # -CONFIG_FB=y -CONFIG_DUMMY_CONSOLE=y -CONFIG_FB_RIVA=y -CONFIG_FB_CLGEN=y -CONFIG_FB_PM2=y -# CONFIG_FB_PM2_FIFO_DISCONNECT is not set -# CONFIG_FB_PM2_PCI is not set -CONFIG_FB_PM3=y -CONFIG_FB_CYBER2000=y -CONFIG_FB_VESA=y -CONFIG_FB_VGA16=y -CONFIG_FB_HGA=y -CONFIG_VIDEO_SELECT=y -# CONFIG_FB_MATROX is not set -CONFIG_FB_ATY=y -# CONFIG_FB_ATY_GX is not set -# CONFIG_FB_ATY_CT is not set -CONFIG_FB_RADEON=y -CONFIG_FB_ATY128=y -CONFIG_FB_INTEL=y -CONFIG_FB_SIS=y -CONFIG_FB_SIS_300=y -CONFIG_FB_SIS_315=y -CONFIG_FB_NEOMAGIC=y -CONFIG_FB_3DFX=y -CONFIG_FB_VOODOO1=y -CONFIG_FB_TRIDENT=y -# CONFIG_FB_VIRTUAL is not set -# CONFIG_FBCON_ADVANCED is not set -CONFIG_FBCON_MFB=y -CONFIG_FBCON_CFB8=y -CONFIG_FBCON_CFB16=y -CONFIG_FBCON_CFB24=y -CONFIG_FBCON_CFB32=y -CONFIG_FBCON_VGA_PLANES=y -CONFIG_FBCON_HGA=y -# CONFIG_FBCON_FONTWIDTH8_ONLY is not set -# CONFIG_FBCON_FONTS is not set -CONFIG_FONT_8x8=y -CONFIG_FONT_8x16=y +# CONFIG_FB is not set # # Sound # CONFIG_SOUND=y CONFIG_SOUND_ALI5455=m +CONFIG_SOUND_ALI5455_CODECSPDIFOUT_PCMOUTSHARE=y +CONFIG_SOUND_ALI5455_CODECSPDIFOUT_CODECINDEPENDENTDMA=y +CONFIG_SOUND_ALI5455_CONTROLLERSPDIFOUT_PCMOUTSHARE=y +CONFIG_SOUND_ALI5455_CONTROLLERSPDIFOUT_CONTROLLERINDEPENDENTDMA=y CONFIG_SOUND_BT878=m CONFIG_SOUND_CMPCI=m # CONFIG_SOUND_CMPCI_FM is not set @@ -606,16 +536,10 @@ CONFIG_SOUND_ICH=m CONFIG_SOUND_RME96XX=m CONFIG_SOUND_SONICVIBES=m CONFIG_SOUND_TRIDENT=m -CONFIG_SOUND_MSNDCLAS=m -# CONFIG_MSNDCLAS_HAVE_BOOT is not set -CONFIG_MSNDCLAS_INIT_FILE="/etc/sound/msndinit.bin" -CONFIG_MSNDCLAS_PERM_FILE="/etc/sound/msndperm.bin" -CONFIG_SOUND_MSNDPIN=m -# CONFIG_MSNDPIN_HAVE_BOOT is not set -CONFIG_MSNDPIN_INIT_FILE="/etc/sound/pndspini.bin" -CONFIG_MSNDPIN_PERM_FILE="/etc/sound/pndsperm.bin" +# CONFIG_SOUND_MSNDCLAS is not set +# CONFIG_SOUND_MSNDPIN is not set CONFIG_SOUND_VIA82CXXX=m -# CONFIG_MIDI_VIA82CXXX is not set +CONFIG_MIDI_VIA82CXXX=y CONFIG_SOUND_OSS=m # CONFIG_SOUND_TRACEINIT is not set # CONFIG_SOUND_DMAP is not set @@ -658,12 +582,19 @@ CONFIG_SOUND_AEDSP16=m # CONFIG_AEDSP16_MSS is not set # CONFIG_AEDSP16_MPU401 is not set # CONFIG_SOUND_TVMIXER is not set +CONFIG_SOUND_AD1980=m +CONFIG_SOUND_WM97XX=m # # USB support # # CONFIG_USB is not set +# +# Support for USB gadgets +# +# CONFIG_USB_GADGET is not set + # # Bluetooth support # @@ -680,29 +611,32 @@ CONFIG_DEBUG_KERNEL=y CONFIG_MAGIC_SYSRQ=y # CONFIG_DEBUG_SPINLOCK is not set # CONFIG_FRAME_POINTER is not set +CONFIG_LOG_BUF_SHIFT=0 # # Cryptographic options # CONFIG_CRYPTO=y # CONFIG_CRYPTO_HMAC is not set -CONFIG_CRYPTO_NULL=m -CONFIG_CRYPTO_MD4=m -CONFIG_CRYPTO_MD5=m -CONFIG_CRYPTO_SHA1=m -CONFIG_CRYPTO_SHA256=m -CONFIG_CRYPTO_SHA512=m -CONFIG_CRYPTO_DES=m -CONFIG_CRYPTO_BLOWFISH=m -CONFIG_CRYPTO_TWOFISH=m -CONFIG_CRYPTO_SERPENT=m -CONFIG_CRYPTO_AES=m -CONFIG_CRYPTO_DEFLATE=m +# CONFIG_CRYPTO_NULL is not set +# CONFIG_CRYPTO_MD4 is not set +# CONFIG_CRYPTO_MD5 is not set +# CONFIG_CRYPTO_SHA1 is not set +# CONFIG_CRYPTO_SHA256 is not set +# CONFIG_CRYPTO_SHA512 is not set +# CONFIG_CRYPTO_DES is not set +# CONFIG_CRYPTO_BLOWFISH is not set +# CONFIG_CRYPTO_TWOFISH is not set +# CONFIG_CRYPTO_SERPENT is not set +# CONFIG_CRYPTO_AES is not set +# CONFIG_CRYPTO_CAST5 is not set +# CONFIG_CRYPTO_CAST6 is not set +# CONFIG_CRYPTO_DEFLATE is not set # CONFIG_CRYPTO_TEST is not set # # Library routines # # CONFIG_CRC32 is not set -CONFIG_ZLIB_INFLATE=m -CONFIG_ZLIB_DEFLATE=m +# CONFIG_ZLIB_INFLATE is not set +# CONFIG_ZLIB_DEFLATE is not set diff --git a/target/lvp/parse-config b/target/lvp/parse-config index 88b63ca71..605de06c1 100644 --- a/target/lvp/parse-config +++ b/target/lvp/parse-config @@ -1,6 +1,6 @@ static=0 -for x in upx gzip sed kbd mplayer pciutils grep coreutils util-linux libgli lvp gawk bash findutils xfree86 ; do +for x in upx gzip sed kbd mplayer pciutils grep coreutils util-linux libgli lvp gawk bash findutils eject xfree86 flex ; do [ "$pkg" == "$x" ] && static=1 done diff --git a/target/lvp/pkg_mplayer.conf b/target/lvp/pkg_mplayer.conf index 8dedf2e13..202a28c6a 100644 --- a/target/lvp/pkg_mplayer.conf +++ b/target/lvp/pkg_mplayer.conf @@ -6,10 +6,10 @@ mplayer_postmake() { ln -sf font-arial-24-iso-8859-1 $datadir/$pkg/font echo "create a default configuration ..." - cat <<- 'EOT' > $sysconfdir/mplayer.conf + cat <<- EOT > $sysconfdir/mplayer.conf framedrop=yes menu=yes - font=/usr/share/mplayer/font-arial-24-iso-8859-1/font.desc + font=/usr/share/mplayer/font/font.desc EOT cp -f etc/{input,menu,codecs}.conf $sysconfdir echo "TAB menu up" >> $sysconfdir/input.conf diff --git a/target/lvp/preconfig.in b/target/lvp/preconfig.in index 3bec1648e..04be091cf 100644 --- a/target/lvp/preconfig.in +++ b/target/lvp/preconfig.in @@ -21,4 +21,4 @@ # --- ROCK-COPYRIGHT-NOTE-END --- CFGTEMP_TARGETLIST="$CFGTEMP_TARGETLIST ` -`lvp LVP-LiveCD/DVD" +`lvp LVP" diff --git a/target/lvp/x86/build.sh b/target/lvp/x86/build.sh index 48c659ffc..f239cb10b 100644 --- a/target/lvp/x86/build.sh +++ b/target/lvp/x86/build.sh @@ -24,6 +24,7 @@ case "${ROCKCFG_X86_OPT}" in athlon4) opt_text="for AMD Athlon 4";; athlon-xp) opt_text="for AMD Athlon XP";; athlon-mp) opt_text="for AMD Athlon MP" ;; + *) opt_text="for unknown optimisation" ;; esac sed -i -e "s,COMPILEDFOR,${opt_text},g" README @@ -33,11 +34,11 @@ find ${releasedir} -name .svn -exec rm -rf {} \; 2>/dev/null echo_status "Extracting isolinux boot loader." mkdir -p isolinux tar --use-compress-program=bzip2 \ - -xf ${base}/download/${target}/syslinux-2.02.tar.bz2 \ - syslinux-2.02/isolinux.bin -O > ${releasedir}/isolinux/isolinux.bin + -xf ${base}/download/${target}/syslinux-${syslinux_ver}.tar.bz2 \ + syslinux-${syslinux_ver}/isolinux.bin -O > ${releasedir}/isolinux/isolinux.bin echo_status "Creating isolinux config file." cp ${base}/target/${target}/x86/isolinux.cfg ${releasedir}/isolinux/ cp ${base}/target/${target}/x86/help?.txt ${releasedir}/isolinux/ -cp ../root/boot/vmlinuz ${releasedir}/isolinux/ +cp ${rootdir}/boot/vmlinuz ${releasedir}/isolinux/ diff --git a/target/lvp/x86/help0.txt b/target/lvp/x86/help0.txt index 6ff71f082..528ea952e 100644 --- a/target/lvp/x86/help0.txt +++ b/target/lvp/x86/help0.txt @@ -5,7 +5,7 @@ | / /__| |/ / ____/ | | /_____/___/_/ | | [===================================================================] | -| V 0.4.0 "you will be assimilated" | +| V 0.4.1 "This program contains software from the XFree86 project." | | | | Kernel Images: | | lvp Start LVP | diff --git a/target/lvp/x86/initrd/hardware b/target/lvp/x86/initrd/hardware new file mode 100644 index 000000000..49eaa2fe5 --- /dev/null +++ b/target/lvp/x86/initrd/hardware @@ -0,0 +1,36 @@ +#!/bin/bash + +echo "Trying to autodetect hardware..." + +/bin/hwscan >/tmp/hardware + +if [ `grep -c '^# ' /tmp/hardware` -gt 0 ] ; then + echo 'Found the following:' + grep '^# ' /tmp/hardware | sed 's,^# ,- ,g' + echo 'Now trying to initialise them...' + . /tmp/hardware +fi + +# looks like hwscan just silently fails if something is missing +# for example it says it found 0 modules, while executing that +# find command brings up 400-odd files. We'll just load +# _everything_ in that case. +if [ ! -s /tmp/hardware ] ; then + echo "EEP! hwscan screwed up!" + echo -n "Trying emergency module loading ... " + for x in `find /lib/modules/ -name '*.o'` ; do + insmod ${x} >/dev/null 2>&1 + done + echo "done" +fi + +if [ ! -e /dev/sound/dsp ] ; then + echo 'EEP! We have no sound!' + echo 'You can switch to another console with -- + -- to try' + echo 'and load a sound-module by hand.' + echo + echo 'Press -- when done to continue ...' + read +fi + +exit 0 diff --git a/target/lvp/x86/initrd/kernel b/target/lvp/x86/initrd/kernel new file mode 100644 index 000000000..8fc455b29 --- /dev/null +++ b/target/lvp/x86/initrd/kernel @@ -0,0 +1,5 @@ +#!/bin/bash + +for x in /lib/modules/*/block/loop_*.o ; do + insmod ${x} >/dev/null 2>&1 +done diff --git a/target/lvp/x86/initrd/keymap b/target/lvp/x86/initrd/keymap new file mode 100644 index 000000000..adf63d7fa --- /dev/null +++ b/target/lvp/x86/initrd/keymap @@ -0,0 +1,11 @@ +#!/bin/bash + +for x in `cat /proc/cmdline` ; do + if [[ $x = *keymap* ]] ; then + keymap=`find /usr/share/kbd/keymaps -name "${x##*=}.map*" 2>/dev/null` + if [ -f "${keymap}" ] ; then + cd ${keymap%/*} + gzcat ${keymap##*/} | loadkeys + fi + fi +done diff --git a/target/lvp/linuxrc b/target/lvp/x86/initrd/linuxrc similarity index 62% rename from target/lvp/linuxrc rename to target/lvp/x86/initrd/linuxrc index 25bdd4456..bff5a308c 100644 --- a/target/lvp/linuxrc +++ b/target/lvp/x86/initrd/linuxrc @@ -1,7 +1,7 @@ #!/bin/bash -mount -t proc none /proc -mount -t tmpfs none /tmp +mount -n -t proc proc /proc +mount -n -t tmpfs tmpfs /tmp cd /dev ; rm -f fd ln -sf /proc/kcore core @@ -9,11 +9,10 @@ ln -sf /proc/self/fd fd ln -sf fd/0 stdin ln -sf fd/1 stdout ln -sf fd/2 stderr -ln -sf misc/psaux mouse +ln -sf misc/psaux mouse cd / exec < /dev/console > /dev/console 2> /dev/console ; cd / -export PATH="/sbin:/bin:/usr/sbin:/usr/bin" cat << EOF _ __ __ __ __ _ ______ @@ -30,18 +29,11 @@ EOF ttydevs="vc/2 vc/3" for x in $ttydevs ; do - ( ( while : ; do agetty -i 38400 $x -n -l /sbin/login-shell ; done ) & ) + ( ( while : ; do agetty -i 38400 $x -n -l /bin/login-shell ; done ) & ) done -for x in /etc/lvp/*.sh ; do - if [ -f "$x" ] ; then - echo ; echo "Running $x ..." ; sh $x - echo "Setup script $x finished." - fi -done - -agetty -i 38400 vc/1 -n -l /sbin/startlvp & - -exec < /dev/null > /dev/null 2>&1 -while : ; do sleep 1 ; done +/bin/keymap +/bin/hardware +/bin/kernel +agetty -i 38400 vc/1 -n -l /bin/linuxrc2 diff --git a/target/lvp/x86/initrd/linuxrc2 b/target/lvp/x86/initrd/linuxrc2 new file mode 100644 index 000000000..4a43ed47f --- /dev/null +++ b/target/lvp/x86/initrd/linuxrc2 @@ -0,0 +1,70 @@ +#!/bin/bash + +scan_for_lvp() { + unset lvp_drives + num_found=0 + + for x in /dev/cdroms/* ; do + if mount -n ${x} /mnt >/dev/null 2>&1 ; then + if grep -q LVP /mnt/etc/VERSION ; then + lvp_drives="${lvp_drives} ${x}" + num_found=$(( ${num_found} + 1 )) + fi + umount /mnt + fi + done +} + +if [ ! -e /dev/cdroms/cdrom0 ] ; then + echo "EEP! I have not found any cdroms!" + echo "Can't continue." + echo + echo "Press -- to shut down" + read + echo o >/proc/sysrq-trigger +fi + +while : ; do + scan_for_lvp + echo "Found ${num_found} LVP Disks. Please choose one:" + choice=0 + for x in ${lvp_drives} ; do + choice=$(( ${choice} + 1 )) + echo "${choice} ${x}" + done + echo + echo "r rescan devices" + echo "0 shut down" + echo -n "> " + read s + if [ "${s}" == "0" ] ; then + echo "Ejecting LVP Disks" + for x in ${lvp_drives} ; do + eject -p ${x} + done + echo + echo "Press -- to turn off the machine." + read + echo o >/proc/sysrq-trigger + while : ; do echo -n ; done + fi + + exec 2>/dev/null + if [ ${s} -gt 0 -a ${s} -le ${num_found} ] ; then + choice=0 + for x in ${lvp_drives} ; do + choice=$(( ${choice} + 1 )) + if [ ${choice} -eq ${s} ] ; then + mount ${x} /mnt + chroot /mnt /linuxrc + # man, this sucks + # sometimes the livesystem's linuxrc seems to be unable to umount everything... + for x in 1 2 3 4 5 6 7 8 9 0 ; do + umount /mnt/* + done + umount /mnt + fi + done + fi + exec 2>&1 +done diff --git a/target/lvp/login-shell b/target/lvp/x86/initrd/login-shell similarity index 100% rename from target/lvp/login-shell rename to target/lvp/x86/initrd/login-shell diff --git a/target/lvp/x86/isolinux.cfg b/target/lvp/x86/isolinux.cfg index 2e50f8723..f8b3af348 100644 --- a/target/lvp/x86/isolinux.cfg +++ b/target/lvp/x86/isolinux.cfg @@ -7,10 +7,10 @@ DISPLAY help0.txt LABEL lvp kernel vmlinuz - APPEND root=/dev/cdroms/cdrom0 devfs=nocompat init=/linuxrc ro quiet + APPEND root=/dev/ram devfs=nocompat initrd=initrd init=/linuxrc rw quiet LABEL dvorak kernel vmlinuz - APPEND root=/dev/cdroms/cdrom0 devfs=nocompat init=/linuxrc ro quiet keymap=dvorak + APPEND root=/dev/ram devfs=nocompat initrd=initrd init=/linuxrc rw quiet keymap=dvorak LABEL de kernel vmlinuz - APPEND root=/dev/cdroms/cdrom0 devfs=nocompat init=/linuxrc ro quiet keymap=de-latin1-nodeadkeys + APPEND root=/dev/ram devfs=nocompat initrd=initrd init=/linuxrc rw quiet keymap=de-latin1-nodeadkeys diff --git a/target/lvp/XF86Config b/target/lvp/x86/livesystem/XF86Config similarity index 94% rename from target/lvp/XF86Config rename to target/lvp/x86/livesystem/XF86Config index 5fb94d817..620ec1f95 100644 --- a/target/lvp/XF86Config +++ b/target/lvp/x86/livesystem/XF86Config @@ -11,7 +11,7 @@ EndSection Section "Files" RgbPath "/usr/X11R6/lib/X11/rgb" FontPath "/usr/X11R6/lib/X11/fonts/local/" - misc/" + FontPath "/usr/X11R6/lib/X11/fonts/misc/" FontPath "/usr/X11R6/lib/X11/fonts/75dpi/:unscaled" FontPath "/usr/X11R6/lib/X11/fonts/100dpi/:unscaled" FontPath "/usr/X11R6/lib/X11/fonts/Speedo/" @@ -38,7 +38,7 @@ Section "InputDevice" Identifier "Mouse1" Driver "mouse" Option "Protocol" "Auto" - misc/psaux" + Option "Device" "/dev/misc/psaux" EndSection Section "Monitor" diff --git a/target/lvp/x86/livesystem/etc_lvp_encryption.sh b/target/lvp/x86/livesystem/etc_lvp_encryption.sh new file mode 100644 index 000000000..d092cef16 --- /dev/null +++ b/target/lvp/x86/livesystem/etc_lvp_encryption.sh @@ -0,0 +1,41 @@ +#!/bin/bash + +if [ -e /lvp.data1 ] ; then + echo -n "Found " + for x in /lvp.data* ; do + echo -n "$x " + done + echo + echo "Starting crypto-subroutine" + + echo "Please choose which encryption you want to use:" + echo -e "\t1\tblowfish" + echo -e "\t2\ttwofish" + echo -e "\t3\tserpent" + echo + unset thisenc + while [ -z "${thisenc}" ] ; do + read -p "Please enter your choice: " rthisenc + [ "${rthisenc}" == "1" ] && thisenc="blowfish256" + [ "${rthisenc}" == "2" ] && thisenc="twofish256" + [ "${rthisenc}" == "3" ] && thisenc="serpent256" + done + echo "Using ${thisenc%256} encryption." + while [ ! -e /mnt1/lvp.xml ] ; do + read -p "Please enter passphrase: " -s passphrase + echo + exec 2>/dev/null + for x in /lvp.data* ; do + echo "${passphrase}" | losetup -e ${thisenc} -p 0 /dev/loop/${x#/lvp.data} ${x} + mount /dev/loop/${x#/lvp.data} /mnt${x#/lvp.data} 2>&1 + done + if [ ! -e /mnt1/lvp.xml ] ; then + echo "Wrong Passphrase!" + for x in /lvp.data* ; do + losetup -d /dev/loop/${x#/lvp.data} + done + fi + exec 2>&1 + done +fi + diff --git a/target/lvp/etc_lvp_xf86config.sh b/target/lvp/x86/livesystem/etc_lvp_xf86config.sh similarity index 100% rename from target/lvp/etc_lvp_xf86config.sh rename to target/lvp/x86/livesystem/etc_lvp_xf86config.sh diff --git a/target/lvp/etc_profile b/target/lvp/x86/livesystem/etc_profile similarity index 100% rename from target/lvp/etc_profile rename to target/lvp/x86/livesystem/etc_profile diff --git a/target/lvp/x86/livesystem/linuxrc b/target/lvp/x86/livesystem/linuxrc new file mode 100644 index 000000000..0d0cdc84d --- /dev/null +++ b/target/lvp/x86/livesystem/linuxrc @@ -0,0 +1,36 @@ +#!/bin/bash + +mount -t proc none /proc +mount -t tmpfs none /tmp +mount -t devfs none /dev + +cd /dev ; rm -f fd +ln -sf /proc/kcore core +ln -sf /proc/self/fd fd +ln -sf fd/0 stdin +ln -sf fd/1 stdout +ln -sf fd/2 stderr +ln -sf misc/psaux mouse +cd / + +exec < /dev/console > /dev/console 2> /dev/console ; cd / +export PATH="/sbin:/bin:/usr/sbin:/usr/bin" + +for x in /etc/lvp/*.sh ; do + if [ -f "$x" ] ; then + echo ; echo "Running $x ..." ; sh $x + echo "Setup script $x finished." + fi +done + +/sbin/startlvp + +exec 2>/dev/null +for x in /mnt* ; do + umount ${x} + losetup -d /dev/loop/${x#/mnt} +done + +umount /proc +umount /tmp +umount /dev diff --git a/target/lvp/startlvp b/target/lvp/x86/livesystem/startlvp similarity index 72% rename from target/lvp/startlvp rename to target/lvp/x86/livesystem/startlvp index 3c4698b59..1cb02fa22 100644 --- a/target/lvp/startlvp +++ b/target/lvp/x86/livesystem/startlvp @@ -5,5 +5,3 @@ exec < /dev/console > /dev/console 2> /dev/console ; cd / export HOME="/tmp" /usr/X11/bin/startx -- -xf86config /tmp/XF86Config -logfile /tmp/X >/dev/null 2>&1 -echo o >/proc/sysrq-trigger -echo "You can now turn off your computer" diff --git a/target/lvp/xinitrc b/target/lvp/x86/livesystem/xinitrc similarity index 100% rename from target/lvp/xinitrc rename to target/lvp/x86/livesystem/xinitrc