From b850dbad6557c4cd0e03c9b83be88579412cdd3f Mon Sep 17 00:00:00 2001 From: Sascha Hauer Date: Thu, 20 Feb 2014 10:19:25 +0100 Subject: move defaultenv-2 to defaultenv/defaultenv-2-* Signed-off-by: Sascha Hauer --- common/Makefile | 4 +- defaultenv-2/base/bin/bootargs-ip | 11 --- defaultenv-2/base/bin/ifup | 67 ------------------ defaultenv-2/base/bin/init | 80 ---------------------- defaultenv-2/base/bin/mtdparts-add | 49 ------------- defaultenv-2/base/boot/net | 19 ----- defaultenv-2/base/config | 25 ------- defaultenv-2/base/data/ansi-colors | 30 -------- defaultenv-2/base/data/boot-template | 14 ---- defaultenv-2/base/init/automount | 22 ------ defaultenv-2/base/init/ps1 | 7 -- defaultenv-2/base/network/eth0 | 16 ----- defaultenv-2/menu/menu/boot-entries-collect | 13 ---- defaultenv-2/menu/menu/boot-entries-edit | 20 ------ defaultenv-2/menu/menu/boot-entries-remove | 18 ----- defaultenv-2/menu/menu/boot-menu-add-entry | 5 -- defaultenv-2/menu/menu/boot-menu-new-boot-entry | 21 ------ defaultenv-2/menu/menu/init-entries-collect | 9 --- defaultenv-2/menu/menu/init-entries-edit | 20 ------ defaultenv-2/menu/menu/init-menu-add-entry | 3 - defaultenv-2/menu/menu/mainmenu | 23 ------- defaultenv-2/menu/menu/settings | 21 ------ defaultenv/defaultenv-2-base/bin/bootargs-ip | 11 +++ defaultenv/defaultenv-2-base/bin/ifup | 67 ++++++++++++++++++ defaultenv/defaultenv-2-base/bin/init | 80 ++++++++++++++++++++++ defaultenv/defaultenv-2-base/bin/mtdparts-add | 49 +++++++++++++ defaultenv/defaultenv-2-base/boot/net | 19 +++++ defaultenv/defaultenv-2-base/config | 25 +++++++ defaultenv/defaultenv-2-base/data/ansi-colors | 30 ++++++++ defaultenv/defaultenv-2-base/data/boot-template | 14 ++++ defaultenv/defaultenv-2-base/init/automount | 22 ++++++ defaultenv/defaultenv-2-base/init/ps1 | 7 ++ defaultenv/defaultenv-2-base/network/eth0 | 16 +++++ .../defaultenv-2-menu/menu/boot-entries-collect | 13 ++++ .../defaultenv-2-menu/menu/boot-entries-edit | 20 ++++++ .../defaultenv-2-menu/menu/boot-entries-remove | 18 +++++ .../defaultenv-2-menu/menu/boot-menu-add-entry | 5 ++ .../menu/boot-menu-new-boot-entry | 21 ++++++ .../defaultenv-2-menu/menu/init-entries-collect | 9 +++ .../defaultenv-2-menu/menu/init-entries-edit | 20 ++++++ .../defaultenv-2-menu/menu/init-menu-add-entry | 3 + defaultenv/defaultenv-2-menu/menu/mainmenu | 23 +++++++ defaultenv/defaultenv-2-menu/menu/settings | 21 ++++++ 43 files changed, 495 insertions(+), 495 deletions(-) delete mode 100644 defaultenv-2/base/bin/bootargs-ip delete mode 100644 defaultenv-2/base/bin/ifup delete mode 100644 defaultenv-2/base/bin/init delete mode 100644 defaultenv-2/base/bin/mtdparts-add delete mode 100644 defaultenv-2/base/boot/net delete mode 100644 defaultenv-2/base/config delete mode 100644 defaultenv-2/base/data/ansi-colors delete mode 100644 defaultenv-2/base/data/boot-template delete mode 100644 defaultenv-2/base/init/automount delete mode 100644 defaultenv-2/base/init/ps1 delete mode 100644 defaultenv-2/base/network/eth0 delete mode 100644 defaultenv-2/menu/menu/boot-entries-collect delete mode 100644 defaultenv-2/menu/menu/boot-entries-edit delete mode 100644 defaultenv-2/menu/menu/boot-entries-remove delete mode 100644 defaultenv-2/menu/menu/boot-menu-add-entry delete mode 100644 defaultenv-2/menu/menu/boot-menu-new-boot-entry delete mode 100644 defaultenv-2/menu/menu/init-entries-collect delete mode 100644 defaultenv-2/menu/menu/init-entries-edit delete mode 100644 defaultenv-2/menu/menu/init-menu-add-entry delete mode 100644 defaultenv-2/menu/menu/mainmenu delete mode 100644 defaultenv-2/menu/menu/settings create mode 100644 defaultenv/defaultenv-2-base/bin/bootargs-ip create mode 100644 defaultenv/defaultenv-2-base/bin/ifup create mode 100644 defaultenv/defaultenv-2-base/bin/init create mode 100644 defaultenv/defaultenv-2-base/bin/mtdparts-add create mode 100644 defaultenv/defaultenv-2-base/boot/net create mode 100644 defaultenv/defaultenv-2-base/config create mode 100644 defaultenv/defaultenv-2-base/data/ansi-colors create mode 100644 defaultenv/defaultenv-2-base/data/boot-template create mode 100644 defaultenv/defaultenv-2-base/init/automount create mode 100644 defaultenv/defaultenv-2-base/init/ps1 create mode 100644 defaultenv/defaultenv-2-base/network/eth0 create mode 100644 defaultenv/defaultenv-2-menu/menu/boot-entries-collect create mode 100644 defaultenv/defaultenv-2-menu/menu/boot-entries-edit create mode 100644 defaultenv/defaultenv-2-menu/menu/boot-entries-remove create mode 100644 defaultenv/defaultenv-2-menu/menu/boot-menu-add-entry create mode 100644 defaultenv/defaultenv-2-menu/menu/boot-menu-new-boot-entry create mode 100644 defaultenv/defaultenv-2-menu/menu/init-entries-collect create mode 100644 defaultenv/defaultenv-2-menu/menu/init-entries-edit create mode 100644 defaultenv/defaultenv-2-menu/menu/init-menu-add-entry create mode 100644 defaultenv/defaultenv-2-menu/menu/mainmenu create mode 100644 defaultenv/defaultenv-2-menu/menu/settings diff --git a/common/Makefile b/common/Makefile index c88d1c6f63..9c68f7b466 100644 --- a/common/Makefile +++ b/common/Makefile @@ -51,9 +51,9 @@ $(obj)/startup.o: $(obj)/barebox_default_env.h $(obj)/env.o: $(obj)/barebox_default_env.h ifeq ($(CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW),y) -DEFAULT_ENVIRONMENT_PATH = "defaultenv-2/base" +DEFAULT_ENVIRONMENT_PATH = "defaultenv/defaultenv-2-base" ifeq ($(CONFIG_CMD_MENU_MANAGEMENT),y) -DEFAULT_ENVIRONMENT_PATH += "defaultenv-2/menu" +DEFAULT_ENVIRONMENT_PATH += "defaultenv/defaultenv-2-menu" endif endif diff --git a/defaultenv-2/base/bin/bootargs-ip b/defaultenv-2/base/bin/bootargs-ip deleted file mode 100644 index 2d4486caf8..0000000000 --- a/defaultenv-2/base/bin/bootargs-ip +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/sh - -# pass either static ip or dhcp to kernel based on barebox settings - -. /env/network/eth0 - -if [ $ip = dhcp ]; then - global.linux.bootargs.dyn.ip="ip=dhcp" -else - global.linux.bootargs.dyn.ip="ip=$ipaddr:$serverip:$gateway:$netmask::eth0:" -fi diff --git a/defaultenv-2/base/bin/ifup b/defaultenv-2/base/bin/ifup deleted file mode 100644 index 37b986c44b..0000000000 --- a/defaultenv-2/base/bin/ifup +++ /dev/null @@ -1,67 +0,0 @@ -#!/bin/sh - -mkdir -p /tmp/network - -if [ $# != 1 ]; then - echo "usage: ifup " - exit 1 -fi - -interface="$1" - -if [ -f /tmp/network/$interface ]; then - exit 0 -fi - -cmd=/env/network/$interface - -if [ ! -e $cmd ]; then - echo "$f: no such file" - exit 1 -fi - -ip= -ipaddr= -netmask= -gateway= -serverip= -ethaddr= - -. $cmd - -if [ $? != 0 ]; then - echo "failed to bring up $interface" - exit 1 -fi - -if [ -f /env/network/${interface}-discover ]; then - /env/network/${interface}-discover - if [ $? != 0 ]; then - echo "failed to discover eth0" - exit 1 - fi -fi - -if [ -n "$ethaddr" ]; then - ${interface}.ethaddr=$ethaddr -fi - -if [ "$ip" = static ]; then - ${interface}.ipaddr=$ipaddr - ${interface}.netmask=$netmask - ${interface}.serverip=$serverip - ${interface}.gateway=$gateway - ret=0 -elif [ "$ip" = dhcp ]; then - dhcp - ret=$? - if [ $ret = 0 -a -n "$serverip" ]; then - ${interface}.serverip=$serverip - fi -fi - -if [ $ret = 0 ]; then - echo -o /tmp/network/$interface up -fi - -exit $ret diff --git a/defaultenv-2/base/bin/init b/defaultenv-2/base/bin/init deleted file mode 100644 index 3a0e93b49d..0000000000 --- a/defaultenv-2/base/bin/init +++ /dev/null @@ -1,80 +0,0 @@ -#!/bin/sh - -export PATH=/env/bin - -global hostname -global user -global autoboot_timeout -global boot.default -global allow_color -global linux.bootargs.base -global linux.bootargs.console -#linux.bootargs.dyn.* will be cleared at the beginning of boot -global linux.bootargs.dyn.ip -global linux.bootargs.dyn.root -global editcmd - -[ -z "${global.hostname}" ] && global.hostname=generic -[ -z "${global.user}" ] && global.user=none -[ -z "${global.autoboot_timeout}" ] && global.autoboot_timeout=3 -[ -z "${global.boot.default}" ] && global.boot.default=net -[ -z "${global.allow_color}" ] && global.allow_color=true -[ -z "${global.editcmd}" ] && global.editcmd=sedit - -[ -e /env/config-board ] && /env/config-board -/env/config - -# request password to login if a timeout is specified and password set -if [ -n ${global.login.timeout} ]; then - [ ${global.login.timeout} -gt 0 ] && login_cmd=login -fi -# allow the input if not -[ -n ${global.console.input_allow} ] && global.console.input_allow=1 - -# allow to stop the boot before execute the /env/init/* -# but without waiting -timeout -s -a -v key 0 - -if [ "${key}" = "q" ]; then - ${login_cmd} - exit -fi - -[ -n ${login_cmd} ] && global.console.input_allow=0 - -for i in /env/init/*; do - . $i -done - -if [ -e /env/menu ]; then - echo -e -n "\nHit m for menu or any other key to stop autoboot: " -else - echo -e -n "\nHit any key to stop autoboot: " -fi - -[ -n ${login_cmd} ] && global.console.input_allow=1 - -timeout -a $global.autoboot_timeout -v key -autoboot="$?" - -[ -n ${login_cmd} ] && global.console.input_allow=0 - -if [ "${key}" = "q" ]; then - ${login_cmd} - exit -fi - -if [ "$autoboot" = 0 ]; then - boot -fi - -if [ -e /env/menu ]; then - ${login_cmd} - if [ "${key}" != "m" ]; then - echo -e "\ntype exit to get to the menu" - sh - fi - /env/menu/mainmenu -fi - -${login_cmd} diff --git a/defaultenv-2/base/bin/mtdparts-add b/defaultenv-2/base/bin/mtdparts-add deleted file mode 100644 index 58c9fa7a21..0000000000 --- a/defaultenv-2/base/bin/mtdparts-add +++ /dev/null @@ -1,49 +0,0 @@ -#!/bin/sh - -mkdir -p /tmp/mtdparts - -parts= -device= -kernelname= -bbdev= - -while getopt "p:d:k:b" opt; do - if [ ${opt} = p ]; then - parts=${OPTARG} - elif [ ${opt} = d ]; then - device=${OPTARG} - elif [ ${opt} = k ]; then - kernelname=${OPTARG} - elif [ ${opt} = b ]; then - bbdev=true - fi -done - -if [ -z "${device}" ]; then - echo "$0: no device given" - exit -fi - -if [ -z "${parts}" ]; then - echo "$0: no partitions given" - exit -fi - -if [ -e /tmp/mtdparts/${device} ]; then - if [ -n "/dev/${device}.*.bb" ]; then - nand -d /dev/${device}.*.bb - fi - delpart /dev/${device}.* -fi - -addpart -n /dev/${device} "$parts" || exit -mkdir -p /tmp/mtdparts/${device} - -if [ -n "${bbdev}" ]; then - nand -a /dev/${device}.* -fi - -if [ -n ${kernelname} ]; then - global linux.mtdparts.${device} - global.linux.mtdparts.${device}="${kernelname}:${parts}" -fi diff --git a/defaultenv-2/base/boot/net b/defaultenv-2/base/boot/net deleted file mode 100644 index 05bb728fa1..0000000000 --- a/defaultenv-2/base/boot/net +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/sh - -if [ "$1" = menu ]; then - boot-menu-add-entry "$0" "network (tftp, nfs)" - exit -fi - -path="/mnt/tftp" - -global.bootm.image="${path}/${global.user}-linux-${global.hostname}" - -oftree="${path}/${global.user}-oftree-${global.hostname}" -if [ -f "${oftree}" ]; then - global.bootm.oftree="$oftree" -fi - -nfsroot="/home/${global.user}/nfsroot/${global.hostname}" -bootargs-ip -global.linux.bootargs.dyn.root="root=/dev/nfs nfsroot=$nfsroot,v3,tcp" diff --git a/defaultenv-2/base/config b/defaultenv-2/base/config deleted file mode 100644 index 784ae52b80..0000000000 --- a/defaultenv-2/base/config +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/sh - -# change network settings in /env/network/eth0 -# change mtd partition settings and automountpoints in /env/init/* - -#global.hostname= - -# set to false if you do not want to have colors -#global.allow_color=true - -# user (used for network filenames) -#global.user=none - -# timeout in seconds before the default boot entry is started -#global.autoboot_timeout=3 - -# list of boot entries. These are executed in order until one -# succeeds. An entry can be: -# - a filename in /env/boot/ -# - a full path to a directory. All files in this directory are -# treated as boot files and executed in alphabetical order -#global.boot.default=net - -# base bootargs -#global.linux.bootargs.base="console=ttyS0,115200" diff --git a/defaultenv-2/base/data/ansi-colors b/defaultenv-2/base/data/ansi-colors deleted file mode 100644 index 636532979a..0000000000 --- a/defaultenv-2/base/data/ansi-colors +++ /dev/null @@ -1,30 +0,0 @@ -#!/bin/sh - -if [ ${global.allow_color} != "true" ]; then - exit -fi - -# Colors -export RED='\e[1;31m' -export BLUE='\e[1;34m' -export GREEN='\e[1;32m' -export CYAN='\e[1;36m' -export YELLOW='\e[1;33m' -export PINK='\e[1;35m' -export WHITE='\e[1;37m' - -export DARK_RED='\e[2;31m' -export DARK_BLUE='\e[2;34m' -export DARK_GREEN='\e[2;32m' -export DARK_CYAN='\e[2;36m' -export DARK_YELLOW='\e[2;33m' -export DARK_PINK='\e[2;35m' -export DARK_WHITE='\e[2;37m' - -export RED_INV='\e[1;41m' -export BLUE_INV='\e[1;44m' -export GREEN_INV='\e[1;42m' -export CYAN_INV='\e[1;46m' -export ORANGE_INV='\e[1;43m' -export PINK_INV='\e[1;45m' -export NC='\e[0m' # No Color diff --git a/defaultenv-2/base/data/boot-template b/defaultenv-2/base/data/boot-template deleted file mode 100644 index 9297499036..0000000000 --- a/defaultenv-2/base/data/boot-template +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/sh - -if [ "$1" = menu ]; then - boot-menu-add-entry "$0" "" - exit -fi - -global.bootm.image= -#global.bootm.oftree= -#global.bootm.initrd= - -#bootargs-ip - -global.linux.bootargs.dyn.root="root=" diff --git a/defaultenv-2/base/init/automount b/defaultenv-2/base/init/automount deleted file mode 100644 index fe56d920e7..0000000000 --- a/defaultenv-2/base/init/automount +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/sh - -if [ "$1" = menu ]; then - init-menu-add-entry "$0" "Automountpoints" - exit -fi - -# automount tftp server based on $eth0.serverip - -mkdir -p /mnt/tftp -automount /mnt/tftp 'ifup eth0 && mount -t tftp $eth0.serverip /mnt/tftp' - -# automount nfs server example - -#nfshost=somehost -#mkdir -p /mnt/${nfshost} -#automount /mnt/$nfshost "ifup eth0 && mount -t nfs ${nfshost}:/tftpboot /mnt/${nfshost}" - -# FAT on usb disk example - -#mkdir -p /mnt/fat -#automount -d /mnt/fat 'usb && [ -e /dev/disk0.0 ] && mount /dev/disk0.0 /mnt/fat' diff --git a/defaultenv-2/base/init/ps1 b/defaultenv-2/base/init/ps1 deleted file mode 100644 index 02d7b4b780..0000000000 --- a/defaultenv-2/base/init/ps1 +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/sh - -if [ ${global.allow_color} = "true" ]; then - export PS1="\e[1;32mbarebox@\e[1;36m\h:\w\e[0m " -else - export PS1="barebox@\h:\w " -fi diff --git a/defaultenv-2/base/network/eth0 b/defaultenv-2/base/network/eth0 deleted file mode 100644 index 7e731cae00..0000000000 --- a/defaultenv-2/base/network/eth0 +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/sh - -# ip setting (static/dhcp) -ip=dhcp -global.dhcp.vendor_id=barebox-${global.hostname} - -# static setup used if ip=static -ipaddr= -netmask= -gateway= -serverip= - -# MAC address if needed -#ethaddr=xx:xx:xx:xx:xx:xx - -# put code to discover eth0 (i.e. 'usb') to /env/network/eth0-discover diff --git a/defaultenv-2/menu/menu/boot-entries-collect b/defaultenv-2/menu/menu/boot-entries-collect deleted file mode 100644 index c066c930ab..0000000000 --- a/defaultenv-2/menu/menu/boot-entries-collect +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/sh - -cd /env/boot - -./$global.boot.default menu - -for i in *; do - if [ "$i" != "$global.boot.default" ]; then - ./$i menu - fi -done - -cd / diff --git a/defaultenv-2/menu/menu/boot-entries-edit b/defaultenv-2/menu/menu/boot-entries-edit deleted file mode 100644 index c4e1c3d5fd..0000000000 --- a/defaultenv-2/menu/menu/boot-entries-edit +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/sh - -export menu_exit=false - -while true; do - menu -a -m boot_entries_edit -d "\e[1;36mEdit boot entries\e[0m" - - boot-entries-collect - - menu -e -a -m boot_entries_edit -c "boot-menu-new-boot-entry" -d "Add a new entry" - menu -e -a -m boot_entries_edit -c "boot-entries-remove" -d "Remove an entry" - menu -e -a -m boot_entries_edit -c "menu_exit=true" -d "back" - - menu -s -m boot_entries_edit - menu -r -m boot_entries_edit - - if [ $menu_exit = true ]; then - exit - fi -done diff --git a/defaultenv-2/menu/menu/boot-entries-remove b/defaultenv-2/menu/menu/boot-entries-remove deleted file mode 100644 index 566be9dd6e..0000000000 --- a/defaultenv-2/menu/menu/boot-entries-remove +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/sh - -export menu_exit=false - -while true; do - menu -a -m boot_entries_remove -d "\e[1;36mRemove Boot entry\e[0m" - - boot-entries-collect - - menu -e -a -m boot_entries_remove -c "menu_exit=true" -d "back" - - menu -s -m boot_entries_remove - menu -r -m boot_entries_remove - - if [ $menu_exit = true ]; then - exit - fi -done diff --git a/defaultenv-2/menu/menu/boot-menu-add-entry b/defaultenv-2/menu/menu/boot-menu-add-entry deleted file mode 100644 index f06c524034..0000000000 --- a/defaultenv-2/menu/menu/boot-menu-add-entry +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/sh - -menu -e -a -m boot -c "boot -v $1; echo; readline \"press enter to continue\" a " -d "Boot: ${GREEN}$2${NC}" -menu -e -a -m boot_entries_edit -c "$global.editcmd /env/boot/$1" -d "${GREEN}$2${NC}" -menu -e -a -m boot_entries_remove -c "rm /env/boot/$1" -d "${GREEN}$2${NC}" diff --git a/defaultenv-2/menu/menu/boot-menu-new-boot-entry b/defaultenv-2/menu/menu/boot-menu-new-boot-entry deleted file mode 100644 index c5e982cdb2..0000000000 --- a/defaultenv-2/menu/menu/boot-menu-new-boot-entry +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/sh - -name= - -readline "Name of the new entry: " name - -if [ -z "$name" ]; then - exit 1 -fi - -if [ -e "/env/boot/$name" ]; then - echo "entry $name already exists" - readline "" unused - exit 1 -fi - -cp /env/data/boot-template /env/boot/$name - -edit /env/boot/$name - -boot-menu-show rebuild diff --git a/defaultenv-2/menu/menu/init-entries-collect b/defaultenv-2/menu/menu/init-entries-collect deleted file mode 100644 index dbb775779a..0000000000 --- a/defaultenv-2/menu/menu/init-entries-collect +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/sh - -cd /env/init - -for i in *; do - ./$i menu -done - -cd / diff --git a/defaultenv-2/menu/menu/init-entries-edit b/defaultenv-2/menu/menu/init-entries-edit deleted file mode 100644 index fc02b327d9..0000000000 --- a/defaultenv-2/menu/menu/init-entries-edit +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/sh - -export menu_exit=false - -while true; do - menu -a -m init_entries_edit -d "\e[1;36mEdit init entries\e[0m" - - menu -e -a -m init_entries_edit -R -c "true" -d ">> Reset board to let changes here take effect <<" - - init-entries-collect - - menu -e -a -m init_entries_edit -c "menu_exit=true" -d "back" - - menu -s -m init_entries_edit - menu -r -m init_entries_edit - - if [ $menu_exit = true ]; then - exit - fi -done diff --git a/defaultenv-2/menu/menu/init-menu-add-entry b/defaultenv-2/menu/menu/init-menu-add-entry deleted file mode 100644 index 7cb5686402..0000000000 --- a/defaultenv-2/menu/menu/init-menu-add-entry +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh - -menu -e -a -m init_entries_edit -c "$global.editcmd /env/init/$1" -d "\e[1;32m$2\e[0m" diff --git a/defaultenv-2/menu/menu/mainmenu b/defaultenv-2/menu/menu/mainmenu deleted file mode 100644 index f10f67a62f..0000000000 --- a/defaultenv-2/menu/menu/mainmenu +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/sh - -savepath=$PATH -export menupath=$PATH:/env/menu - -. /env/data/ansi-colors - -while true; do - export PATH=${menupath} - - echo $PATH - - menu -a -m boot -d "${CYAN}Welcome to Barebox${NC}" - - boot-entries-collect - - menu -e -a -m boot -c "settings" -d "Settings" - menu -e -a -m boot -c 'PATH=$savepath; echo "enter exit to return to menu"; sh' -d "${DARK_YELLOW}Shell${NC}" - menu -e -a -m boot -c reset -d "${RED}Reset${NC}" - - menu -s -m boot - menu -r -m boot -done diff --git a/defaultenv-2/menu/menu/settings b/defaultenv-2/menu/menu/settings deleted file mode 100644 index db619afa6f..0000000000 --- a/defaultenv-2/menu/menu/settings +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/sh - -export menu_exit=false - -while true; do - menu -a -m settings -d "${CYAN}Settings${NC}" - - menu -e -a -R -m settings -c "$global.editcmd /env/network/eth0" -d "Network settings" - menu -e -a -R -m settings -c "$global.editcmd /env/config" -d "Config settings" - menu -e -a -m settings -c "boot-entries-edit" -d "Edit boot entries" - menu -e -a -m settings -c "init-entries-edit" -d "Edit init entries" - menu -e -a -R -m settings -c "saveenv || echo \"failed to save environment\" && sleep 2" -d "Save settings" - menu -e -a -m settings -c "menu_exit=true" -d "back" - - menu -s -m settings - menu -r -m settings - - if [ $menu_exit = true ]; then - exit - fi -done diff --git a/defaultenv/defaultenv-2-base/bin/bootargs-ip b/defaultenv/defaultenv-2-base/bin/bootargs-ip new file mode 100644 index 0000000000..2d4486caf8 --- /dev/null +++ b/defaultenv/defaultenv-2-base/bin/bootargs-ip @@ -0,0 +1,11 @@ +#!/bin/sh + +# pass either static ip or dhcp to kernel based on barebox settings + +. /env/network/eth0 + +if [ $ip = dhcp ]; then + global.linux.bootargs.dyn.ip="ip=dhcp" +else + global.linux.bootargs.dyn.ip="ip=$ipaddr:$serverip:$gateway:$netmask::eth0:" +fi diff --git a/defaultenv/defaultenv-2-base/bin/ifup b/defaultenv/defaultenv-2-base/bin/ifup new file mode 100644 index 0000000000..37b986c44b --- /dev/null +++ b/defaultenv/defaultenv-2-base/bin/ifup @@ -0,0 +1,67 @@ +#!/bin/sh + +mkdir -p /tmp/network + +if [ $# != 1 ]; then + echo "usage: ifup " + exit 1 +fi + +interface="$1" + +if [ -f /tmp/network/$interface ]; then + exit 0 +fi + +cmd=/env/network/$interface + +if [ ! -e $cmd ]; then + echo "$f: no such file" + exit 1 +fi + +ip= +ipaddr= +netmask= +gateway= +serverip= +ethaddr= + +. $cmd + +if [ $? != 0 ]; then + echo "failed to bring up $interface" + exit 1 +fi + +if [ -f /env/network/${interface}-discover ]; then + /env/network/${interface}-discover + if [ $? != 0 ]; then + echo "failed to discover eth0" + exit 1 + fi +fi + +if [ -n "$ethaddr" ]; then + ${interface}.ethaddr=$ethaddr +fi + +if [ "$ip" = static ]; then + ${interface}.ipaddr=$ipaddr + ${interface}.netmask=$netmask + ${interface}.serverip=$serverip + ${interface}.gateway=$gateway + ret=0 +elif [ "$ip" = dhcp ]; then + dhcp + ret=$? + if [ $ret = 0 -a -n "$serverip" ]; then + ${interface}.serverip=$serverip + fi +fi + +if [ $ret = 0 ]; then + echo -o /tmp/network/$interface up +fi + +exit $ret diff --git a/defaultenv/defaultenv-2-base/bin/init b/defaultenv/defaultenv-2-base/bin/init new file mode 100644 index 0000000000..3a0e93b49d --- /dev/null +++ b/defaultenv/defaultenv-2-base/bin/init @@ -0,0 +1,80 @@ +#!/bin/sh + +export PATH=/env/bin + +global hostname +global user +global autoboot_timeout +global boot.default +global allow_color +global linux.bootargs.base +global linux.bootargs.console +#linux.bootargs.dyn.* will be cleared at the beginning of boot +global linux.bootargs.dyn.ip +global linux.bootargs.dyn.root +global editcmd + +[ -z "${global.hostname}" ] && global.hostname=generic +[ -z "${global.user}" ] && global.user=none +[ -z "${global.autoboot_timeout}" ] && global.autoboot_timeout=3 +[ -z "${global.boot.default}" ] && global.boot.default=net +[ -z "${global.allow_color}" ] && global.allow_color=true +[ -z "${global.editcmd}" ] && global.editcmd=sedit + +[ -e /env/config-board ] && /env/config-board +/env/config + +# request password to login if a timeout is specified and password set +if [ -n ${global.login.timeout} ]; then + [ ${global.login.timeout} -gt 0 ] && login_cmd=login +fi +# allow the input if not +[ -n ${global.console.input_allow} ] && global.console.input_allow=1 + +# allow to stop the boot before execute the /env/init/* +# but without waiting +timeout -s -a -v key 0 + +if [ "${key}" = "q" ]; then + ${login_cmd} + exit +fi + +[ -n ${login_cmd} ] && global.console.input_allow=0 + +for i in /env/init/*; do + . $i +done + +if [ -e /env/menu ]; then + echo -e -n "\nHit m for menu or any other key to stop autoboot: " +else + echo -e -n "\nHit any key to stop autoboot: " +fi + +[ -n ${login_cmd} ] && global.console.input_allow=1 + +timeout -a $global.autoboot_timeout -v key +autoboot="$?" + +[ -n ${login_cmd} ] && global.console.input_allow=0 + +if [ "${key}" = "q" ]; then + ${login_cmd} + exit +fi + +if [ "$autoboot" = 0 ]; then + boot +fi + +if [ -e /env/menu ]; then + ${login_cmd} + if [ "${key}" != "m" ]; then + echo -e "\ntype exit to get to the menu" + sh + fi + /env/menu/mainmenu +fi + +${login_cmd} diff --git a/defaultenv/defaultenv-2-base/bin/mtdparts-add b/defaultenv/defaultenv-2-base/bin/mtdparts-add new file mode 100644 index 0000000000..58c9fa7a21 --- /dev/null +++ b/defaultenv/defaultenv-2-base/bin/mtdparts-add @@ -0,0 +1,49 @@ +#!/bin/sh + +mkdir -p /tmp/mtdparts + +parts= +device= +kernelname= +bbdev= + +while getopt "p:d:k:b" opt; do + if [ ${opt} = p ]; then + parts=${OPTARG} + elif [ ${opt} = d ]; then + device=${OPTARG} + elif [ ${opt} = k ]; then + kernelname=${OPTARG} + elif [ ${opt} = b ]; then + bbdev=true + fi +done + +if [ -z "${device}" ]; then + echo "$0: no device given" + exit +fi + +if [ -z "${parts}" ]; then + echo "$0: no partitions given" + exit +fi + +if [ -e /tmp/mtdparts/${device} ]; then + if [ -n "/dev/${device}.*.bb" ]; then + nand -d /dev/${device}.*.bb + fi + delpart /dev/${device}.* +fi + +addpart -n /dev/${device} "$parts" || exit +mkdir -p /tmp/mtdparts/${device} + +if [ -n "${bbdev}" ]; then + nand -a /dev/${device}.* +fi + +if [ -n ${kernelname} ]; then + global linux.mtdparts.${device} + global.linux.mtdparts.${device}="${kernelname}:${parts}" +fi diff --git a/defaultenv/defaultenv-2-base/boot/net b/defaultenv/defaultenv-2-base/boot/net new file mode 100644 index 0000000000..05bb728fa1 --- /dev/null +++ b/defaultenv/defaultenv-2-base/boot/net @@ -0,0 +1,19 @@ +#!/bin/sh + +if [ "$1" = menu ]; then + boot-menu-add-entry "$0" "network (tftp, nfs)" + exit +fi + +path="/mnt/tftp" + +global.bootm.image="${path}/${global.user}-linux-${global.hostname}" + +oftree="${path}/${global.user}-oftree-${global.hostname}" +if [ -f "${oftree}" ]; then + global.bootm.oftree="$oftree" +fi + +nfsroot="/home/${global.user}/nfsroot/${global.hostname}" +bootargs-ip +global.linux.bootargs.dyn.root="root=/dev/nfs nfsroot=$nfsroot,v3,tcp" diff --git a/defaultenv/defaultenv-2-base/config b/defaultenv/defaultenv-2-base/config new file mode 100644 index 0000000000..784ae52b80 --- /dev/null +++ b/defaultenv/defaultenv-2-base/config @@ -0,0 +1,25 @@ +#!/bin/sh + +# change network settings in /env/network/eth0 +# change mtd partition settings and automountpoints in /env/init/* + +#global.hostname= + +# set to false if you do not want to have colors +#global.allow_color=true + +# user (used for network filenames) +#global.user=none + +# timeout in seconds before the default boot entry is started +#global.autoboot_timeout=3 + +# list of boot entries. These are executed in order until one +# succeeds. An entry can be: +# - a filename in /env/boot/ +# - a full path to a directory. All files in this directory are +# treated as boot files and executed in alphabetical order +#global.boot.default=net + +# base bootargs +#global.linux.bootargs.base="console=ttyS0,115200" diff --git a/defaultenv/defaultenv-2-base/data/ansi-colors b/defaultenv/defaultenv-2-base/data/ansi-colors new file mode 100644 index 0000000000..636532979a --- /dev/null +++ b/defaultenv/defaultenv-2-base/data/ansi-colors @@ -0,0 +1,30 @@ +#!/bin/sh + +if [ ${global.allow_color} != "true" ]; then + exit +fi + +# Colors +export RED='\e[1;31m' +export BLUE='\e[1;34m' +export GREEN='\e[1;32m' +export CYAN='\e[1;36m' +export YELLOW='\e[1;33m' +export PINK='\e[1;35m' +export WHITE='\e[1;37m' + +export DARK_RED='\e[2;31m' +export DARK_BLUE='\e[2;34m' +export DARK_GREEN='\e[2;32m' +export DARK_CYAN='\e[2;36m' +export DARK_YELLOW='\e[2;33m' +export DARK_PINK='\e[2;35m' +export DARK_WHITE='\e[2;37m' + +export RED_INV='\e[1;41m' +export BLUE_INV='\e[1;44m' +export GREEN_INV='\e[1;42m' +export CYAN_INV='\e[1;46m' +export ORANGE_INV='\e[1;43m' +export PINK_INV='\e[1;45m' +export NC='\e[0m' # No Color diff --git a/defaultenv/defaultenv-2-base/data/boot-template b/defaultenv/defaultenv-2-base/data/boot-template new file mode 100644 index 0000000000..9297499036 --- /dev/null +++ b/defaultenv/defaultenv-2-base/data/boot-template @@ -0,0 +1,14 @@ +#!/bin/sh + +if [ "$1" = menu ]; then + boot-menu-add-entry "$0" "" + exit +fi + +global.bootm.image= +#global.bootm.oftree= +#global.bootm.initrd= + +#bootargs-ip + +global.linux.bootargs.dyn.root="root=" diff --git a/defaultenv/defaultenv-2-base/init/automount b/defaultenv/defaultenv-2-base/init/automount new file mode 100644 index 0000000000..fe56d920e7 --- /dev/null +++ b/defaultenv/defaultenv-2-base/init/automount @@ -0,0 +1,22 @@ +#!/bin/sh + +if [ "$1" = menu ]; then + init-menu-add-entry "$0" "Automountpoints" + exit +fi + +# automount tftp server based on $eth0.serverip + +mkdir -p /mnt/tftp +automount /mnt/tftp 'ifup eth0 && mount -t tftp $eth0.serverip /mnt/tftp' + +# automount nfs server example + +#nfshost=somehost +#mkdir -p /mnt/${nfshost} +#automount /mnt/$nfshost "ifup eth0 && mount -t nfs ${nfshost}:/tftpboot /mnt/${nfshost}" + +# FAT on usb disk example + +#mkdir -p /mnt/fat +#automount -d /mnt/fat 'usb && [ -e /dev/disk0.0 ] && mount /dev/disk0.0 /mnt/fat' diff --git a/defaultenv/defaultenv-2-base/init/ps1 b/defaultenv/defaultenv-2-base/init/ps1 new file mode 100644 index 0000000000..02d7b4b780 --- /dev/null +++ b/defaultenv/defaultenv-2-base/init/ps1 @@ -0,0 +1,7 @@ +#!/bin/sh + +if [ ${global.allow_color} = "true" ]; then + export PS1="\e[1;32mbarebox@\e[1;36m\h:\w\e[0m " +else + export PS1="barebox@\h:\w " +fi diff --git a/defaultenv/defaultenv-2-base/network/eth0 b/defaultenv/defaultenv-2-base/network/eth0 new file mode 100644 index 0000000000..7e731cae00 --- /dev/null +++ b/defaultenv/defaultenv-2-base/network/eth0 @@ -0,0 +1,16 @@ +#!/bin/sh + +# ip setting (static/dhcp) +ip=dhcp +global.dhcp.vendor_id=barebox-${global.hostname} + +# static setup used if ip=static +ipaddr= +netmask= +gateway= +serverip= + +# MAC address if needed +#ethaddr=xx:xx:xx:xx:xx:xx + +# put code to discover eth0 (i.e. 'usb') to /env/network/eth0-discover diff --git a/defaultenv/defaultenv-2-menu/menu/boot-entries-collect b/defaultenv/defaultenv-2-menu/menu/boot-entries-collect new file mode 100644 index 0000000000..c066c930ab --- /dev/null +++ b/defaultenv/defaultenv-2-menu/menu/boot-entries-collect @@ -0,0 +1,13 @@ +#!/bin/sh + +cd /env/boot + +./$global.boot.default menu + +for i in *; do + if [ "$i" != "$global.boot.default" ]; then + ./$i menu + fi +done + +cd / diff --git a/defaultenv/defaultenv-2-menu/menu/boot-entries-edit b/defaultenv/defaultenv-2-menu/menu/boot-entries-edit new file mode 100644 index 0000000000..c4e1c3d5fd --- /dev/null +++ b/defaultenv/defaultenv-2-menu/menu/boot-entries-edit @@ -0,0 +1,20 @@ +#!/bin/sh + +export menu_exit=false + +while true; do + menu -a -m boot_entries_edit -d "\e[1;36mEdit boot entries\e[0m" + + boot-entries-collect + + menu -e -a -m boot_entries_edit -c "boot-menu-new-boot-entry" -d "Add a new entry" + menu -e -a -m boot_entries_edit -c "boot-entries-remove" -d "Remove an entry" + menu -e -a -m boot_entries_edit -c "menu_exit=true" -d "back" + + menu -s -m boot_entries_edit + menu -r -m boot_entries_edit + + if [ $menu_exit = true ]; then + exit + fi +done diff --git a/defaultenv/defaultenv-2-menu/menu/boot-entries-remove b/defaultenv/defaultenv-2-menu/menu/boot-entries-remove new file mode 100644 index 0000000000..566be9dd6e --- /dev/null +++ b/defaultenv/defaultenv-2-menu/menu/boot-entries-remove @@ -0,0 +1,18 @@ +#!/bin/sh + +export menu_exit=false + +while true; do + menu -a -m boot_entries_remove -d "\e[1;36mRemove Boot entry\e[0m" + + boot-entries-collect + + menu -e -a -m boot_entries_remove -c "menu_exit=true" -d "back" + + menu -s -m boot_entries_remove + menu -r -m boot_entries_remove + + if [ $menu_exit = true ]; then + exit + fi +done diff --git a/defaultenv/defaultenv-2-menu/menu/boot-menu-add-entry b/defaultenv/defaultenv-2-menu/menu/boot-menu-add-entry new file mode 100644 index 0000000000..f06c524034 --- /dev/null +++ b/defaultenv/defaultenv-2-menu/menu/boot-menu-add-entry @@ -0,0 +1,5 @@ +#!/bin/sh + +menu -e -a -m boot -c "boot -v $1; echo; readline \"press enter to continue\" a " -d "Boot: ${GREEN}$2${NC}" +menu -e -a -m boot_entries_edit -c "$global.editcmd /env/boot/$1" -d "${GREEN}$2${NC}" +menu -e -a -m boot_entries_remove -c "rm /env/boot/$1" -d "${GREEN}$2${NC}" diff --git a/defaultenv/defaultenv-2-menu/menu/boot-menu-new-boot-entry b/defaultenv/defaultenv-2-menu/menu/boot-menu-new-boot-entry new file mode 100644 index 0000000000..c5e982cdb2 --- /dev/null +++ b/defaultenv/defaultenv-2-menu/menu/boot-menu-new-boot-entry @@ -0,0 +1,21 @@ +#!/bin/sh + +name= + +readline "Name of the new entry: " name + +if [ -z "$name" ]; then + exit 1 +fi + +if [ -e "/env/boot/$name" ]; then + echo "entry $name already exists" + readline "" unused + exit 1 +fi + +cp /env/data/boot-template /env/boot/$name + +edit /env/boot/$name + +boot-menu-show rebuild diff --git a/defaultenv/defaultenv-2-menu/menu/init-entries-collect b/defaultenv/defaultenv-2-menu/menu/init-entries-collect new file mode 100644 index 0000000000..dbb775779a --- /dev/null +++ b/defaultenv/defaultenv-2-menu/menu/init-entries-collect @@ -0,0 +1,9 @@ +#!/bin/sh + +cd /env/init + +for i in *; do + ./$i menu +done + +cd / diff --git a/defaultenv/defaultenv-2-menu/menu/init-entries-edit b/defaultenv/defaultenv-2-menu/menu/init-entries-edit new file mode 100644 index 0000000000..fc02b327d9 --- /dev/null +++ b/defaultenv/defaultenv-2-menu/menu/init-entries-edit @@ -0,0 +1,20 @@ +#!/bin/sh + +export menu_exit=false + +while true; do + menu -a -m init_entries_edit -d "\e[1;36mEdit init entries\e[0m" + + menu -e -a -m init_entries_edit -R -c "true" -d ">> Reset board to let changes here take effect <<" + + init-entries-collect + + menu -e -a -m init_entries_edit -c "menu_exit=true" -d "back" + + menu -s -m init_entries_edit + menu -r -m init_entries_edit + + if [ $menu_exit = true ]; then + exit + fi +done diff --git a/defaultenv/defaultenv-2-menu/menu/init-menu-add-entry b/defaultenv/defaultenv-2-menu/menu/init-menu-add-entry new file mode 100644 index 0000000000..7cb5686402 --- /dev/null +++ b/defaultenv/defaultenv-2-menu/menu/init-menu-add-entry @@ -0,0 +1,3 @@ +#!/bin/sh + +menu -e -a -m init_entries_edit -c "$global.editcmd /env/init/$1" -d "\e[1;32m$2\e[0m" diff --git a/defaultenv/defaultenv-2-menu/menu/mainmenu b/defaultenv/defaultenv-2-menu/menu/mainmenu new file mode 100644 index 0000000000..f10f67a62f --- /dev/null +++ b/defaultenv/defaultenv-2-menu/menu/mainmenu @@ -0,0 +1,23 @@ +#!/bin/sh + +savepath=$PATH +export menupath=$PATH:/env/menu + +. /env/data/ansi-colors + +while true; do + export PATH=${menupath} + + echo $PATH + + menu -a -m boot -d "${CYAN}Welcome to Barebox${NC}" + + boot-entries-collect + + menu -e -a -m boot -c "settings" -d "Settings" + menu -e -a -m boot -c 'PATH=$savepath; echo "enter exit to return to menu"; sh' -d "${DARK_YELLOW}Shell${NC}" + menu -e -a -m boot -c reset -d "${RED}Reset${NC}" + + menu -s -m boot + menu -r -m boot +done diff --git a/defaultenv/defaultenv-2-menu/menu/settings b/defaultenv/defaultenv-2-menu/menu/settings new file mode 100644 index 0000000000..db619afa6f --- /dev/null +++ b/defaultenv/defaultenv-2-menu/menu/settings @@ -0,0 +1,21 @@ +#!/bin/sh + +export menu_exit=false + +while true; do + menu -a -m settings -d "${CYAN}Settings${NC}" + + menu -e -a -R -m settings -c "$global.editcmd /env/network/eth0" -d "Network settings" + menu -e -a -R -m settings -c "$global.editcmd /env/config" -d "Config settings" + menu -e -a -m settings -c "boot-entries-edit" -d "Edit boot entries" + menu -e -a -m settings -c "init-entries-edit" -d "Edit init entries" + menu -e -a -R -m settings -c "saveenv || echo \"failed to save environment\" && sleep 2" -d "Save settings" + menu -e -a -m settings -c "menu_exit=true" -d "back" + + menu -s -m settings + menu -r -m settings + + if [ $menu_exit = true ]; then + exit + fi +done -- cgit v1.2.3