From: Adam Duskett <adam.duskett@amarulasolutions.com>
To: buildroot@buildroot.org
Cc: Adam Duskett <adam.duskett@amarulasolutions.com>
Subject: [Buildroot] [PATCH v4 1/1] package/flutter-sdk-bin/Config.in.host: change flutter-pub-cache location
Date: Sat, 13 Jan 2024 12:49:50 -0700 [thread overview]
Message-ID: <20240113194950.11170-1-adam.duskett@amarulasolutions.com> (raw)
When running the command "flutter pub get," the plugins are stored in the
pub-cache directory along with their sha256sum hashes. The default location of
the pub-cache directory is current $(HOST_DIR)/share/flutter/sdk/.pub-cache,
which is not an acceptable choice by default because every plugin is
re-downloaded during every build of a flutter application either during a new
build or when building with the per-package-directory option enabled.
Furthermore, keeping the pub-cache in its current location prevents users from
committing the pub-cache directory to git for faster rebuilds of a
Buildroot-based system, as users cannot store the pub-cache for later use.
To fix the above issue completely, the following two changes must occur:
- Change the hard-coded Flutter pub-cache location to
$(DL_DIR)/br-flutter-pub-cache.
- Remove the `rm -rf $(HOST_FLUTTER_SDK_BIN_SDK)/.pub-cache` and the
associated comment about why the build system removes the .pub-cache
directory. After further research, the help text of the precache command
reads, "Populate the Flutter tool's cache of binary artifacts."
The current reasoning listed in the comments is not accurate for a
the following reasons:
1. We do not want to remove their directory if users already have a pub
cache they have symlinked to.
2. If the flutter-sdk-bin package previously set up the pub-cache, then
the pub-cache directory is set up with the options we want, and there
is no reason to remove the pub-cache directory.
Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
changes v3 -> v4:
- Hardcode the directory to $(DL_DIR)/br-flutter-pub-cache. [Yann]
- Remove the `rm -rf $(HOST_FLUTTER_SDK_BIN_SDK)/.pub-cache` line. [Yann]
- Remove the associated comments about the above line. [Yann]
- Expand the commit log.
package/flutter-sdk-bin/flutter-sdk-bin.mk | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/package/flutter-sdk-bin/flutter-sdk-bin.mk b/package/flutter-sdk-bin/flutter-sdk-bin.mk
index 5e5042bea8..2e37e6f036 100644
--- a/package/flutter-sdk-bin/flutter-sdk-bin.mk
+++ b/package/flutter-sdk-bin/flutter-sdk-bin.mk
@@ -41,11 +41,8 @@ define HOST_FLUTTER_SDK_BIN_CONFIGURE_CMDS
$(HOST_FLUTTER_SDK_BIN_ENV) $(@D)/bin/dart --disable-analytics
endef
-# Remove the cache, as we will run precache after setting up flutter and dart
-# with the new config options.
define HOST_FLUTTER_SDK_BIN_BUILD_CMDS
mkdir -p $(HOST_FLUTTER_SDK_BIN_SDK)
- rm -rf $(HOST_FLUTTER_SDK_BIN_SDK)/.pub-cache
cd $(@D) && \
$(HOST_FLUTTER_SDK_BIN_ENV) $(@D)/bin/flutter precache;
endef
@@ -104,4 +101,4 @@ HOST_FLUTTER_SDK_BIN_DART_BIN = \
$(eval $(host-generic-package))
# For target packages to locate said pub-cache
-FLUTTER_SDK_BIN_PUB_CACHE = $(HOST_FLUTTER_SDK_BIN_SDK)/.pub-cache
+FLUTTER_SDK_BIN_PUB_CACHE = $(DL_DIR)/br-flutter-pub-cache
--
2.43.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
next reply other threads:[~2024-01-13 19:50 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-01-13 19:49 Adam Duskett [this message]
2024-01-20 20:35 ` [Buildroot] [PATCH v4 1/1] package/flutter-sdk-bin/Config.in.host: change flutter-pub-cache location Yann E. MORIN
2024-02-03 11:24 ` Peter Korsgaard
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240113194950.11170-1-adam.duskett@amarulasolutions.com \
--to=adam.duskett@amarulasolutions.com \
--cc=buildroot@buildroot.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.