summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 1dd0068a092121dcd0357ddcd7c23884c8ddb098 (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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
# Mantainer: Daniele Basso <d dot bass05 at proton dot me>
# Contributor: Fredy GarcĂ­a <frealgagu at gmail dot com>
# Contributor: Philip Goto <philip.goto@gmail.com>, WithTheBraid <the-one@with-the-braid.cf>

pkgname=('flutter-light-common' 'flutter-light-android-arm' 'flutter-light-android-arm64' 'flutter-light-android-x86' 'flutter-light-android-x64' 'flutter-light-web' 'flutter-light-linux')
pkgbase=flutter-light
_pkgname=flutter
pkgver=3.7.3
pkgrel=1
makedepends=("python")
optdepends=("android-sdk" "android-studio" "intellij-idea-community-edition" "intellij-idea-ultimate-edition" "ninja" "perl" "python")

arch=("x86_64" "aarch64")
url="https://${_pkgname}.dev"
license=("custom" "BSD" "CCPL")
options=("!emptydirs")
source=(
  "${_pkgname}-${pkgver}.tar.xz::https://storage.googleapis.com/flutter_infra_release/releases/stable/linux/${_pkgname}_linux_${pkgver/.hotfix/+hotfix}-stable.tar.xz"
  "${_pkgname}.sh"
  "${_pkgname}.csh"
)

sha256sums=('7b3d2900ce0e367d73d85591d5d43a11f94a223278dd3220776b03a83e234865'
            '1dea1952d386c43948b9970382c2da5b65b7870684b8ad2ad89124e873aa485a'
            '7ef10d753cfaac52d243549764a793f44f8284a1f4b11715ccd2fa915b026a6f')

build() {
  rm -rf "${srcdir}/${_pkgname}/bin/cache/"
  #sed -i "s/\$FLUTTER_ROOT\/bin\/cache\/dart-sdk/\/opt\/dart-sdk/g" "${srcdir}/${_pkgname}/bin/internal/shared.sh"
  sed -i "/\"\$FLUTTER_ROOT\/bin\/internal\/update_dart_sdk.sh\"/d" "${srcdir}/${_pkgname}/bin/internal/shared.sh"
  mkdir -p "${srcdir}/${_pkgname}/bin/cache/"
  rm -rf ${srcdir}/${_pkgname}/bin/cache/{dart-sdk,engine.stamp}
  ln -sf "/opt/dart-sdk" "${srcdir}/${_pkgname}/bin/cache/dart-sdk"
  ln -s "${srcdir}/${_pkgname}/bin/internal/engine.version" "${srcdir}/${_pkgname}/bin/cache/engine.stamp"
  "${srcdir}/${_pkgname}/bin/flutter" precache
}

package_flutter-light-common() {
  provides=(flutter)
  conflicts=(flutter)
  depends=("git" "glu" "java-environment>=8" "libglvnd" "unzip" "dart" "flutter-light-android-arm64" "dart")
  arch=("x86_64" "aarch64")
  backup=("opt/${_pkgname}/packages/${_pkgname}_test/pubspec.yaml" "opt/${_pkgname}/packages/${_pkgname}/pubspec.yaml")
  pkgdesc="A new mobile app SDK to help developers and designers build modern mobile apps for iOS and Android. Using the dart package provided by Arch devs (slower updates)"
  install="${pkgbase}.install"
  
  install -Dm644 "${srcdir}/${_pkgname}/LICENSE" "${pkgdir}/usr/share/licenses/${_pkgname}/LICENSE"
  install -Dm755 "${srcdir}/${_pkgname}.sh" "${pkgdir}/etc/profile.d/${_pkgname}.sh"
  install -Dm755 "${srcdir}/${_pkgname}.csh" "${pkgdir}/etc/profile.d/${_pkgname}.csh"
  install -dm755 "${pkgdir}/opt/${_pkgname}"
  install -dm755 "${pkgdir}/usr/bin"
  cp -ra "${srcdir}/${_pkgname}" "${pkgdir}/opt/"
  rm -rf ${pkgdir}/opt/${_pkgname}/bin/cache/artifacts/engine/{android*,linux*}
  rm -rf "${pkgdir}/opt/${_pkgname}/bin/cache/flutter_web_sdk"
  find "${pkgdir}/opt/${_pkgname}" -type d -exec chmod a+rx {} +
  find "${pkgdir}/opt/${_pkgname}" -type f -exec chmod a+r {} +
  # those files *must* be read-write for end-users; not my fault *grumble*
  chmod a+rw "${pkgdir}/opt/${_pkgname}/version" "${pkgdir}/opt/${_pkgname}/bin/cache/lockfile" "${pkgdir}/opt/${_pkgname}/bin/cache/usbmuxd.stamp" "${pkgdir}/opt/${_pkgname}/bin/cache/libimobiledevice.stamp"
  ln -s "/opt/${pkgname}/bin/${_pkgname}" "${pkgdir}/usr/bin/"
}

package_flutter-light-android-arm() {
  depends=("flutter")
  
  install -dm755 "${pkgdir}/opt/${_pkgname}/bin/cache/artifacts/engine"
  cp -ra "${srcdir}/${_pkgname}/bin/cache/artifacts/engine/android-arm" "${pkgdir}/opt/${_pkgname}/bin/cache/artifacts/engine"
  cp -ra ${srcdir}/${_pkgname}/bin/cache/artifacts/engine/android-arm-* ${pkgdir}/opt/${_pkgname}/bin/cache/artifacts/engine
  
  find "${pkgdir}/opt/${_pkgname}" -type d -exec chmod a+rx {} +
  find "${pkgdir}/opt/${_pkgname}" -type f -exec chmod a+r {} +
}

package_flutter-light-android-arm64() {
  depends=("flutter")
  
  install -dm755 "${pkgdir}/opt/${_pkgname}/bin/cache/artifacts/engine"
  cp -ra ${srcdir}/${_pkgname}/bin/cache/artifacts/engine/android-arm64* ${pkgdir}/opt/${_pkgname}/bin/cache/artifacts/engine
  
  find "${pkgdir}/opt/${_pkgname}" -type d -exec chmod a+rx {} +
  find "${pkgdir}/opt/${_pkgname}" -type f -exec chmod a+r {} +
}

package_flutter-light-android-x86() {
  depends=("flutter")

  install -dm755 "${pkgdir}/opt/${_pkgname}/bin/cache/artifacts/engine"
  cp -ra ${srcdir}/${_pkgname}/bin/cache/artifacts/engine/android-x86* ${pkgdir}/opt/${_pkgname}/bin/cache/artifacts/engine
  
  find "${pkgdir}/opt/${_pkgname}" -type d -exec chmod a+rx {} +
  find "${pkgdir}/opt/${_pkgname}" -type f -exec chmod a+r {} +
}

package_flutter-light-android-x64() {
  depends=("flutter")

  install -dm755 "${pkgdir}/opt/${_pkgname}/bin/cache/artifacts/engine"
  cp -ra ${srcdir}/${_pkgname}/bin/cache/artifacts/engine/android-x64 ${pkgdir}/opt/${_pkgname}/bin/cache/artifacts/engine
  
  find "${pkgdir}/opt/${_pkgname}" -type d -exec chmod a+rx {} +
  find "${pkgdir}/opt/${_pkgname}" -type f -exec chmod a+r {} +
}

package_flutter-light-web() {
  depends=("flutter")

  install -dm755 "${pkgdir}/opt/${_pkgname}/bin/cache"
  cp -ra "${srcdir}/${_pkgname}/bin/cache/flutter_web_sdk" "${pkgdir}/opt/${_pkgname}/bin/cache"
  
  find "${pkgdir}/opt/${_pkgname}" -type d -exec chmod a+rx {} +
  find "${pkgdir}/opt/${_pkgname}" -type f -exec chmod a+r {} +
}

package_flutter-light-linux() {
  depends=("flutter")

  install -dm755 "${pkgdir}/opt/${_pkgname}/bin/cache/artifacts/engine"
  cp -ra ${srcdir}/${_pkgname}/bin/cache/artifacts/engine/linux* ${pkgdir}/opt/${_pkgname}/bin/cache/artifacts/engine
  
  find "${pkgdir}/opt/${_pkgname}" -type d -exec chmod a+rx {} +
  find "${pkgdir}/opt/${_pkgname}" -type f -exec chmod a+r {} +
}