From 0722d8dc278af763bc726f155f3b8faf64ba75e5 Mon Sep 17 00:00:00 2001 From: Eduardo Mosqueda Date: Tue, 4 Nov 2025 08:34:51 -0600 Subject: [PATCH] Update action1/sc-path-installation.ps1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Se agrega la compatibilidad de ejecución para archivos con extensión ".reg" --- action1/sc-path-installation.ps1 | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/action1/sc-path-installation.ps1 b/action1/sc-path-installation.ps1 index a2b17a6..85cfba7 100644 --- a/action1/sc-path-installation.ps1 +++ b/action1/sc-path-installation.ps1 @@ -1,11 +1,8 @@ # ----------------------------------------------------------------- -# Script: SafeCloud - PATH (v6 - Ruta Final C:\ProgramData\SafeCloud) +# Script: SafeCloud - PATH (v7 - Añade soporte para .REG) # ----------------------------------------------------------------- -# Utilidad: Ejecutar scripts de https://recursos.safecloud.mx/support/scripts/raw/branch/main/ de manera nativa -# escribiendo únicamente el comando: safecloud-run NOMBRE-DE-SCRIPT que se encuentre en Gitea. - -Write-Host "Iniciando instalación de SafeCloud Runner v6..." +Write-Host "Iniciando instalación de SafeCloud Runner v7..." # --- 1. Definición de Variables --- $RutaNueva = "C:\ProgramData\SafeCloud" @@ -14,7 +11,7 @@ $ComandoNombre = "safecloud-run.cmd" $RutaCompletaCmd = Join-Path -Path $RutaNueva -ChildPath $ComandoNombre $URLGiteaBase = "https://recursos.safecloud.mx/support/scripts/raw/branch/main/" -# --- 2. Contenido del lanzador (v2.2 - Sanitizado) --- +# --- 2. Contenido del lanzador (v2.3 - Soporta .REG) --- $ScriptContent = @" @echo off set "BASE_URL=$URLGiteaBase" @@ -28,6 +25,15 @@ set "TEMP_FILE=%TEMP%\safecloud_temp_%RANDOM%_%SAFE_SCRIPT_NAME%" powershell.exe -NoProfile -ExecutionPolicy Bypass -Command "Invoke-WebRequest -Uri '%FULL_URL%' -OutFile '%TEMP_FILE%' -ErrorAction Stop" if not exist "%TEMP_FILE%" ( goto :CLEANUP ) echo [SafeCloud] Ejecutando %SCRIPT_NAME%... + +:: --- (NUEVA LÓGICA PARA .REG) --- +if /I "%SCRIPT_EXTENSION%"==".reg" ( + echo [SafeCloud] Importando archivo de registro... + reg.exe import "%TEMP_FILE%" + goto :CLEANUP +) +:: --- (FIN DE LA NUEVA LÓGICA) --- + if /I "%SCRIPT_EXTENSION%"==".ps1" ( powershell.exe -ExecutionPolicy Bypass -File "%TEMP_FILE%" goto :CLEANUP @@ -41,6 +47,7 @@ if /I "%SCRIPT_EXTENSION%"==".bat" ( goto :CLEANUP ) echo [Error] Extension de archivo no soportada: %SCRIPT_EXTENSION% + :CLEANUP del "%TEMP_FILE%" 2>nul goto :eof @@ -55,7 +62,7 @@ if (Test-Path $RutaCompletaCmd) { Write-Host "Eliminando $RutaCompletaCmd anterior..." Remove-Item -Path $RutaCompletaCmd -Force } -Write-Host "Creando lanzador v6 en $RutaCompletaCmd..." +Write-Host "Creando lanzador v7 en $RutaCompletaCmd..." try { Set-Content -Path $RutaCompletaCmd -Value $ScriptContent -Force -ErrorAction Stop } catch { @@ -66,13 +73,8 @@ try { # --- 4. Actualización del PATH del Sistema (con limpieza) --- Write-Host "Actualizando PATH del Sistema..." $PathActual = [Environment]::GetEnvironmentVariable("Path", "Machine") - -# Limpiamos la ruta antigua (C:\TEMP) y la nueva (para evitar duplicados) $PathEntries = $PathActual.Split(';') | Where-Object { $_ -ne "" -and $_ -ne $RutaAntigua -and $_ -ne $RutaNueva } - -# Agregamos la nueva ruta al final $PathFinal = ($PathEntries + $RutaNueva) -join ';' - if ($PathFinal -ne $PathActual) { Write-Host "Actualizando PATH a: $PathFinal" [Environment]::SetEnvironmentVariable("Path", $PathFinal, "Machine") @@ -80,8 +82,6 @@ if ($PathFinal -ne $PathActual) { } else { Write-Host "El PATH ya está configurado correctamente." } - Write-Host "Ocultando archivo $RutaCompletaCmd..." (Get-Item $RutaCompletaCmd).Attributes += 'Hidden' - Write-Host "Proceso de instalación de SafeCloud-Runner completado." \ No newline at end of file