What is MenuMaker?
MenuMaker is a menu generation utility for X window managers on *NIX systems. It is capable of finding lots of installed programs and generating a root menu consistent across all supported X window managers, so one will get (almost) the same menu no matter which window manager is used.
Compatibility
MenuMaker is a 100% Python application. The minimum required Python version is 2.7; it should also run on Python 3.
Availability
The latest tarballs can be obtained from the project’s download page.
Supported X window managers
Getting started
The easiest way is to get the source distribution, unpack it into a temporary directory and perform the usual sequence:
./configure && make && make install
It is not required however as MenuMaker runs off the source tree as well. The MenuMaker's command-line driver is called mmaker.
The simplest MenuMaker invocation form is as follows:
mmaker your_window_manager
This command employs all available algorithms to find all installed applications and dumps a fully usable and consistent menu into the specified window manager’s default menu file. For the full list of available options consult MenuMaker help:
mmaker --help
A few tips & hints
-
Verbosity is controlled via the -v option. Specify it twice to get tons of debug output. MenuMaker runs silently by default.
-
The default policy is not to overwrite any existing files so there is less chance of killing a valuable handcrafted menu. To force overwriting files use -f flag.
-
Default MenuMaker operation is to dump the menu to a WM-specific file inside the user’s home directory. Use -c flag to redirect this output to stdout. Useful for writing system-wide menus.
-
By default, MenuMaker generates a fully formed and usable menu. To get only the part containing the applications found use the -i flag. This output can be then #include’d into your custom frame menu. Note that this will not be a valid menu hence -c must also be specified (this is to forward the chunk elsewhere).
-
By default, MenuMaker tries to eliminate the paths to executables wherever possible (for example, when an application can be found in PATH). To suppress this and always retain full paths use -p flag. Useful for debugging.
-
To specify the terminal emulator to run console applications use -t flag.
-
Flags started with --no- disable specific search algorithms.
-
-s is used to specify unwanted categories to omit from menu.
-
MenuMaker can be run straight out of the unpacked tarball without installation.
-
Upon installation the local documentation is available in Texinfo form and can be accessed from command line as follows:
info mmaker
Feedback
Send your comments and suggestions to Oleg A. Khlybov <fougas@mail.ru>