Package Details: xdgmenumaker 1.4-1

Git Clone URL: (read-only)
Package Base: xdgmenumaker
Description: xdgmenumaker creates generating menus using xdg information for blackbox, compizboxmenu, fluxbox, icewm, jwm, pekwm and windowmaker.
Upstream URL:
Licenses: GPLv3
Submitter: Gaming4JC
Maintainer: Gaming4JC
Last Packager: Gaming4JC
Votes: 3
Popularity: 0.129868
First Submitted: 2016-03-02 01:16
Last Updated: 2017-02-19 18:20

Latest Comments

dreieck commented on 2018-01-28 09:54

What is 'whirlpoolsums' for? The executable that whould check for them is provided in the package 'rhash'. And makepkg also does a "Validating source files with whirlpoolsums...". So, rhash needs to be part of makedepends, right? Please add.

dreieck commented on 2018-01-28 09:42

You have a problem in the package()-function.

When I want to install the build package, it bails ot at "checking for file conflicts" with "conflicting files":

xdgmenumaker: /usr/local/share/man exists in filesystem

.. well, two points:

(1) it should silently suceed and write into that directory if the user has already created it. I have it a symlink to /usr/local/man. Since /usr/local does not strictly follow standards, a package wanting to install there needs to accept what the user already did and needs to also write into symlink-dirs. It should only bail out if something would be really overwritten (I think that here the installation would remove the symlink and create a directory, which of course it should not do; instead it should write into the directory specified by the symlink).

But, more general, installing into /usr/local is a bad idea at all, see (2):

(2) Since /usr/local is somehow arbitrary with the content, and packages installed with official packaging tools should not install there: Change the PKGBUILD to not install in /usr/local.

Also a quick check with namcap on the built package would have revealed the issue ('xdgmenumaker W: File (usr/local/share/man/man1/xdgmenumaker.1.gz) exists in a non-standard directory.', 'xdgmenumaker W: File (usr/local/share/desktop-directories/ exists in a non-standard directory.' and such).

The '' provided with the package states how to do it properly: Set PREFIX=/usr to the 'make install'-command. This solves all those problems, and you also can remove then your added '## begin fix for depreciated /usr/local install location ##'-section in the PKGBUILD, as well as the 'mkdir -p $pkgdir/usr/local/share/desktop-directories'-line.

Please correct.

For your simplicity, I provided a patch for the current PKGBUILD:

.. it fixes also a few other smaller issues: "license" should be "GPL3", not "GPLv3"; making indentation consistent (same width, and not a mixture of tabs and spaces), removing $pkgname from the description.

And the patch adds a few more optional things: Installs the 'ASCII' information files provided by upstream to /usr/share/doc/xdgmenumaker, and adds a check()-function which invokes make test. And also adds 'rhash' to 'makedepends', because 'whirlpoolsums=' are defined.