3 # Install Window Maker for the current user
7 if test x
"$1" = x
"--batch" ; then
14 # directory where system wide configuration is stored
15 GLOBALDIR
="#pkgdatadir#"
16 GLOBALDEFDIR
="#sysconfdir#"
32 cat << EOF >> $ISCRIPT
33 # Window Maker default X session startup script
37 # If you login from xdm, uncomment this to make error messages appear
38 # in the console window.
40 # tail -f $HOME/.xsession-errors > /dev/console &
50 # Copy files considering special cases
55 file=`basename $source`
57 if [ "$file" = "WMRootMenu" ]; then
58 echo \"$GSDIR/Library
/WindowMaker
/menu
\" > \
60 elif [ "$file" = "WindowMaker" ]; then
61 sed -e "s|~/GNUstep|$GSDIR|g" $source > $target
63 if test "x$GNUSTEP_USER_ROOT" = "x"; then
64 sed -e "s:#wmdatadir#:$GLOBALDIR:g" \
67 sed -e "s|\$HOME/GNUstep|$GSDIR|g" \
68 -e "s:#wmdatadir#:$GLOBALDIR:g" \
76 echo "Installing WindowMaker $VERSION for current user..."
79 if [ ! -d $GLOBALDIR ]; then
80 echo "Could not find global data files"
81 echo "Make sure you have installed Window Maker correctly"
85 if [ ! -d $GLOBALDEFDIR ]; then
86 echo "Could not find global configurations files"
87 echo "Make sure you have installed Window Maker correctly"
91 if [ ! -d "$USERDIR" ]; then
92 echo "Could not find user directory $USERDIR"
97 if test "x$GNUSTEP_USER_ROOT" = "x"; then
99 GSDIR
=$USERDIR/GNUstep
100 if [ ! -d $GSDIR ]; then
101 echo "Creating $GSDIR user directory"
105 GSDIR
=$GNUSTEP_USER_ROOT
106 if [ ! -d $GSDIR ]; then
107 echo "Directory specified in GNUSTEP_USER_ROOT environment variable does not exist"
115 if [ ! -d "$GSDIR/.AppInfo" ]; then
116 make_dir
$GSDIR/.AppInfo
119 if [ ! -d "$GSDIR/Defaults" ]; then
120 make_dir
$GSDIR/Defaults
123 echo "Copying defaults database..."
125 FILES
=`(cd $GLOBALDEFDIR;ls -d *)`
128 if [ ! -d $GLOBALDEFDIR/$i ]; then
129 if [ -f $GSDIR/Defaults
/$i -a -z "$BATCH" ]; then
130 echo "The configuration file \"$i\" already exists in your defaults database."
131 echo "Do you wish to replace it? <y/n/a> [n] $all"
132 if [ "$all" != "a" ]; then
134 if [ "$foo" = "a" -o "$foo" = "A" ]; then
138 if [ "$foo" = "y" -o "$foo" = "Y" -o "$all" = "a" ]; then
139 copy
$GLOBALDEFDIR/$i $GSDIR/Defaults
/$i
142 copy
$GLOBALDEFDIR/$i $GSDIR/Defaults
/$i
148 if [ ! -d "$GSDIR/Library/Icons/" ]; then
149 echo "Creating icon library directory $GSDIR/Library/Icons"
150 if [ ! -d $GSDIR/Library
]; then
151 make_dir
$GSDIR/Library
153 make_dir
$GSDIR/Library
/Icons
157 if [ ! -d "$GSDIR/Library/WindowMaker/" ]; then
158 echo "Creating WindowMaker data library directory $GSDIR/Library/WindowMaker"
159 if [ ! -d $GSDIR/Library
]; then
160 make_dir
$GSDIR/Library
162 make_dir
$GSDIR/Library
/WindowMaker
165 if [ ! -d "$GSDIR/Library/WindowMaker/Styles" ]; then
166 echo "Creating style library $GSDIR/Library/WindowMaker/Styles"
167 make_dir
$GSDIR/Library
/WindowMaker
/Styles
171 if [ ! -d "$GSDIR/Library/WindowMaker/Themes" ]; then
172 echo "Creating theme library $GSDIR/Library/WindowMaker/Themes"
173 make_dir
$GSDIR/Library
/WindowMaker
/Themes
178 if [ ! -d "$GSDIR/Library/WindowMaker/Backgrounds" ]; then
179 echo "Creating bg image library $GSDIR/Library/WindowMaker/Backgrounds"
180 make_dir
$GSDIR/Library
/WindowMaker
/Backgrounds
182 echo "Default Backgrounds directory already exists. Skipping..."
186 if [ ! -d "$GSDIR/Library/WindowMaker/IconSets" ]; then
187 echo "Creating icon setup library $GSDIR/Library/WindowMaker/IconSets"
188 make_dir
$GSDIR/Library
/WindowMaker
/IconSets
190 echo "Default IconSets directory already exists. Skipping..."
194 if [ ! -d "$GSDIR/Library/WindowMaker/Pixmaps" ]; then
195 echo "Creating pixmap library $GSDIR/Library/WindowMaker/Pixmaps"
196 make_dir
$GSDIR/Library
/WindowMaker
/Pixmaps
198 echo "Default Pixmaps directory already exists. Skipping..."
202 if [ ! -d "$GSDIR/Library/WindowMaker/Sounds" ]; then
203 echo "Creating sound library $GSDIR/Library/WindowMaker/Sounds"
204 make_dir
$GSDIR/Library
/WindowMaker
/Sounds
206 echo "Default Sounds directory already exists. Skipping..."
210 if [ ! -d "$GSDIR/Library/WindowMaker/SoundSets" ]; then
211 echo "Creating sound set library $GSDIR/Library/WindowMaker/SoundSets"
212 make_dir
$GSDIR/Library
/WindowMaker
/SoundSets
214 echo "Default SoundSets directory already exists. Skipping..."
218 if test -z "#LITE#" ; then
219 FILES
=`(cd $GLOBALDIR; ls menu menu.* plmenu plmenu.?? wmmacros)`
222 if [ -f "$GSDIR/Library/WindowMaker/$i" -a -z "$BATCH" ]; then
224 echo "The file \"$i\" already exists in $GSDIR/Library/WindowMaker"
225 echo "Do you wish to replace it? <y/n/a> [n] $all"
226 if [ "$all" != "a" ]; then
228 if [ "$foo" = "a" -o "$foo" = "A" ]; then
232 if [ "$foo" = "y" -o "$foo" = "Y" -o "$foo" = "a" ]; then
233 copy
$GLOBALDIR/$i $GSDIR/Library
/WindowMaker
/$i
236 copy
$GLOBALDIR/$i $GSDIR/Library
/WindowMaker
/$i
241 cp $GLOBALDIR/README.themes
$GSDIR/Library
/WindowMaker
242 cp $GLOBALDIR/README
$GSDIR/Library
/WindowMaker
244 test -f ~
$GSDIR/Library
/WindowMaker
/autostart || \
245 cp $GLOBALDIR/autostart.sh
$GSDIR/Library
/WindowMaker
/autostart
246 chmod +rx
$GSDIR/Library
/WindowMaker
/autostart
248 test -f ~
$GSDIR/Library
/WindowMaker
/exitscript || \
249 cp $GLOBALDIR/exitscript.sh
$GSDIR/Library
/WindowMaker
/exitscript
250 chmod +rx
$GSDIR/Library
/WindowMaker
/exitscript
253 if test -n "$BATCH" ; then
254 echo "Installation Finished"
261 #######################
268 echo "Installation Finished"
270 if test -z "#LITE#" ; then
271 echo "There are menus in 2 different file formats. The plain text format and"
272 echo "the property list format. The plain text format is more flexible, but"
273 echo "the menu in the property list format can be edited graphically. The"
274 echo "menu that will be used by default is the plain text. Read"
275 echo "$GSDIR/Library/WindowMaker/README for information on how to change it."
277 echo "Your copy of Window Maker is configured especially for KDE."
278 echo "Window Maker application menus are not available."
283 for xinit
in .xinitrc .Xclients .xsession
; do
284 test ! -f "$HOME/$xinit" && continue
285 res
="`grep wmaker $HOME/$xinit`"
286 if test "x$res" != x
; then
291 if test $wmaker_found = 1; then
292 echo "Found Window Maker to already be your default window manager."
298 trap "show_end_message;exit" 2
301 echo "Now the .xinitrc, .Xclients or .xsession script must be updated so that"
302 echo "it calls wmaker when you start an X session."
303 echo "Type the name of the file that must be changed (normally .xinitrc)."
304 echo "If the file already exists, it will be backed up with a .old.$DATE "
306 echo "If you want to edit it by hand, hit <Control>-C now."
309 if test "x$file" = "x"; then
310 echo "Using .xinitrc as a default value"
314 if [ -f $USERDIR/$file ]; then
315 mv $USERDIR/$file $USERDIR/$file.old.
$DATE
318 make_script
$USERDIR/$file