winesetup.sh 3.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. #!/bin/sh
  2. ##
  3. ## winesetup -- Wine setup utility for users
  4. ##
  5. # configuration
  6. l_prefix="@l_prefix@"
  7. # create important directory structure under $HOME/.wine
  8. umask 022
  9. for dir in \
  10. "$HOME/.wine" \
  11. "$HOME/.wine/c_drive" \
  12. "$HOME/.wine/c_drive/Windows" \
  13. "$HOME/.wine/c_drive/Windows/Command" \
  14. "$HOME/.wine/c_drive/Windows/Fonts" \
  15. "$HOME/.wine/c_drive/Windows/Start Menu" \
  16. "$HOME/.wine/c_drive/Windows/Start Menu/Programs" \
  17. "$HOME/.wine/c_drive/Windows/Start Menu/Programs/Startup" \
  18. "$HOME/.wine/c_drive/Windows/System" \
  19. "$HOME/.wine/c_drive/Windows/System32" \
  20. "$HOME/.wine/c_drive/Windows/Profiles" \
  21. "$HOME/.wine/c_drive/Windows/Profiles/Administrator" \
  22. "$HOME/.wine/c_drive/Windows/Temp" \
  23. "$HOME/.wine/c_drive/Program Files" \
  24. "$HOME/.wine/c_drive/Program Files/Common Files"; \
  25. do
  26. if [ ! -d "$dir" ]; then
  27. echo "++ creating directory \"$dir\""
  28. mkdir "$dir"
  29. fi
  30. done
  31. # install important configuration file
  32. if [ ! -f "$HOME/.wine/config" ]; then
  33. echo "++ creating file \"$HOME/.wine/config\""
  34. sed -e 's;Drive E;Drive T;' \
  35. -e 's;Drive F;Drive U;' \
  36. -e 's;Drive Z;Drive R;' \
  37. -e '/^\[Drive C\]/,/^$/s/"\/c"/"${HOME}\/.wine\/c_drive"/' \
  38. -e '/^\[Drive R\]/,/^$/s/"hd"/"network"/' \
  39. -e '/^\[wine\]/,/^$/s/e:/t:/g' \
  40. -e '/^\[wine\]/,/^$/s/f:/u:/g' \
  41. <$l_prefix/share/wine/config >$HOME/.wine/config
  42. fi
  43. # install important system files
  44. if [ ! -f "$HOME/.wine/c_drive/Windows/system.ini" ]; then
  45. echo "++ creating file \"$HOME/.wine/c_drive/Windows/system.ini\""
  46. cp $l_prefix/share/wine/system.ini $HOME/.wine/c_drive/Windows/system.ini
  47. fi
  48. if [ ! -f "$HOME/.wine/c_drive/Windows/win.ini" ]; then
  49. echo "++ creating file \"$HOME/.wine/c_drive/Windows/win.ini\""
  50. cp $l_prefix/share/wine/win.ini $HOME/.wine/c_drive/Windows/win.ini
  51. fi
  52. if [ ! -f "$HOME/.wine/c_drive/Windows/generic.ppd" ]; then
  53. echo "++ creating file \"$HOME/.wine/c_drive/Windows/generic.ppd\""
  54. cp $l_prefix/share/wine/generic.ppd $HOME/.wine/c_drive/Windows/generic.ppd
  55. fi
  56. # install application links
  57. link_app () {
  58. if [ ! -f $2 ]; then
  59. echo "++ installing application \"$2\""
  60. ln -s $l_prefix/lib/wine/$1.exe.so $2
  61. fi
  62. }
  63. link_app start $HOME/.wine/c_drive/Windows/Command/start.exe
  64. link_app notepad $HOME/.wine/c_drive/Windows/notepad.exe
  65. link_app regedit $HOME/.wine/c_drive/Windows/regedit.exe
  66. link_app rundll32 $HOME/.wine/c_drive/Windows/rundll32.exe
  67. link_app wcmd $HOME/.wine/c_drive/Windows/System/wcmd.exe
  68. link_app control $HOME/.wine/c_drive/Windows/System/control.exe
  69. link_app winhelp $HOME/.wine/c_drive/Windows/System/help.exe
  70. link_app notepad $HOME/.wine/c_drive/Windows/System/notepad.exe
  71. link_app progman $HOME/.wine/c_drive/Windows/System/progman.exe
  72. link_app regsvr32 $HOME/.wine/c_drive/Windows/System/regsvr32.exe
  73. link_app winemine $HOME/.wine/c_drive/Windows/System/winmine.exe
  74. link_app winver $HOME/.wine/c_drive/Windows/System/winver.exe
  75. link_app user $HOME/.wine/c_drive/Windows/System/user.exe
  76. link_app uninstaller $HOME/.wine/c_drive/Windows/uninstall.exe
  77. link_app winhelp $HOME/.wine/c_drive/Windows/winhelp.exe
  78. link_app winhelp $HOME/.wine/c_drive/Windows/winhlp32.exe
  79. # install default registry entries
  80. if [ ! -f $HOME/.wine/system.reg ]; then
  81. echo "++ installing initial registry"
  82. $l_prefix/bin/regedit $l_prefix/share/wine/winedefault.reg
  83. fi