Hi Dan,

attached are 3 patches to enable support for changing the hard coded
icon directory (~/.fvwm/icons).

Patches for:
fvwm-menu-desktop: add option --mini-icon-dir
fvwm-menu-desktop.1: add description for new option in manpage
fvwm-menu-desktop-config.fpl: add possibility to change the directory.
Also 2 new desktops in the weighting list: cinnamon and mate
These 2 "desktops" have own menus in new LinuxMint and without them in the
list they will added as "others" to the menu list and get a check mark.

Why the new option --mini-icon-dir:
because fvwm-crystal for example has its own home diretory
(~/.fvwm-crystal). If no ~/.fvwm folder exist fvwm-menu-desktop can't
create the icons. So no icons appear in the menus.

Hope you would apply these patches before release 2.6.6. Would be great.

thanks,
Thomas
--- fvwm-menu-desktop.in.orig	2012-09-01 15:39:01.300694794 +0200
+++ fvwm-menu-desktop.in.py	2012-09-01 15:39:25.284998706 +0200
@@ -98,7 +98,7 @@
         opts, args = getopt.getopt(sys.argv[1:], "hs:t:vw",
                                    ["help", "verbose", "enable-mini-icons", "with-titles", "version",
                                     "desktop=", "size=", "theme=", "install-prefix=", "menu-type=",
-                                    "title=", "get-menus=", "set-menus=", "insert-in-menu="]+obs_args+equaled_obs_parms)
+                                    "title=", "get-menus=", "set-menus=", "insert-in-menu=", "mini-icon-dir="]+obs_args+equaled_obs_parms)
     except getopt.GetoptError, err:
         # print help information and exit:
         print str(err) # will print something like "option -a not recognized"
@@ -106,7 +106,7 @@
         sys.exit(2)
     global verbose, force, size, theme, icon_dir, top, install_prefix, menu_type, menu_list_length 
     global with_titles, menu_entry_count, get_menus, timestamp, set_menus, printmode, insert_in_menu
-    version = "2.0"
+    version = "2.1"
     verbose = False
     force = False
     desktop=''
@@ -152,6 +152,8 @@
                 sys.exit(1)
         elif o in ("-s","--size") :
             size = int(a)
+        elif o in ("--mini-icon-dir") :
+            icon_dir = a
         elif o in ("--set-menus") :
             if a[-1] == ' ':
                 a = a[:-1]
@@ -267,7 +269,7 @@
 		    # first the desktops, then debian (shouldn't appear in others) then others holding
 		    # all other non DE menus e.g. tools and at the end the nones without prefixes
 		    # If there're other prefixes from other WMs - should be added BEFORE debian
-            DEs = ['gnome', 'kde', 'xfce', 'lxde', 'debian', 'others', 'none']
+            DEs = ['gnome', 'kde', 'xfce', 'lxde', 'cinnamon', 'mate', 'debian', 'others', 'none']
         else:
             DEs = [desktop]
         for de in DEs:
@@ -522,6 +524,7 @@
     -w, --with-titles         generate menus with titles.
     --enable-mini-icons       enable mini-icons in menu
     -s, --size NUM            set size of mini-icons in menu. Default is 24.
+    --mini-icon-dir           set directory for mini-icons. Default is ~/.fvwm/icons.
     -t, --title NAME          menu title of the top menu used by Popup command.
                               Default is FvwmMenu
     --insert-in-menu NAME     generates a menu to place it in the root level of the

--- fvwm-menu-desktop.1.in.orig	2012-09-01 15:42:01.515020792 +0200
+++ fvwm-menu-desktop.1	2012-09-01 15:43:49.324455203 +0200
@@ -30,6 +30,7 @@
 [ \fB\-\-with\-titles\fR|\fB\-w\fR ]
 [ \fB\-\-enable\-mini\-icons\fR ]
 [ \fB\-\-size\fR|\fB\-s\fR \fINUM\fR ]
+[ \fB\-\-mini\-icon\-dir\fR|\fB\-t\fR \fIDIR\fR ]
 [ \fB\-\-title\fR|\fB\-t\fR \fINAME\fR ]
 [ \fB\-\-insert\-in\-menu\fR \fINAME\fR ]
 [ \fB\-\-get\-menus\fR \fIall\fR|\fIdesktop\fR ]
@@ -117,8 +118,9 @@
 .IP "\fB\-\-enable\-mini\-icons\fR"
 This option enables mini\-icons in the menus. If set, 24x24 mini-icons
 are used. If the specified icon isn't that size it will be converted
-if \fBImageMagick\fR is installed and saved in $HOME/.fvwm/icons.
-Otherwise no icon appears in the menu for that entry.
+if \fBImageMagick\fR is installed and saved in $HOME/.fvwm/icons or to
+the folder specified with \-\-mini\-icon\-dir option. Otherwise no icon
+appears in the menu for that entry.
 With most distributions, all the menu entries will have mini-icons
 appropriate to the application.
 
@@ -126,6 +128,9 @@
 If \-\-enable\-mini\-icons is used the \fIsize\fR of the icons can
 changed with this parameter. Default is 24.
 
+.IP "\fB\-\-mini\-icon\-dir\fR \fIDIR\fR"
+fvwm-menu-desktop converts icons to $HOME/.fvwm/icons. If another target
+is needed use this option.
 
 .SH USAGE
 Without any parameters \fBfvwm-menu-desktop\fR creates a menu named

--- fvwm-menu-desktop-config.fpl.orig	2012-09-01 15:45:03.461458185 +0200
+++ fvwm-menu-desktop-config.fpl	2012-09-01 15:13:17.098547278 +0200
@@ -100,6 +100,11 @@
 *${modname}: Input 	Size 2 \"\"
 *${modname}: Text 	\" (in pixels. Default is 24)
 
+*${modname}: Line 	left
+*${modname}: Text 	\"Used Icon directory:      \"
+*${modname}: Input 	IconDir 25 \"~/.fvwm/icons\"
+*${modname}: Text 	\" (Directory for converted icons)\"
+
 *${modname}: Line		Left
 *${modname}: Text         \"Use Titles in Menus?      \"
 *${modname}: Selection    SelItype single
@@ -172,6 +177,7 @@
 \$(Size\?-s \$(Size) )\\
 \$(TitlesOn\?--with-titles )\\
 \$(InsertOn\?--insert-in-menu \$(InMenu) )\\
+\$(IconDir\?--mini-icon-dir \$(IconDir) )\\
 \$(Title\?--title \$(Title) )\\
 \$(Installprefix\?--install-prefix \$(Installprefix) )\\
 \$(Desktop\?--desktop \$(Desktop) )\\
@@ -225,6 +231,7 @@
   '*${modname}Default: Desktop	\$(Desktop) '		; /bin/echo \\
   '*${modname}Default: Menutype	\$(Menutype) '		; /bin/echo \\
   '*${modname}Default: Path      	\$(Path) '		; /bin/echo \\
+  '*${modname}Default: IconDir      	\$(IconDir) '		; /bin/echo \\
   '*${modname}Default: MultiOn 	\$(MultiOn\?on) '	; /bin/echo \\
   '*${modname}Default: MultiOff	\$(MultiOff\?on) '	\\
 ) >> \$FVWM_USERDIR/.${modname}

Reply via email to