Advertisement
Guest User

Untitled

a guest
May 28th, 2012
49
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #!/bin/bash
  2.  
  3. countdown=5
  4.  
  5. default=0
  6.  
  7. title[0]="Arch Linux"
  8. kernel[0]="ArchLinux.image"
  9. cmdline[0]="root=/dev/mmcblk0p2 rootfstype=ext3 rootwait"
  10.  
  11. title[1]="OpenELEC"
  12. kernel[1]="OpenELEC.image"
  13. cmdline[1]="root=/dev/ram0 rdinit=/init boot=/dev/mmcblk0p1 disk=/dev/mmcblk0p3 ssh debugging"
  14.  
  15. title[2]="Debian"
  16. kernel[2]="ArchLinux.image"
  17. cmdline[2]="root=/dev/mmcblk0p4 rootfstype=ext4 rootwait"
  18.  
  19. title[3]="USB (sda1)"
  20. kernel[3]="ArchLinux.image"
  21. cmdline[3]="root=/dev/sda1 rootwait"
  22.  
  23. version=0.1
  24.  
  25. tempfile=$( tempfile 2>/dev/null ) || tempfile=/tmp/choice$$
  26. trap "rm -f $tempfile" 0 1 2 5 15
  27.  
  28. echo "4 1 1 7" > /proc/sys/kernel/printk
  29. dialog --backtitle "XECLoader $version" --pause "Starting ${title[$default]}... \nPress Ok to start now.\nPress Cancel to select." 10 40 $countdown
  30.    
  31. if [ $? -eq 0 ]; then
  32.     clear
  33.     kexec -l "/mnt/kernels/${kernel[$default]}" --command-line="$( cat /proc/cmdline ) ${cmdline[$default]}"
  34.     kexec -e
  35.     else
  36.     for (( i=0; i<${#title[@]}; i++ )); do
  37.             options[2*i]=$i
  38.             options[2*i+1]="${title[$i]}"
  39.     done
  40.         dialog --backtitle "XECLoader $version" --menu "Select system or cancel to launch a shell." 20 50 20 "${options[@]}" 2> $tempfile
  41.         if [ $? -eq 0 ]; then
  42.             dialog --backtitle "XECLoader $version" --infobox "Starting ${title[$( cat  $tempfile )]}..." 4 40;
  43.             kexec -l "/mnt/kernels/${kernel[$( cat  $tempfile )]}" --command-line="$( cat /proc/cmdline ) ${cmdline[$( cat  $tempfile )]}"
  44.             rm $tempfile
  45.             kexec -e
  46.         else
  47.             /bin/bash
  48.         fi
  49. fi
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement