From b84d82f03fc3b664777730eea1aa72e023138f06 Mon Sep 17 00:00:00 2001 From: Jose V Beneyto Date: Fri, 1 Jun 2012 09:50:47 +0000 Subject: [PATCH 01/16] Added setup-chroot script as it is from upstream. --- filesystem/setup-chroot | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100755 filesystem/setup-chroot diff --git a/filesystem/setup-chroot b/filesystem/setup-chroot new file mode 100755 index 0000000..1d453d8 --- /dev/null +++ b/filesystem/setup-chroot @@ -0,0 +1,10 @@ +#!/bin/sh + +mount --bind /dev /mnt/dev +mount --bind /tmp /mnt/tmp +mount -t proc proc /mnt/proc +mount -t sysfs none /mnt/sys +mount -t devpts devpts /mnt/dev/pts + +chroot /mnt /bin/bash + -- 2.26.2 From 766ef30cb87b6e13ba873001cd0a0fa2883bbcf1 Mon Sep 17 00:00:00 2001 From: Jose V Beneyto Date: Fri, 1 Jun 2012 09:51:10 +0000 Subject: [PATCH 02/16] Added installation for setup-chroot and fixed some minor issues on Makefile --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index c33cd56..3769608 100644 --- a/Makefile +++ b/Makefile @@ -42,7 +42,7 @@ $(WORK)/busybox-$(BUSYBOX_VERSION).tar.bz2: $(WORK)/busybox-$(BUSYBOX_VERSION): $(WORK)/busybox-$(BUSYBOX_VERSION).tar.bz2 $(TOPDIR)/busybox-$(BUSYBOX_VERSION).config tar -C $(WORK) -xvjf $(WORK)/busybox-$(BUSYBOX_VERSION).tar.bz2 cp -v $(TOPDIR)/busybox-$(BUSYBOX_VERSION).config $(WORK)/busybox-$(BUSYBOX_VERSION)/.config - touch $(WORK)/busybox-$(BUSYBOX_VERSION).tar.bz2 + touch $(WORK)/busybox-$(BUSYBOX_VERSION) $(WORK)/busybox-$(BUSYBOX_VERSION)/_install/bin/busybox: $(WORK)/busybox-$(BUSYBOX_VERSION) export PATH=$(CROSSTOOLS)/bin:$$PATH && \ @@ -101,7 +101,7 @@ $(WORK)/initrd.gz: check-root busybox dialog $(WORK)/mnt $(TOPDIR)/filesystem $( cp -dRv $(CLFS)/usr/share/terminfo/v $(WORK)/mnt/usr/share/terminfo install -v -m 0644 $(TOPDIR)/filesystem/{fstab,inittab,profile,protocols,*.conf} $(WORK)/mnt/etc install -v -m 0755 $(TOPDIR)/filesystem/rc $(WORK)/mnt/etc && \ - install -v -m 0755 $(TOPDIR)/filesystem/{setup,crux} $(WORK)/mnt/usr/bin && \ + install -v -m 0755 $(TOPDIR)/filesystem/{setup*,crux} $(WORK)/mnt/usr/bin && \ /sbin/ldconfig -r $(WORK)/mnt umount -v $(WORK)/mnt cd $(WORK) && gzip -v initrd -- 2.26.2 From b358420556090ad88f44a17992408f0cc4816914 Mon Sep 17 00:00:00 2001 From: Jose V Beneyto Date: Fri, 1 Jun 2012 10:50:23 +0000 Subject: [PATCH 03/16] Fixed issue with modules from rc startup --- filesystem/rc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/filesystem/rc b/filesystem/rc index 4ab1ecd..8fd3474 100755 --- a/filesystem/rc +++ b/filesystem/rc @@ -79,10 +79,10 @@ find_and_mount_media() { echo else # configure modules - MODULES="`find /media/crux/kernel -type d -name 'modules-*.tar.*'`" + MODULES="`find /media/crux/kernel -type f -name 'modules-*.tar.*'`" if [ ! -z "$MODULES" ]; then tar -C /tmp -xf $MODULES - cd /lib && ln -s /lib/* . + cd /lib && ln -s /tmp/lib/* . depmod fi # configure pkgutils -- 2.26.2 From 4053c8423e63db37de73f4fb864a6d399eadff2f Mon Sep 17 00:00:00 2001 From: Jose V Beneyto Date: Tue, 5 Jun 2012 07:13:34 +0000 Subject: [PATCH 04/16] =?utf8?q?Added=20upstream=20default=20prompt=20in?= =?utf8?q?=20/etc/profile=E7?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- filesystem/profile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/filesystem/profile b/filesystem/profile index 8ebfb2c..40423b9 100644 --- a/filesystem/profile +++ b/filesystem/profile @@ -2,6 +2,6 @@ # /etc/profile # -export PS1="\\033[1mcrux:\w \$ \\033[0m" +export PS1="\[\033[1m\]\\$ \[\033[0m\]" # End of file -- 2.26.2 From 99c170c75e591a5188b5bdd3fcde0adc0ed473ac Mon Sep 17 00:00:00 2001 From: Jose V Beneyto Date: Thu, 11 Oct 2012 00:54:51 +0000 Subject: [PATCH 05/16] Updated busybox to 1.20.2 Updated dialog to 1.1-20120706 Added patch to fix build issues with busybox and his headers Added -mno-unaligned-access switch to avoid gcc-4.7.2 alignment exception --- Makefile | 8 ++-- ...box-1.19.4.config => busybox-1.20.2.config | 47 ++++++++++++------- 2 files changed, 34 insertions(+), 21 deletions(-) rename busybox-1.19.4.config => busybox-1.20.2.config (96%) diff --git a/Makefile b/Makefile index 3769608..5dbc711 100644 --- a/Makefile +++ b/Makefile @@ -13,10 +13,10 @@ WORK = $(TOPDIR)/work CLFS = $(TOPDIR)/../toolchain/clfs CROSSTOOLS = $(TOPDIR)/../toolchain/crosstools -BUSYBOX_VERSION = 1.19.4 +BUSYBOX_VERSION = 1.20.2 BUSYBOX_SOURCE = http://busybox.net/downloads/busybox-$(BUSYBOX_VERSION).tar.bz2 -DIALOG_VERSION = 1.1-20120215 +DIALOG_VERSION = 1.1-20120706 DIALOG_SOURCE = ftp://dickey.his.com/dialog/dialog-$(DIALOG_VERSION).tgz NCURSES_HEADER = $(CLFS)/usr/include/ncurses.h @@ -41,6 +41,8 @@ $(WORK)/busybox-$(BUSYBOX_VERSION).tar.bz2: $(WORK)/busybox-$(BUSYBOX_VERSION): $(WORK)/busybox-$(BUSYBOX_VERSION).tar.bz2 $(TOPDIR)/busybox-$(BUSYBOX_VERSION).config tar -C $(WORK) -xvjf $(WORK)/busybox-$(BUSYBOX_VERSION).tar.bz2 + cd $(WORK)/busybox-$(BUSYBOX_VERSION) && \ + patch -p1 -i $(WORK)/fix-resource_header.patch cp -v $(TOPDIR)/busybox-$(BUSYBOX_VERSION).config $(WORK)/busybox-$(BUSYBOX_VERSION)/.config touch $(WORK)/busybox-$(BUSYBOX_VERSION) @@ -74,7 +76,7 @@ $(WORK)/dialog-$(DIALOG_VERSION)/_install/usr/bin/dialog: $(WORK)/dialog-$(DIALO ./configure --build=$(BUILD) --host=$(TARGET) --prefix=/usr --with-ncursesw && \ find -type f -name 'makefile' \ -exec sed -e "s|-I/usr|-I$(CLFS)/usr|g" -e "s|-L/usr|-L$(CLFS)/usr|g" -i {} \; && \ - make CC="$(TARGET)-gcc -static" && \ + make CC="$(TARGET)-gcc -static -mno-unaligned-access" && \ make DESTDIR=$(WORK)/dialog-$(DIALOG_VERSION)/_install install && \ $(TARGET)-strip $(WORK)/dialog-$(DIALOG_VERSION)/_install/usr/bin/dialog && \ touch $(WORK)/dialog-$(DIALOG_VERSION)/_install/usr/bin/dialog diff --git a/busybox-1.19.4.config b/busybox-1.20.2.config similarity index 96% rename from busybox-1.19.4.config rename to busybox-1.20.2.config index a9de529..e9dac93 100644 --- a/busybox-1.19.4.config +++ b/busybox-1.20.2.config @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit -# Busybox version: 1.19.4 -# Tue Mar 6 12:35:21 2012 +# Busybox version: 1.20.2 +# Wed Oct 10 14:39:32 2012 # CONFIG_HAVE_DOT_CONFIG=y @@ -62,7 +62,10 @@ CONFIG_STATIC=y # CONFIG_FEATURE_SHARED_BUSYBOX is not set CONFIG_LFS=y CONFIG_CROSS_COMPILER_PREFIX="arm-crux-linux-gnueabi-" -CONFIG_EXTRA_CFLAGS="" +CONFIG_SYSROOT="" +CONFIG_EXTRA_CFLAGS="-mno-unaligned-access" +CONFIG_EXTRA_LDFLAGS="" +CONFIG_EXTRA_LDLIBS="" # # Debugging Options @@ -92,7 +95,7 @@ CONFIG_PREFIX="./_install" # CONFIG_FEATURE_SYSTEMD is not set # CONFIG_FEATURE_RTMINMAX is not set CONFIG_PASSWORD_MINLEN=6 -CONFIG_MD5_SIZE_VS_SPEED=2 +CONFIG_MD5_SMALL=1 CONFIG_FEATURE_FAST_TOP=y # CONFIG_FEATURE_ETC_NETWORKS is not set CONFIG_FEATURE_USE_TERMIOS=y @@ -101,6 +104,7 @@ CONFIG_FEATURE_EDITING_MAX_LEN=1024 # CONFIG_FEATURE_EDITING_VI is not set CONFIG_FEATURE_EDITING_HISTORY=255 CONFIG_FEATURE_EDITING_SAVEHISTORY=y +# CONFIG_FEATURE_EDITING_SAVE_ON_EXIT is not set CONFIG_FEATURE_REVERSE_SEARCH=y CONFIG_FEATURE_TAB_COMPLETION=y # CONFIG_FEATURE_USERNAME_COMPLETION is not set @@ -140,6 +144,7 @@ CONFIG_FEATURE_CPIO_P=y CONFIG_GUNZIP=y CONFIG_GZIP=y CONFIG_FEATURE_GZIP_LONG_OPTIONS=y +CONFIG_GZIP_FAST=0 CONFIG_LZOP=y # CONFIG_LZOP_COMPR_HIGH is not set CONFIG_RPM2CPIO=y @@ -173,11 +178,13 @@ CONFIG_DATE=y CONFIG_FEATURE_DATE_ISOFMT=y # CONFIG_FEATURE_DATE_NANO is not set CONFIG_FEATURE_DATE_COMPAT=y +CONFIG_HOSTID=y CONFIG_ID=y # CONFIG_GROUPS is not set CONFIG_TEST=y CONFIG_FEATURE_TEST_64=y CONFIG_TOUCH=y +CONFIG_FEATURE_TOUCH_SUSV3=y CONFIG_TR=y CONFIG_FEATURE_TR_CLASSES=y CONFIG_FEATURE_TR_EQUIV=y @@ -220,7 +227,6 @@ CONFIG_FOLD=y CONFIG_FSYNC=y CONFIG_HEAD=y CONFIG_FEATURE_FANCY_HEAD=y -CONFIG_HOSTID=y CONFIG_INSTALL=y CONFIG_FEATURE_INSTALL_LONG_OPTIONS=y CONFIG_LN=y @@ -461,6 +467,7 @@ CONFIG_DELGROUP=y CONFIG_FEATURE_DEL_USER_FROM_GROUP=y CONFIG_GETTY=y CONFIG_LOGIN=y +# CONFIG_LOGIN_SESSION_AS_CHILD is not set # CONFIG_PAM is not set CONFIG_LOGIN_SCRIPTS=y CONFIG_FEATURE_NOLOGIN=y @@ -469,6 +476,7 @@ CONFIG_PASSWD=y CONFIG_FEATURE_PASSWD_WEAK_CHECK=y CONFIG_CRYPTPW=y CONFIG_CHPASSWD=y +CONFIG_FEATURE_DEFAULT_PASSWD_ALGO="des" CONFIG_SU=y CONFIG_FEATURE_SU_SYSLOG=y CONFIG_FEATURE_SU_CHECKS_SHELLS=y @@ -518,6 +526,12 @@ CONFIG_DEFAULT_DEPMOD_FILE="modules.dep" # Linux System Utilities # CONFIG_BLOCKDEV=y +CONFIG_MDEV=y +CONFIG_FEATURE_MDEV_CONF=y +CONFIG_FEATURE_MDEV_RENAME=y +CONFIG_FEATURE_MDEV_RENAME_REGEXP=y +CONFIG_FEATURE_MDEV_EXEC=y +CONFIG_FEATURE_MDEV_LOAD_FIRMWARE=y CONFIG_REV=y CONFIG_ACPID=y CONFIG_FEATURE_ACPID_COMPAT=y @@ -561,12 +575,6 @@ CONFIG_IPCS=y CONFIG_LOSETUP=y CONFIG_LSPCI=y CONFIG_LSUSB=y -CONFIG_MDEV=y -CONFIG_FEATURE_MDEV_CONF=y -CONFIG_FEATURE_MDEV_RENAME=y -CONFIG_FEATURE_MDEV_RENAME_REGEXP=y -CONFIG_FEATURE_MDEV_EXEC=y -CONFIG_FEATURE_MDEV_LOAD_FIRMWARE=y CONFIG_MKSWAP=y CONFIG_FEATURE_MKSWAP_UUID=y CONFIG_MORE=y @@ -778,13 +786,13 @@ CONFIG_FEATURE_IFUPDOWN_IPV4=y CONFIG_FEATURE_IFUPDOWN_IPV6=y CONFIG_FEATURE_IFUPDOWN_MAPPING=y # CONFIG_FEATURE_IFUPDOWN_EXTERNAL_DHCP is not set -CONFIG_INETD=y -CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_ECHO=y -CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DISCARD=y -CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_TIME=y -CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME=y -CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN=y -CONFIG_FEATURE_INETD_RPC=y +# CONFIG_INETD is not set +# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_ECHO is not set +# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DISCARD is not set +# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_TIME is not set +# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME is not set +# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN is not set +# CONFIG_FEATURE_INETD_RPC is not set CONFIG_IP=y CONFIG_FEATURE_IP_ADDRESS=y CONFIG_FEATURE_IP_LINK=y @@ -835,6 +843,7 @@ CONFIG_FEATURE_TRACEROUTE_VERBOSE=y # CONFIG_FEATURE_TRACEROUTE_USE_ICMP is not set CONFIG_TUNCTL=y CONFIG_FEATURE_TUNCTL_UG=y +# CONFIG_UDHCPC6 is not set CONFIG_UDHCPD=y CONFIG_DHCPRELAY=y CONFIG_DUMPLEASES=y @@ -881,6 +890,7 @@ CONFIG_SENDMAIL=y # Process Utilities # CONFIG_IOSTAT=y +CONFIG_LSOF=y CONFIG_MPSTAT=y CONFIG_NMETER=y CONFIG_PMAP=y @@ -902,6 +912,7 @@ CONFIG_FEATURE_PIDOF_OMIT=y CONFIG_PKILL=y CONFIG_PS=y CONFIG_FEATURE_PS_WIDE=y +CONFIG_FEATURE_PS_LONG=y # CONFIG_FEATURE_PS_TIME is not set # CONFIG_FEATURE_PS_ADDITIONAL_COLUMNS is not set # CONFIG_FEATURE_PS_UNUSUAL_SYSTEMS is not set -- 2.26.2 From 088008dbcaa36ffcc4cafd5f2c4fdc0fb3b624b7 Mon Sep 17 00:00:00 2001 From: Jose V Beneyto Date: Thu, 11 Oct 2012 00:58:57 +0000 Subject: [PATCH 06/16] Added missing patch --- work/fix-resource_header.patch | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 work/fix-resource_header.patch diff --git a/work/fix-resource_header.patch b/work/fix-resource_header.patch new file mode 100644 index 0000000..8163a86 --- /dev/null +++ b/work/fix-resource_header.patch @@ -0,0 +1,12 @@ +diff --git a/include/libbb.h b/include/libbb.h +index f12800f..e7806c2 100644 +--- a/include/libbb.h ++++ b/include/libbb.h +@@ -40,6 +40,7 @@ + #include + #include + #include ++#include + #include + #include + #include -- 2.26.2 From eebbffc56a2ba1382ac7a2fe2e94a03fbc3689b7 Mon Sep 17 00:00:00 2001 From: Jose V Beneyto Date: Wed, 17 Oct 2012 17:08:28 +0000 Subject: [PATCH 07/16] Don't show error messages for internal find commands used in rc startup script --- filesystem/rc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/filesystem/rc b/filesystem/rc index 8fd3474..e1a8bea 100755 --- a/filesystem/rc +++ b/filesystem/rc @@ -79,14 +79,14 @@ find_and_mount_media() { echo else # configure modules - MODULES="`find /media/crux/kernel -type f -name 'modules-*.tar.*'`" + MODULES="`find /media/crux/kernel -type f -name 'modules-*.tar.*' 2>/dev/null`" if [ ! -z "$MODULES" ]; then tar -C /tmp -xf $MODULES cd /lib && ln -s /tmp/lib/* . depmod fi # configure pkgutils - PKGUTILS="`find /media/crux/core -type f -name 'pkgutils#*.pkg.tar.*'`" + PKGUTILS="`find /media/crux/core -type f -name 'pkgutils#*.pkg.tar.*' 2>/dev/null`" if [ ! -z "$PKGUTILS" ]; then tar -C /tmp -xf $PKGUTILS cd /usr/bin && ln -s /tmp/usr/bin/* . -- 2.26.2 From d345ec820118123df1f61d71d588bf72e42e57c7 Mon Sep 17 00:00:00 2001 From: Jose V Beneyto Date: Tue, 23 Oct 2012 13:09:28 +0000 Subject: [PATCH 08/16] Added pass/login support and required files --- Makefile | 5 ++++- filesystem/group | 1 + filesystem/passwd | 1 + filesystem/shadow | 1 + 4 files changed, 7 insertions(+), 1 deletion(-) create mode 100644 filesystem/group create mode 100644 filesystem/passwd create mode 100644 filesystem/shadow diff --git a/Makefile b/Makefile index 5dbc711..54c8259 100644 --- a/Makefile +++ b/Makefile @@ -102,8 +102,11 @@ $(WORK)/initrd.gz: check-root busybox dialog $(WORK)/mnt $(TOPDIR)/filesystem $( install -d $(WORK)/mnt/usr/share/terminfo cp -dRv $(CLFS)/usr/share/terminfo/v $(WORK)/mnt/usr/share/terminfo install -v -m 0644 $(TOPDIR)/filesystem/{fstab,inittab,profile,protocols,*.conf} $(WORK)/mnt/etc + install -v -m 0664 $(TOPDIR)/filesystem/group $(WORK)/mnt/etc + install -v -m 0600 $(TOPDIR)/filesystem/passwd $(WORK)/mnt/etc + install -v -m 0400 $(TOPDIR)/filesystem/shadow $(WORK)/mnt/etc install -v -m 0755 $(TOPDIR)/filesystem/rc $(WORK)/mnt/etc && \ - install -v -m 0755 $(TOPDIR)/filesystem/{setup*,crux} $(WORK)/mnt/usr/bin && \ + install -v -m 0755 $(TOPDIR)/filesystem/{setup,setup-chroot,crux} $(WORK)/mnt/usr/bin && \ /sbin/ldconfig -r $(WORK)/mnt umount -v $(WORK)/mnt cd $(WORK) && gzip -v initrd diff --git a/filesystem/group b/filesystem/group new file mode 100644 index 0000000..18acc30 --- /dev/null +++ b/filesystem/group @@ -0,0 +1 @@ +root:x:0:root diff --git a/filesystem/passwd b/filesystem/passwd new file mode 100644 index 0000000..eb85a55 --- /dev/null +++ b/filesystem/passwd @@ -0,0 +1 @@ +root:x:0:0:root:/root:/bin/sh diff --git a/filesystem/shadow b/filesystem/shadow new file mode 100644 index 0000000..6034cdc --- /dev/null +++ b/filesystem/shadow @@ -0,0 +1 @@ +root:x:0:::::: -- 2.26.2 From a7abe2d21b15be0626613a046e8e340d0cb40a9f Mon Sep 17 00:00:00 2001 From: Jose V Beneyto Date: Tue, 23 Oct 2012 13:09:53 +0000 Subject: [PATCH 09/16] Fixed CRUX's version in rc script --- filesystem/crux | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/filesystem/crux b/filesystem/crux index 04ec127..561d9ef 100755 --- a/filesystem/crux +++ b/filesystem/crux @@ -1,5 +1,5 @@ #! /bin/sh -echo "CRUX 2.7" +echo "CRUX 2.8" # End of file -- 2.26.2 From 06ba1c903dd0f5c0048209e7b3330560b1e841b5 Mon Sep 17 00:00:00 2001 From: Jose V Beneyto Date: Tue, 23 Oct 2012 13:11:15 +0000 Subject: [PATCH 10/16] Fixed block devices used to find_and_mount_media in rc script, also added debug section. --- filesystem/rc | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/filesystem/rc b/filesystem/rc index e1a8bea..d035357 100755 --- a/filesystem/rc +++ b/filesystem/rc @@ -32,7 +32,7 @@ find_and_mount_media() { echo -e " ${BOLD}${BLUE}*${NORM} Searching for the CRUX media..." mkdir -p /media CRUXMEDIA="" - MMC_DEVICES="`grep -E 'mmcblk' /proc/partitions | awk '{ print $4 }'`" + MMC_DEVICES="`grep -E 'mmcblk0p' /proc/partitions | awk '{ print $4 }'`" BLOCK_DEVICES="`grep -E '[sh]d' /proc/partitions | awk '{ print $4 }'`" for DEV in $MMC_DEVICES $BLOCK_DEVICES do @@ -100,7 +100,7 @@ find_and_mount_media() { # echo "" -echo -e "${BOLD}CRUX-ARM 2.7.1 - ${BLUE}http://crux-arm.nu/${NORM}" +echo -e "${BOLD}CRUX-ARM 2.8 - ${BLUE}http://crux-arm.nu/${NORM}" echo "" exec >/dev/console &1 @@ -144,6 +144,12 @@ checkReturn echo -e " ${BOLD}${BLUE}*${NORM} Trying to find and mount the media installer..." find_and_mount_media +if grep -q debug /proc/cmdline; then + echo -e -n " ${BOLD}${BLUE}*${NORM} Loading debug script..." + /media/debug.sh + checkReturn +fi + echo echo "The system is coming up. Please wait." echo -- 2.26.2 From b181a2ae57c01ae49c4f626a46d30129052487e4 Mon Sep 17 00:00:00 2001 From: Jose V Beneyto Date: Thu, 1 Nov 2012 17:18:10 +0000 Subject: [PATCH 11/16] Fixed homedir for root user --- filesystem/passwd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/filesystem/passwd b/filesystem/passwd index eb85a55..5183638 100644 --- a/filesystem/passwd +++ b/filesystem/passwd @@ -1 +1 @@ -root:x:0:0:root:/root:/bin/sh +root:x:0:0:root:/:/bin/sh -- 2.26.2 From 2d4b5415add42aa0097af4839c2ecd203cb28a47 Mon Sep 17 00:00:00 2001 From: Jose V Beneyto Date: Thu, 1 Nov 2012 17:18:42 +0000 Subject: [PATCH 12/16] Modified setup script to handle extra collections --- filesystem/setup | 25 +++++++++++++++++++------ 1 file changed, 19 insertions(+), 6 deletions(-) diff --git a/filesystem/setup b/filesystem/setup index c1cba24..bb3b550 100755 --- a/filesystem/setup +++ b/filesystem/setup @@ -22,7 +22,7 @@ # USA. # -VERSION="2.7.1" +VERSION="2.8" do_dialog() { dialog --backtitle "CRUX $VERSION Setup" --no-shadow "$@" @@ -76,6 +76,16 @@ select_root() { done } +get_extra_collections() { + for i in $crux_dir/*; do + if [ -d $i ]; then + if [ "$i" != "core" ] && [ "$i" != "kernel" ]; then + EXTRA_COLLECTIONS="$EXTRA_COLLECTIONS $i" + fi + fi + done +} + select_collections() { if [ "$ACTION" != "INSTALL" ]; then return 0 @@ -87,8 +97,7 @@ select_collections() { TITLE="Select collections to install:\n(detailed package selection will follow)" do_select --separate-output --checklist "$TITLE" 13 60 6 \ core "The core packages (required)" ON \ - opt "Optional packages" OFF \ - xorg "X.org packages" OFF 2> $collfile + $(for col in $EXTRA_COLLECTIONS; do echo -ne "$col \"$col packages\" OFF "; done) 2> $collfile } ask_detailed() { @@ -105,7 +114,7 @@ select_packages() { fi if [ "$ACTION" = "INSTALL" ]; then if [ "$DO_DETAILED" = "yes" ]; then - for collection in core opt xorg; do + for collection in core $EXTRA_COLLECTIONS; do [ ! -d $collection ] && continue presel=`grep $collection $collfile` if [ "$presel" == "$collection" ]; then @@ -119,7 +128,8 @@ select_packages() { do_select --separate-output --checklist "$TITLE" 19 60 12 $PKG_LIST 2>> $pkgfile done else # no detailed selection - for collection in core opt xorg; do + for collection in core $EXTRA_COLLECTIONS; do + [ ! -d $collection ] && continue presel=`grep $collection $collfile` if [ "$presel" == "$collection" ]; then @@ -293,6 +303,7 @@ main() { welcome select_action select_root + get_extra_collections select_collections ask_detailed select_packages @@ -301,7 +312,7 @@ main() { if [ "$ACTION" = "UPGRADE" ] && [ -f /usr/bin/setup-helper ] then (/usr/bin/setup-helper $ROOT &> $helperlogfile) | do_dialog \ - --title " Please wait [2.6 -> 2.7.1 check]" --gauge "" 8 60 0 + --title " Please wait [2.7 -> 2.8 check]" --gauge "" 8 60 0 fi install_packages cat $helperlogfile 2> /dev/null @@ -320,6 +331,8 @@ markedfile=/tmp/marked.$$ DO_DETAILED="no" MISSINGDEPS="" +EXTRA_COLLECTIONS="" + trap "rm -f $tmpfile $pkgfile $collfile $neededfile $markedfile" 0 1 2 5 15 if [ "$1" != "" ]; then -- 2.26.2 From 1bd0a45bf78557eb2b92dacd06bced53cce0f9f9 Mon Sep 17 00:00:00 2001 From: Jose V Beneyto Date: Thu, 1 Nov 2012 17:18:57 +0000 Subject: [PATCH 13/16] Initial import for setup-helper script --- filesystem/setup-helper | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100755 filesystem/setup-helper diff --git a/filesystem/setup-helper b/filesystem/setup-helper new file mode 100755 index 0000000..e69de29 -- 2.26.2 From 762878ffea86aa0a4175f54b063eaa73f9388c4f Mon Sep 17 00:00:00 2001 From: Jose V Beneyto Date: Thu, 1 Nov 2012 17:27:07 +0000 Subject: [PATCH 14/16] Initial import for setup-helper script (imported from upstream CRUX iso.git repository --- filesystem/setup-helper | 133 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 133 insertions(+) mode change 100755 => 100644 filesystem/setup-helper diff --git a/filesystem/setup-helper b/filesystem/setup-helper old mode 100755 new mode 100644 index e69de29..348fb08 --- a/filesystem/setup-helper +++ b/filesystem/setup-helper @@ -0,0 +1,133 @@ +#!/bin/bash +# post setup +# +# Johannes Winkelmann, jw at tks6 dot net + +ROOT=$1 +DB=$ROOT/var/lib/pkg/db + +## those values should be changed: +TMPDB=$DB.tmp +BACKUPDB=$DB.backup +PKGADD="pkgadd" +PKGRM="pkgrm" +MV="mv" + + +is_installed() { + printf "%s" $(pkginfo -r $ROOT -i | gawk -v r="^$1\$" '$1 ~ r {print $1}') +} + + +rename_packages() { + if [ -z "$1" ]; then + return + fi + pkg=$@ + + filter="sed " + runfilter="no" + for tuple in $@; do + split=($(echo $tuple|sed -e 's|:| |')) + if [ -n "${split[1]}" ] && [ `is_installed ${split[0]}` ]; then + echo "Package renamed: ${split[0]} -> ${split[1]}" + filter="$filter -e 's|^${split[0]}$|${split[1]}|'" + runfilter="yes" + fi + done + if [ "$runfilter" = "no" ]; then + return + fi + + :> $TMPDB + if [ -f $DB ]; then + nextIsName=1 + cat $DB|while read l; do + if [ $nextIsName -eq 1 ]; then + nextIsName=0 + echo $l|eval $filter >> $TMPDB + else + if [ "$l" = "" ]; then + nextIsName=1 + fi + echo $l >> $TMPDB + fi + done + fi + + $MV $DB $BACKUPDB + $MV $TMPDB $DB +} + + +remove_packages() { + for package in $@; do + if [ `is_installed $package` ]; then + echo "Package removed: $package" + $PKGRM -r $ROOT $package + fi + done +} + +inject_packages() { + for package in $@; do + pkg="`find core opt xorg \( -name \"${package}#*.pkg.tar.gz\" -o -name \"${package}#*.pkg.tar.bz2\" -o -name \"${package}#*.pkg.tar.xz\" \)&2> /dev/null`" + if [ -z "$pkg" ]; then + echo " ERROR: package $package not found on ISO" + else + if [ -z `is_installed $package` ]; then + echo "Package injected: $package" + $PKGADD -r $ROOT -f $pkg + else + echo "Package upgraded: $package" + $PKGADD -r $ROOT -u -f $pkg + fi + fi + done +} + +#################### + +if [ -z "$1" ]; then + echo "Usage: $0 " + exit -1 +fi + + +##### # 2.7 -> 2.8 ##### +echo "* CRUX 2.7 -> 2.8 setup-helper" + +rename_packages "util-linux-ng:util-linux" +remove_packages module-init-tools eject +inject_packages kmod tzdata util-linux + +if [ `is_installed glib` ]; then + inject_packages libffi +fi + +if [ `is_installed wpa_supplicant` ]; then + inject_packages libnl +fi + +if [ `is_installed xorg-xcb-util` ]; then + inject_packages xorg-xcb-util-image xorg-xcb-util-keysyms xorg-xcb-util-renderutil xorg-xcb-util-wm +fi + +if [ `is_installed xorg-xf86-input-evdev` ]; then + inject_packages mtdev +fi + +if [ `is_installed xorg-xf86-input-synaptics` ]; then + inject_packages mtdev +fi + +if [ `is_installed firefox` ]; then + inject_packages nspr nss sqlite3 +fi + +if [ `is_installed mesa3d` ]; then + inject_packages glu +fi + +# force replacement of /etc/mtab with symlink +ln -sf /proc/self/mounts $ROOT/etc/mtab -- 2.26.2 From b58c75077584a025d89ddc92a094d128c055d4ca Mon Sep 17 00:00:00 2001 From: Jose V Beneyto Date: Thu, 1 Nov 2012 17:45:33 +0000 Subject: [PATCH 15/16] Modified setup-helper script to handle extra collections --- filesystem/setup-helper | 56 +++++++++++++++++++++++++---------------- 1 file changed, 35 insertions(+), 21 deletions(-) mode change 100644 => 100755 filesystem/setup-helper diff --git a/filesystem/setup-helper b/filesystem/setup-helper old mode 100644 new mode 100755 index 348fb08..37101a7 --- a/filesystem/setup-helper +++ b/filesystem/setup-helper @@ -71,9 +71,9 @@ remove_packages() { inject_packages() { for package in $@; do - pkg="`find core opt xorg \( -name \"${package}#*.pkg.tar.gz\" -o -name \"${package}#*.pkg.tar.bz2\" -o -name \"${package}#*.pkg.tar.xz\" \)&2> /dev/null`" + pkg="`find core $EXTRA_COLLECTIONS \( -name \"${package}#*.pkg.tar.gz\" -o -name \"${package}#*.pkg.tar.bz2\" -o -name \"${package}#*.pkg.tar.xz\" \)&2> /dev/null`" if [ -z "$pkg" ]; then - echo " ERROR: package $package not found on ISO" + echo " ERROR: package $package not found on CRUX media installer" else if [ -z `is_installed $package` ]; then echo "Package injected: $package" @@ -93,6 +93,14 @@ if [ -z "$1" ]; then exit -1 fi +EXTRA_COLLECTIONS="" +for i in /media/crux/*; do. + if [ -d $i ]; then + if [ "$i" != "core" ] && [ "$i" != "kernel" ]; then + EXTRA_COLLECTIONS="$EXTRA_COLLECTIONS $i" + fi + fi +done ##### # 2.7 -> 2.8 ##### echo "* CRUX 2.7 -> 2.8 setup-helper" @@ -101,32 +109,38 @@ rename_packages "util-linux-ng:util-linux" remove_packages module-init-tools eject inject_packages kmod tzdata util-linux -if [ `is_installed glib` ]; then - inject_packages libffi -fi +if grep -q opt $EXTRA_COLLECTIONS; then -if [ `is_installed wpa_supplicant` ]; then - inject_packages libnl -fi + if [ `is_installed glib` ]; then + inject_packages libffi + fi -if [ `is_installed xorg-xcb-util` ]; then - inject_packages xorg-xcb-util-image xorg-xcb-util-keysyms xorg-xcb-util-renderutil xorg-xcb-util-wm + if [ `is_installed wpa_supplicant` ]; then + inject_packages libnl + fi fi -if [ `is_installed xorg-xf86-input-evdev` ]; then - inject_packages mtdev -fi +if grep -q xorg $EXTRA_COLLECTIONS; then -if [ `is_installed xorg-xf86-input-synaptics` ]; then - inject_packages mtdev -fi + if [ `is_installed xorg-xcb-util` ]; then + inject_packages xorg-xcb-util-image xorg-xcb-util-keysyms xorg-xcb-util-renderutil xorg-xcb-util-wm + fi -if [ `is_installed firefox` ]; then - inject_packages nspr nss sqlite3 -fi + if [ `is_installed xorg-xf86-input-evdev` ]; then + inject_packages mtdev + fi + + if [ `is_installed xorg-xf86-input-synaptics` ]; then + inject_packages mtdev + fi + + if [ `is_installed firefox` ]; then + inject_packages nspr nss sqlite3 + fi -if [ `is_installed mesa3d` ]; then - inject_packages glu + if [ `is_installed mesa3d` ]; then + inject_packages glu + fi fi # force replacement of /etc/mtab with symlink -- 2.26.2 From c1447ba5b58ca34b500f137a5fc9c360ce39bc2d Mon Sep 17 00:00:00 2001 From: Jose V Beneyto Date: Thu, 1 Nov 2012 17:48:10 +0000 Subject: [PATCH 16/16] Fixed order for injected packages in setup-helper script. --- filesystem/setup-helper | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/filesystem/setup-helper b/filesystem/setup-helper index 37101a7..bce20d2 100755 --- a/filesystem/setup-helper +++ b/filesystem/setup-helper @@ -118,6 +118,10 @@ if grep -q opt $EXTRA_COLLECTIONS; then if [ `is_installed wpa_supplicant` ]; then inject_packages libnl fi + + if [ `is_installed firefox` ]; then + inject_packages nspr nss sqlite3 + fi fi if grep -q xorg $EXTRA_COLLECTIONS; then @@ -134,10 +138,6 @@ if grep -q xorg $EXTRA_COLLECTIONS; then inject_packages mtdev fi - if [ `is_installed firefox` ]; then - inject_packages nspr nss sqlite3 - fi - if [ `is_installed mesa3d` ]; then inject_packages glu fi -- 2.26.2