cross-posted from: https://lemmy.ml/post/53225512

I want to create and upload an AUR package. For context, I did that years ago for specific releases, but now I want to create a new package that focuses on upstream Git without specific releases.

What do I write to the pkgver= value? Do I just take the latest version there? Because it is downloading with git clone the version number will not change and the PKGBUILD script will compare pkgver() instead. So what is the purpose of pkgver= for when downloading and building from Git directly? Looking at examples from other existing packages, they all have a number there. But its mostly outdated, so I don’t get it.

pkgname=thename-git
_pkgname="$(pkgname%-git}"
pkgver=???

pkgver() {
    cd "${_pkgname}"
    git describe --long | sed 's/\([^-]*-g\)/r\1/'
}

I am reading and researching, but need some assistance for this question. Currently reading the Archwiki:

  • thingsiplay@lemmy.mlOP
    link
    fedilink
    arrow-up
    1
    ·
    17 days ago

    I understand that. But I don’t understand why everyone else has an outdated version number. I felt like I’m missing something here. Maybe its just a placeholder that is completely ignored with -git packages then.

    • BB_C@programming.dev
      link
      fedilink
      arrow-up
      3
      ·
      17 days ago

      But I don’t understand why everyone else has an outdated version number.

      Who are you talking about? If it’s AUR uploaders, the version you see is the version in the last uploaded PKGBUILD. AUR itself doesn’t build anything. And PKGBUILD uploaders don’t need to keep uploading to bump the version because it auto-updates when a user builds it. They only need to upload to fix builds if they get broken, or update meta info, …etc.

      git (vcs in general) packages always update unless you pass --holdver with makepkg.

      And just to be clear, that relates to git sources not the package name. The -git naming is just a convention that has no bearing on functionality.

      Maybe its just a placeholder

      Mostly yes. You can just put “0” or “1” initially. Build once, and it will be populated anyway.