Package Details: deadbeef-git r11509.b6c2bc326-1

Git Clone URL: https://aur.archlinux.org/deadbeef-git.git (read-only, click to copy)
Package Base: deadbeef-git
Description: A GTK+ audio player for GNU/Linux (devel branch)
Upstream URL: https://deadbeef.sourceforge.io/
Licenses: GPL2, zlib, LGPL2.1
Conflicts: deadbeef
Provides: deadbeef
Submitter: archtux
Maintainer: ToadKing
Last Packager: ToadKing
Votes: 121
Popularity: 0.096706
First Submitted: 2009-08-21 13:16 (UTC)
Last Updated: 2023-11-11 22:15 (UTC)

Required by (41)

Sources (1)

Latest Comments

1 2 3 4 5 6 .. 11 Next › Last »

dreieck commented on 2024-04-11 15:26 (UTC)

License specifiers need to be made SPDX-compliant. From a namcap run:

deadbeef-git E: The SPDX license statement 'ZLIB' should be formatted as 'Zlib' instead
deadbeef-git E: GPL2 is not a valid SPDX license identifier. See https://spdx.org/licenses/ for valid identifiers, or prefix the identifier with 'LicenseRef-', if it is custom.
deadbeef-git E: LGPL2.1 is not a valid SPDX license identifier. See https://spdx.org/licenses/ for valid identifiers, or prefix the identifier with 'LicenseRef-', if it is custom.

Also,

deadbeef-git E: Dependency alsa-lib specified in both depends and optdepends

-- maybe you want to have it in makedepends and optdepends instead of depends and optdepends?

If it is a hard dependency, then please have it in depends only.

Regards!

dreieck commented on 2023-09-23 10:25 (UTC)

using only the revision numbers is fine, it has been discussed here before with you https://aur.archlinux.org/packages/deadbeef-git?O=10#comment-852214

OK!, since it seems to be the wish of upstream developers.

Regards!

FabioLolix commented on 2023-09-22 19:42 (UTC)

@dreieck using only the revision numbers is fine, it has been discussed here before with you https://aur.archlinux.org/packages/deadbeef-git?O=10#comment-852214 (in my personal pkgbuild instead I have 1.9.5.r136.g1d9fd5abf now)

Your pkgver (1.9.5+136.r11421.20230915.1d9fd5abf) is IMO over-engineered, tag+revs + total revs + date, not what is suggested to do

provides=("deadbeef=${pkgver}")

Don't seem useful for this pkgbuild


Also sorry for not replying to previous post

    @dreieck the for a pkgver that use git tags can be simply used:

        git describe --long --tags | sed 's/^v//;s/([^-]*-g)/r\1/;s/-/./g'

    Which give:

        pkgver=1.8.8.r760.ge2d06eb99

Does that guarantee monotoneously increasing version numbers?

git describe --long --tags [...] is enough until upstream badly mess with tags, then bumping epoch and moving on is fine

dreieck commented on 2023-09-22 19:27 (UTC) (edited on 2023-09-22 19:39 (UTC) by dreieck)

Ahoj,

the ↗ Arch Linux VCS packaging guidelines say that when a VCS software has an official version number available, then that should be used in the first part of $pkgver:

It is recommended to have following version format: RELEASE.rREVISION [...]. If there are public releases but repository has no tags then the developer should get the release version somehow e.g. by parsing the project files.

deadbeef-git has a "RELEASE" version available (1.9.5+136 or 1.9.6 currently, depending on the source):

  • grep -m1 -E '^[[:space:]]*[Vv]ersion[[:space:]]+[0-9]+' ChangeLog | awk '{print $2}': 1.9.6
  • git describe --tags: 1.9.5-136-g1d9fd5abf

So can you please change pkgver() to reflect that?

e.g.:

pkgver() {
  cd "${srcdir}/deadbeef"

  _ver="$(git describe  --tags | sed 's|^vV||' | sed 's|-g[0-9a-fA-F]*$||' | tr '-' '+')"
  # _ver="$(grep -m1 -E '^[[:space:]]*[Vv]ersion[[:space:]]+[0-9]+' ChangeLog | awk '{print $2}')"
  _rev="$(git rev-list --count HEAD)"
  _date="$(git log -1 --date=format:"%Y%m%d" --format="%ad")"
  _hash="$(git rev-parse --short HEAD)"

  if [ -z "${_ver}" ]; then
    error "Version could not be determined."
    return 1
  else
    printf '%s' "${_ver}.r${_rev}.${_date}.${_hash}"
  fi
}

which currently yields 1.9.5+136.r11421.20230915.1d9fd5abf (of course you can also skip the .${_date} part, then the suggested pkgver() would yield your current versioning scheme, prepended with the upstream version. Latest commit date is only a convenience to easily see how old the currently installed version is.).

After having done so, you can also use an automativally always correctly versioned provides entry:

provides=("deadbeef=${pkgver}")

Regards and thanks for maintaining!