summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 3370191bcfce9b421fba7bd944958e2f40748c07 (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
50
51
52
53
54
55
56
57
# Maintainer: Dominic Giebert <dominic.giebert@gmail.com>
# Contributor: auroq <johansen.parker@gmail.com>

pkgname=rancher-desktop
pkgdesc='Rancher Desktop is an open-source project to bring Kubernetes and container management to the desktop'
pkgver=0.6.1
pkgrel=2
arch=('x86_64')
license=('MIT')
url='https://rancherdesktop.io/'
makedepends=('npm' 'nodejs' 'git' )
optdepends=('kubectl: Kubernetes control, can be downloaded from settings'
            'nerdctl-bin: Docker-compatible CLI for containerd'
            'helm: for Apps section, only useful if your deploy uses helm or plan to use it')
depends=('qemu')
source=("${pkgname}-${pkgver}::git+https://github.com/rancher-sandbox/rancher-desktop.git#branch=main")
sha256sums=('SKIP')

build() {
  cd "${pkgname}-${pkgver}"
  # Generate icons
  icon="resources/icons/logo-square-512.png"
  for size in 512x512 256x256 128x128 96x96 64x64 48x48 32x32 24x24 16x16; do
      mkdir "share/icons/hicolor/${size}/apps" -p
      convert -resize "${size}" "${icon}" "share/icons/hicolor/${size}/apps/${pkgname}.png"
  done

  # Remove Flatpak and appimage as they are not needed
  rm packaging/linux/appimage.yml
  rm packaging/linux/flatpak.yaml
  # https://github.com/rancher-sandbox/rancher-desktop#how-to-run
  npm install
  npm run build


}

package() {
  cd "${pkgname%-bin}-$pkgver"

  # Copy over the data
  install -d "$pkgdir/opt/${pkgname}"
  install -d "$pkgdir/usr/share/icons/hicolor/"
  cp -r dist/linux-unpacked/* "$pkgdir/opt/${pkgname}/"
  cp -r share/icons/hicolor/* "$pkgdir/usr/share/icons/hicolor/"

  # Add integration for desktop env
  install -d "$pkgdir/usr/share/applications/"
  install -d "$pkgdir/usr/share/metainfo"
  cp -r packaging/linux/rancher-desktop.desktop "$pkgdir/usr/share/applications/rancher-desktop.desktop"
  cp -r packaging/linux/rancher-desktop.appdata.xml "$pkgdir/usr/share/metainfo/rancher-desktop.appdata.xml"

  # Creating the symlink for better usage
  install -d "$pkgdir"/usr/bin/
  ln -sf /opt/${pkgname}/rancher-desktop ${pkgdir}/usr/bin/rancher-desktop
}