diff options
author | The one with the braid | 2024-03-27 08:21:42 +0100 |
---|---|---|
committer | The one with the braid | 2024-03-27 08:21:42 +0100 |
commit | 6afcaf305865ef5e16e40bee3d58fccdebeb0866 (patch) | |
tree | fa131f18142b6c1dd9fefb8b2d24cdd62514cf11 | |
parent | deceb851bbcdab752f195de3449cdf6199e11b7d (diff) | |
download | aur-6afcaf305865ef5e16e40bee3d58fccdebeb0866.tar.gz |
refactor: migrate to groups
Signed-off-by: The one with the braid <info@braid.business>
-rw-r--r-- | .SRCINFO | 11 | ||||
-rw-r--r-- | PKGBUILD | 173 |
2 files changed, 87 insertions, 97 deletions
@@ -1,11 +1,12 @@ pkgbase = flutter pkgdesc = A new mobile app SDK to help developers and designers build modern mobile apps for iOS and Android. pkgver = 3.19.4 - pkgrel = 12 + pkgrel = 13 url = https://flutter.dev install = flutter.install arch = x86_64 arch = aarch64 + groups = flutter license = custom license = BSD license = CCPL @@ -33,14 +34,6 @@ pkgbase = flutter sha256sums = 04531ee1732c18c933b5b28f5da88ed183d5aa3698b1d1e912c000928b93ec91 sha256sums = 1578e819b6ee479b6db7a095bcfa74372d3ff555642c6d6ea7112e97bb6f2027 -pkgname = flutter - pkgdesc = Flutter SDK component - full installation of development tool and runtime - depends = flutter-devel=3.19.4 - depends = flutter-target-linux=3.19.4 - depends = flutter-target-android=3.19.4 - depends = flutter-target-web=3.19.4 - depends = flutter-intellij-patch=3.19.4 - pkgname = flutter-common pkgdesc = Flutter SDK component - common SDK files and pub cache @@ -3,17 +3,19 @@ # Contributor: Philip Goto <philip.goto@gmail.com> pkgbase=flutter +_group=flutter +groups=("$_group") pkgver=3.19.4 _dartver=3.3.2 _enginever=a5c24f538d05aaf66f7972fb23959d8cafb9f95a _materialfontsver=3012db47f3130e62f7cc0beabff968a33cbec8d8 _gradlewver=fd5c1f2c013565a3bea56ada6df9d2b8e96d56aa _flutterarch=$(uname -m | sed s/aarch64/arm64/ | sed s/x86_64/x64/) -pkgrel=12 +pkgrel=13 pkgdesc="A new mobile app SDK to help developers and designers build modern mobile apps for iOS and Android." _pkgdesc="Flutter SDK component" arch=("x86_64" "aarch64") -url="https://${pkgbase}.dev" +url="https://${_group}.dev" license=("custom" "BSD" "CCPL") makedepends=( "dart>=${_dartver}" @@ -22,15 +24,15 @@ makedepends=( "unzip" ) options=("!emptydirs") -install="${pkgbase}.install" +install="${_group}.install" source=( - "${pkgbase}-${pkgver}.tar.xz::https://github.com/${pkgbase}/${pkgbase}/archive/refs/tags/${pkgver/.hotfix/+hotfix}.tar.gz" + "${_group}-${pkgver}.tar.xz::https://github.com/${_group}/${_group}/archive/refs/tags/${pkgver/.hotfix/+hotfix}.tar.gz" "system-dart.patch" "gradle-user-home.patch" # thanks to lauren n. liberda from Alpine for the awesome patchset used here ! - "${pkgbase}.sh" + "${_group}.sh" "version.patch" "no-lock.patch" "no-runtime-download.patch" @@ -49,25 +51,25 @@ sha256sums=('089f924c72f28d25851382d70db83df83c64746713f6a8ca08879a1530adb8ca' '1578e819b6ee479b6db7a095bcfa74372d3ff555642c6d6ea7112e97bb6f2027') prepare() { - mv "${srcdir}/${pkgbase}-${pkgver/.hotfix/+hotfix}" "${srcdir}/${pkgbase}" - patch -p1 -i "${srcdir}/system-dart.patch" -d "${srcdir}/${pkgbase}" - patch -p1 -i "${srcdir}/gradle-user-home.patch" -d "${srcdir}/${pkgbase}" - patch -p1 -i "${srcdir}/version.patch" -d "${srcdir}/${pkgbase}" - patch -p1 -i "${srcdir}/no-lock.patch" -d "${srcdir}/${pkgbase}" - patch -p1 -i "${srcdir}/no-runtime-download.patch" -d "${srcdir}/${pkgbase}" - patch -p1 -i "${srcdir}/doctor.patch" -d "${srcdir}/${pkgbase}" - patch -p1 -i "${srcdir}/opt-in-analytics.patch" -d "${srcdir}/${pkgbase}" - - echo "${pkgver}" > "${srcdir}/${pkgbase}/version" - mkdir -p "${srcdir}/${pkgbase}/bin/cache/artifacts" - cat > "${srcdir}/${pkgbase}/bin/cache/flutter.version.json" <<EOF + mv "${srcdir}/${_group}-${pkgver/.hotfix/+hotfix}" "${srcdir}/${_group}" + patch -p1 -i "${srcdir}/system-dart.patch" -d "${srcdir}/${_group}" + patch -p1 -i "${srcdir}/gradle-user-home.patch" -d "${srcdir}/${_group}" + patch -p1 -i "${srcdir}/version.patch" -d "${srcdir}/${_group}" + patch -p1 -i "${srcdir}/no-lock.patch" -d "${srcdir}/${_group}" + patch -p1 -i "${srcdir}/no-runtime-download.patch" -d "${srcdir}/${_group}" + patch -p1 -i "${srcdir}/doctor.patch" -d "${srcdir}/${_group}" + patch -p1 -i "${srcdir}/opt-in-analytics.patch" -d "${srcdir}/${_group}" + + echo "${pkgver}" > "${srcdir}/${_group}/version" + mkdir -p "${srcdir}/${_group}/bin/cache/artifacts" + cat > "${srcdir}/${_group}/bin/cache/flutter.version.json" <<EOF { "frameworkVersion": "$pkgver", "channel": "$_channel", "repositoryUrl": "https://github.com/flutter/flutter.git", "frameworkRevision": "archlinuxaur0000000000000000000000000000", "frameworkCommitDate": "2038-01-19 03:14:08", - "engineRevision": "$(cat "${srcdir}/${pkgbase}/bin/internal/engine.version")", + "engineRevision": "$(cat "${srcdir}/${_group}/bin/internal/engine.version")", "dartSdkVersion": "$_dartver", "devToolsVersion": $(jq '.version' < /opt/dart-sdk/bin/resources/devtools/version.json), "flutterVersion": "$pkgver" @@ -80,7 +82,7 @@ EOF gradle wrapper popd - cd "${srcdir}/${pkgbase}/bin/cache/artifacts" + cd "${srcdir}/${_group}/bin/cache/artifacts" # why should we use a pre-build gradle wrapper if we have it in the arch repos ? mkdir -p gradle_wrapper/gradle @@ -89,8 +91,8 @@ EOF } build() { - export PUB_CACHE="${srcdir}/${pkgbase}/pub-cache" - cd "${srcdir}/${pkgbase}" + export PUB_CACHE="${srcdir}/${_group}/pub-cache" + cd "${srcdir}/${_group}" dart pub get -C "packages/flutter_tools" --no-offline --no-precompile dart --verbosity=error --disable-dart-dev \ --snapshot="bin/cache/flutter_tools.snapshot" --snapshot-kind="app-jit" \ @@ -98,45 +100,40 @@ build() { --no-enable-mirrors "packages/flutter_tools/bin/flutter_tools.dart" --version cd ../.. - sed -Ei 's|'"$PUB_CACHE"'|/usr/lib/flutter/pub-cache|g' "${srcdir}/${pkgbase}/packages/flutter_tools/.dart_tool/package_config.json" + sed -Ei 's|'"$PUB_CACHE"'|/usr/lib/flutter/pub-cache|g' "${srcdir}/${_group}/packages/flutter_tools/.dart_tool/package_config.json" find "$PUB_CACHE" -name '*.aot' -delete } -_package() { - pkgdesc="${_pkgdesc} - full installation of development tool and runtime" - depends=("${pkgbase}-devel=${pkgver}" "${pkgbase}-target-linux=${pkgver}" "${pkgbase}-target-android=${pkgver}" "${pkgbase}-target-web=${pkgver}" "${pkgbase}-intellij-patch"=${pkgver}) -} - _package-common() { pkgdesc="${_pkgdesc} - common SDK files and pub cache" - install -Dm644 "${srcdir}/${pkgbase}/LICENSE" "${pkgdir}/usr/share/licenses/${pkgbase}/LICENSE" - - install -dm755 "${pkgdir}/usr/lib/${pkgbase}" - install -dm755 "${pkgdir}/usr/lib/${pkgbase}/packages/flutter" - install -dm755 "${pkgdir}/usr/lib/${pkgbase}/packages/flutter_driver" - install -dm755 "${pkgdir}/usr/lib/${pkgbase}/packages/flutter_goldens" - install -dm755 "${pkgdir}/usr/lib/${pkgbase}/packages/flutter_localizations" - install -dm755 "${pkgdir}/usr/lib/${pkgbase}/packages/flutter_test" - install -dm755 "${pkgdir}/usr/lib/${pkgbase}/packages/flutter_web_plugins" - install -dm755 "${pkgdir}/usr/lib/${pkgbase}/packages/fuchsia_remote_debug_protocol" - install -dm755 "${pkgdir}/usr/lib/${pkgbase}/packages/integration_test" - - cp -ra "${srcdir}/${pkgbase}/packages/flutter/"{pubspec.yaml,lib} "${pkgdir}/usr/lib/${pkgbase}/packages/flutter" - cp -ra "${srcdir}/${pkgbase}/packages/flutter_driver/"{pubspec.yaml,lib} "${pkgdir}/usr/lib/${pkgbase}/packages/flutter_driver" - cp -ra "${srcdir}/${pkgbase}/packages/flutter_goldens/"{pubspec.yaml,lib} "${pkgdir}/usr/lib/${pkgbase}/packages/flutter_goldens" - cp -ra "${srcdir}/${pkgbase}/packages/flutter_localizations/"{pubspec.yaml,lib} "${pkgdir}/usr/lib/${pkgbase}/packages/flutter_localizations" - cp -ra "${srcdir}/${pkgbase}/packages/flutter_test/"{pubspec.yaml,lib} "${pkgdir}/usr/lib/${pkgbase}/packages/flutter_test" - cp -ra "${srcdir}/${pkgbase}/packages/flutter_web_plugins/"{pubspec.yaml,lib} "${pkgdir}/usr/lib/${pkgbase}/packages/flutter_web_plugins" - cp -ra "${srcdir}/${pkgbase}/packages/fuchsia_remote_debug_protocol/"{pubspec.yaml,lib} "${pkgdir}/usr/lib/${pkgbase}/packages/fuchsia_remote_debug_protocol" - cp -ra "${srcdir}/${pkgbase}/packages/integration_test/"{pubspec.yaml,lib,android} "${pkgdir}/usr/lib/${pkgbase}/packages/integration_test" + install -Dm644 "${srcdir}/${_group}/LICENSE" "${pkgdir}/usr/share/licenses/${_group}/LICENSE" + + install -dm755 "${pkgdir}/usr/lib/${_group}" + install -dm755 "${pkgdir}/usr/lib/${_group}/packages/flutter" + install -dm755 "${pkgdir}/usr/lib/${_group}/packages/flutter_driver" + install -dm755 "${pkgdir}/usr/lib/${_group}/packages/flutter_goldens" + install -dm755 "${pkgdir}/usr/lib/${_group}/packages/flutter_localizations" + install -dm755 "${pkgdir}/usr/lib/${_group}/packages/flutter_test" + install -dm755 "${pkgdir}/usr/lib/${_group}/packages/flutter_web_plugins" + install -dm755 "${pkgdir}/usr/lib/${_group}/packages/fuchsia_remote_debug_protocol" + install -dm755 "${pkgdir}/usr/lib/${_group}/packages/integration_test" + + cp -ra "${srcdir}/${_group}/packages/flutter/"{pubspec.yaml,lib} "${pkgdir}/usr/lib/${_group}/packages/flutter" + cp -ra "${srcdir}/${_group}/packages/flutter_driver/"{pubspec.yaml,lib} "${pkgdir}/usr/lib/${_group}/packages/flutter_driver" + cp -ra "${srcdir}/${_group}/packages/flutter_goldens/"{pubspec.yaml,lib} "${pkgdir}/usr/lib/${_group}/packages/flutter_goldens" + cp -ra "${srcdir}/${_group}/packages/flutter_localizations/"{pubspec.yaml,lib} "${pkgdir}/usr/lib/${_group}/packages/flutter_localizations" + cp -ra "${srcdir}/${_group}/packages/flutter_test/"{pubspec.yaml,lib} "${pkgdir}/usr/lib/${_group}/packages/flutter_test" + cp -ra "${srcdir}/${_group}/packages/flutter_web_plugins/"{pubspec.yaml,lib} "${pkgdir}/usr/lib/${_group}/packages/flutter_web_plugins" + cp -ra "${srcdir}/${_group}/packages/fuchsia_remote_debug_protocol/"{pubspec.yaml,lib} "${pkgdir}/usr/lib/${_group}/packages/fuchsia_remote_debug_protocol" + cp -ra "${srcdir}/${_group}/packages/integration_test/"{pubspec.yaml,lib,android} "${pkgdir}/usr/lib/${_group}/packages/integration_test" } _package-target-linux() { pkgdesc="${_pkgdesc} - linux target files" depends=( - "${pkgbase}-tool=${pkgver}" - "${pkgbase}-engine-linux=${pkgver}" + "${_group}-tool=${pkgver}" + "${_group}-engine-linux=${pkgver}" "dart>=${_dartver}" "clang" "cmake" @@ -147,58 +144,58 @@ _package-target-linux() { "libglvnd" # https://github.com/flutter/engine/pull/16924 ) - install -dm755 "${pkgdir}/usr/lib/${pkgbase}/packages/flutter_tools/bin" + install -dm755 "${pkgdir}/usr/lib/${_group}/packages/flutter_tools/bin" - cp -ra "${srcdir}/${pkgbase}/packages/flutter_tools/bin/tool_backend.sh" "${pkgdir}/usr/lib/${pkgbase}/packages/flutter_tools/bin" - cp -ra "${srcdir}/${pkgbase}/packages/flutter_tools/bin/tool_backend.dart" "${pkgdir}/usr/lib/${pkgbase}/packages/flutter_tools/bin" + cp -ra "${srcdir}/${_group}/packages/flutter_tools/bin/tool_backend.sh" "${pkgdir}/usr/lib/${_group}/packages/flutter_tools/bin" + cp -ra "${srcdir}/${_group}/packages/flutter_tools/bin/tool_backend.dart" "${pkgdir}/usr/lib/${_group}/packages/flutter_tools/bin" } _package-target-web() { pkgdesc="${_pkgdesc} - web target files" depends=( - "${pkgbase}-tool=${pkgver}" - "${pkgbase}-engine-web=${pkgver}" + "${_group}-tool=${pkgver}" + "${_group}-engine-web=${pkgver}" ) - install -dm755 "${pkgdir}/usr/lib/${pkgbase}/packages/flutter_tools/lib/src/web" + install -dm755 "${pkgdir}/usr/lib/${_group}/packages/flutter_tools/lib/src/web" - cp -ra "${srcdir}/${pkgbase}/packages/flutter_tools/lib/src/web/file_generators" "${pkgdir}/usr/lib/${pkgbase}/packages/flutter_tools/lib/src/web" + cp -ra "${srcdir}/${_group}/packages/flutter_tools/lib/src/web/file_generators" "${pkgdir}/usr/lib/${_group}/packages/flutter_tools/lib/src/web" } _package-target-android() { pkgdesc="${_pkgdesc} - android target files" depends=( - "${pkgbase}-tool" - "${pkgbase}-engine-android" - "${pkgbase}-gradle" + "${_group}-tool" + "${_group}-engine-android" + "${_group}-gradle" ) optdepends=("android-sdk: develop for Android devices" "java-environment: develop for Android devices" ) - install -dm755 "${pkgdir}/usr/lib/${pkgbase}/packages/flutter_tools" + install -dm755 "${pkgdir}/usr/lib/${_group}/packages/flutter_tools" - cp -ra "${srcdir}/${pkgbase}/packages/flutter_tools/gradle" "${pkgdir}/usr/lib/${pkgbase}/packages/flutter_tools" + cp -ra "${srcdir}/${_group}/packages/flutter_tools/gradle" "${pkgdir}/usr/lib/${_group}/packages/flutter_tools" } _package-gradle() { pkgdesc="${_pkgdesc} - gradle wrapper" provides=( - "${pkgbase}-gradle=${pkgver}" + "${_group}-gradle=${pkgver}" ) conflicts=( - "${pkgbase}-gradle=${pkgver}" + "${_group}-gradle=${pkgver}" ) - install -dm755 "${pkgdir}/usr/lib/${pkgbase}/bin/cache/artifacts" + install -dm755 "${pkgdir}/usr/lib/${_group}/bin/cache/artifacts" - cp -ra "${srcdir}/${pkgbase}/bin/cache/artifacts/gradle_wrapper" "${pkgdir}/usr/lib/${pkgbase}/bin/cache/artifacts" + cp -ra "${srcdir}/${_group}/bin/cache/artifacts/gradle_wrapper" "${pkgdir}/usr/lib/${_group}/bin/cache/artifacts" } _package-tool() { pkgdesc="${_pkgdesc} - CLI tool (for packaging only)" depends=( - "${pkgbase}-common" + "${_group}-common" # TODO: completely compile Flutter tool standalone and drop dependency "dart>=${_dartver}" # commands first @@ -215,61 +212,61 @@ _package-tool() { ) - install -dm755 "${pkgdir}/usr/lib/${pkgbase}" - install -dm755 "${pkgdir}/usr/lib/${pkgbase}/bin/cache" - install -dm755 "${pkgdir}/usr/lib/${pkgbase}/packages/flutter_tools/.dart_tool" + install -dm755 "${pkgdir}/usr/lib/${_group}" + install -dm755 "${pkgdir}/usr/lib/${_group}/bin/cache" + install -dm755 "${pkgdir}/usr/lib/${_group}/packages/flutter_tools/.dart_tool" - cp -ra "${srcdir}/${pkgbase}/bin/cache/flutter_tools.snapshot" "${pkgdir}/usr/lib/${pkgbase}/bin/cache/flutter_tools.snapshot" - cp -ra "${srcdir}/${pkgbase}/bin/cache/flutter.version.json" "${pkgdir}/usr/lib/${pkgbase}/bin/cache" - cp -ra "${srcdir}/${pkgbase}/version" "${pkgdir}/usr/lib/${pkgbase}" + cp -ra "${srcdir}/${_group}/bin/cache/flutter_tools.snapshot" "${pkgdir}/usr/lib/${_group}/bin/cache/flutter_tools.snapshot" + cp -ra "${srcdir}/${_group}/bin/cache/flutter.version.json" "${pkgdir}/usr/lib/${_group}/bin/cache" + cp -ra "${srcdir}/${_group}/version" "${pkgdir}/usr/lib/${_group}" - cp -ra "${srcdir}/${pkgbase}/packages/flutter_tools/.dart_tool/package_config.json" "${pkgdir}/usr/lib/${pkgbase}/packages/flutter_tools/.dart_tool" + cp -ra "${srcdir}/${_group}/packages/flutter_tools/.dart_tool/package_config.json" "${pkgdir}/usr/lib/${_group}/packages/flutter_tools/.dart_tool" install -dm755 "${pkgdir}/usr/bin" - install -Dm755 "${srcdir}/${pkgbase}.sh" "${pkgdir}/usr/lib/${pkgbase}/bin/flutter" + install -Dm755 "${srcdir}/${_group}.sh" "${pkgdir}/usr/lib/${_group}/bin/flutter" ln -sf "/usr/lib/flutter/bin/flutter" "${pkgdir}/usr/bin/flutter" } _package-devel() { pkgdesc="${_pkgdesc} - CLI tool (for application development)" depends=( - "${pkgbase}-tool" + "${_group}-tool" "dart>=${_dartver}" ) - replaces=("${pkgbase}-tool-developer") + replaces=("${_group}-tool-developer") - install -dm755 "${pkgdir}/usr/lib/${pkgbase}" - install -dm755 "${pkgdir}/usr/lib/${pkgbase}/packages/flutter_tools" + install -dm755 "${pkgdir}/usr/lib/${_group}" + install -dm755 "${pkgdir}/usr/lib/${_group}/packages/flutter_tools" - cp -ra "${srcdir}/${pkgbase}/examples" "${pkgdir}/usr/lib/${pkgbase}" - cp -ra "${srcdir}/${pkgbase}/packages/flutter_tools/templates" "${pkgdir}/usr/lib/${pkgbase}/packages/flutter_tools" + cp -ra "${srcdir}/${_group}/examples" "${pkgdir}/usr/lib/${_group}" + cp -ra "${srcdir}/${_group}/packages/flutter_tools/templates" "${pkgdir}/usr/lib/${_group}/packages/flutter_tools" # TODO: patch `flutter create` to run without pub cache - cp -ra "${srcdir}/${pkgbase}/pub-cache" "${pkgdir}/usr/lib/${pkgbase}/pub-cache" + cp -ra "${srcdir}/${_group}/pub-cache" "${pkgdir}/usr/lib/${_group}/pub-cache" } _package-intellij-patch() { pkgdesc="${_pkgdesc} - IntelliJ Flutter plugin hotfix" - depends=("${pkgbase}-common") + depends=("${_group}-common") optdepends=( "android-studio" "intellij-idea-community-edition" "intellij-idea-ultimate-edition" ) - install -dm755 "${pkgdir}/usr/lib/${pkgbase}/bin/cache" + install -dm755 "${pkgdir}/usr/lib/${_group}/bin/cache" - ln -sf "${DART_ROOT:-"/opt/dart-sdk"}/bin/dart" "${pkgdir}/usr/lib/${pkgbase}/bin/dart" + ln -sf "${DART_ROOT:-"/opt/dart-sdk"}/bin/dart" "${pkgdir}/usr/lib/${_group}/bin/dart" # * not my fault grumble * : The IntelliJ Flutter plugin enforces this relative Dart SDK - ln -sf "${DART_ROOT:-"/opt/dart-sdk"}" "${pkgdir}/usr/lib/${pkgbase}/bin/cache/dart-sdk" + ln -sf "${DART_ROOT:-"/opt/dart-sdk"}" "${pkgdir}/usr/lib/${_group}/bin/cache/dart-sdk" } -pkgname=("${pkgbase}" "${pkgbase}-common" "${pkgbase}-gradle" "${pkgbase}-tool" "${pkgbase}-devel" "${pkgbase}-target-linux" "${pkgbase}-target-android" "${pkgbase}-target-web" "${pkgbase}-intellij-patch") +pkgname=("${_group}-common" "${_group}-gradle" "${_group}-tool" "${_group}-devel" "${_group}-target-linux" "${_group}-target-android" "${_group}-target-web" "${_group}-intellij-patch") for _p in "${pkgname[@]}"; do eval "package_$_p() { - $(declare -f "_package${_p#$pkgbase}") - _package${_p#$pkgbase} + $(declare -f "_package${_p#$_group}") + _package${_p#$_group} }" done |