diff options
author | srv <enmanuel.saravia.externo@pandero.com.pe> | 2025-05-05 15:29:27 -0500 |
---|---|---|
committer | srv <enmanuel.saravia.externo@pandero.com.pe> | 2025-05-05 15:29:27 -0500 |
commit | 81555e3bd23c74ce915d246ca51fa65d84c22ae7 (patch) | |
tree | 1ba136af6b87426d37d010866b5cdac110eaeaa8 /sof-bin-blob/OBTAIN.SH |
First commitdevelop
Diffstat (limited to 'sof-bin-blob/OBTAIN.SH')
-rwxr-xr-x | sof-bin-blob/OBTAIN.SH | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/sof-bin-blob/OBTAIN.SH b/sof-bin-blob/OBTAIN.SH new file mode 100755 index 0000000..e28b67d --- /dev/null +++ b/sof-bin-blob/OBTAIN.SH @@ -0,0 +1,41 @@ +#!/bin/dash + +# Variables de entrada (URL del repositorio y hash del commit como argumentos) +REPO="${1:-https://gitlab.com/kernel-firmware/linux-firmware.git}" +COMMIT_HASH="${2:-3981e21e654e3c139c7ca143a0119706b0e7f963}" + +# Variables de directorio temporal y nombre del archivo final +TEMP_DIR=$(mktemp -d /tmp/repo-XXXX) +ARCHIVE_NAME="repo-$(basename "$TEMP_DIR").tar.xz" + +# Clonar el repositorio en el directorio temporal +git clone "$REPO" "$TEMP_DIR" || { + echo "Error: No se pudo clonar el repositorio." + exit 1 +} + +# Cambiar al directorio clonado +cd "$TEMP_DIR" || exit 1 + +# Cambiar al commit especificado +git checkout "$COMMIT_HASH" || { + echo "Error: No se pudo cambiar al commit $COMMIT_HASH." + exit 1 +} + +# Verificar si el repositorio contiene un directorio .git y moverlo +if [ -d .git ]; then + GIT_DIR="/tmp/git_$(basename "$TEMP_DIR")" + mkdir "$GIT_DIR" && mv .git "$GIT_DIR" || exit 1 +fi + +# Volver al directorio anterior y crear el archivo tar.xz +cd - > /dev/null || exit 1 +tar -cJvf "$ARCHIVE_NAME" -C "$(dirname "$TEMP_DIR")" "$(basename "$TEMP_DIR")" || { + echo "Error: No se pudo crear el archivo $ARCHIVE_NAME." + exit 1 +} + +# Limpiar el directorio temporal +rm -rf "$TEMP_DIR" +echo "Archivo creado: $ARCHIVE_NAME" |