mirror of
https://github.com/feeddeck/feeddeck.git
synced 2026-03-09 07:02:01 -05:00
This commit adds a custom cache manager "CustomCacheManager" which is used in the "CachedNetworkImage" widget. The custom cache manager is required, so that we can adjust the stale periode of cached images. By default the package used 30 days as stale periode, but for our use case 7 days should be enough and we can reduce the storage used by the app. Note: We also fixed the "run.sh" script to work with devices where the name contains a space.
59 lines
1.9 KiB
Bash
Executable File
59 lines
1.9 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
if [[ "$#" -lt 1 ]]; then
|
|
echo "$(basename "$0") -- program to run the app
|
|
|
|
where:
|
|
-e|--environment set the environment on which the app should be run, e.g. -e=\"local\"
|
|
-d|--device set the device on which the app should be run, e.g. -d=\"chrome\""
|
|
exit
|
|
fi
|
|
|
|
for arg in "$@"
|
|
do
|
|
case ${arg} in
|
|
-e=*|--environment=*)
|
|
environment="${arg#*=}"
|
|
shift
|
|
;;
|
|
-d=*|--device=*)
|
|
device="${arg#*=}"
|
|
shift
|
|
;;
|
|
*)
|
|
;;
|
|
esac
|
|
done
|
|
|
|
if [ -z "${environment}" ] || [ -z "${device}" ]; then
|
|
echo "You have to provide an environment and a device"
|
|
echo " Example: $0 -e=\"local\" -d=\"chrome\""
|
|
echo " Provided: $0 -e=\"${environment}\" -d=\"${device}\""
|
|
exit 1
|
|
fi
|
|
|
|
echo "Run: $0 -e=\"${environment}\" -d=\"${device}\""
|
|
|
|
# Load the environment variables from the corresponding ".env" file in the
|
|
# "supabase" directory.
|
|
set -o allexport && source "../supabase/.env.${environment}" && set +o allexport
|
|
|
|
# When the local environment is used, we have to adjust the Supabase URL to the
|
|
# local Supabase instance, since the environment variable set by the .env file
|
|
# uses the Docker address of the Supabase instance.
|
|
supabase_url=$FEEDDECK_SUPABASE_URL
|
|
if [ "${environment}" == "local" ]; then
|
|
supabase_url="http://localhost:54321"
|
|
fi
|
|
|
|
# If the selected device is "chrome" we have to add some additional flags to the
|
|
# "flutter run" command, since we want to run the app always on the same port
|
|
# and we want to disable the web security.
|
|
additional_flags=""
|
|
if [ "${device}" == "chrome" ]; then
|
|
additional_flags="--web-port 3000 --web-browser-flag=--disable-web-security"
|
|
fi
|
|
|
|
# Run the app on the provided device and environment.
|
|
flutter run -d "${device}" ${additional_flags} --dart-define SUPABASE_URL=${supabase_url} --dart-define SUPABASE_ANON_KEY=${FEEDDECK_SUPABASE_ANON_KEY} --dart-define SUPABASE_SITE_URL=${FEEDDECK_SUPABASE_SITE_URL} --dart-define GOOGLE_CLIENT_ID=${FEEDDECK_GOOGLE_CLIENT_ID}
|