home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / boot / i386 / root / usr / lib / YaST2 / bin / update_gfxmenu < prev    next >
Text File  |  2006-11-29  |  2KB  |  55 lines

  1. #!/bin/bash
  2. #Update /boot/message to contain help for actual language
  3. #$1 is tmp dir to work in
  4. #$2 is directory with sources (usually /etc/bootsplash/themes/SuSE/bootloader)
  5. #$3 is file containing translation of names of bootloaer entries
  6. #$4 is locale in longer form (eg. cs_CZ)
  7. #$5 is locale in shorter form (eg. cs) 
  8. # secondary (and following) languages can be appended (eg. $6=de_DE, $7=de,...)
  9.  
  10. TMP_DIR=$1;
  11. SRC_DIR=$2;
  12. MENU_ENTRIES=$3
  13. shift 3;
  14. LOCALE=$1;
  15. LOCALE_SHORT=$2;
  16.  
  17. # create temporarry directory
  18. cd $TMP_DIR || exit 1;
  19. test -e gfxmenu && rm -rf gfxmenu;
  20. mkdir gfxmenu || exit 2;
  21. cd gfxmenu || exit 3;
  22. # unpack current message file
  23. /usr/bin/cpio -i < /boot/message || exit 4;
  24. # set default language
  25. echo $LOCALE >lang || exit 5
  26. # replace original texts with localized
  27. rm -f `ls *tr | grep -v en.tr`
  28. rm -f `ls *hlp | grep -v en.hlp`
  29. test -f $SRC_DIR/$LOCALE.tr && cp $SRC_DIR/$LOCALE.tr . \
  30.  || test -f $SRC_DIR/$LOCALE_SHORT.tr && cp $SRC_DIR/$LOCALE_SHORT.tr .
  31. test -f $SRC_DIR/$LOCALE.hlp && cp I4/$LOCALE.hlp . \
  32.  || test -f $SRC_DIR/$LOCALE_SHORT.hlp && cp $SRC_DIR/$LOCALE_SHORT.hlp .
  33. # set languages to choose
  34. if [ "$LOCALE_SHORT" = "en" ] ; then
  35.     echo -n "en
  36. " >languages || exit 6
  37. else
  38.     echo -n "$LOCALE_SHORT
  39. en
  40. " >languages || exit 6
  41. fi
  42.  
  43. # set translations of bootloaer menu entries
  44. cp $MENU_ENTRIES ./translations.$LOCALE_SHORT || exit 7;
  45.  
  46. test -f $SRC_DIR/background.jpg && cp $SRC_DIR/background.jpg back.jpg
  47.  
  48. ls | cpio -o >/boot/message.new && mv /boot/message.new /boot/message || exit 99
  49. cd .. && rm -r gfxmenu
  50.  
  51. exit 0
  52.  
  53.  
  54.  
  55.