summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 06a2c018355d1e2e17149f79e4ffb960b7580b48 (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
# Maintainer: CPT_Dawn <dawnsp0456@gmail.com>
pkgname=arch-sense
pkgver=1.3.2
pkgrel=1
pkgdesc="Acer Predator PH16-71 control center for Arch Linux — thermal profiles, fan control, battery management, and keyboard RGB via a Rust TUI"
arch=('x86_64')
url="https://github.com/CPT-Dawn/Arch-Sense"
license=('MIT')
depends=('libusb' 'gcc-libs' 'glibc')
makedepends=('cargo' 'git')
optdepends=(
  'nvidia-utils: GPU temperature monitoring via nvidia-smi'
  'linuwu-sense-dkms: kernel module for sysfs hardware controls'
)

install=arch-sense.install

source=("arch-sense-1.3.2.tar.gz::https://github.com/CPT-Dawn/Arch-Sense/archive/refs/tags/v1.3.2.tar.gz")
sha256sums=('1858e8386a6bd36279e440ab60de1b1a3c6bb104b7433aa8c62f280f09cf4f4a')

prepare() {
  cd "Arch-Sense-${pkgver}"
  cargo fetch --locked --target "$(rustc -vV | sed -n 's/host: //p')"
}

build() {
  cd "Arch-Sense-${pkgver}"
  export CARGO_TARGET_DIR=target
  cargo build --frozen --release --all-features
}

check() {
  cd "Arch-Sense-${pkgver}"
  cargo test --frozen --all-features
}

package() {
  cd "Arch-Sense-${pkgver}"

  install -Dm755 "target/release/arch-sense" "${pkgdir}/usr/bin/arch-sense"
  install -Dm644 "arch-sense.service" "${pkgdir}/usr/lib/systemd/system/arch-sense.service"
  install -Dm644 "LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
  install -dm755 "${pkgdir}/var/lib/arch-sense"

  echo "d /var/lib/arch-sense 0755 root root -" | \
    install -Dm644 /dev/stdin "${pkgdir}/usr/lib/tmpfiles.d/arch-sense.conf"
}