layout-switcher-package/PKGBUILD

90 lines
3.1 KiB
Bash

# Maintainer: TROM <contact@tromsite.com>
pkgname=tromjaro-layout-switcher
pkgver=2
pkgrel=3
pkgdesc="TROMjaro Layout switcher application"
arch=('x86_64')
url="https://git.trom.tf/TROMjaro/layout-switcher-package"
license=(unknown)
depends=('xfce4-panel-profiles'
'vala-panel-appmenu-registrar-git'
'util-linux'
'xfconf'
'polkit'
'mate-hud'
'psmisc'
'pacman'
'coreutils'
'vala-panel-appmenu-xfce-git'
'libdbusmenu-gtk2'
'appmenu-gtk-module')
makedepends=('choosenim')
provides=('tromjaro-layout-switcher')
backup=()
options=(!strip)
source=("layoutSwitcher.nim"
"toggleGlobalMenu.nim"
"sharedModule.nim"
"tromjaro-layout-switcher.desktop"
"com.tromjaro.LayoutSwitcher.policy"
"disable-global-menu.hook"
"tromjaro-layout-switcher.svg"
"icons.zip::https://www.drive.tromsite.com/s/SWmAcokLcxLB3gM/download"
"profiles.zip::https://www.drive.tromsite.com/s/6dHoNjar9wJzeLd/download")
sha256sums=('SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP')
prepare() {
# Disable telemetry in choosenim if user is running it for the first time
[ -f "$HOME"/.choosenim/analytics ] || {
mkdir -p "$HOME"/.choosenim
touch "$HOME"/.choosenim/analytics
}
echo 'Install Nim if not already installed:'
choosenim stable
echo 'Update Nim to the latest stable release:'
choosenim update stable
echo 'Refresh nimble package list:'
"$HOME"/.nimble/bin/nimble --nim:"$HOME"/.nimble/bin/nim refresh
echo 'Install owlkettle from the latest git commit:'
"$HOME"/.nimble/bin/nimble --nim:"$HOME"/.nimble/bin/nim install owlkettle
}
build(){
echo 'Compile layoutSwitcher.nim for release build:'
"$HOME"/.nimble/bin/nim c -d:release --out:${srcdir}/layoutSwitcher ${srcdir}/layoutSwitcher.nim
echo 'Compile toggleGlobalMenu.nim for release build:'
"$HOME"/.nimble/bin/nim c -d:release --out:${srcdir}/toggleGlobalMenu ${srcdir}/toggleGlobalMenu.nim
}
package() {
# copy icons
install -d ${pkgdir}/usr/share/tromjaro-layout-switcher/icons
install -Dm644 ${srcdir}/icons/* ${pkgdir}/usr/share/tromjaro-layout-switcher/icons
# copy profiles
install -d ${pkgdir}/usr/share/tromjaro-layout-switcher/profiles
install -Dm644 ${srcdir}/profiles/* ${pkgdir}/usr/share/tromjaro-layout-switcher/profiles
# copy pacman hook file
install -Dm644 ${srcdir}/disable-global-menu.hook ${pkgdir}/usr/share/tromjaro-layout-switcher
# copy executables
install -d ${pkgdir}/usr/share/applications
install -Dm644 ${srcdir}/tromjaro-layout-switcher.desktop ${pkgdir}/usr/share/applications
install -Dm755 ${srcdir}/layoutSwitcher ${pkgdir}/usr/bin/tromjaro-layout-switcher
install -Dm755 ${srcdir}/toggleGlobalMenu ${pkgdir}/usr/bin/toggle-global-menu
# copy polkit action
install -d ${pkgdir}/usr/share/polkit-1/actions
install -Dm644 com.tromjaro.LayoutSwitcher.policy ${pkgdir}/usr/share/polkit-1/actions
# copy desktop icon
install -d ${pkgdir}/usr/share/icons/hicolor/scalable/apps
install -Dm644 ${srcdir}/tromjaro-layout-switcher.svg ${pkgdir}/usr/share/icons/hicolor/scalable/apps
}