Hi,

I'm looking for uploading moolticute[0] into AUR but I still have some
doubt that my package has good taste or not. The project is in C++ and
use qt-5.
I would like to upload a classical PKGBUILD[1] (with tag release) then
one that follow the git master branch[2].
As the daemon is expected to talk with an USB device I included an
udev rules that should match it and allow logged user interaction.
In addition, the project does not include any systemd service
file. The daemon is expected to run for every user session so I use
systemd user instance. This service file is now very basic I will
first try to make it upstream, so every distribution could benefit
from this eventually. I guess that a lot are using systemd now.

While creating the systemd file I was wonderering how would be the
guideline in a case that an upstream systemd service file won't match
(for any reason) Arch Linux policy (let say applying it will break
the package functionality in Arch) would the good way to fix it in the
first would be to create in the PKGBUILD a systemd drop-ins?

Regarding udev, after installing my rule I decided to force reloading
the rules files but not replaying event (only print a message to warn
the user). My view is that the later would only be needed for people
that already plugged the device before installing the package.

Even with the i686 phase out, the tools seems to work great with this
architecture, so I included it too.

Finally, the release name[3] currently include "beta" (like v0.5.2-beta)
does I have to put this into the pkgver or leave as 0.5.2?

If comments/directions I will be glad to improve my work.

Thanks !

[0] https://github.com/raoulh/moolticute
[1] 
https://git.bourgeois.eu/aur_moolticute.git/tree/PKGBUILD?id=85e4d6f29352a54d85c00f3dfd2c5f1fef052811
[2] 
https://git.bourgeois.eu/aur_moolticute_git.git/tree/PKGBUILD?id=140f3e3efceacf5ca24d2a77c04458a80d998c8a
[3] https://github.com/raoulh/moolticute/releases
# Maintainer: Quentin Bourgeois <[email protected]>

pkgname=moolticute
pkgver=0.5.2
pkgrel=1
pkgdesc="Easy companion for Mooltipass device"
arch=('x86_64' 'i686')
url="https://github.com/raoulh/${pkgname}";
license=('GPL3')

depends=('libusb'
         'qt5-base'
         'qt5-websockets')

makedepends=('make')
checkdepends=()
optdepends=()
install="${pkgname}.install"

source=("${pkgname}-${pkgver}.tar.gz::${url}/archive/v${pkgver}-beta.tar.gz"
        '69-mooltipass.rules'
        'moolticute.service')
sha256sums=('a22d4078870da77affb67c7eae2d2cc426ec799a0928f494df32ab995431fe8a'
           'e8e8da3f29d27e34a9f41b23ba04b74dbf25bcc7d586e5b6d2ee72bade889503'
           '135d7dda3698872745bec79fa2ee7a964fa2fbc90f90d1d57e034bc0104ce13a')

build() {
        cd "${pkgname}-${pkgver}-beta"

        mkdir build
        cd build/

        qmake-qt5 ../Moolticute.pro                     \
                  PREFIX=/usr                           \
                  QMAKE_CFLAGS_RELEASE="${CFLAGS}"      \
                  QMAKE_CXXFLAGS_RELEASE="${CXXFLAGS}"

        make
}

package() {
        cd "${pkgname}-${pkgver}-beta/build/"

        make INSTALL_ROOT="${pkgdir}/" install
        install -Dm644 "${srcdir}/69-mooltipass.rules" \
                "${pkgdir}/usr/lib/udev/rules.d/69-mooltipass.rules"
        install -Dm644 "${srcdir}/moolticute.service" \
                "${pkgdir}/usr/lib/systemd/user/moolticute.service"
}
# Maintainer: Quentin Bourgeois <[email protected]>

pkgname=moolticute-git
_pkgname="${pkgname%-git}"
pkgver=0.5.2.r0.g9486816
pkgrel=1
pkgdesc="Easy companion for Mooltipass device"
arch=('x86_64' 'i686')
url="https://github.com/raoulh/${_pkgname}";
license=('GPL3')
provides=("${_pkgname}")
conflicts=("${_pkgname}")
depends=('libusb'
         'qt5-base'
         'qt5-websockets')

makedepends=('git'
             'make')
checkdepends=()
optdepends=()
install="${_pkgname}.install"

source=("git+${url}.git"
        '69-mooltipass.rules'
        'moolticute.service')
sha256sums=('SKIP'
            'e8e8da3f29d27e34a9f41b23ba04b74dbf25bcc7d586e5b6d2ee72bade889503'
            '135d7dda3698872745bec79fa2ee7a964fa2fbc90f90d1d57e034bc0104ce13a')

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

build() {
        cd "${srcdir}/${_pkgname}"

        mkdir build
        cd build/

        qmake-qt5 ../Moolticute.pro                     \
                  PREFIX=/usr                           \
                  QMAKE_CFLAGS_RELEASE="${CFLAGS}"      \
                  QMAKE_CXXFLAGS_RELEASE="${CXXFLAGS}"

        make
}

package() {
        cd "${srcdir}/${_pkgname}/build/"

        make INSTALL_ROOT="${pkgdir}/" install
        install -Dm644 "${srcdir}/69-mooltipass.rules" \
                "${pkgdir}/usr/lib/udev/rules.d/69-mooltipass.rules"
        install -Dm644 "${srcdir}/moolticute.service" \
                "${pkgdir}/usr/lib/systemd/user/moolticute.service"
}

Attachment: signature.asc
Description: PGP signature

Reply via email to