- Install from repos
- Build and install in $HOME directory
- System wide installation
- Build a Debian package
- Dependencies
- Build Options
This is for users who:
- wish to use/test a feature/fix which is not yet in the latest version in their repo.
- wish to experiement with the code or contribute code
- use a distro without jgmenu in their repo and run a single-user system
- do not like to or are not permitted to use sudo
git clone https://github.com/johanmalm/jgmenu.git
cd jgmenu
./configure --prefix=$HOME --with-lx --with-pmenu
make
make install
Make sure you have $HOME/bin
in your $PATH
.
If you have another version of jgmenu installed on your system, please run hash -r
and then type jgmenu
to make sure the correct one will be launched
The Makefile contains an uninstall target. As I am not brave enough to write 'sudo rm -rf...', it only works when prefix=$HOME. It is advisable to use a package manager for installations outside of the $HOME directory.
To uninstall jgmenu, run
make uninstall
For subsequent updates, do:
make uninstall
make clean
git pull
make
make install
By default, make install
installs jgmenu to /usr/local/{bin,lib/jgmenu,share/man}
Use ./configure --prefix
to specify a different target location. For example:
./configure --prefix=/usr
sudo make install
A debian package can be built as follows:
dpkg-buildpackage -tc -b -us -uc
Then install the .deb package with
sudo dpkg -i ../jgmenu_<whatever>.deb
- jgmenu
required:
- libx11, libxrandr, cairo, pango, glib-2.0
optional:
- librsvg-2.0
-
apps
- Nothing - not even a menu package :)
-
ob
- libxml2
-
lx
- glib-2.0, libmenu-cache (>=1.1.0)
- A
menu package
such as lxmenu-data or gnome-menus. Xfce's libgarcon-common does not yet work with lx.
-
pmenu
- python3
- A
menu package
is optional. If none is installed, all applications will be shown in the menu's root directory.
-
xfce-panel
- xfce4-panel
-
A Composite Manager such as
compton
is required to enable transparency. Most Desktop Environments already have one installed. -
To build the man pages, you need to have
pandoc
installed. However, as many users do not have this package, the man pages are commited in the git repo (i.e. you only need pandoc if you want to contribute to or change the man pages.)
In addition to prefix
, there are a number of build variables which can be defined. Run ./configure --help
for further details.