summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 8cb67cbbc15b8d5f05c2d1d66a72653700322a4b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# Maintainer: Mohammed El-sayed Ahmed <MohammedEl-sayedAhmed@users.noreply.github.com>
pkgname=clipman-clipboard
pkgver=1.2.0
pkgrel=1
pkgdesc="A clipboard history manager for Wayland (GNOME, KDE, Sway, Hyprland, etc.)"
arch=('any')
url="https://mohammedel-sayedahmed.github.io/clipman/"
license=('Apache-2.0')
depends=(
    'python>=3.10'
    'python-gobject'
    'python-dbus'
    'gtk4'
    'libadwaita'
    'wl-clipboard'
)
optdepends=(
    'gnome-shell: native clipboard monitoring via GNOME Shell extension'
)
_srcname=clipman
source=("$_srcname-$pkgver.tar.gz::https://github.com/MohammedEl-sayedAhmed/clipman/archive/v$pkgver.tar.gz")
sha256sums=('f000130f543b566ee24758fc3a3162c7dd32fa81d1e33e27913c0e516a57a926')

package() {
    cd "$srcdir/$_srcname-$pkgver"

    # Install Python package
    install -d "$pkgdir/opt/$_srcname"
    cp -r clipman clipman.py launcher.sh "$pkgdir/opt/$_srcname/"
    install -Dm644 clipman/style.css "$pkgdir/opt/$_srcname/clipman/style.css"

    # Install GNOME Shell extension
    local _extdir="$pkgdir/usr/share/gnome-shell/extensions/clipman@clipman.com"
    install -d "$_extdir"
    install -Dm644 extension/extension.js "$_extdir/extension.js"
    install -Dm644 extension/metadata.json "$_extdir/metadata.json"

    # Install desktop file (fix Exec path), icon, and systemd service
    sed "s|CLIPMAN_PATH_PLACEHOLDER|/opt/$_srcname|" data/com.clipman.Clipman.desktop \
        > "$srcdir/com.clipman.Clipman.desktop"
    install -Dm644 "$srcdir/com.clipman.Clipman.desktop" "$pkgdir/usr/share/applications/com.clipman.Clipman.desktop"
    install -Dm644 data/com.clipman.Clipman.svg "$pkgdir/usr/share/icons/hicolor/scalable/apps/com.clipman.Clipman.svg"
    install -Dm644 data/com.clipman.Clipman.metainfo.xml "$pkgdir/usr/share/metainfo/com.clipman.Clipman.metainfo.xml"
    install -Dm644 data/clipman.service "$pkgdir/usr/lib/systemd/user/clipman.service"

    # Install license
    install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
    install -Dm644 NOTICE "$pkgdir/usr/share/licenses/$pkgname/NOTICE"
}