Package Details: mympd 6.8.0-2

Git Clone URL: https://aur.archlinux.org/mympd.git (read-only, click to copy)
Package Base: mympd
Description: A standalone and lightweight MPD web client.
Upstream URL: https://github.com/jcorporation/myMPD
Licenses: GPL2
Submitter: L0ric0
Maintainer: L0ric0
Last Packager: L0ric0
Votes: 2
Popularity: 1.26
First Submitted: 2020-07-08 19:47
Last Updated: 2020-11-22 22:29

Latest Comments

L0ric0 commented on 2020-11-22 21:56

@m040601 you can split dependency's for compiled programs into two categories.

  1. build time dependencies. These are only needed when the program is build and afterwards can be removed. (jre-openjdk-headless falls into this category)
  2. runtime dependencies. These are needed at runtime (and often also at build time). That are things like precompiled libraries that multiple programs use, but only one version has to be on your system.

The problem with jre-openjdk-headless is, that it is needed only at build time and can be removed after this (and should be as you pointed out that they are quite big). On the other hand in a PKGBUILD you can define the following dependencies: optdepends, depends and makedepends.

  • depends: dependencies that are needed at runtime.
  • makedepends: dependencies that are only needed at buildtime
  • optdepends: dependencies that are optional, but these ones are kept as runtime dependencies and persist after the build of the package.

As you can see one can either have optional deps that stay after the build or have build deps that are always needed and are removed after the build.

Obviously you can manually uninstall the dependency after building the package but that would pretty much brake the behavior of aur-helpers, that install the makedeps only for the build and uninstall them afterwards.

So both (makedepends and optdepends) have problems, but i will change it to be in the optdepends so that it isn't needed to download such a large package.

m040601 commented on 2020-11-19 22:08

new version v680 with many changes.

L0ric0 commented on 2020-07-10 07:16

jre-openjdk-headless ... i could put it in optdepends

I'm sorry, I'm not very familiar with all the PKGBUILD options. But I didnt really understand why it's not in the optdepends. Could you explain it in other words ?

It is, really, very optional, it's only there to minimize files https://github.com/jcorporation/myMPD :

Build Dependencies
cmake >= 3.4
libasan3: for debug builds only
Java: to minify files (optional)
Perl: to create translation files

L0ric0 commented on 2020-07-10 07:16

jre-openjdk-headless is an optional make dependency. i could put it in optdepends but than people using a aur-helper, that uninstalls the makedepends after installation are stuck with it. Or i could stick a comment in the PKGBUILD as that should always be reviewed before building.

m040601 commented on 2020-07-09 22:19

Thank you so much for providing this PKGBUILD.

Are these (make) dependencies:

extra/java-runtime-common
extra/jre-openjdk-headless

really indispensible ? Is there no other way to build this package in Arch Linux (x86 or Raspberry ARM) without installing first these 225MBs ?