diff --git a/flox/local/.flox/env/manifest.lock b/flox/local/.flox/env/manifest.lock index 703ae2b996..310927ff5b 100644 --- a/flox/local/.flox/env/manifest.lock +++ b/flox/local/.flox/env/manifest.lock @@ -20,7 +20,7 @@ } }, "hook": { - "on-activate": " set -eu\n set -o pipefail\n\n if ! [ -f \".androidide_root\" ]; then\n echo \"Run `flox activate` from the root directory\"\n echo \"Abort.\"\n exit 1\n fi\n\n # Use these env vars if set; otherwise fall back to default\n DEFAULT_ANDROID_HOME=\"$HOME/Android/Sdk\"\n DEFAULT_GRADLE_USER_HOME=\"$HOME/.gradle\"\n ANDROID_HOME=\"${ANDROID_HOME:-$DEFAULT_ANDROID_HOME}\"\n GRADLE_USER_HOME=\"${GRADLE_USER_HOME:-$DEFAULT_GRADLE_USER_HOME}\"\n export ANDROID_HOME\n export GRADLE_USER_HOME\n\n echo \"Using ANDROID_HOME=$ANDROID_HOME\"\n echo \"Using GRADLE_USER_HOME=$GRADLE_USER_HOME\"\n\n # Accept licenses\n echo \"Accepting SDK licenses...\"\n { yes || true; } | sdkmanager --sdk_root=\"$ANDROID_HOME\" --licenses 2>&1 > /dev/null\n\n install_sdk_tools_if_required() {\n installed_tools=$(sdkmanager --sdk_root=\"$ANDROID_HOME\" --list_installed)\n\n declare -a to_install=()\n for package in \"$@\"; do\n if ! echo \"$installed_tools\" | grep -q \"$package\"; then\n echo \"'$package' is missing.\"\n to_install+=(\"$package\")\n fi\n done\n\n if [ ${#to_install[@]} -ne 0 ]; then\n echo \"Installing SDK Tools: ${to_install[*]}\"\n sdkmanager --sdk_root=\"$ANDROID_HOME\" --install \"${to_install[@]}\"\n fi\n }\n\n # The packages we need\n install_sdk_tools_if_required \\\n \"build-tools;35.0.0\" \\\n \"cmake;3.31.6\" \\\n \"platforms;android-35\" \\\n \"platform-tools\" \\\n \"ndk;26.1.10909125\"\n\n # Set up local.properties file\n if ! [ -f \"local.properties\" ]; then\n echo \"Creating local.properties file...\"\n echo \"sdk.dir=$ANDROID_HOME\" > local.properties\n else\n local_props=$(cat \"local.properties\")\n if ! echo \"$local_props\" | grep -q \"^sdk.dir=\"; then\n echo \"Updating local.properties to add sdk.dir=$ANDROID_HOME...\"\n echo \"sdk.dir=$ANDROID_HOME\" >> local.properties\n else\n echo \"Updating local.properties to use sdk.dir=$ANDROID_HOME...\"\n sed -i -e \"s|sdk.dir=.*|sdk.dir=$ANDROID_HOME|g\" local.properties\n fi\n fi\n\n # Set git-hooks, if required\n for hook_name in \"pre-commit\" \"pre-push\"; do\n hook=\".git/hooks/$hook_name\"\n if ! [ -f \"$hook\" ] || ! grep -q 'COGO_GIT_HOOK' \"$hook\"; then\n echo \"Updating $hook_name hook...\"\n cat >\"$hook\" <<'EOF'\n#!/bin/bash\n# -- COGO_GIT_HOOK\nexec \"$(git rev-parse --show-toplevel)/.githooks/hook\" \"$(basename \"$0\")\"\nEOF\n chmod +x \"$hook\"\n fi\n done\n" + "on-activate": " set -eu\n set -o pipefail\n\n if ! [ -f \".androidide_root\" ]; then\n echo \"Run `flox activate` from the root directory\"\n echo \"Abort.\"\n exit 1\n fi\n\n # Use these env vars if set; otherwise fall back to default\n DEFAULT_ANDROID_HOME=\"$HOME/Android/Sdk\"\n DEFAULT_GRADLE_USER_HOME=\"$HOME/.gradle\"\n ANDROID_HOME=\"${ANDROID_HOME:-$DEFAULT_ANDROID_HOME}\"\n GRADLE_USER_HOME=\"${GRADLE_USER_HOME:-$DEFAULT_GRADLE_USER_HOME}\"\n export ANDROID_HOME\n export GRADLE_USER_HOME\n\n echo \"Using ANDROID_HOME=$ANDROID_HOME\"\n echo \"Using GRADLE_USER_HOME=$GRADLE_USER_HOME\"\n\n # Accept licenses\n echo \"Accepting SDK licenses...\"\n { yes || true; } | sdkmanager --sdk_root=\"$ANDROID_HOME\" --licenses 2>&1 > /dev/null\n\n install_sdk_tools_if_required() {\n installed_tools=$(sdkmanager --sdk_root=\"$ANDROID_HOME\" --list_installed)\n\n declare -a to_install=()\n for package in \"$@\"; do\n if ! echo \"$installed_tools\" | grep -q \"$package\"; then\n echo \"'$package' is missing.\"\n to_install+=(\"$package\")\n fi\n done\n\n if [ ${#to_install[@]} -ne 0 ]; then\n echo \"Installing SDK Tools: ${to_install[*]}\"\n sdkmanager --sdk_root=\"$ANDROID_HOME\" --install \"${to_install[@]}\"\n fi\n }\n\n # The packages we need\n install_sdk_tools_if_required \\\n \"build-tools;35.0.0\" \\\n \"cmake;3.31.6\" \\\n \"platforms;android-35\" \\\n \"platform-tools\" \\\n \"ndk;26.1.10909125\"\n\n # Set up local.properties file\n if ! [ -f \"local.properties\" ]; then\n echo \"Creating local.properties file...\"\n echo \"sdk.dir=$ANDROID_HOME\" > local.properties\n else\n local_props=$(cat \"local.properties\")\n if ! echo \"$local_props\" | grep -q \"^sdk.dir=\"; then\n echo \"Updating local.properties to add sdk.dir=$ANDROID_HOME...\"\n echo \"sdk.dir=$ANDROID_HOME\" >> local.properties\n else\n echo \"Updating local.properties to use sdk.dir=$ANDROID_HOME...\"\n sed -i -e \"s|sdk.dir=.*|sdk.dir=$ANDROID_HOME|g\" local.properties\n fi\n fi\n\n # Set git-hooks, if required\n if git rev-parse --git-dir >/dev/null 2>&1; then\n hooks_dir=\"$(git rev-parse --git-common-dir)/hooks\"\n mkdir -p \"$hooks_dir\"\n for hook_name in \"pre-commit\" \"pre-push\"; do\n hook=\"$hooks_dir/$hook_name\"\n if ! [ -f \"$hook\" ] || ! grep -q 'COGO_GIT_HOOK' \"$hook\"; then\n echo \"Updating $hook_name hook...\"\n cat >\"$hook\" <<'EOF'\n#!/bin/bash\n# -- COGO_GIT_HOOK\nexec \"$(git rev-parse --show-toplevel)/.githooks/hook\" \"$(basename \"$0\")\"\nEOF\n chmod +x \"$hook\"\n fi\n done\n fi\n" }, "profile": { "common": " # Override the 'sdkmanager' command so that we don't have to\n # specify --sdk_root everytime\n sdkman=$(command -v sdkmanager)\n alias sdkmanager=\"$sdkman --sdk_root=$ANDROID_HOME\"\n" @@ -649,7 +649,7 @@ } }, "hook": { - "on-activate": " # Set up local.properties file\n if ! [ -f \"local.properties\" ]; then\n echo \"Creating local.properties file...\"\n echo \"sdk.dir=$ANDROID_HOME\" > local.properties\n else\n local_props=$(cat \"local.properties\")\n if ! echo \"$local_props\" | grep -q \"^sdk.dir=\"; then\n echo \"Updating local.properties to add sdk.dir=$ANDROID_HOME...\"\n echo \"sdk.dir=$ANDROID_HOME\" >> local.properties\n else\n echo \"Updating local.properties to use sdk.dir=$ANDROID_HOME...\"\n sed -i -e \"s|sdk.dir=.*|sdk.dir=$ANDROID_HOME|g\" local.properties\n fi\n fi\n\n # Set git-hooks, if required\n for hook_name in \"pre-commit\" \"pre-push\"; do\n hook=\".git/hooks/$hook_name\"\n if ! [ -f \"$hook\" ] || ! grep -q 'COGO_GIT_HOOK' \"$hook\"; then\n echo \"Updating $hook_name hook...\"\n cat >\"$hook\" <<'EOF'\n#!/bin/bash\n# -- COGO_GIT_HOOK\nexec \"$(git rev-parse --show-toplevel)/.githooks/hook\" \"$(basename \"$0\")\"\nEOF\n chmod +x \"$hook\"\n fi\n done\n" + "on-activate": " # Set up local.properties file\n if ! [ -f \"local.properties\" ]; then\n echo \"Creating local.properties file...\"\n echo \"sdk.dir=$ANDROID_HOME\" > local.properties\n else\n local_props=$(cat \"local.properties\")\n if ! echo \"$local_props\" | grep -q \"^sdk.dir=\"; then\n echo \"Updating local.properties to add sdk.dir=$ANDROID_HOME...\"\n echo \"sdk.dir=$ANDROID_HOME\" >> local.properties\n else\n echo \"Updating local.properties to use sdk.dir=$ANDROID_HOME...\"\n sed -i -e \"s|sdk.dir=.*|sdk.dir=$ANDROID_HOME|g\" local.properties\n fi\n fi\n\n # Set git-hooks, if required\n if git rev-parse --git-dir >/dev/null 2>&1; then\n hooks_dir=\"$(git rev-parse --git-common-dir)/hooks\"\n mkdir -p \"$hooks_dir\"\n for hook_name in \"pre-commit\" \"pre-push\"; do\n hook=\"$hooks_dir/$hook_name\"\n if ! [ -f \"$hook\" ] || ! grep -q 'COGO_GIT_HOOK' \"$hook\"; then\n echo \"Updating $hook_name hook...\"\n cat >\"$hook\" <<'EOF'\n#!/bin/bash\n# -- COGO_GIT_HOOK\nexec \"$(git rev-parse --show-toplevel)/.githooks/hook\" \"$(basename \"$0\")\"\nEOF\n chmod +x \"$hook\"\n fi\n done\n fi\n" }, "profile": {}, "options": { diff --git a/flox/local/.flox/env/manifest.toml b/flox/local/.flox/env/manifest.toml index 9ce66ea96c..e4cc77a30a 100644 --- a/flox/local/.flox/env/manifest.toml +++ b/flox/local/.flox/env/manifest.toml @@ -51,18 +51,22 @@ on-activate = ''' fi # Set git-hooks, if required - for hook_name in "pre-commit" "pre-push"; do - hook=".git/hooks/$hook_name" - if ! [ -f "$hook" ] || ! grep -q 'COGO_GIT_HOOK' "$hook"; then - echo "Updating $hook_name hook..." - cat >"$hook" <<'EOF' + if git rev-parse --git-dir >/dev/null 2>&1; then + hooks_dir="$(git rev-parse --git-common-dir)/hooks" + mkdir -p "$hooks_dir" + for hook_name in "pre-commit" "pre-push"; do + hook="$hooks_dir/$hook_name" + if ! [ -f "$hook" ] || ! grep -q 'COGO_GIT_HOOK' "$hook"; then + echo "Updating $hook_name hook..." + cat >"$hook" <<'EOF' #!/bin/bash # -- COGO_GIT_HOOK exec "$(git rev-parse --show-toplevel)/.githooks/hook" "$(basename "$0")" EOF - chmod +x "$hook" - fi - done + chmod +x "$hook" + fi + done + fi '''