From cb468df88fa9fffddd77a3df7eec8c3f9c47753d Mon Sep 17 00:00:00 2001 From: jmrodev Date: Fri, 21 Mar 2025 12:05:27 -0300 Subject: [PATCH 01/13] add service management scripts and GUI for service control --- configurar_servicios.sh | 123 ++++++++++++++++++++++++++++ gestor_servicios.sh | 59 +++++++++++++ iniciar_secretary_backend.sh | 2 + iniciar_secretary_frontend.sh | 3 + start_ModemManager.sh | 2 + start_NetworkManager-wait-online.sh | 2 + start_avahi-daemon.sh | 2 + start_bluetooth.sh | 2 + start_colord.sh | 2 + start_cups-browsed.sh | 2 + start_httpd.sh | 2 + start_nmb.sh | 2 + start_org.cups.cupsd.sh | 2 + start_packagekit.sh | 2 + start_power-profiles-daemon.sh | 2 + start_rtkit-daemon.sh | 2 + start_smb.sh | 2 + start_sshd.sh | 2 + start_webmin.sh | 2 + start_wpa_supplicant.sh | 2 + stop_ModemManager.sh | 2 + stop_NetworkManager-wait-online.sh | 2 + stop_avahi-daemon.sh | 2 + stop_bluetooth.sh | 2 + stop_colord.sh | 2 + stop_cups-browsed.sh | 2 + stop_httpd.sh | 2 + stop_nmb.sh | 2 + stop_org.cups.cupsd.sh | 2 + stop_packagekit.sh | 2 + stop_power-profiles-daemon.sh | 2 + stop_rtkit-daemon.sh | 2 + stop_smb.sh | 2 + stop_sshd.sh | 2 + stop_webmin.sh | 2 + stop_wpa_supplicant.sh | 2 + 36 files changed, 251 insertions(+) create mode 100755 configurar_servicios.sh create mode 100755 gestor_servicios.sh create mode 100755 iniciar_secretary_backend.sh create mode 100755 iniciar_secretary_frontend.sh create mode 100755 start_ModemManager.sh create mode 100755 start_NetworkManager-wait-online.sh create mode 100755 start_avahi-daemon.sh create mode 100755 start_bluetooth.sh create mode 100755 start_colord.sh create mode 100755 start_cups-browsed.sh create mode 100755 start_httpd.sh create mode 100755 start_nmb.sh create mode 100755 start_org.cups.cupsd.sh create mode 100755 start_packagekit.sh create mode 100755 start_power-profiles-daemon.sh create mode 100755 start_rtkit-daemon.sh create mode 100755 start_smb.sh create mode 100755 start_sshd.sh create mode 100755 start_webmin.sh create mode 100755 start_wpa_supplicant.sh create mode 100755 stop_ModemManager.sh create mode 100755 stop_NetworkManager-wait-online.sh create mode 100755 stop_avahi-daemon.sh create mode 100755 stop_bluetooth.sh create mode 100755 stop_colord.sh create mode 100755 stop_cups-browsed.sh create mode 100755 stop_httpd.sh create mode 100755 stop_nmb.sh create mode 100755 stop_org.cups.cupsd.sh create mode 100755 stop_packagekit.sh create mode 100755 stop_power-profiles-daemon.sh create mode 100755 stop_rtkit-daemon.sh create mode 100755 stop_smb.sh create mode 100755 stop_sshd.sh create mode 100755 stop_webmin.sh create mode 100755 stop_wpa_supplicant.sh diff --git a/configurar_servicios.sh b/configurar_servicios.sh new file mode 100755 index 0000000..0095956 --- /dev/null +++ b/configurar_servicios.sh @@ -0,0 +1,123 @@ +#!/bin/bash + +# Directorio donde se almacenarán los scripts +SCRIPT_DIR="/home/$USER/scripts" + +# Verificar si el directorio de scripts existe, y crearlo si no existe +if [ ! -d "$SCRIPT_DIR" ]; then + mkdir -p "$SCRIPT_DIR" + echo "Directorio $SCRIPT_DIR creado." +fi + +# Lista de servicios +servicios=("ModemManager" "packagekit" "avahi-daemon" "colord" "nmb" "smb" "power-profiles-daemon" "rtkit-daemon" "NetworkManager-wait-online" "cups-browsed" "bluetooth" "wpa_supplicant" "org.cups.cupsd" "httpd" "webmin" "sshd") + +# Crear los scripts de inicio/detención para cada servicio +for servicio in "${servicios[@]}"; do + # Script de inicio + cat < "$SCRIPT_DIR/start_${servicio}.sh" +#!/bin/bash +sudo systemctl start ${servicio}.service +EOF + + # Script de detención + cat < "$SCRIPT_DIR/stop_${servicio}.sh" +#!/bin/bash +sudo systemctl stop ${servicio}.service +EOF + + echo "Scripts para $servicio creados en $SCRIPT_DIR." +done + +# Hacer que los scripts sean ejecutables +chmod +x "$SCRIPT_DIR"/start_*.sh "$SCRIPT_DIR"/stop_*.sh +echo "Scripts de inicio/detención hechos ejecutables." + +# Crear el script principal de gestión de servicios +cat < "$SCRIPT_DIR/gestor_servicios.sh" +#!/bin/bash + +# Solicitar contraseña de sudo al inicio de la aplicación +PASSWORD=\$(zenity --password --title="Autenticación requerida" --text="Ingrese su contraseña para gestionar servicios:") +if [ -z "\$PASSWORD" ]; then + zenity --error --title="Error" --text="No se ingresó una contraseña. La aplicación se cerrará." + exit 1 +fi + +# Agregar un salto de línea al final de la contraseña +PASSWORD="\$PASSWORD\n" + +# Verificar que la contraseña sea correcta +echo -e "\$PASSWORD" | sudo -S true 2>/dev/null +if [ \$? -ne 0 ]; then + zenity --error --title="Error" --text="Contraseña incorrecta. La aplicación se cerrará." + exit 1 +fi + +# Lista de servicios +servicios=("ModemManager" "packagekit" "avahi-daemon" "colord" "nmb" "smb" "power-profiles-daemon" "rtkit-daemon" "NetworkManager-wait-online" "cups-browsed" "bluetooth" "wpa_supplicant" "org.cups.cupsd" "httpd" "webmin" "sshd") + +# Función para obtener el estado de un servicio +get_status() { + local servicio=\$1 + if systemctl is-active --quiet "\$servicio.service"; then + echo "Encendido" + else + echo "Apagado" + fi +} + +# Crear la interfaz gráfica +while true; do + # Crear una lista de opciones para zenity + opciones=() + for servicio in "\${servicios[@]}"; do + estado=\$(get_status "\$servicio") + opciones+=("\$servicio" "\$estado") + done + + # Mostrar la interfaz gráfica con una ventana más grande + seleccion=\$(zenity --list --title="Gestión de Servicios" --column="Servicio" --column="Estado" "\${opciones[@]}" --extra-button="Salir" --width=600 --height=400) + + # Si el usuario selecciona "Salir", salir del bucle + if [ "\$seleccion" == "Salir" ]; then + break + fi + + # Si el usuario selecciona un servicio, mostrar opciones para iniciar/detener + if [ -n "\$seleccion" ]; then + accion=\$(zenity --list --title="Acción para \$seleccion" --column="Acción" "Iniciar" "Detener" --width=300 --height=200) + if [ "\$accion" == "Iniciar" ]; then + echo -e "\$PASSWORD" | sudo -S systemctl start "\$seleccion.service" + elif [ "\$accion" == "Detener" ]; then + echo -e "\$PASSWORD" | sudo -S systemctl stop "\$seleccion.service" + fi + fi +done +EOF + +# Hacer que el script principal sea ejecutable +chmod +x "$SCRIPT_DIR/gestor_servicios.sh" +echo "Script principal de gestión de servicios creado y hecho ejecutable." + +# Crear archivo .desktop para la aplicación de gestión de servicios +DESKTOP_DIR="/home/$USER/.local/share/applications" +if [ ! -d "$DESKTOP_DIR" ]; then + mkdir -p "$DESKTOP_DIR" + echo "Directorio $DESKTOP_DIR creado." +fi + +cat < "$DESKTOP_DIR/gestor_servicios.desktop" +[Desktop Entry] +Type=Application +Name=Gestor de Servicios +Exec=$SCRIPT_DIR/gestor_servicios.sh +Icon=system-run +Comment=Gestiona los servicios del sistema +EOF + +echo "Archivo .desktop para la aplicación de gestión de servicios creado en $DESKTOP_DIR." + +# Mensaje final +echo "¡Configuración completada!" +echo "Puedes ejecutar la aplicación 'Gestor de Servicios' desde el menú de aplicaciones." diff --git a/gestor_servicios.sh b/gestor_servicios.sh new file mode 100755 index 0000000..0a75ff9 --- /dev/null +++ b/gestor_servicios.sh @@ -0,0 +1,59 @@ +#!/bin/bash + +# Solicitar contraseña de sudo al inicio de la aplicación +PASSWORD=$(zenity --password --title="Autenticación requerida" --text="Ingrese su contraseña para gestionar servicios:") +if [ -z "$PASSWORD" ]; then + zenity --error --title="Error" --text="No se ingresó una contraseña. La aplicación se cerrará." + exit 1 +fi + +# Agregar un salto de línea al final de la contraseña +PASSWORD="$PASSWORD\n" + +# Verificar que la contraseña sea correcta +echo -e "$PASSWORD" | sudo -S true 2>/dev/null +if [ $? -ne 0 ]; then + zenity --error --title="Error" --text="Contraseña incorrecta. La aplicación se cerrará." + exit 1 +fi + +# Lista de servicios +servicios=("ModemManager" "packagekit" "avahi-daemon" "colord" "nmb" "smb" "power-profiles-daemon" "rtkit-daemon" "NetworkManager-wait-online" "cups-browsed" "bluetooth" "wpa_supplicant" "org.cups.cupsd" "httpd" "webmin" "sshd") + +# Función para obtener el estado de un servicio +get_status() { + local servicio=$1 + if systemctl is-active --quiet "$servicio.service"; then + echo "Encendido" + else + echo "Apagado" + fi +} + +# Crear la interfaz gráfica +while true; do + # Crear una lista de opciones para zenity + opciones=() + for servicio in "${servicios[@]}"; do + estado=$(get_status "$servicio") + opciones+=("$servicio" "$estado") + done + + # Mostrar la interfaz gráfica con una ventana más grande + seleccion=$(zenity --list --title="Gestión de Servicios" --column="Servicio" --column="Estado" "${opciones[@]}" --extra-button="Salir" --width=600 --height=400) + + # Si el usuario selecciona "Salir", salir del bucle + if [ "$seleccion" == "Salir" ]; then + break + fi + + # Si el usuario selecciona un servicio, mostrar opciones para iniciar/detener + if [ -n "$seleccion" ]; then + accion=$(zenity --list --title="Acción para $seleccion" --column="Acción" "Iniciar" "Detener" --width=300 --height=200) + if [ "$accion" == "Iniciar" ]; then + echo -e "$PASSWORD" | sudo -S systemctl start "$seleccion.service" + elif [ "$accion" == "Detener" ]; then + echo -e "$PASSWORD" | sudo -S systemctl stop "$seleccion.service" + fi + fi +done diff --git a/iniciar_secretary_backend.sh b/iniciar_secretary_backend.sh new file mode 100755 index 0000000..8ed23f9 --- /dev/null +++ b/iniciar_secretary_backend.sh @@ -0,0 +1,2 @@ +#!/bin/bash +cd Documentos/repositorios/secretary-backend/ && pnpm --watch start diff --git a/iniciar_secretary_frontend.sh b/iniciar_secretary_frontend.sh new file mode 100755 index 0000000..1ad562e --- /dev/null +++ b/iniciar_secretary_frontend.sh @@ -0,0 +1,3 @@ +#!/bin/bash +# cd Documentos/repositorios/calendar-react-vite/front/ && pnpm run dev + cd Documentos/repositorios/secretary-frontend/ && pnpm run dev diff --git a/start_ModemManager.sh b/start_ModemManager.sh new file mode 100755 index 0000000..f16fc9f --- /dev/null +++ b/start_ModemManager.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl start ModemManager.service diff --git a/start_NetworkManager-wait-online.sh b/start_NetworkManager-wait-online.sh new file mode 100755 index 0000000..4494e12 --- /dev/null +++ b/start_NetworkManager-wait-online.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl start NetworkManager-wait-online.service diff --git a/start_avahi-daemon.sh b/start_avahi-daemon.sh new file mode 100755 index 0000000..1b14566 --- /dev/null +++ b/start_avahi-daemon.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl start avahi-daemon.service diff --git a/start_bluetooth.sh b/start_bluetooth.sh new file mode 100755 index 0000000..e508a94 --- /dev/null +++ b/start_bluetooth.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl start bluetooth.service diff --git a/start_colord.sh b/start_colord.sh new file mode 100755 index 0000000..97dace8 --- /dev/null +++ b/start_colord.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl start colord.service diff --git a/start_cups-browsed.sh b/start_cups-browsed.sh new file mode 100755 index 0000000..2802c48 --- /dev/null +++ b/start_cups-browsed.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl start cups-browsed.service diff --git a/start_httpd.sh b/start_httpd.sh new file mode 100755 index 0000000..f0e510d --- /dev/null +++ b/start_httpd.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl start httpd.service diff --git a/start_nmb.sh b/start_nmb.sh new file mode 100755 index 0000000..52b74e8 --- /dev/null +++ b/start_nmb.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl start nmb.service diff --git a/start_org.cups.cupsd.sh b/start_org.cups.cupsd.sh new file mode 100755 index 0000000..adb3643 --- /dev/null +++ b/start_org.cups.cupsd.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl start org.cups.cupsd.service diff --git a/start_packagekit.sh b/start_packagekit.sh new file mode 100755 index 0000000..de9ac41 --- /dev/null +++ b/start_packagekit.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl start packagekit.service diff --git a/start_power-profiles-daemon.sh b/start_power-profiles-daemon.sh new file mode 100755 index 0000000..a919106 --- /dev/null +++ b/start_power-profiles-daemon.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl start power-profiles-daemon.service diff --git a/start_rtkit-daemon.sh b/start_rtkit-daemon.sh new file mode 100755 index 0000000..766a600 --- /dev/null +++ b/start_rtkit-daemon.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl start rtkit-daemon.service diff --git a/start_smb.sh b/start_smb.sh new file mode 100755 index 0000000..49969ac --- /dev/null +++ b/start_smb.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl start smb.service diff --git a/start_sshd.sh b/start_sshd.sh new file mode 100755 index 0000000..f42eaf8 --- /dev/null +++ b/start_sshd.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl start sshd.service diff --git a/start_webmin.sh b/start_webmin.sh new file mode 100755 index 0000000..4c11c0f --- /dev/null +++ b/start_webmin.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl start webmin.service diff --git a/start_wpa_supplicant.sh b/start_wpa_supplicant.sh new file mode 100755 index 0000000..ce673cc --- /dev/null +++ b/start_wpa_supplicant.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl start wpa_supplicant.service diff --git a/stop_ModemManager.sh b/stop_ModemManager.sh new file mode 100755 index 0000000..4ef2be8 --- /dev/null +++ b/stop_ModemManager.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl stop ModemManager.service diff --git a/stop_NetworkManager-wait-online.sh b/stop_NetworkManager-wait-online.sh new file mode 100755 index 0000000..dd8c45e --- /dev/null +++ b/stop_NetworkManager-wait-online.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl stop NetworkManager-wait-online.service diff --git a/stop_avahi-daemon.sh b/stop_avahi-daemon.sh new file mode 100755 index 0000000..2055ce4 --- /dev/null +++ b/stop_avahi-daemon.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl stop avahi-daemon.service diff --git a/stop_bluetooth.sh b/stop_bluetooth.sh new file mode 100755 index 0000000..65f7e19 --- /dev/null +++ b/stop_bluetooth.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl stop bluetooth.service diff --git a/stop_colord.sh b/stop_colord.sh new file mode 100755 index 0000000..60873aa --- /dev/null +++ b/stop_colord.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl stop colord.service diff --git a/stop_cups-browsed.sh b/stop_cups-browsed.sh new file mode 100755 index 0000000..25227f7 --- /dev/null +++ b/stop_cups-browsed.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl stop cups-browsed.service diff --git a/stop_httpd.sh b/stop_httpd.sh new file mode 100755 index 0000000..d8efebe --- /dev/null +++ b/stop_httpd.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl stop httpd.service diff --git a/stop_nmb.sh b/stop_nmb.sh new file mode 100755 index 0000000..1567b06 --- /dev/null +++ b/stop_nmb.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl stop nmb.service diff --git a/stop_org.cups.cupsd.sh b/stop_org.cups.cupsd.sh new file mode 100755 index 0000000..019a32f --- /dev/null +++ b/stop_org.cups.cupsd.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl stop org.cups.cupsd.service diff --git a/stop_packagekit.sh b/stop_packagekit.sh new file mode 100755 index 0000000..37d169c --- /dev/null +++ b/stop_packagekit.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl stop packagekit.service diff --git a/stop_power-profiles-daemon.sh b/stop_power-profiles-daemon.sh new file mode 100755 index 0000000..ff405ad --- /dev/null +++ b/stop_power-profiles-daemon.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl stop power-profiles-daemon.service diff --git a/stop_rtkit-daemon.sh b/stop_rtkit-daemon.sh new file mode 100755 index 0000000..ca2ed45 --- /dev/null +++ b/stop_rtkit-daemon.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl stop rtkit-daemon.service diff --git a/stop_smb.sh b/stop_smb.sh new file mode 100755 index 0000000..93eec66 --- /dev/null +++ b/stop_smb.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl stop smb.service diff --git a/stop_sshd.sh b/stop_sshd.sh new file mode 100755 index 0000000..7da7904 --- /dev/null +++ b/stop_sshd.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl stop sshd.service diff --git a/stop_webmin.sh b/stop_webmin.sh new file mode 100755 index 0000000..e3e1689 --- /dev/null +++ b/stop_webmin.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl stop webmin.service diff --git a/stop_wpa_supplicant.sh b/stop_wpa_supplicant.sh new file mode 100755 index 0000000..ef2bf6a --- /dev/null +++ b/stop_wpa_supplicant.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo systemctl stop wpa_supplicant.service From 78102d57f84eb7f5aae3835583efddc955f8baad Mon Sep 17 00:00:00 2001 From: jmrodev Date: Fri, 21 Mar 2025 12:39:43 -0300 Subject: [PATCH 02/13] add new utility scripts for network management and system configuration --- .../backup archlinux}/aur_packages_backup.txt | 0 .../repo_packages_backup.txt | 0 .../backup archlinux}/software_backup.sh | 0 .../backup archlinux}/testfull.sh | 0 .../backupAndRestoreConfigs.sh | 0 backupApps.sh => backup/backupApps.sh | 0 backupDots.sh => backup/backupDots.sh | 0 .../iniciar_secretary_backend.sh | 0 .../iniciar_secretary_frontend.sh | 0 laranew.sh => dev/laranew.sh | 0 .../react}/backend/mern/crearserver.sh | 0 .../script React vite v2.sh | 0 juego.sh => games/juego.sh | 0 .../juegomultiplechoice.sh | 0 clonar_repos_gh.sh => git/clonar_repos_gh.sh | 0 .../clonar_repos_gh_full.sh | 0 clone.sh => git/clone.sh | 0 .../addRepoVisualStudio.sh | 0 .../build-manjaro-kde.sh | 0 .../instalacion_paquetes.sh | 0 .../install-samba.sh | 0 .../installOhMyzsh.sh | 0 .../install_brew.sh | 0 {lamp => instaladores/lamp}/exec/apache.sh | 0 {lamp => instaladores/lamp}/exec/mariadb.sh | 0 {lamp => instaladores/lamp}/exec/php.sh | 0 .../lamp}/exec/phpmyadmin.sh | 0 {lamp => instaladores/lamp}/install.sh | 0 .../desinstaladores/uninstall_apache.sh | 0 .../desinstaladores/uninstall_mariadb.sh | 0 .../lamp2}/desinstaladores/uninstall_php.sh | 0 .../desinstaladores/uninstall_phpmyadmin.sh | 0 .../lamp2}/ejecutables/apache.sh | 0 .../lamp2}/ejecutables/mariadb.sh | 0 .../lamp2}/ejecutables/php.sh | 0 .../lamp2}/ejecutables/phpmyadmin.sh | 0 {lamp2 => instaladores/lamp2}/install.sh | 0 {lamp2 => instaladores/lamp2}/uninstall.sh | 0 .../exec/config_install.sh | 0 .../manjaro_self_install}/install.sh | 0 {ngrok => instaladores/ngrok}/installNgrok.sh | 0 .../reinstalacion-de-manjaro}/backup.sh | 0 .../paquetes_instalados.txt | 0 .../reinstalacion-de-manjaro}/restore.sh | 0 main_menu.sh | 56 +++++++++++++++++++ extractPorts.sh => network/extractPorts.sh | 0 localIp.sh => network/localIp.sh | 0 macAddr.sh => network/macAddr.sh | 0 publicIp.sh => network/publicIp.sh | 0 appsPreview.sh => pacman/appsPreview.sh | 0 .../cambiar_estado_servicio.sh | 0 .../gestor_servicios.sh | 0 .../mange_systemd.sh | 0 killAuto.sh => system/killAuto.sh | 0 manColor.sh => system/manColor.sh | 0 memoria.sh => system/memoria.sh | 0 .../acelerateManjaro.sh | 0 .../buscar_eliminar_duplicados.sh | 0 configura.sh => utilities/configura.sh | 0 .../crear_password.sh | 0 duplicate.py => utilities/duplicate.py | 0 .../eliminajsonyvacios.py | 0 .../encfs decrypt}/contrasenas.txt | 0 .../encfs decrypt}/decrypt.bash | 0 .../encfs decrypt}/decrypt_file.sh | 0 find_man.sh => utilities/find_man.sh | 0 .../find_nd_extrct.sh | 0 fzf-lovely.sh => utilities/fzf-lovely.sh | 0 .../limpiarNumerosLineas.sh | 0 zshstats.sh => utilities/zshstats.sh | 0 70 files changed, 56 insertions(+) rename {backup archlinux => backup/backup archlinux}/aur_packages_backup.txt (100%) rename {backup archlinux => backup/backup archlinux}/repo_packages_backup.txt (100%) rename {backup archlinux => backup/backup archlinux}/software_backup.sh (100%) rename {backup archlinux => backup/backup archlinux}/testfull.sh (100%) rename backupAndRestoreConfigs.sh => backup/backupAndRestoreConfigs.sh (100%) rename backupApps.sh => backup/backupApps.sh (100%) rename backupDots.sh => backup/backupDots.sh (100%) rename iniciar_secretary_backend.sh => dev/iniciar_secretary_backend.sh (100%) rename iniciar_secretary_frontend.sh => dev/iniciar_secretary_frontend.sh (100%) rename laranew.sh => dev/laranew.sh (100%) rename {react => dev/react}/backend/mern/crearserver.sh (100%) rename script React vite v2.sh => dev/script React vite v2.sh (100%) rename juego.sh => games/juego.sh (100%) rename juegomultiplechoice.sh => games/juegomultiplechoice.sh (100%) rename clonar_repos_gh.sh => git/clonar_repos_gh.sh (100%) rename clonar_repos_gh_full.sh => git/clonar_repos_gh_full.sh (100%) rename clone.sh => git/clone.sh (100%) rename addRepoVisualStudio.sh => instaladores/addRepoVisualStudio.sh (100%) rename build-manjaro-kde.sh => instaladores/build-manjaro-kde.sh (100%) rename instalacion_paquetes.sh => instaladores/instalacion_paquetes.sh (100%) rename install-samba.sh => instaladores/install-samba.sh (100%) rename installOhMyzsh.sh => instaladores/installOhMyzsh.sh (100%) rename install_brew.sh => instaladores/install_brew.sh (100%) rename {lamp => instaladores/lamp}/exec/apache.sh (100%) rename {lamp => instaladores/lamp}/exec/mariadb.sh (100%) rename {lamp => instaladores/lamp}/exec/php.sh (100%) rename {lamp => instaladores/lamp}/exec/phpmyadmin.sh (100%) rename {lamp => instaladores/lamp}/install.sh (100%) rename {lamp2 => instaladores/lamp2}/desinstaladores/uninstall_apache.sh (100%) rename {lamp2 => instaladores/lamp2}/desinstaladores/uninstall_mariadb.sh (100%) rename {lamp2 => instaladores/lamp2}/desinstaladores/uninstall_php.sh (100%) rename {lamp2 => instaladores/lamp2}/desinstaladores/uninstall_phpmyadmin.sh (100%) rename {lamp2 => instaladores/lamp2}/ejecutables/apache.sh (100%) rename {lamp2 => instaladores/lamp2}/ejecutables/mariadb.sh (100%) rename {lamp2 => instaladores/lamp2}/ejecutables/php.sh (100%) rename {lamp2 => instaladores/lamp2}/ejecutables/phpmyadmin.sh (100%) rename {lamp2 => instaladores/lamp2}/install.sh (100%) rename {lamp2 => instaladores/lamp2}/uninstall.sh (100%) rename {manjaro_self_install => instaladores/manjaro_self_install}/exec/config_install.sh (100%) rename {manjaro_self_install => instaladores/manjaro_self_install}/install.sh (100%) rename {ngrok => instaladores/ngrok}/installNgrok.sh (100%) rename {reinstalacion-de-manjaro => instaladores/reinstalacion-de-manjaro}/backup.sh (100%) rename {reinstalacion-de-manjaro => instaladores/reinstalacion-de-manjaro}/paquetes_instalados.txt (100%) rename {reinstalacion-de-manjaro => instaladores/reinstalacion-de-manjaro}/restore.sh (100%) create mode 100644 main_menu.sh rename extractPorts.sh => network/extractPorts.sh (100%) rename localIp.sh => network/localIp.sh (100%) rename macAddr.sh => network/macAddr.sh (100%) rename publicIp.sh => network/publicIp.sh (100%) rename appsPreview.sh => pacman/appsPreview.sh (100%) rename cambiar_estado_servicio.sh => servicios/cambiar_estado_servicio.sh (100%) rename gestor_servicios.sh => servicios/gestor_servicios.sh (100%) rename mange_systemd.sh => servicios/mange_systemd.sh (100%) rename killAuto.sh => system/killAuto.sh (100%) rename manColor.sh => system/manColor.sh (100%) rename memoria.sh => system/memoria.sh (100%) rename acelerateManjaro.sh => utilities/acelerateManjaro.sh (100%) rename buscar_eliminar_duplicados.sh => utilities/buscar_eliminar_duplicados.sh (100%) rename configura.sh => utilities/configura.sh (100%) rename crear_password.sh => utilities/crear_password.sh (100%) rename duplicate.py => utilities/duplicate.py (100%) rename eliminajsonyvacios.py => utilities/eliminajsonyvacios.py (100%) rename {encfs decrypt => utilities/encfs decrypt}/contrasenas.txt (100%) rename {encfs decrypt => utilities/encfs decrypt}/decrypt.bash (100%) rename {encfs decrypt => utilities/encfs decrypt}/decrypt_file.sh (100%) rename find_man.sh => utilities/find_man.sh (100%) rename find_nd_extrct.sh => utilities/find_nd_extrct.sh (100%) rename fzf-lovely.sh => utilities/fzf-lovely.sh (100%) rename limpiarNumerosLineas.sh => utilities/limpiarNumerosLineas.sh (100%) rename zshstats.sh => utilities/zshstats.sh (100%) diff --git a/backup archlinux/aur_packages_backup.txt b/backup/backup archlinux/aur_packages_backup.txt similarity index 100% rename from backup archlinux/aur_packages_backup.txt rename to backup/backup archlinux/aur_packages_backup.txt diff --git a/backup archlinux/repo_packages_backup.txt b/backup/backup archlinux/repo_packages_backup.txt similarity index 100% rename from backup archlinux/repo_packages_backup.txt rename to backup/backup archlinux/repo_packages_backup.txt diff --git a/backup archlinux/software_backup.sh b/backup/backup archlinux/software_backup.sh similarity index 100% rename from backup archlinux/software_backup.sh rename to backup/backup archlinux/software_backup.sh diff --git a/backup archlinux/testfull.sh b/backup/backup archlinux/testfull.sh similarity index 100% rename from backup archlinux/testfull.sh rename to backup/backup archlinux/testfull.sh diff --git a/backupAndRestoreConfigs.sh b/backup/backupAndRestoreConfigs.sh similarity index 100% rename from backupAndRestoreConfigs.sh rename to backup/backupAndRestoreConfigs.sh diff --git a/backupApps.sh b/backup/backupApps.sh similarity index 100% rename from backupApps.sh rename to backup/backupApps.sh diff --git a/backupDots.sh b/backup/backupDots.sh similarity index 100% rename from backupDots.sh rename to backup/backupDots.sh diff --git a/iniciar_secretary_backend.sh b/dev/iniciar_secretary_backend.sh similarity index 100% rename from iniciar_secretary_backend.sh rename to dev/iniciar_secretary_backend.sh diff --git a/iniciar_secretary_frontend.sh b/dev/iniciar_secretary_frontend.sh similarity index 100% rename from iniciar_secretary_frontend.sh rename to dev/iniciar_secretary_frontend.sh diff --git a/laranew.sh b/dev/laranew.sh similarity index 100% rename from laranew.sh rename to dev/laranew.sh diff --git a/react/backend/mern/crearserver.sh b/dev/react/backend/mern/crearserver.sh similarity index 100% rename from react/backend/mern/crearserver.sh rename to dev/react/backend/mern/crearserver.sh diff --git a/script React vite v2.sh b/dev/script React vite v2.sh similarity index 100% rename from script React vite v2.sh rename to dev/script React vite v2.sh diff --git a/juego.sh b/games/juego.sh similarity index 100% rename from juego.sh rename to games/juego.sh diff --git a/juegomultiplechoice.sh b/games/juegomultiplechoice.sh similarity index 100% rename from juegomultiplechoice.sh rename to games/juegomultiplechoice.sh diff --git a/clonar_repos_gh.sh b/git/clonar_repos_gh.sh similarity index 100% rename from clonar_repos_gh.sh rename to git/clonar_repos_gh.sh diff --git a/clonar_repos_gh_full.sh b/git/clonar_repos_gh_full.sh similarity index 100% rename from clonar_repos_gh_full.sh rename to git/clonar_repos_gh_full.sh diff --git a/clone.sh b/git/clone.sh similarity index 100% rename from clone.sh rename to git/clone.sh diff --git a/addRepoVisualStudio.sh b/instaladores/addRepoVisualStudio.sh similarity index 100% rename from addRepoVisualStudio.sh rename to instaladores/addRepoVisualStudio.sh diff --git a/build-manjaro-kde.sh b/instaladores/build-manjaro-kde.sh similarity index 100% rename from build-manjaro-kde.sh rename to instaladores/build-manjaro-kde.sh diff --git a/instalacion_paquetes.sh b/instaladores/instalacion_paquetes.sh similarity index 100% rename from instalacion_paquetes.sh rename to instaladores/instalacion_paquetes.sh diff --git a/install-samba.sh b/instaladores/install-samba.sh similarity index 100% rename from install-samba.sh rename to instaladores/install-samba.sh diff --git a/installOhMyzsh.sh b/instaladores/installOhMyzsh.sh similarity index 100% rename from installOhMyzsh.sh rename to instaladores/installOhMyzsh.sh diff --git a/install_brew.sh b/instaladores/install_brew.sh similarity index 100% rename from install_brew.sh rename to instaladores/install_brew.sh diff --git a/lamp/exec/apache.sh b/instaladores/lamp/exec/apache.sh similarity index 100% rename from lamp/exec/apache.sh rename to instaladores/lamp/exec/apache.sh diff --git a/lamp/exec/mariadb.sh b/instaladores/lamp/exec/mariadb.sh similarity index 100% rename from lamp/exec/mariadb.sh rename to instaladores/lamp/exec/mariadb.sh diff --git a/lamp/exec/php.sh b/instaladores/lamp/exec/php.sh similarity index 100% rename from lamp/exec/php.sh rename to instaladores/lamp/exec/php.sh diff --git a/lamp/exec/phpmyadmin.sh b/instaladores/lamp/exec/phpmyadmin.sh similarity index 100% rename from lamp/exec/phpmyadmin.sh rename to instaladores/lamp/exec/phpmyadmin.sh diff --git a/lamp/install.sh b/instaladores/lamp/install.sh similarity index 100% rename from lamp/install.sh rename to instaladores/lamp/install.sh diff --git a/lamp2/desinstaladores/uninstall_apache.sh b/instaladores/lamp2/desinstaladores/uninstall_apache.sh similarity index 100% rename from lamp2/desinstaladores/uninstall_apache.sh rename to instaladores/lamp2/desinstaladores/uninstall_apache.sh diff --git a/lamp2/desinstaladores/uninstall_mariadb.sh b/instaladores/lamp2/desinstaladores/uninstall_mariadb.sh similarity index 100% rename from lamp2/desinstaladores/uninstall_mariadb.sh rename to instaladores/lamp2/desinstaladores/uninstall_mariadb.sh diff --git a/lamp2/desinstaladores/uninstall_php.sh b/instaladores/lamp2/desinstaladores/uninstall_php.sh similarity index 100% rename from lamp2/desinstaladores/uninstall_php.sh rename to instaladores/lamp2/desinstaladores/uninstall_php.sh diff --git a/lamp2/desinstaladores/uninstall_phpmyadmin.sh b/instaladores/lamp2/desinstaladores/uninstall_phpmyadmin.sh similarity index 100% rename from lamp2/desinstaladores/uninstall_phpmyadmin.sh rename to instaladores/lamp2/desinstaladores/uninstall_phpmyadmin.sh diff --git a/lamp2/ejecutables/apache.sh b/instaladores/lamp2/ejecutables/apache.sh similarity index 100% rename from lamp2/ejecutables/apache.sh rename to instaladores/lamp2/ejecutables/apache.sh diff --git a/lamp2/ejecutables/mariadb.sh b/instaladores/lamp2/ejecutables/mariadb.sh similarity index 100% rename from lamp2/ejecutables/mariadb.sh rename to instaladores/lamp2/ejecutables/mariadb.sh diff --git a/lamp2/ejecutables/php.sh b/instaladores/lamp2/ejecutables/php.sh similarity index 100% rename from lamp2/ejecutables/php.sh rename to instaladores/lamp2/ejecutables/php.sh diff --git a/lamp2/ejecutables/phpmyadmin.sh b/instaladores/lamp2/ejecutables/phpmyadmin.sh similarity index 100% rename from lamp2/ejecutables/phpmyadmin.sh rename to instaladores/lamp2/ejecutables/phpmyadmin.sh diff --git a/lamp2/install.sh b/instaladores/lamp2/install.sh similarity index 100% rename from lamp2/install.sh rename to instaladores/lamp2/install.sh diff --git a/lamp2/uninstall.sh b/instaladores/lamp2/uninstall.sh similarity index 100% rename from lamp2/uninstall.sh rename to instaladores/lamp2/uninstall.sh diff --git a/manjaro_self_install/exec/config_install.sh b/instaladores/manjaro_self_install/exec/config_install.sh similarity index 100% rename from manjaro_self_install/exec/config_install.sh rename to instaladores/manjaro_self_install/exec/config_install.sh diff --git a/manjaro_self_install/install.sh b/instaladores/manjaro_self_install/install.sh similarity index 100% rename from manjaro_self_install/install.sh rename to instaladores/manjaro_self_install/install.sh diff --git a/ngrok/installNgrok.sh b/instaladores/ngrok/installNgrok.sh similarity index 100% rename from ngrok/installNgrok.sh rename to instaladores/ngrok/installNgrok.sh diff --git a/reinstalacion-de-manjaro/backup.sh b/instaladores/reinstalacion-de-manjaro/backup.sh similarity index 100% rename from reinstalacion-de-manjaro/backup.sh rename to instaladores/reinstalacion-de-manjaro/backup.sh diff --git a/reinstalacion-de-manjaro/paquetes_instalados.txt b/instaladores/reinstalacion-de-manjaro/paquetes_instalados.txt similarity index 100% rename from reinstalacion-de-manjaro/paquetes_instalados.txt rename to instaladores/reinstalacion-de-manjaro/paquetes_instalados.txt diff --git a/reinstalacion-de-manjaro/restore.sh b/instaladores/reinstalacion-de-manjaro/restore.sh similarity index 100% rename from reinstalacion-de-manjaro/restore.sh rename to instaladores/reinstalacion-de-manjaro/restore.sh diff --git a/main_menu.sh b/main_menu.sh new file mode 100644 index 0000000..c6a8c97 --- /dev/null +++ b/main_menu.sh @@ -0,0 +1,56 @@ +#!/bin/bash + +# Ruta base de los scripts organizados +BASE_DIR="/home/jmro/scripts" + +# Función para mostrar el menú principal +show_main_menu() { + echo "Seleccione una categoría:" + echo "1) System" + echo "2) Network" + echo "3) Backup" + echo "4) Development" + echo "5) Utilities" + echo "0) Salir" + read -p "Ingrese una opción: " category +} + +# Función para listar y ejecutar scripts en una categoría +list_and_execute_scripts() { + local category_dir="$1" + local scripts=("$category_dir"/*.sh) + + if [ ${#scripts[@]} -eq 0 ]; then + echo "No hay scripts disponibles en esta categoría." + return + fi + + echo "Seleccione un script para ejecutar:" + for i in "${!scripts[@]}"; do + echo "$((i + 1))) $(basename "${scripts[$i]}")" + done + echo "0) Volver al menú principal" + read -p "Ingrese una opción: " script_choice + + if [ "$script_choice" -eq 0 ]; then + return + elif [ "$script_choice" -ge 1 ] && [ "$script_choice" -le ${#scripts[@]} ]; then + bash "${scripts[$((script_choice - 1))]}" + else + echo "Opción no válida." + fi +} + +# Menú principal +while true; do + show_main_menu + case $category in + 1) list_and_execute_scripts "$BASE_DIR/system" ;; + 2) list_and_execute_scripts "$BASE_DIR/network" ;; + 3) list_and_execute_scripts "$BASE_DIR/backup" ;; + 4) list_and_execute_scripts "$BASE_DIR/dev" ;; + 5) list_and_execute_scripts "$BASE_DIR/utilities" ;; + 0) echo "Saliendo..."; exit 0 ;; + *) echo "Opción no válida." ;; + esac +done diff --git a/extractPorts.sh b/network/extractPorts.sh similarity index 100% rename from extractPorts.sh rename to network/extractPorts.sh diff --git a/localIp.sh b/network/localIp.sh similarity index 100% rename from localIp.sh rename to network/localIp.sh diff --git a/macAddr.sh b/network/macAddr.sh similarity index 100% rename from macAddr.sh rename to network/macAddr.sh diff --git a/publicIp.sh b/network/publicIp.sh similarity index 100% rename from publicIp.sh rename to network/publicIp.sh diff --git a/appsPreview.sh b/pacman/appsPreview.sh similarity index 100% rename from appsPreview.sh rename to pacman/appsPreview.sh diff --git a/cambiar_estado_servicio.sh b/servicios/cambiar_estado_servicio.sh similarity index 100% rename from cambiar_estado_servicio.sh rename to servicios/cambiar_estado_servicio.sh diff --git a/gestor_servicios.sh b/servicios/gestor_servicios.sh similarity index 100% rename from gestor_servicios.sh rename to servicios/gestor_servicios.sh diff --git a/mange_systemd.sh b/servicios/mange_systemd.sh similarity index 100% rename from mange_systemd.sh rename to servicios/mange_systemd.sh diff --git a/killAuto.sh b/system/killAuto.sh similarity index 100% rename from killAuto.sh rename to system/killAuto.sh diff --git a/manColor.sh b/system/manColor.sh similarity index 100% rename from manColor.sh rename to system/manColor.sh diff --git a/memoria.sh b/system/memoria.sh similarity index 100% rename from memoria.sh rename to system/memoria.sh diff --git a/acelerateManjaro.sh b/utilities/acelerateManjaro.sh similarity index 100% rename from acelerateManjaro.sh rename to utilities/acelerateManjaro.sh diff --git a/buscar_eliminar_duplicados.sh b/utilities/buscar_eliminar_duplicados.sh similarity index 100% rename from buscar_eliminar_duplicados.sh rename to utilities/buscar_eliminar_duplicados.sh diff --git a/configura.sh b/utilities/configura.sh similarity index 100% rename from configura.sh rename to utilities/configura.sh diff --git a/crear_password.sh b/utilities/crear_password.sh similarity index 100% rename from crear_password.sh rename to utilities/crear_password.sh diff --git a/duplicate.py b/utilities/duplicate.py similarity index 100% rename from duplicate.py rename to utilities/duplicate.py diff --git a/eliminajsonyvacios.py b/utilities/eliminajsonyvacios.py similarity index 100% rename from eliminajsonyvacios.py rename to utilities/eliminajsonyvacios.py diff --git a/encfs decrypt/contrasenas.txt b/utilities/encfs decrypt/contrasenas.txt similarity index 100% rename from encfs decrypt/contrasenas.txt rename to utilities/encfs decrypt/contrasenas.txt diff --git a/encfs decrypt/decrypt.bash b/utilities/encfs decrypt/decrypt.bash similarity index 100% rename from encfs decrypt/decrypt.bash rename to utilities/encfs decrypt/decrypt.bash diff --git a/encfs decrypt/decrypt_file.sh b/utilities/encfs decrypt/decrypt_file.sh similarity index 100% rename from encfs decrypt/decrypt_file.sh rename to utilities/encfs decrypt/decrypt_file.sh diff --git a/find_man.sh b/utilities/find_man.sh similarity index 100% rename from find_man.sh rename to utilities/find_man.sh diff --git a/find_nd_extrct.sh b/utilities/find_nd_extrct.sh similarity index 100% rename from find_nd_extrct.sh rename to utilities/find_nd_extrct.sh diff --git a/fzf-lovely.sh b/utilities/fzf-lovely.sh similarity index 100% rename from fzf-lovely.sh rename to utilities/fzf-lovely.sh diff --git a/limpiarNumerosLineas.sh b/utilities/limpiarNumerosLineas.sh similarity index 100% rename from limpiarNumerosLineas.sh rename to utilities/limpiarNumerosLineas.sh diff --git a/zshstats.sh b/utilities/zshstats.sh similarity index 100% rename from zshstats.sh rename to utilities/zshstats.sh From 622a11e94a08759ad48c532e8a4da69f32d205b9 Mon Sep 17 00:00:00 2001 From: jmrodev Date: Fri, 21 Mar 2025 19:01:02 -0300 Subject: [PATCH 03/13] add scripts to start secretary backend and frontend services --- iniciar_secretary_backend.sh | 2 ++ iniciar_secretary_frontend.sh | 3 +++ 2 files changed, 5 insertions(+) create mode 100755 iniciar_secretary_backend.sh create mode 100755 iniciar_secretary_frontend.sh diff --git a/iniciar_secretary_backend.sh b/iniciar_secretary_backend.sh new file mode 100755 index 0000000..8ed23f9 --- /dev/null +++ b/iniciar_secretary_backend.sh @@ -0,0 +1,2 @@ +#!/bin/bash +cd Documentos/repositorios/secretary-backend/ && pnpm --watch start diff --git a/iniciar_secretary_frontend.sh b/iniciar_secretary_frontend.sh new file mode 100755 index 0000000..1ad562e --- /dev/null +++ b/iniciar_secretary_frontend.sh @@ -0,0 +1,3 @@ +#!/bin/bash +# cd Documentos/repositorios/calendar-react-vite/front/ && pnpm run dev + cd Documentos/repositorios/secretary-frontend/ && pnpm run dev From 28f8add9344eeac297e3e16a2052e5076140cd38 Mon Sep 17 00:00:00 2001 From: jmrodev Date: Tue, 25 Mar 2025 00:36:32 -0300 Subject: [PATCH 04/13] refactor: reorganize service control scripts into zenity-service directory --- .../app}/gestor_servicios.sh | 48 ++++++++++- .../app/scripts/start_ModemManager.sh | 0 .../start_NetworkManager-wait-online.sh | 0 .../app/scripts/start_avahi-daemon.sh | 0 .../app/scripts/start_bluetooth.sh | 0 .../app/scripts/start_colord.sh | 0 .../app/scripts/start_cups-browsed.sh | 0 .../zenity-service/app/scripts/start_httpd.sh | 0 .../zenity-service/app/scripts/start_nmb.sh | 0 .../app/scripts/start_org.cups.cupsd.sh | 0 .../app/scripts/start_packagekit.sh | 0 .../scripts/start_power-profiles-daemon.sh | 0 .../app/scripts/start_rtkit-daemon.sh | 0 .../zenity-service/app/scripts/start_smb.sh | 0 .../zenity-service/app/scripts/start_sshd.sh | 0 .../app/scripts/start_webmin.sh | 0 .../app/scripts/start_wpa_supplicant.sh | 0 .../app/scripts/stop_ModemManager.sh | 0 .../stop_NetworkManager-wait-online.sh | 0 .../app/scripts/stop_avahi-daemon.sh | 0 .../app/scripts/stop_bluetooth.sh | 0 .../zenity-service/app/scripts/stop_colord.sh | 0 .../app/scripts/stop_cups-browsed.sh | 0 .../zenity-service/app/scripts/stop_httpd.sh | 0 .../zenity-service/app/scripts/stop_nmb.sh | 0 .../app/scripts/stop_org.cups.cupsd.sh | 0 .../app/scripts/stop_packagekit.sh | 0 .../app/scripts/stop_power-profiles-daemon.sh | 0 .../app/scripts/stop_rtkit-daemon.sh | 0 .../zenity-service/app/scripts/stop_smb.sh | 0 .../zenity-service/app/scripts/stop_sshd.sh | 0 .../zenity-service/app/scripts/stop_webmin.sh | 0 .../app/scripts/stop_wpa_supplicant.sh | 0 .../zenity-service/configurar_servicios.sh | 85 +++++++++++++++---- 34 files changed, 111 insertions(+), 22 deletions(-) rename servicios/{ => zenity-service/app}/gestor_servicios.sh (50%) rename start_ModemManager.sh => servicios/zenity-service/app/scripts/start_ModemManager.sh (100%) rename start_NetworkManager-wait-online.sh => servicios/zenity-service/app/scripts/start_NetworkManager-wait-online.sh (100%) rename start_avahi-daemon.sh => servicios/zenity-service/app/scripts/start_avahi-daemon.sh (100%) rename start_bluetooth.sh => servicios/zenity-service/app/scripts/start_bluetooth.sh (100%) rename start_colord.sh => servicios/zenity-service/app/scripts/start_colord.sh (100%) rename start_cups-browsed.sh => servicios/zenity-service/app/scripts/start_cups-browsed.sh (100%) rename start_httpd.sh => servicios/zenity-service/app/scripts/start_httpd.sh (100%) rename start_nmb.sh => servicios/zenity-service/app/scripts/start_nmb.sh (100%) rename start_org.cups.cupsd.sh => servicios/zenity-service/app/scripts/start_org.cups.cupsd.sh (100%) rename start_packagekit.sh => servicios/zenity-service/app/scripts/start_packagekit.sh (100%) rename start_power-profiles-daemon.sh => servicios/zenity-service/app/scripts/start_power-profiles-daemon.sh (100%) rename start_rtkit-daemon.sh => servicios/zenity-service/app/scripts/start_rtkit-daemon.sh (100%) rename start_smb.sh => servicios/zenity-service/app/scripts/start_smb.sh (100%) rename start_sshd.sh => servicios/zenity-service/app/scripts/start_sshd.sh (100%) rename start_webmin.sh => servicios/zenity-service/app/scripts/start_webmin.sh (100%) rename start_wpa_supplicant.sh => servicios/zenity-service/app/scripts/start_wpa_supplicant.sh (100%) rename stop_ModemManager.sh => servicios/zenity-service/app/scripts/stop_ModemManager.sh (100%) rename stop_NetworkManager-wait-online.sh => servicios/zenity-service/app/scripts/stop_NetworkManager-wait-online.sh (100%) rename stop_avahi-daemon.sh => servicios/zenity-service/app/scripts/stop_avahi-daemon.sh (100%) rename stop_bluetooth.sh => servicios/zenity-service/app/scripts/stop_bluetooth.sh (100%) rename stop_colord.sh => servicios/zenity-service/app/scripts/stop_colord.sh (100%) rename stop_cups-browsed.sh => servicios/zenity-service/app/scripts/stop_cups-browsed.sh (100%) rename stop_httpd.sh => servicios/zenity-service/app/scripts/stop_httpd.sh (100%) rename stop_nmb.sh => servicios/zenity-service/app/scripts/stop_nmb.sh (100%) rename stop_org.cups.cupsd.sh => servicios/zenity-service/app/scripts/stop_org.cups.cupsd.sh (100%) rename stop_packagekit.sh => servicios/zenity-service/app/scripts/stop_packagekit.sh (100%) rename stop_power-profiles-daemon.sh => servicios/zenity-service/app/scripts/stop_power-profiles-daemon.sh (100%) rename stop_rtkit-daemon.sh => servicios/zenity-service/app/scripts/stop_rtkit-daemon.sh (100%) rename stop_smb.sh => servicios/zenity-service/app/scripts/stop_smb.sh (100%) rename stop_sshd.sh => servicios/zenity-service/app/scripts/stop_sshd.sh (100%) rename stop_webmin.sh => servicios/zenity-service/app/scripts/stop_webmin.sh (100%) rename stop_wpa_supplicant.sh => servicios/zenity-service/app/scripts/stop_wpa_supplicant.sh (100%) rename configurar_servicios.sh => servicios/zenity-service/configurar_servicios.sh (52%) diff --git a/servicios/gestor_servicios.sh b/servicios/zenity-service/app/gestor_servicios.sh similarity index 50% rename from servicios/gestor_servicios.sh rename to servicios/zenity-service/app/gestor_servicios.sh index 0a75ff9..7332111 100755 --- a/servicios/gestor_servicios.sh +++ b/servicios/zenity-service/app/gestor_servicios.sh @@ -33,27 +33,67 @@ get_status() { # Crear la interfaz gráfica while true; do # Crear una lista de opciones para zenity - opciones=() + opciones=("Encender todos" "Acción global" "Apagar todos" "Acción global" "Habilitar todos" "Acción global" "Deshabilitar todos" "Acción global") for servicio in "${servicios[@]}"; do estado=$(get_status "$servicio") opciones+=("$servicio" "$estado") done # Mostrar la interfaz gráfica con una ventana más grande - seleccion=$(zenity --list --title="Gestión de Servicios" --column="Servicio" --column="Estado" "${opciones[@]}" --extra-button="Salir" --width=600 --height=400) + seleccion=$(zenity --list --title="Gestión de Servicios" --column="Servicio" --column="Estado" "${opciones[@]}" --extra-button="Salir" --width=800 --height=600) # Si el usuario selecciona "Salir", salir del bucle if [ "$seleccion" == "Salir" ]; then break fi - # Si el usuario selecciona un servicio, mostrar opciones para iniciar/detener + # Si el usuario selecciona "Encender todos" + if [ "$seleccion" == "Encender todos" ]; then + for servicio in "${servicios[@]}"; do + echo -e "$PASSWORD" | sudo -S systemctl start "$servicio.service" + done + zenity --info --title="Encender todos" --text="Todos los servicios han sido encendidos." + continue + fi + + # Si el usuario selecciona "Apagar todos" + if [ "$seleccion" == "Apagar todos" ]; then + for servicio in "${servicios[@]}"; do + echo -e "$PASSWORD" | sudo -S systemctl stop "$servicio.service" + done + zenity --info --title="Apagar todos" --text="Todos los servicios han sido apagados." + continue + fi + + # Si el usuario selecciona "Habilitar todos" + if [ "$seleccion" == "Habilitar todos" ]; then + for servicio in "${servicios[@]}"; do + echo -e "$PASSWORD" | sudo -S systemctl enable "$servicio.service" + done + zenity --info --title="Habilitar todos" --text="Todos los servicios han sido habilitados." + continue + fi + + # Si el usuario selecciona "Deshabilitar todos" + if [ "$seleccion" == "Deshabilitar todos" ]; then + for servicio in "${servicios[@]}"; do + echo -e "$PASSWORD" | sudo -S systemctl disable "$servicio.service" + done + zenity --info --title="Deshabilitar todos" --text="Todos los servicios han sido deshabilitados." + continue + fi + + # Si el usuario selecciona un servicio, mostrar opciones para iniciar/detener/habilitar/deshabilitar if [ -n "$seleccion" ]; then - accion=$(zenity --list --title="Acción para $seleccion" --column="Acción" "Iniciar" "Detener" --width=300 --height=200) + accion=$(zenity --list --title="Acción para $seleccion" --column="Acción" "Iniciar" "Detener" "Habilitar" "Deshabilitar" --width=600 --height=400) if [ "$accion" == "Iniciar" ]; then echo -e "$PASSWORD" | sudo -S systemctl start "$seleccion.service" elif [ "$accion" == "Detener" ]; then echo -e "$PASSWORD" | sudo -S systemctl stop "$seleccion.service" + elif [ "$accion" == "Habilitar" ]; then + echo -e "$PASSWORD" | sudo -S systemctl enable "$seleccion.service" + elif [ "$accion" == "Deshabilitar" ]; then + echo -e "$PASSWORD" | sudo -S systemctl disable "$seleccion.service" fi fi done diff --git a/start_ModemManager.sh b/servicios/zenity-service/app/scripts/start_ModemManager.sh similarity index 100% rename from start_ModemManager.sh rename to servicios/zenity-service/app/scripts/start_ModemManager.sh diff --git a/start_NetworkManager-wait-online.sh b/servicios/zenity-service/app/scripts/start_NetworkManager-wait-online.sh similarity index 100% rename from start_NetworkManager-wait-online.sh rename to servicios/zenity-service/app/scripts/start_NetworkManager-wait-online.sh diff --git a/start_avahi-daemon.sh b/servicios/zenity-service/app/scripts/start_avahi-daemon.sh similarity index 100% rename from start_avahi-daemon.sh rename to servicios/zenity-service/app/scripts/start_avahi-daemon.sh diff --git a/start_bluetooth.sh b/servicios/zenity-service/app/scripts/start_bluetooth.sh similarity index 100% rename from start_bluetooth.sh rename to servicios/zenity-service/app/scripts/start_bluetooth.sh diff --git a/start_colord.sh b/servicios/zenity-service/app/scripts/start_colord.sh similarity index 100% rename from start_colord.sh rename to servicios/zenity-service/app/scripts/start_colord.sh diff --git a/start_cups-browsed.sh b/servicios/zenity-service/app/scripts/start_cups-browsed.sh similarity index 100% rename from start_cups-browsed.sh rename to servicios/zenity-service/app/scripts/start_cups-browsed.sh diff --git a/start_httpd.sh b/servicios/zenity-service/app/scripts/start_httpd.sh similarity index 100% rename from start_httpd.sh rename to servicios/zenity-service/app/scripts/start_httpd.sh diff --git a/start_nmb.sh b/servicios/zenity-service/app/scripts/start_nmb.sh similarity index 100% rename from start_nmb.sh rename to servicios/zenity-service/app/scripts/start_nmb.sh diff --git a/start_org.cups.cupsd.sh b/servicios/zenity-service/app/scripts/start_org.cups.cupsd.sh similarity index 100% rename from start_org.cups.cupsd.sh rename to servicios/zenity-service/app/scripts/start_org.cups.cupsd.sh diff --git a/start_packagekit.sh b/servicios/zenity-service/app/scripts/start_packagekit.sh similarity index 100% rename from start_packagekit.sh rename to servicios/zenity-service/app/scripts/start_packagekit.sh diff --git a/start_power-profiles-daemon.sh b/servicios/zenity-service/app/scripts/start_power-profiles-daemon.sh similarity index 100% rename from start_power-profiles-daemon.sh rename to servicios/zenity-service/app/scripts/start_power-profiles-daemon.sh diff --git a/start_rtkit-daemon.sh b/servicios/zenity-service/app/scripts/start_rtkit-daemon.sh similarity index 100% rename from start_rtkit-daemon.sh rename to servicios/zenity-service/app/scripts/start_rtkit-daemon.sh diff --git a/start_smb.sh b/servicios/zenity-service/app/scripts/start_smb.sh similarity index 100% rename from start_smb.sh rename to servicios/zenity-service/app/scripts/start_smb.sh diff --git a/start_sshd.sh b/servicios/zenity-service/app/scripts/start_sshd.sh similarity index 100% rename from start_sshd.sh rename to servicios/zenity-service/app/scripts/start_sshd.sh diff --git a/start_webmin.sh b/servicios/zenity-service/app/scripts/start_webmin.sh similarity index 100% rename from start_webmin.sh rename to servicios/zenity-service/app/scripts/start_webmin.sh diff --git a/start_wpa_supplicant.sh b/servicios/zenity-service/app/scripts/start_wpa_supplicant.sh similarity index 100% rename from start_wpa_supplicant.sh rename to servicios/zenity-service/app/scripts/start_wpa_supplicant.sh diff --git a/stop_ModemManager.sh b/servicios/zenity-service/app/scripts/stop_ModemManager.sh similarity index 100% rename from stop_ModemManager.sh rename to servicios/zenity-service/app/scripts/stop_ModemManager.sh diff --git a/stop_NetworkManager-wait-online.sh b/servicios/zenity-service/app/scripts/stop_NetworkManager-wait-online.sh similarity index 100% rename from stop_NetworkManager-wait-online.sh rename to servicios/zenity-service/app/scripts/stop_NetworkManager-wait-online.sh diff --git a/stop_avahi-daemon.sh b/servicios/zenity-service/app/scripts/stop_avahi-daemon.sh similarity index 100% rename from stop_avahi-daemon.sh rename to servicios/zenity-service/app/scripts/stop_avahi-daemon.sh diff --git a/stop_bluetooth.sh b/servicios/zenity-service/app/scripts/stop_bluetooth.sh similarity index 100% rename from stop_bluetooth.sh rename to servicios/zenity-service/app/scripts/stop_bluetooth.sh diff --git a/stop_colord.sh b/servicios/zenity-service/app/scripts/stop_colord.sh similarity index 100% rename from stop_colord.sh rename to servicios/zenity-service/app/scripts/stop_colord.sh diff --git a/stop_cups-browsed.sh b/servicios/zenity-service/app/scripts/stop_cups-browsed.sh similarity index 100% rename from stop_cups-browsed.sh rename to servicios/zenity-service/app/scripts/stop_cups-browsed.sh diff --git a/stop_httpd.sh b/servicios/zenity-service/app/scripts/stop_httpd.sh similarity index 100% rename from stop_httpd.sh rename to servicios/zenity-service/app/scripts/stop_httpd.sh diff --git a/stop_nmb.sh b/servicios/zenity-service/app/scripts/stop_nmb.sh similarity index 100% rename from stop_nmb.sh rename to servicios/zenity-service/app/scripts/stop_nmb.sh diff --git a/stop_org.cups.cupsd.sh b/servicios/zenity-service/app/scripts/stop_org.cups.cupsd.sh similarity index 100% rename from stop_org.cups.cupsd.sh rename to servicios/zenity-service/app/scripts/stop_org.cups.cupsd.sh diff --git a/stop_packagekit.sh b/servicios/zenity-service/app/scripts/stop_packagekit.sh similarity index 100% rename from stop_packagekit.sh rename to servicios/zenity-service/app/scripts/stop_packagekit.sh diff --git a/stop_power-profiles-daemon.sh b/servicios/zenity-service/app/scripts/stop_power-profiles-daemon.sh similarity index 100% rename from stop_power-profiles-daemon.sh rename to servicios/zenity-service/app/scripts/stop_power-profiles-daemon.sh diff --git a/stop_rtkit-daemon.sh b/servicios/zenity-service/app/scripts/stop_rtkit-daemon.sh similarity index 100% rename from stop_rtkit-daemon.sh rename to servicios/zenity-service/app/scripts/stop_rtkit-daemon.sh diff --git a/stop_smb.sh b/servicios/zenity-service/app/scripts/stop_smb.sh similarity index 100% rename from stop_smb.sh rename to servicios/zenity-service/app/scripts/stop_smb.sh diff --git a/stop_sshd.sh b/servicios/zenity-service/app/scripts/stop_sshd.sh similarity index 100% rename from stop_sshd.sh rename to servicios/zenity-service/app/scripts/stop_sshd.sh diff --git a/stop_webmin.sh b/servicios/zenity-service/app/scripts/stop_webmin.sh similarity index 100% rename from stop_webmin.sh rename to servicios/zenity-service/app/scripts/stop_webmin.sh diff --git a/stop_wpa_supplicant.sh b/servicios/zenity-service/app/scripts/stop_wpa_supplicant.sh similarity index 100% rename from stop_wpa_supplicant.sh rename to servicios/zenity-service/app/scripts/stop_wpa_supplicant.sh diff --git a/configurar_servicios.sh b/servicios/zenity-service/configurar_servicios.sh similarity index 52% rename from configurar_servicios.sh rename to servicios/zenity-service/configurar_servicios.sh index 0095956..a6915d0 100755 --- a/configurar_servicios.sh +++ b/servicios/zenity-service/configurar_servicios.sh @@ -1,12 +1,17 @@ #!/bin/bash - +# Variables para tamaños de ventanas de Zenity +ZENITY_LIST_WIDTH=800 +ZENITY_LIST_HEIGHT=600 +ZENITY_ACTION_WIDTH=600 +ZENITY_ACTION_HEIGHT=400 # Directorio donde se almacenarán los scripts -SCRIPT_DIR="/home/$USER/scripts" +SCRIPT_DIR="/home/$USER/scripts/servicios/zenity-service/app" +SCRIPTS_SUBDIR="$SCRIPT_DIR/scripts" # Verificar si el directorio de scripts existe, y crearlo si no existe -if [ ! -d "$SCRIPT_DIR" ]; then - mkdir -p "$SCRIPT_DIR" - echo "Directorio $SCRIPT_DIR creado." +if [ ! -d "$SCRIPTS_SUBDIR" ]; then + mkdir -p "$SCRIPTS_SUBDIR" || { echo "Error: No se pudo crear el directorio $SCRIPTS_SUBDIR."; exit 1; } + echo "Directorio $SCRIPTS_SUBDIR creado." fi # Lista de servicios @@ -15,24 +20,26 @@ servicios=("ModemManager" "packagekit" "avahi-daemon" "colord" "nmb" "smb" "powe # Crear los scripts de inicio/detención para cada servicio for servicio in "${servicios[@]}"; do # Script de inicio - cat < "$SCRIPT_DIR/start_${servicio}.sh" + cat < "$SCRIPTS_SUBDIR/start_${servicio}.sh" #!/bin/bash sudo systemctl start ${servicio}.service EOF - + # Script de detención - cat < "$SCRIPT_DIR/stop_${servicio}.sh" + cat < "$SCRIPTS_SUBDIR/stop_${servicio}.sh" #!/bin/bash sudo systemctl stop ${servicio}.service EOF - - echo "Scripts para $servicio creados en $SCRIPT_DIR." + + echo "Scripts para $servicio creados en $SCRIPTS_SUBDIR." done # Hacer que los scripts sean ejecutables -chmod +x "$SCRIPT_DIR"/start_*.sh "$SCRIPT_DIR"/stop_*.sh +chmod +x "$SCRIPTS_SUBDIR"/start_*.sh "$SCRIPTS_SUBDIR"/stop_*.sh || { echo "Error: No se pudieron asignar permisos ejecutables a los scripts."; exit 1; } echo "Scripts de inicio/detención hechos ejecutables." + + # Crear el script principal de gestión de servicios cat < "$SCRIPT_DIR/gestor_servicios.sh" #!/bin/bash @@ -70,40 +77,80 @@ get_status() { # Crear la interfaz gráfica while true; do # Crear una lista de opciones para zenity - opciones=() + opciones=("Encender todos" "Acción global" "Apagar todos" "Acción global" "Habilitar todos" "Acción global" "Deshabilitar todos" "Acción global") for servicio in "\${servicios[@]}"; do estado=\$(get_status "\$servicio") opciones+=("\$servicio" "\$estado") done # Mostrar la interfaz gráfica con una ventana más grande - seleccion=\$(zenity --list --title="Gestión de Servicios" --column="Servicio" --column="Estado" "\${opciones[@]}" --extra-button="Salir" --width=600 --height=400) + seleccion=\$(zenity --list --title="Gestión de Servicios" --column="Servicio" --column="Estado" "\${opciones[@]}" --extra-button="Salir" --width=$ZENITY_LIST_WIDTH --height=$ZENITY_LIST_HEIGHT) # Si el usuario selecciona "Salir", salir del bucle if [ "\$seleccion" == "Salir" ]; then break fi - # Si el usuario selecciona un servicio, mostrar opciones para iniciar/detener + # Si el usuario selecciona "Encender todos" + if [ "\$seleccion" == "Encender todos" ]; then + for servicio in "\${servicios[@]}"; do + echo -e "\$PASSWORD" | sudo -S systemctl start "\$servicio.service" + done + zenity --info --title="Encender todos" --text="Todos los servicios han sido encendidos." + continue + fi + + # Si el usuario selecciona "Apagar todos" + if [ "\$seleccion" == "Apagar todos" ]; then + for servicio in "\${servicios[@]}"; do + echo -e "\$PASSWORD" | sudo -S systemctl stop "\$servicio.service" + done + zenity --info --title="Apagar todos" --text="Todos los servicios han sido apagados." + continue + fi + + # Si el usuario selecciona "Habilitar todos" + if [ "\$seleccion" == "Habilitar todos" ]; then + for servicio in "\${servicios[@]}"; do + echo -e "\$PASSWORD" | sudo -S systemctl enable "\$servicio.service" + done + zenity --info --title="Habilitar todos" --text="Todos los servicios han sido habilitados." + continue + fi + + # Si el usuario selecciona "Deshabilitar todos" + if [ "\$seleccion" == "Deshabilitar todos" ]; then + for servicio in "\${servicios[@]}"; do + echo -e "\$PASSWORD" | sudo -S systemctl disable "\$servicio.service" + done + zenity --info --title="Deshabilitar todos" --text="Todos los servicios han sido deshabilitados." + continue + fi + + # Si el usuario selecciona un servicio, mostrar opciones para iniciar/detener/habilitar/deshabilitar if [ -n "\$seleccion" ]; then - accion=\$(zenity --list --title="Acción para \$seleccion" --column="Acción" "Iniciar" "Detener" --width=300 --height=200) + accion=\$(zenity --list --title="Acción para \$seleccion" --column="Acción" "Iniciar" "Detener" "Habilitar" "Deshabilitar" --width=$ZENITY_ACTION_WIDTH --height=$ZENITY_ACTION_HEIGHT) if [ "\$accion" == "Iniciar" ]; then echo -e "\$PASSWORD" | sudo -S systemctl start "\$seleccion.service" elif [ "\$accion" == "Detener" ]; then echo -e "\$PASSWORD" | sudo -S systemctl stop "\$seleccion.service" + elif [ "\$accion" == "Habilitar" ]; then + echo -e "\$PASSWORD" | sudo -S systemctl enable "\$seleccion.service" + elif [ "\$accion" == "Deshabilitar" ]; then + echo -e "\$PASSWORD" | sudo -S systemctl disable "\$seleccion.service" fi fi done EOF # Hacer que el script principal sea ejecutable -chmod +x "$SCRIPT_DIR/gestor_servicios.sh" +chmod +x "$SCRIPT_DIR/gestor_servicios.sh" || { echo "Error: No se pudo asignar permisos ejecutables al script principal."; exit 1; } echo "Script principal de gestión de servicios creado y hecho ejecutable." # Crear archivo .desktop para la aplicación de gestión de servicios DESKTOP_DIR="/home/$USER/.local/share/applications" if [ ! -d "$DESKTOP_DIR" ]; then - mkdir -p "$DESKTOP_DIR" + mkdir -p "$DESKTOP_DIR" || { echo "Error: No se pudo crear el directorio $DESKTOP_DIR."; exit 1; } echo "Directorio $DESKTOP_DIR creado." fi @@ -111,11 +158,13 @@ cat < "$DESKTOP_DIR/gestor_servicios.desktop" [Desktop Entry] Type=Application Name=Gestor de Servicios -Exec=$SCRIPT_DIR/gestor_servicios.sh +Exec=/home/$USER/scripts/servicios/zenity-service/app/gestor_servicios.sh Icon=system-run Comment=Gestiona los servicios del sistema EOF +# Asegurar que el archivo .desktop sea ejecutable +chmod +x "$DESKTOP_DIR/gestor_servicios.desktop" || { echo "Error: No se pudo asignar permisos ejecutables al archivo .desktop."; exit 1; } echo "Archivo .desktop para la aplicación de gestión de servicios creado en $DESKTOP_DIR." # Mensaje final From 5b61f36313a175d83f1d0935341166f3609d119d Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 19 May 2026 12:09:00 +0000 Subject: [PATCH 05/13] feat: organize scripts with category menus and dependency bootstrap Agent-Logs-Url: https://github.com/jmrodev/scripts/sessions/8929d5ec-551e-488e-aa0c-c3874b3c7d1f Co-authored-by: jmrodev <32540750+jmrodev@users.noreply.github.com> --- index.bash | 143 +++++++++++++++++++------ scripts/system/install_dependencies.sh | 114 ++++++++++++++++++++ 2 files changed, 226 insertions(+), 31 deletions(-) create mode 100755 scripts/system/install_dependencies.sh diff --git a/index.bash b/index.bash index 0522b98..feee12a 100755 --- a/index.bash +++ b/index.bash @@ -1,34 +1,115 @@ -#!/bin/bash - -# Ruta al directorio principal -MAIN_DIR="./" - -# Listar las carpetas disponibles en el directorio principal -echo "Carpetas disponibles:" -folders=("$MAIN_DIR"/*/) -for ((i = 0; i < ${#folders[@]}; i++)); do - echo "$(($i + 1))) $(basename "${folders[$i]}")" -done - -# Solicitar al usuario que elija la carpeta -echo "Ingrese el número de la carpeta que desea instalar (separados por espacios):" -read -r -a selections - -# Iterar sobre las selecciones y ejecutar los scripts de instalación en cada carpeta seleccionada -for selection in "${selections[@]}"; do - index=$((selection - 1)) - if [[ $index -ge 0 && $index -lt ${#folders[@]} ]]; then - folder="${folders[$index]}" - install_script="$folder/install.sh" - # Verificar si existe un script de instalación en la carpeta seleccionada - if [[ -f "$install_script" ]]; then - echo "Instalando desde la carpeta: $(basename "$folder")" - # Ejecutar el script de instalación en la carpeta seleccionada - bash "$install_script" - else - echo "No se encontró un script de instalación en la carpeta: $(basename "$folder")" +#!/usr/bin/env bash + +set -euo pipefail + +ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +SYSTEM_DIR="$ROOT_DIR/scripts/system" +NETWORK_DIR="$ROOT_DIR/scripts/network" +UTILS_DIR="$ROOT_DIR/scripts/utils" +LAMP_DIR="$ROOT_DIR/lamp" +DEPENDENCY_SCRIPT="$SYSTEM_DIR/install_dependencies.sh" + +print_header() { + echo + echo "==============================================" + echo " Scripts Manager (Linux / enfoque ArchLinux)" + echo "==============================================" + echo +} + +list_scripts() { + local dir="$1" + local exclude_file="${2:-}" + + find "$dir" -type f \( -name "*.sh" -o -name "*.bash" \) 2>/dev/null \ + | sort \ + | while IFS= read -r script; do + if [[ -n "$exclude_file" && "$script" == "$exclude_file" ]]; then + continue + fi + if [[ -x "$script" || "$script" == *.sh || "$script" == *.bash ]]; then + echo "$script" fi + done +} + +run_script() { + local script_path="$1" + + if [[ ! -f "$script_path" ]]; then + echo "No se encontró: $script_path" + return + fi + + echo + echo "Ejecutando: $script_path" + echo "----------------------------------------------" + bash "$script_path" + echo "----------------------------------------------" + echo + read -r -p "Presiona Enter para continuar..." _ +} + +show_category_menu() { + local category_name="$1" + local category_dir="$2" + local exclude_file="${3:-}" + + while true; do + mapfile -t scripts < <(list_scripts "$category_dir" "$exclude_file") + + echo + echo "=== $category_name ===" + + if [[ ${#scripts[@]} -eq 0 ]]; then + echo "No hay scripts disponibles en esta categoría." + read -r -p "Presiona Enter para volver..." _ + return + fi + + for i in "${!scripts[@]}"; do + relative_path="${scripts[$i]#"$ROOT_DIR"/}" + printf "%2d) %s\n" "$((i + 1))" "$relative_path" + done + echo " 0) Volver" + + read -r -p "Selecciona una opción: " choice + + if [[ "$choice" == "0" ]]; then + return + fi + + if [[ "$choice" =~ ^[0-9]+$ ]] && (( choice >= 1 && choice <= ${#scripts[@]} )); then + run_script "${scripts[$((choice - 1))]}" else - echo "El número de carpeta '$selection' no es válido." + echo "Opción inválida." fi -done + done +} + +main_menu() { + while true; do + print_header + echo "1) Instalar dependencias base (recomendado)" + echo "2) Menú de Sistema" + echo "3) Menú de Red" + echo "4) Menú de Utilidades" + echo "5) Menú LAMP" + echo "0) Salir" + echo + + read -r -p "Elige una opción: " option + + case "$option" in + 1) run_script "$DEPENDENCY_SCRIPT" ;; + 2) show_category_menu "Sistema" "$SYSTEM_DIR" "$DEPENDENCY_SCRIPT" ;; + 3) show_category_menu "Red" "$NETWORK_DIR" ;; + 4) show_category_menu "Utilidades" "$UTILS_DIR" ;; + 5) show_category_menu "LAMP" "$LAMP_DIR" ;; + 0) echo "Saliendo."; exit 0 ;; + *) echo "Opción inválida." ;; + esac + done +} + +main_menu diff --git a/scripts/system/install_dependencies.sh b/scripts/system/install_dependencies.sh new file mode 100755 index 0000000..c3115eb --- /dev/null +++ b/scripts/system/install_dependencies.sh @@ -0,0 +1,114 @@ +#!/usr/bin/env bash + +set -euo pipefail + +SUDO="" +if [[ ${EUID:-$(id -u)} -ne 0 ]]; then + SUDO="sudo" +fi + +detect_manager() { + if command -v pacman >/dev/null 2>&1; then + echo "pacman" + elif command -v apt-get >/dev/null 2>&1; then + echo "apt" + elif command -v dnf >/dev/null 2>&1; then + echo "dnf" + elif command -v zypper >/dev/null 2>&1; then + echo "zypper" + else + echo "" + fi +} + +is_arch_like() { + if [[ -f /etc/os-release ]]; then + . /etc/os-release + [[ "${ID:-}" =~ ^(arch|manjaro)$ ]] || [[ "${ID_LIKE:-}" == *"arch"* ]] + else + return 1 + fi +} + +install_with_pacman() { + local packages=( + bash coreutils grep sed gawk findutils + curl wget git openssh + nmap dialog zenity fzf + net-tools iproute2 + python python-pip + ) + + if is_arch_like; then + packages+=(base-devel) + fi + + echo "Instalando dependencias con pacman..." + $SUDO pacman -Sy --needed --noconfirm "${packages[@]}" +} + +install_with_apt() { + local packages=( + bash coreutils grep sed gawk findutils + curl wget git openssh-client + nmap dialog zenity fzf + net-tools iproute2 + python3 python3-pip + ) + + echo "Instalando dependencias con apt..." + $SUDO apt-get update + $SUDO apt-get install -y "${packages[@]}" +} + +install_with_dnf() { + local packages=( + bash coreutils grep sed gawk findutils + curl wget git openssh-clients + nmap dialog zenity fzf + net-tools iproute + python3 python3-pip + ) + + echo "Instalando dependencias con dnf..." + $SUDO dnf install -y "${packages[@]}" +} + +install_with_zypper() { + local packages=( + bash coreutils grep sed gawk findutils + curl wget git openssh + nmap dialog zenity fzf + net-tools iproute2 + python3 python3-pip + ) + + echo "Instalando dependencias con zypper..." + $SUDO zypper --non-interactive install "${packages[@]}" +} + +main() { + local manager + manager="$(detect_manager)" + + if [[ -z "$manager" ]]; then + echo "No se encontró un gestor de paquetes soportado (pacman/apt/dnf/zypper)." + exit 1 + fi + + case "$manager" in + pacman) install_with_pacman ;; + apt) install_with_apt ;; + dnf) install_with_dnf ;; + zypper) install_with_zypper ;; + *) + echo "Gestor de paquetes no soportado: $manager" + exit 1 + ;; + esac + + echo + echo "Dependencias base instaladas correctamente." +} + +main "$@" From d8eb818283ed84c2cab916b4367919ba83ae0b24 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 19 May 2026 12:15:56 +0000 Subject: [PATCH 06/13] fix: keep lamp scripts in launcher directory after branch merge Agent-Logs-Url: https://github.com/jmrodev/scripts/sessions/68222ca2-a6c7-4752-afe2-4db02995a3cb Co-authored-by: jmrodev <32540750+jmrodev@users.noreply.github.com> --- {instaladores/lamp => lamp}/install_apache.sh | 0 {instaladores/lamp => lamp}/install_mysql.sh | 0 {instaladores/lamp => lamp}/install_php.sh | 0 {instaladores/lamp => lamp}/main_installer.sh | 0 {instaladores/lamp => lamp}/secure_mariadb.exp | 0 {instaladores/lamp => lamp}/uninstall_apache.sh | 0 {instaladores/lamp => lamp}/uninstall_mysql.sh | 0 {instaladores/lamp => lamp}/uninstall_php.sh | 0 8 files changed, 0 insertions(+), 0 deletions(-) rename {instaladores/lamp => lamp}/install_apache.sh (100%) rename {instaladores/lamp => lamp}/install_mysql.sh (100%) rename {instaladores/lamp => lamp}/install_php.sh (100%) rename {instaladores/lamp => lamp}/main_installer.sh (100%) rename {instaladores/lamp => lamp}/secure_mariadb.exp (100%) rename {instaladores/lamp => lamp}/uninstall_apache.sh (100%) rename {instaladores/lamp => lamp}/uninstall_mysql.sh (100%) rename {instaladores/lamp => lamp}/uninstall_php.sh (100%) diff --git a/instaladores/lamp/install_apache.sh b/lamp/install_apache.sh similarity index 100% rename from instaladores/lamp/install_apache.sh rename to lamp/install_apache.sh diff --git a/instaladores/lamp/install_mysql.sh b/lamp/install_mysql.sh similarity index 100% rename from instaladores/lamp/install_mysql.sh rename to lamp/install_mysql.sh diff --git a/instaladores/lamp/install_php.sh b/lamp/install_php.sh similarity index 100% rename from instaladores/lamp/install_php.sh rename to lamp/install_php.sh diff --git a/instaladores/lamp/main_installer.sh b/lamp/main_installer.sh similarity index 100% rename from instaladores/lamp/main_installer.sh rename to lamp/main_installer.sh diff --git a/instaladores/lamp/secure_mariadb.exp b/lamp/secure_mariadb.exp similarity index 100% rename from instaladores/lamp/secure_mariadb.exp rename to lamp/secure_mariadb.exp diff --git a/instaladores/lamp/uninstall_apache.sh b/lamp/uninstall_apache.sh similarity index 100% rename from instaladores/lamp/uninstall_apache.sh rename to lamp/uninstall_apache.sh diff --git a/instaladores/lamp/uninstall_mysql.sh b/lamp/uninstall_mysql.sh similarity index 100% rename from instaladores/lamp/uninstall_mysql.sh rename to lamp/uninstall_mysql.sh diff --git a/instaladores/lamp/uninstall_php.sh b/lamp/uninstall_php.sh similarity index 100% rename from instaladores/lamp/uninstall_php.sh rename to lamp/uninstall_php.sh From 08f84f8a0fa2356ca5e74bc7dae1e97a54b3da87 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 19 May 2026 12:17:30 +0000 Subject: [PATCH 07/13] fix: harden merged service scripts and remove hardcoded paths Agent-Logs-Url: https://github.com/jmrodev/scripts/sessions/68222ca2-a6c7-4752-afe2-4db02995a3cb Co-authored-by: jmrodev <32540750+jmrodev@users.noreply.github.com> --- dev/iniciar_secretary_frontend.sh | 2 +- iniciar_secretary_frontend.sh | 2 +- main_menu.sh | 2 +- .../zenity-service/app/gestor_servicios.sh | 32 +++++---------- .../zenity-service/configurar_servicios.sh | 39 +++++++------------ 5 files changed, 27 insertions(+), 50 deletions(-) diff --git a/dev/iniciar_secretary_frontend.sh b/dev/iniciar_secretary_frontend.sh index 1ad562e..7646927 100755 --- a/dev/iniciar_secretary_frontend.sh +++ b/dev/iniciar_secretary_frontend.sh @@ -1,3 +1,3 @@ #!/bin/bash # cd Documentos/repositorios/calendar-react-vite/front/ && pnpm run dev - cd Documentos/repositorios/secretary-frontend/ && pnpm run dev +cd Documentos/repositorios/secretary-frontend/ && pnpm run dev diff --git a/iniciar_secretary_frontend.sh b/iniciar_secretary_frontend.sh index 1ad562e..7646927 100755 --- a/iniciar_secretary_frontend.sh +++ b/iniciar_secretary_frontend.sh @@ -1,3 +1,3 @@ #!/bin/bash # cd Documentos/repositorios/calendar-react-vite/front/ && pnpm run dev - cd Documentos/repositorios/secretary-frontend/ && pnpm run dev +cd Documentos/repositorios/secretary-frontend/ && pnpm run dev diff --git a/main_menu.sh b/main_menu.sh index c6a8c97..17144b3 100644 --- a/main_menu.sh +++ b/main_menu.sh @@ -1,7 +1,7 @@ #!/bin/bash # Ruta base de los scripts organizados -BASE_DIR="/home/jmro/scripts" +BASE_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" # Función para mostrar el menú principal show_main_menu() { diff --git a/servicios/zenity-service/app/gestor_servicios.sh b/servicios/zenity-service/app/gestor_servicios.sh index 7332111..5ae8ace 100755 --- a/servicios/zenity-service/app/gestor_servicios.sh +++ b/servicios/zenity-service/app/gestor_servicios.sh @@ -1,19 +1,7 @@ #!/bin/bash -# Solicitar contraseña de sudo al inicio de la aplicación -PASSWORD=$(zenity --password --title="Autenticación requerida" --text="Ingrese su contraseña para gestionar servicios:") -if [ -z "$PASSWORD" ]; then - zenity --error --title="Error" --text="No se ingresó una contraseña. La aplicación se cerrará." - exit 1 -fi - -# Agregar un salto de línea al final de la contraseña -PASSWORD="$PASSWORD\n" - -# Verificar que la contraseña sea correcta -echo -e "$PASSWORD" | sudo -S true 2>/dev/null -if [ $? -ne 0 ]; then - zenity --error --title="Error" --text="Contraseña incorrecta. La aplicación se cerrará." +if ! sudo -v; then + zenity --error --title="Error" --text="No se pudo validar sudo. La aplicación se cerrará." exit 1 fi @@ -50,7 +38,7 @@ while true; do # Si el usuario selecciona "Encender todos" if [ "$seleccion" == "Encender todos" ]; then for servicio in "${servicios[@]}"; do - echo -e "$PASSWORD" | sudo -S systemctl start "$servicio.service" + sudo systemctl start "$servicio.service" done zenity --info --title="Encender todos" --text="Todos los servicios han sido encendidos." continue @@ -59,7 +47,7 @@ while true; do # Si el usuario selecciona "Apagar todos" if [ "$seleccion" == "Apagar todos" ]; then for servicio in "${servicios[@]}"; do - echo -e "$PASSWORD" | sudo -S systemctl stop "$servicio.service" + sudo systemctl stop "$servicio.service" done zenity --info --title="Apagar todos" --text="Todos los servicios han sido apagados." continue @@ -68,7 +56,7 @@ while true; do # Si el usuario selecciona "Habilitar todos" if [ "$seleccion" == "Habilitar todos" ]; then for servicio in "${servicios[@]}"; do - echo -e "$PASSWORD" | sudo -S systemctl enable "$servicio.service" + sudo systemctl enable "$servicio.service" done zenity --info --title="Habilitar todos" --text="Todos los servicios han sido habilitados." continue @@ -77,7 +65,7 @@ while true; do # Si el usuario selecciona "Deshabilitar todos" if [ "$seleccion" == "Deshabilitar todos" ]; then for servicio in "${servicios[@]}"; do - echo -e "$PASSWORD" | sudo -S systemctl disable "$servicio.service" + sudo systemctl disable "$servicio.service" done zenity --info --title="Deshabilitar todos" --text="Todos los servicios han sido deshabilitados." continue @@ -87,13 +75,13 @@ while true; do if [ -n "$seleccion" ]; then accion=$(zenity --list --title="Acción para $seleccion" --column="Acción" "Iniciar" "Detener" "Habilitar" "Deshabilitar" --width=600 --height=400) if [ "$accion" == "Iniciar" ]; then - echo -e "$PASSWORD" | sudo -S systemctl start "$seleccion.service" + sudo systemctl start "$seleccion.service" elif [ "$accion" == "Detener" ]; then - echo -e "$PASSWORD" | sudo -S systemctl stop "$seleccion.service" + sudo systemctl stop "$seleccion.service" elif [ "$accion" == "Habilitar" ]; then - echo -e "$PASSWORD" | sudo -S systemctl enable "$seleccion.service" + sudo systemctl enable "$seleccion.service" elif [ "$accion" == "Deshabilitar" ]; then - echo -e "$PASSWORD" | sudo -S systemctl disable "$seleccion.service" + sudo systemctl disable "$seleccion.service" fi fi done diff --git a/servicios/zenity-service/configurar_servicios.sh b/servicios/zenity-service/configurar_servicios.sh index a6915d0..f476475 100755 --- a/servicios/zenity-service/configurar_servicios.sh +++ b/servicios/zenity-service/configurar_servicios.sh @@ -5,7 +5,7 @@ ZENITY_LIST_HEIGHT=600 ZENITY_ACTION_WIDTH=600 ZENITY_ACTION_HEIGHT=400 # Directorio donde se almacenarán los scripts -SCRIPT_DIR="/home/$USER/scripts/servicios/zenity-service/app" +SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/app" && pwd)" SCRIPTS_SUBDIR="$SCRIPT_DIR/scripts" # Verificar si el directorio de scripts existe, y crearlo si no existe @@ -44,20 +44,9 @@ echo "Scripts de inicio/detención hechos ejecutables." cat < "$SCRIPT_DIR/gestor_servicios.sh" #!/bin/bash -# Solicitar contraseña de sudo al inicio de la aplicación -PASSWORD=\$(zenity --password --title="Autenticación requerida" --text="Ingrese su contraseña para gestionar servicios:") -if [ -z "\$PASSWORD" ]; then - zenity --error --title="Error" --text="No se ingresó una contraseña. La aplicación se cerrará." - exit 1 -fi - -# Agregar un salto de línea al final de la contraseña -PASSWORD="\$PASSWORD\n" - -# Verificar que la contraseña sea correcta -echo -e "\$PASSWORD" | sudo -S true 2>/dev/null -if [ \$? -ne 0 ]; then - zenity --error --title="Error" --text="Contraseña incorrecta. La aplicación se cerrará." +# Validar credenciales sudo al inicio de la aplicación +if ! sudo -v; then + zenity --error --title="Error" --text="No se pudo validar sudo. La aplicación se cerrará." exit 1 fi @@ -94,7 +83,7 @@ while true; do # Si el usuario selecciona "Encender todos" if [ "\$seleccion" == "Encender todos" ]; then for servicio in "\${servicios[@]}"; do - echo -e "\$PASSWORD" | sudo -S systemctl start "\$servicio.service" + sudo systemctl start "\$servicio.service" done zenity --info --title="Encender todos" --text="Todos los servicios han sido encendidos." continue @@ -103,7 +92,7 @@ while true; do # Si el usuario selecciona "Apagar todos" if [ "\$seleccion" == "Apagar todos" ]; then for servicio in "\${servicios[@]}"; do - echo -e "\$PASSWORD" | sudo -S systemctl stop "\$servicio.service" + sudo systemctl stop "\$servicio.service" done zenity --info --title="Apagar todos" --text="Todos los servicios han sido apagados." continue @@ -112,7 +101,7 @@ while true; do # Si el usuario selecciona "Habilitar todos" if [ "\$seleccion" == "Habilitar todos" ]; then for servicio in "\${servicios[@]}"; do - echo -e "\$PASSWORD" | sudo -S systemctl enable "\$servicio.service" + sudo systemctl enable "\$servicio.service" done zenity --info --title="Habilitar todos" --text="Todos los servicios han sido habilitados." continue @@ -121,7 +110,7 @@ while true; do # Si el usuario selecciona "Deshabilitar todos" if [ "\$seleccion" == "Deshabilitar todos" ]; then for servicio in "\${servicios[@]}"; do - echo -e "\$PASSWORD" | sudo -S systemctl disable "\$servicio.service" + sudo systemctl disable "\$servicio.service" done zenity --info --title="Deshabilitar todos" --text="Todos los servicios han sido deshabilitados." continue @@ -131,13 +120,13 @@ while true; do if [ -n "\$seleccion" ]; then accion=\$(zenity --list --title="Acción para \$seleccion" --column="Acción" "Iniciar" "Detener" "Habilitar" "Deshabilitar" --width=$ZENITY_ACTION_WIDTH --height=$ZENITY_ACTION_HEIGHT) if [ "\$accion" == "Iniciar" ]; then - echo -e "\$PASSWORD" | sudo -S systemctl start "\$seleccion.service" + sudo systemctl start "\$seleccion.service" elif [ "\$accion" == "Detener" ]; then - echo -e "\$PASSWORD" | sudo -S systemctl stop "\$seleccion.service" + sudo systemctl stop "\$seleccion.service" elif [ "\$accion" == "Habilitar" ]; then - echo -e "\$PASSWORD" | sudo -S systemctl enable "\$seleccion.service" + sudo systemctl enable "\$seleccion.service" elif [ "\$accion" == "Deshabilitar" ]; then - echo -e "\$PASSWORD" | sudo -S systemctl disable "\$seleccion.service" + sudo systemctl disable "\$seleccion.service" fi fi done @@ -148,7 +137,7 @@ chmod +x "$SCRIPT_DIR/gestor_servicios.sh" || { echo "Error: No se pudo asignar echo "Script principal de gestión de servicios creado y hecho ejecutable." # Crear archivo .desktop para la aplicación de gestión de servicios -DESKTOP_DIR="/home/$USER/.local/share/applications" +DESKTOP_DIR="$HOME/.local/share/applications" if [ ! -d "$DESKTOP_DIR" ]; then mkdir -p "$DESKTOP_DIR" || { echo "Error: No se pudo crear el directorio $DESKTOP_DIR."; exit 1; } echo "Directorio $DESKTOP_DIR creado." @@ -158,7 +147,7 @@ cat < "$DESKTOP_DIR/gestor_servicios.desktop" [Desktop Entry] Type=Application Name=Gestor de Servicios -Exec=/home/$USER/scripts/servicios/zenity-service/app/gestor_servicios.sh +Exec=$SCRIPT_DIR/gestor_servicios.sh Icon=system-run Comment=Gestiona los servicios del sistema EOF From c296384a05c788ee5a7a16225057d5ec77131fa4 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 19 May 2026 12:18:32 +0000 Subject: [PATCH 08/13] fix: align merged helper scripts with current repo layout Agent-Logs-Url: https://github.com/jmrodev/scripts/sessions/68222ca2-a6c7-4752-afe2-4db02995a3cb Co-authored-by: jmrodev <32540750+jmrodev@users.noreply.github.com> --- dev/iniciar_secretary_frontend.sh | 11 +++++++++-- iniciar_secretary_frontend.sh | 11 +++++++++-- main_menu.sh | 14 ++++++-------- 3 files changed, 24 insertions(+), 12 deletions(-) diff --git a/dev/iniciar_secretary_frontend.sh b/dev/iniciar_secretary_frontend.sh index 7646927..57887ab 100755 --- a/dev/iniciar_secretary_frontend.sh +++ b/dev/iniciar_secretary_frontend.sh @@ -1,3 +1,10 @@ #!/bin/bash -# cd Documentos/repositorios/calendar-react-vite/front/ && pnpm run dev -cd Documentos/repositorios/secretary-frontend/ && pnpm run dev + +TARGET_DIR="${SECRETARY_FRONTEND_DIR:-$HOME/Documentos/repositorios/secretary-frontend}" + +if [ ! -d "$TARGET_DIR" ]; then + echo "No se encontró el proyecto en: $TARGET_DIR" + exit 1 +fi + +cd "$TARGET_DIR" && pnpm run dev diff --git a/iniciar_secretary_frontend.sh b/iniciar_secretary_frontend.sh index 7646927..57887ab 100755 --- a/iniciar_secretary_frontend.sh +++ b/iniciar_secretary_frontend.sh @@ -1,3 +1,10 @@ #!/bin/bash -# cd Documentos/repositorios/calendar-react-vite/front/ && pnpm run dev -cd Documentos/repositorios/secretary-frontend/ && pnpm run dev + +TARGET_DIR="${SECRETARY_FRONTEND_DIR:-$HOME/Documentos/repositorios/secretary-frontend}" + +if [ ! -d "$TARGET_DIR" ]; then + echo "No se encontró el proyecto en: $TARGET_DIR" + exit 1 +fi + +cd "$TARGET_DIR" && pnpm run dev diff --git a/main_menu.sh b/main_menu.sh index 17144b3..c6fdfa2 100644 --- a/main_menu.sh +++ b/main_menu.sh @@ -1,16 +1,16 @@ #!/bin/bash # Ruta base de los scripts organizados -BASE_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +BASE_DIR="$ROOT_DIR/scripts" # Función para mostrar el menú principal show_main_menu() { echo "Seleccione una categoría:" echo "1) System" echo "2) Network" - echo "3) Backup" - echo "4) Development" - echo "5) Utilities" + echo "3) Utilities" + echo "4) Salir" echo "0) Salir" read -p "Ingrese una opción: " category } @@ -47,10 +47,8 @@ while true; do case $category in 1) list_and_execute_scripts "$BASE_DIR/system" ;; 2) list_and_execute_scripts "$BASE_DIR/network" ;; - 3) list_and_execute_scripts "$BASE_DIR/backup" ;; - 4) list_and_execute_scripts "$BASE_DIR/dev" ;; - 5) list_and_execute_scripts "$BASE_DIR/utilities" ;; - 0) echo "Saliendo..."; exit 0 ;; + 3) list_and_execute_scripts "$BASE_DIR/utils" ;; + 4|0) echo "Saliendo..."; exit 0 ;; *) echo "Opción no válida." ;; esac done From bdf76e65a33036ce661567dcacad2b67455ae9ec Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 19 May 2026 12:19:27 +0000 Subject: [PATCH 09/13] fix: clean exit menu option and backend launcher paths Agent-Logs-Url: https://github.com/jmrodev/scripts/sessions/68222ca2-a6c7-4752-afe2-4db02995a3cb Co-authored-by: jmrodev <32540750+jmrodev@users.noreply.github.com> --- dev/iniciar_secretary_backend.sh | 10 +++++++++- iniciar_secretary_backend.sh | 10 +++++++++- main_menu.sh | 4 ++-- 3 files changed, 20 insertions(+), 4 deletions(-) diff --git a/dev/iniciar_secretary_backend.sh b/dev/iniciar_secretary_backend.sh index 8ed23f9..5946229 100755 --- a/dev/iniciar_secretary_backend.sh +++ b/dev/iniciar_secretary_backend.sh @@ -1,2 +1,10 @@ #!/bin/bash -cd Documentos/repositorios/secretary-backend/ && pnpm --watch start + +TARGET_DIR="${SECRETARY_BACKEND_DIR:-$HOME/Documentos/repositorios/secretary-backend}" + +if [ ! -d "$TARGET_DIR" ]; then + echo "No se encontró el proyecto en: $TARGET_DIR" + exit 1 +fi + +cd "$TARGET_DIR" && npm run dev diff --git a/iniciar_secretary_backend.sh b/iniciar_secretary_backend.sh index 8ed23f9..5946229 100755 --- a/iniciar_secretary_backend.sh +++ b/iniciar_secretary_backend.sh @@ -1,2 +1,10 @@ #!/bin/bash -cd Documentos/repositorios/secretary-backend/ && pnpm --watch start + +TARGET_DIR="${SECRETARY_BACKEND_DIR:-$HOME/Documentos/repositorios/secretary-backend}" + +if [ ! -d "$TARGET_DIR" ]; then + echo "No se encontró el proyecto en: $TARGET_DIR" + exit 1 +fi + +cd "$TARGET_DIR" && npm run dev diff --git a/main_menu.sh b/main_menu.sh index c6fdfa2..eced012 100644 --- a/main_menu.sh +++ b/main_menu.sh @@ -10,7 +10,7 @@ show_main_menu() { echo "1) System" echo "2) Network" echo "3) Utilities" - echo "4) Salir" + echo "0) Salir" echo "0) Salir" read -p "Ingrese una opción: " category } @@ -48,7 +48,7 @@ while true; do 1) list_and_execute_scripts "$BASE_DIR/system" ;; 2) list_and_execute_scripts "$BASE_DIR/network" ;; 3) list_and_execute_scripts "$BASE_DIR/utils" ;; - 4|0) echo "Saliendo..."; exit 0 ;; + 0) echo "Saliendo..."; exit 0 ;; *) echo "Opción no válida." ;; esac done From 6b1512a91219c6ac1397ae501624f8db8acebd93 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 19 May 2026 12:20:53 +0000 Subject: [PATCH 10/13] chore: remove non-system secretary launcher scripts Agent-Logs-Url: https://github.com/jmrodev/scripts/sessions/68222ca2-a6c7-4752-afe2-4db02995a3cb Co-authored-by: jmrodev <32540750+jmrodev@users.noreply.github.com> --- dev/iniciar_secretary_backend.sh | 10 ---------- dev/iniciar_secretary_frontend.sh | 10 ---------- iniciar_secretary_backend.sh | 10 ---------- iniciar_secretary_frontend.sh | 10 ---------- 4 files changed, 40 deletions(-) delete mode 100755 dev/iniciar_secretary_backend.sh delete mode 100755 dev/iniciar_secretary_frontend.sh delete mode 100755 iniciar_secretary_backend.sh delete mode 100755 iniciar_secretary_frontend.sh diff --git a/dev/iniciar_secretary_backend.sh b/dev/iniciar_secretary_backend.sh deleted file mode 100755 index 5946229..0000000 --- a/dev/iniciar_secretary_backend.sh +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/bash - -TARGET_DIR="${SECRETARY_BACKEND_DIR:-$HOME/Documentos/repositorios/secretary-backend}" - -if [ ! -d "$TARGET_DIR" ]; then - echo "No se encontró el proyecto en: $TARGET_DIR" - exit 1 -fi - -cd "$TARGET_DIR" && npm run dev diff --git a/dev/iniciar_secretary_frontend.sh b/dev/iniciar_secretary_frontend.sh deleted file mode 100755 index 57887ab..0000000 --- a/dev/iniciar_secretary_frontend.sh +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/bash - -TARGET_DIR="${SECRETARY_FRONTEND_DIR:-$HOME/Documentos/repositorios/secretary-frontend}" - -if [ ! -d "$TARGET_DIR" ]; then - echo "No se encontró el proyecto en: $TARGET_DIR" - exit 1 -fi - -cd "$TARGET_DIR" && pnpm run dev diff --git a/iniciar_secretary_backend.sh b/iniciar_secretary_backend.sh deleted file mode 100755 index 5946229..0000000 --- a/iniciar_secretary_backend.sh +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/bash - -TARGET_DIR="${SECRETARY_BACKEND_DIR:-$HOME/Documentos/repositorios/secretary-backend}" - -if [ ! -d "$TARGET_DIR" ]; then - echo "No se encontró el proyecto en: $TARGET_DIR" - exit 1 -fi - -cd "$TARGET_DIR" && npm run dev diff --git a/iniciar_secretary_frontend.sh b/iniciar_secretary_frontend.sh deleted file mode 100755 index 57887ab..0000000 --- a/iniciar_secretary_frontend.sh +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/bash - -TARGET_DIR="${SECRETARY_FRONTEND_DIR:-$HOME/Documentos/repositorios/secretary-frontend}" - -if [ ! -d "$TARGET_DIR" ]; then - echo "No se encontró el proyecto en: $TARGET_DIR" - exit 1 -fi - -cd "$TARGET_DIR" && pnpm run dev From c335782aed5c0d818605fd9f3cab0bff91d5f616 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 19 May 2026 12:37:28 +0000 Subject: [PATCH 11/13] refactor: reorganize loose scripts into structured folders Agent-Logs-Url: https://github.com/jmrodev/scripts/sessions/3226136e-a023-4c92-a65d-28eaa4aec0e5 Co-authored-by: jmrodev <32540750+jmrodev@users.noreply.github.com> --- .../system/servicios}/zenity-service/app/gestor_servicios.sh | 0 .../zenity-service/app/scripts/start_ModemManager.sh | 0 .../app/scripts/start_NetworkManager-wait-online.sh | 0 .../zenity-service/app/scripts/start_avahi-daemon.sh | 0 .../servicios}/zenity-service/app/scripts/start_bluetooth.sh | 0 .../servicios}/zenity-service/app/scripts/start_colord.sh | 0 .../zenity-service/app/scripts/start_cups-browsed.sh | 0 .../servicios}/zenity-service/app/scripts/start_httpd.sh | 0 .../servicios}/zenity-service/app/scripts/start_nmb.sh | 0 .../zenity-service/app/scripts/start_org.cups.cupsd.sh | 0 .../zenity-service/app/scripts/start_packagekit.sh | 0 .../app/scripts/start_power-profiles-daemon.sh | 0 .../zenity-service/app/scripts/start_rtkit-daemon.sh | 0 .../servicios}/zenity-service/app/scripts/start_smb.sh | 0 .../servicios}/zenity-service/app/scripts/start_sshd.sh | 0 .../servicios}/zenity-service/app/scripts/start_webmin.sh | 0 .../zenity-service/app/scripts/start_wpa_supplicant.sh | 0 .../zenity-service/app/scripts/stop_ModemManager.sh | 0 .../app/scripts/stop_NetworkManager-wait-online.sh | 0 .../zenity-service/app/scripts/stop_avahi-daemon.sh | 0 .../servicios}/zenity-service/app/scripts/stop_bluetooth.sh | 0 .../servicios}/zenity-service/app/scripts/stop_colord.sh | 0 .../zenity-service/app/scripts/stop_cups-browsed.sh | 0 .../servicios}/zenity-service/app/scripts/stop_httpd.sh | 0 .../system/servicios}/zenity-service/app/scripts/stop_nmb.sh | 0 .../zenity-service/app/scripts/stop_org.cups.cupsd.sh | 0 .../servicios}/zenity-service/app/scripts/stop_packagekit.sh | 0 .../zenity-service/app/scripts/stop_power-profiles-daemon.sh | 0 .../zenity-service/app/scripts/stop_rtkit-daemon.sh | 0 .../system/servicios}/zenity-service/app/scripts/stop_smb.sh | 0 .../servicios}/zenity-service/app/scripts/stop_sshd.sh | 0 .../servicios}/zenity-service/app/scripts/stop_webmin.sh | 0 .../zenity-service/app/scripts/stop_wpa_supplicant.sh | 0 .../system/servicios}/zenity-service/configurar_servicios.sh | 0 main_menu.sh => scripts/utils/legacy/main_menu.sh | 5 ++--- 35 files changed, 2 insertions(+), 3 deletions(-) rename {servicios => scripts/system/servicios}/zenity-service/app/gestor_servicios.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/start_ModemManager.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/start_NetworkManager-wait-online.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/start_avahi-daemon.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/start_bluetooth.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/start_colord.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/start_cups-browsed.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/start_httpd.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/start_nmb.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/start_org.cups.cupsd.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/start_packagekit.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/start_power-profiles-daemon.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/start_rtkit-daemon.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/start_smb.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/start_sshd.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/start_webmin.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/start_wpa_supplicant.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/stop_ModemManager.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/stop_NetworkManager-wait-online.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/stop_avahi-daemon.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/stop_bluetooth.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/stop_colord.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/stop_cups-browsed.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/stop_httpd.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/stop_nmb.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/stop_org.cups.cupsd.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/stop_packagekit.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/stop_power-profiles-daemon.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/stop_rtkit-daemon.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/stop_smb.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/stop_sshd.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/stop_webmin.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/app/scripts/stop_wpa_supplicant.sh (100%) rename {servicios => scripts/system/servicios}/zenity-service/configurar_servicios.sh (100%) rename main_menu.sh => scripts/utils/legacy/main_menu.sh (92%) diff --git a/servicios/zenity-service/app/gestor_servicios.sh b/scripts/system/servicios/zenity-service/app/gestor_servicios.sh similarity index 100% rename from servicios/zenity-service/app/gestor_servicios.sh rename to scripts/system/servicios/zenity-service/app/gestor_servicios.sh diff --git a/servicios/zenity-service/app/scripts/start_ModemManager.sh b/scripts/system/servicios/zenity-service/app/scripts/start_ModemManager.sh similarity index 100% rename from servicios/zenity-service/app/scripts/start_ModemManager.sh rename to scripts/system/servicios/zenity-service/app/scripts/start_ModemManager.sh diff --git a/servicios/zenity-service/app/scripts/start_NetworkManager-wait-online.sh b/scripts/system/servicios/zenity-service/app/scripts/start_NetworkManager-wait-online.sh similarity index 100% rename from servicios/zenity-service/app/scripts/start_NetworkManager-wait-online.sh rename to scripts/system/servicios/zenity-service/app/scripts/start_NetworkManager-wait-online.sh diff --git a/servicios/zenity-service/app/scripts/start_avahi-daemon.sh b/scripts/system/servicios/zenity-service/app/scripts/start_avahi-daemon.sh similarity index 100% rename from servicios/zenity-service/app/scripts/start_avahi-daemon.sh rename to scripts/system/servicios/zenity-service/app/scripts/start_avahi-daemon.sh diff --git a/servicios/zenity-service/app/scripts/start_bluetooth.sh b/scripts/system/servicios/zenity-service/app/scripts/start_bluetooth.sh similarity index 100% rename from servicios/zenity-service/app/scripts/start_bluetooth.sh rename to scripts/system/servicios/zenity-service/app/scripts/start_bluetooth.sh diff --git a/servicios/zenity-service/app/scripts/start_colord.sh b/scripts/system/servicios/zenity-service/app/scripts/start_colord.sh similarity index 100% rename from servicios/zenity-service/app/scripts/start_colord.sh rename to scripts/system/servicios/zenity-service/app/scripts/start_colord.sh diff --git a/servicios/zenity-service/app/scripts/start_cups-browsed.sh b/scripts/system/servicios/zenity-service/app/scripts/start_cups-browsed.sh similarity index 100% rename from servicios/zenity-service/app/scripts/start_cups-browsed.sh rename to scripts/system/servicios/zenity-service/app/scripts/start_cups-browsed.sh diff --git a/servicios/zenity-service/app/scripts/start_httpd.sh b/scripts/system/servicios/zenity-service/app/scripts/start_httpd.sh similarity index 100% rename from servicios/zenity-service/app/scripts/start_httpd.sh rename to scripts/system/servicios/zenity-service/app/scripts/start_httpd.sh diff --git a/servicios/zenity-service/app/scripts/start_nmb.sh b/scripts/system/servicios/zenity-service/app/scripts/start_nmb.sh similarity index 100% rename from servicios/zenity-service/app/scripts/start_nmb.sh rename to scripts/system/servicios/zenity-service/app/scripts/start_nmb.sh diff --git a/servicios/zenity-service/app/scripts/start_org.cups.cupsd.sh b/scripts/system/servicios/zenity-service/app/scripts/start_org.cups.cupsd.sh similarity index 100% rename from servicios/zenity-service/app/scripts/start_org.cups.cupsd.sh rename to scripts/system/servicios/zenity-service/app/scripts/start_org.cups.cupsd.sh diff --git a/servicios/zenity-service/app/scripts/start_packagekit.sh b/scripts/system/servicios/zenity-service/app/scripts/start_packagekit.sh similarity index 100% rename from servicios/zenity-service/app/scripts/start_packagekit.sh rename to scripts/system/servicios/zenity-service/app/scripts/start_packagekit.sh diff --git a/servicios/zenity-service/app/scripts/start_power-profiles-daemon.sh b/scripts/system/servicios/zenity-service/app/scripts/start_power-profiles-daemon.sh similarity index 100% rename from servicios/zenity-service/app/scripts/start_power-profiles-daemon.sh rename to scripts/system/servicios/zenity-service/app/scripts/start_power-profiles-daemon.sh diff --git a/servicios/zenity-service/app/scripts/start_rtkit-daemon.sh b/scripts/system/servicios/zenity-service/app/scripts/start_rtkit-daemon.sh similarity index 100% rename from servicios/zenity-service/app/scripts/start_rtkit-daemon.sh rename to scripts/system/servicios/zenity-service/app/scripts/start_rtkit-daemon.sh diff --git a/servicios/zenity-service/app/scripts/start_smb.sh b/scripts/system/servicios/zenity-service/app/scripts/start_smb.sh similarity index 100% rename from servicios/zenity-service/app/scripts/start_smb.sh rename to scripts/system/servicios/zenity-service/app/scripts/start_smb.sh diff --git a/servicios/zenity-service/app/scripts/start_sshd.sh b/scripts/system/servicios/zenity-service/app/scripts/start_sshd.sh similarity index 100% rename from servicios/zenity-service/app/scripts/start_sshd.sh rename to scripts/system/servicios/zenity-service/app/scripts/start_sshd.sh diff --git a/servicios/zenity-service/app/scripts/start_webmin.sh b/scripts/system/servicios/zenity-service/app/scripts/start_webmin.sh similarity index 100% rename from servicios/zenity-service/app/scripts/start_webmin.sh rename to scripts/system/servicios/zenity-service/app/scripts/start_webmin.sh diff --git a/servicios/zenity-service/app/scripts/start_wpa_supplicant.sh b/scripts/system/servicios/zenity-service/app/scripts/start_wpa_supplicant.sh similarity index 100% rename from servicios/zenity-service/app/scripts/start_wpa_supplicant.sh rename to scripts/system/servicios/zenity-service/app/scripts/start_wpa_supplicant.sh diff --git a/servicios/zenity-service/app/scripts/stop_ModemManager.sh b/scripts/system/servicios/zenity-service/app/scripts/stop_ModemManager.sh similarity index 100% rename from servicios/zenity-service/app/scripts/stop_ModemManager.sh rename to scripts/system/servicios/zenity-service/app/scripts/stop_ModemManager.sh diff --git a/servicios/zenity-service/app/scripts/stop_NetworkManager-wait-online.sh b/scripts/system/servicios/zenity-service/app/scripts/stop_NetworkManager-wait-online.sh similarity index 100% rename from servicios/zenity-service/app/scripts/stop_NetworkManager-wait-online.sh rename to scripts/system/servicios/zenity-service/app/scripts/stop_NetworkManager-wait-online.sh diff --git a/servicios/zenity-service/app/scripts/stop_avahi-daemon.sh b/scripts/system/servicios/zenity-service/app/scripts/stop_avahi-daemon.sh similarity index 100% rename from servicios/zenity-service/app/scripts/stop_avahi-daemon.sh rename to scripts/system/servicios/zenity-service/app/scripts/stop_avahi-daemon.sh diff --git a/servicios/zenity-service/app/scripts/stop_bluetooth.sh b/scripts/system/servicios/zenity-service/app/scripts/stop_bluetooth.sh similarity index 100% rename from servicios/zenity-service/app/scripts/stop_bluetooth.sh rename to scripts/system/servicios/zenity-service/app/scripts/stop_bluetooth.sh diff --git a/servicios/zenity-service/app/scripts/stop_colord.sh b/scripts/system/servicios/zenity-service/app/scripts/stop_colord.sh similarity index 100% rename from servicios/zenity-service/app/scripts/stop_colord.sh rename to scripts/system/servicios/zenity-service/app/scripts/stop_colord.sh diff --git a/servicios/zenity-service/app/scripts/stop_cups-browsed.sh b/scripts/system/servicios/zenity-service/app/scripts/stop_cups-browsed.sh similarity index 100% rename from servicios/zenity-service/app/scripts/stop_cups-browsed.sh rename to scripts/system/servicios/zenity-service/app/scripts/stop_cups-browsed.sh diff --git a/servicios/zenity-service/app/scripts/stop_httpd.sh b/scripts/system/servicios/zenity-service/app/scripts/stop_httpd.sh similarity index 100% rename from servicios/zenity-service/app/scripts/stop_httpd.sh rename to scripts/system/servicios/zenity-service/app/scripts/stop_httpd.sh diff --git a/servicios/zenity-service/app/scripts/stop_nmb.sh b/scripts/system/servicios/zenity-service/app/scripts/stop_nmb.sh similarity index 100% rename from servicios/zenity-service/app/scripts/stop_nmb.sh rename to scripts/system/servicios/zenity-service/app/scripts/stop_nmb.sh diff --git a/servicios/zenity-service/app/scripts/stop_org.cups.cupsd.sh b/scripts/system/servicios/zenity-service/app/scripts/stop_org.cups.cupsd.sh similarity index 100% rename from servicios/zenity-service/app/scripts/stop_org.cups.cupsd.sh rename to scripts/system/servicios/zenity-service/app/scripts/stop_org.cups.cupsd.sh diff --git a/servicios/zenity-service/app/scripts/stop_packagekit.sh b/scripts/system/servicios/zenity-service/app/scripts/stop_packagekit.sh similarity index 100% rename from servicios/zenity-service/app/scripts/stop_packagekit.sh rename to scripts/system/servicios/zenity-service/app/scripts/stop_packagekit.sh diff --git a/servicios/zenity-service/app/scripts/stop_power-profiles-daemon.sh b/scripts/system/servicios/zenity-service/app/scripts/stop_power-profiles-daemon.sh similarity index 100% rename from servicios/zenity-service/app/scripts/stop_power-profiles-daemon.sh rename to scripts/system/servicios/zenity-service/app/scripts/stop_power-profiles-daemon.sh diff --git a/servicios/zenity-service/app/scripts/stop_rtkit-daemon.sh b/scripts/system/servicios/zenity-service/app/scripts/stop_rtkit-daemon.sh similarity index 100% rename from servicios/zenity-service/app/scripts/stop_rtkit-daemon.sh rename to scripts/system/servicios/zenity-service/app/scripts/stop_rtkit-daemon.sh diff --git a/servicios/zenity-service/app/scripts/stop_smb.sh b/scripts/system/servicios/zenity-service/app/scripts/stop_smb.sh similarity index 100% rename from servicios/zenity-service/app/scripts/stop_smb.sh rename to scripts/system/servicios/zenity-service/app/scripts/stop_smb.sh diff --git a/servicios/zenity-service/app/scripts/stop_sshd.sh b/scripts/system/servicios/zenity-service/app/scripts/stop_sshd.sh similarity index 100% rename from servicios/zenity-service/app/scripts/stop_sshd.sh rename to scripts/system/servicios/zenity-service/app/scripts/stop_sshd.sh diff --git a/servicios/zenity-service/app/scripts/stop_webmin.sh b/scripts/system/servicios/zenity-service/app/scripts/stop_webmin.sh similarity index 100% rename from servicios/zenity-service/app/scripts/stop_webmin.sh rename to scripts/system/servicios/zenity-service/app/scripts/stop_webmin.sh diff --git a/servicios/zenity-service/app/scripts/stop_wpa_supplicant.sh b/scripts/system/servicios/zenity-service/app/scripts/stop_wpa_supplicant.sh similarity index 100% rename from servicios/zenity-service/app/scripts/stop_wpa_supplicant.sh rename to scripts/system/servicios/zenity-service/app/scripts/stop_wpa_supplicant.sh diff --git a/servicios/zenity-service/configurar_servicios.sh b/scripts/system/servicios/zenity-service/configurar_servicios.sh similarity index 100% rename from servicios/zenity-service/configurar_servicios.sh rename to scripts/system/servicios/zenity-service/configurar_servicios.sh diff --git a/main_menu.sh b/scripts/utils/legacy/main_menu.sh similarity index 92% rename from main_menu.sh rename to scripts/utils/legacy/main_menu.sh index eced012..f8993ab 100644 --- a/main_menu.sh +++ b/scripts/utils/legacy/main_menu.sh @@ -1,7 +1,7 @@ #!/bin/bash -# Ruta base de los scripts organizados -ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +# Ruta base del proyecto +ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../../.." && pwd)" BASE_DIR="$ROOT_DIR/scripts" # Función para mostrar el menú principal @@ -11,7 +11,6 @@ show_main_menu() { echo "2) Network" echo "3) Utilities" echo "0) Salir" - echo "0) Salir" read -p "Ingrese una opción: " category } From a0af57b9ef85c8a0d4f5a61afa6d0c7f706565c2 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 19 May 2026 12:42:27 +0000 Subject: [PATCH 12/13] refactor: flatten nested scripts directories Agent-Logs-Url: https://github.com/jmrodev/scripts/sessions/9a346503-b587-45b8-82ff-24481de32aaa Co-authored-by: jmrodev <32540750+jmrodev@users.noreply.github.com> --- index.bash | 6 +++--- {scripts/network => network}/extractPorts.sh | 0 {scripts/network => network}/localIp.sh | 0 {scripts/network => network}/macAddr.sh | 0 {scripts/network => network}/publicIp.sh | 0 {scripts/system => system}/acelerateManjaro.sh | 0 {scripts/system => system}/addRepoVisualStudio.sh | 0 {scripts/system => system}/build-manjaro-kde.sh | 0 {scripts/system => system}/configura.sh | 0 {scripts/system => system}/instalacion_paquetes.sh | 0 {scripts/system => system}/install-samba.sh | 0 {scripts/system => system}/installOhMyzsh.sh | 0 {scripts/system => system}/install_brew.sh | 0 {scripts/system => system}/install_dependencies.sh | 0 {scripts/system => system}/killAuto.sh | 0 {scripts/system => system}/manage_services.sh | 0 .../manjaro_self_install/exec/config_install.sh | 0 {scripts/system => system}/manjaro_self_install/install.sh | 0 .../servicios/zenity-service/app/gestor_servicios.sh | 0 .../zenity-service/app/scripts/start_ModemManager.sh | 0 .../app/scripts/start_NetworkManager-wait-online.sh | 0 .../zenity-service/app/scripts/start_avahi-daemon.sh | 0 .../servicios/zenity-service/app/scripts/start_bluetooth.sh | 0 .../servicios/zenity-service/app/scripts/start_colord.sh | 0 .../zenity-service/app/scripts/start_cups-browsed.sh | 0 .../servicios/zenity-service/app/scripts/start_httpd.sh | 0 .../servicios/zenity-service/app/scripts/start_nmb.sh | 0 .../zenity-service/app/scripts/start_org.cups.cupsd.sh | 0 .../zenity-service/app/scripts/start_packagekit.sh | 0 .../app/scripts/start_power-profiles-daemon.sh | 0 .../zenity-service/app/scripts/start_rtkit-daemon.sh | 0 .../servicios/zenity-service/app/scripts/start_smb.sh | 0 .../servicios/zenity-service/app/scripts/start_sshd.sh | 0 .../servicios/zenity-service/app/scripts/start_webmin.sh | 0 .../zenity-service/app/scripts/start_wpa_supplicant.sh | 0 .../zenity-service/app/scripts/stop_ModemManager.sh | 0 .../app/scripts/stop_NetworkManager-wait-online.sh | 0 .../zenity-service/app/scripts/stop_avahi-daemon.sh | 0 .../servicios/zenity-service/app/scripts/stop_bluetooth.sh | 0 .../servicios/zenity-service/app/scripts/stop_colord.sh | 0 .../zenity-service/app/scripts/stop_cups-browsed.sh | 0 .../servicios/zenity-service/app/scripts/stop_httpd.sh | 0 .../servicios/zenity-service/app/scripts/stop_nmb.sh | 0 .../zenity-service/app/scripts/stop_org.cups.cupsd.sh | 0 .../servicios/zenity-service/app/scripts/stop_packagekit.sh | 0 .../app/scripts/stop_power-profiles-daemon.sh | 0 .../zenity-service/app/scripts/stop_rtkit-daemon.sh | 0 .../servicios/zenity-service/app/scripts/stop_smb.sh | 0 .../servicios/zenity-service/app/scripts/stop_sshd.sh | 0 .../servicios/zenity-service/app/scripts/stop_webmin.sh | 0 .../zenity-service/app/scripts/stop_wpa_supplicant.sh | 0 .../servicios/zenity-service/configurar_servicios.sh | 0 {scripts/system => system}/setup_autoupdate.sh | 0 {scripts/system => system}/setup_manjaro_custom.sh | 0 {scripts/utils => utils}/buscar_eliminar_duplicados.sh | 0 {scripts/utils => utils}/clonar_repos_gh.sh | 0 {scripts/utils => utils}/clonar_repos_gh_full.sh | 0 {scripts/utils => utils}/clone.sh | 0 {scripts/utils => utils}/crear_password.sh | 0 {scripts/utils => utils}/duplicate.py | 0 {scripts/utils => utils}/eliminajsonyvacios.py | 0 {scripts/utils => utils}/find_man.sh | 0 {scripts/utils => utils}/find_nd_extrct.sh | 0 {scripts/utils => utils}/fzf-lovely.sh | 0 {scripts/utils => utils}/juego.sh | 0 {scripts/utils => utils}/juegomultiplechoice.sh | 0 {scripts/utils => utils}/laranew.sh | 0 {scripts/utils => utils}/legacy/main_menu.sh | 2 +- {scripts/utils => utils}/limpiarNumerosLineas.sh | 0 {scripts/utils => utils}/manColor.sh | 0 {scripts/utils => utils}/memoria.sh | 0 {scripts/utils => utils}/menu | 0 {scripts/utils => utils}/menudialog | 0 {scripts/utils => utils}/menuzenity | 0 {scripts/utils => utils}/ngrok/installNgrok.sh | 0 {scripts/utils => utils}/notify.sh | 0 {scripts/utils => utils}/pastebinInit.sh | 0 {scripts/utils => utils}/pathadd.sh | 0 {scripts/utils => utils}/phpserver.sh | 0 {scripts/utils => utils}/react/backend/mern/crearserver.sh | 0 {scripts/utils => utils}/reload.sh | 0 {scripts/utils => utils}/scanner.sh | 0 {scripts/utils => utils}/scannerdialog.sh | 0 {scripts/utils => utils}/script React vite v2.sh | 0 {scripts/utils => utils}/send_key_to_konsole.sh | 0 {scripts/utils => utils}/send_keys_to_console.sh | 0 .../sensitive_encfs_decrypt/encfs decrypt/contrasenas.txt | 0 .../sensitive_encfs_decrypt/encfs decrypt/decrypt.bash | 0 .../sensitive_encfs_decrypt/encfs decrypt/decrypt_file.sh | 0 {scripts/utils => utils}/zshstats.sh | 0 90 files changed, 4 insertions(+), 4 deletions(-) rename {scripts/network => network}/extractPorts.sh (100%) rename {scripts/network => network}/localIp.sh (100%) rename {scripts/network => network}/macAddr.sh (100%) rename {scripts/network => network}/publicIp.sh (100%) rename {scripts/system => system}/acelerateManjaro.sh (100%) rename {scripts/system => system}/addRepoVisualStudio.sh (100%) rename {scripts/system => system}/build-manjaro-kde.sh (100%) rename {scripts/system => system}/configura.sh (100%) rename {scripts/system => system}/instalacion_paquetes.sh (100%) rename {scripts/system => system}/install-samba.sh (100%) rename {scripts/system => system}/installOhMyzsh.sh (100%) rename {scripts/system => system}/install_brew.sh (100%) rename {scripts/system => system}/install_dependencies.sh (100%) rename {scripts/system => system}/killAuto.sh (100%) rename {scripts/system => system}/manage_services.sh (100%) rename {scripts/system => system}/manjaro_self_install/exec/config_install.sh (100%) rename {scripts/system => system}/manjaro_self_install/install.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/gestor_servicios.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/start_ModemManager.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/start_NetworkManager-wait-online.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/start_avahi-daemon.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/start_bluetooth.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/start_colord.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/start_cups-browsed.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/start_httpd.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/start_nmb.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/start_org.cups.cupsd.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/start_packagekit.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/start_power-profiles-daemon.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/start_rtkit-daemon.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/start_smb.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/start_sshd.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/start_webmin.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/start_wpa_supplicant.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/stop_ModemManager.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/stop_NetworkManager-wait-online.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/stop_avahi-daemon.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/stop_bluetooth.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/stop_colord.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/stop_cups-browsed.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/stop_httpd.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/stop_nmb.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/stop_org.cups.cupsd.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/stop_packagekit.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/stop_power-profiles-daemon.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/stop_rtkit-daemon.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/stop_smb.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/stop_sshd.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/stop_webmin.sh (100%) rename {scripts/system => system}/servicios/zenity-service/app/scripts/stop_wpa_supplicant.sh (100%) rename {scripts/system => system}/servicios/zenity-service/configurar_servicios.sh (100%) rename {scripts/system => system}/setup_autoupdate.sh (100%) rename {scripts/system => system}/setup_manjaro_custom.sh (100%) rename {scripts/utils => utils}/buscar_eliminar_duplicados.sh (100%) rename {scripts/utils => utils}/clonar_repos_gh.sh (100%) rename {scripts/utils => utils}/clonar_repos_gh_full.sh (100%) rename {scripts/utils => utils}/clone.sh (100%) rename {scripts/utils => utils}/crear_password.sh (100%) rename {scripts/utils => utils}/duplicate.py (100%) rename {scripts/utils => utils}/eliminajsonyvacios.py (100%) rename {scripts/utils => utils}/find_man.sh (100%) rename {scripts/utils => utils}/find_nd_extrct.sh (100%) rename {scripts/utils => utils}/fzf-lovely.sh (100%) rename {scripts/utils => utils}/juego.sh (100%) rename {scripts/utils => utils}/juegomultiplechoice.sh (100%) rename {scripts/utils => utils}/laranew.sh (100%) rename {scripts/utils => utils}/legacy/main_menu.sh (98%) rename {scripts/utils => utils}/limpiarNumerosLineas.sh (100%) rename {scripts/utils => utils}/manColor.sh (100%) rename {scripts/utils => utils}/memoria.sh (100%) rename {scripts/utils => utils}/menu (100%) rename {scripts/utils => utils}/menudialog (100%) rename {scripts/utils => utils}/menuzenity (100%) rename {scripts/utils => utils}/ngrok/installNgrok.sh (100%) rename {scripts/utils => utils}/notify.sh (100%) rename {scripts/utils => utils}/pastebinInit.sh (100%) rename {scripts/utils => utils}/pathadd.sh (100%) rename {scripts/utils => utils}/phpserver.sh (100%) rename {scripts/utils => utils}/react/backend/mern/crearserver.sh (100%) rename {scripts/utils => utils}/reload.sh (100%) rename {scripts/utils => utils}/scanner.sh (100%) rename {scripts/utils => utils}/scannerdialog.sh (100%) rename {scripts/utils => utils}/script React vite v2.sh (100%) rename {scripts/utils => utils}/send_key_to_konsole.sh (100%) rename {scripts/utils => utils}/send_keys_to_console.sh (100%) rename {scripts/utils => utils}/sensitive_encfs_decrypt/encfs decrypt/contrasenas.txt (100%) rename {scripts/utils => utils}/sensitive_encfs_decrypt/encfs decrypt/decrypt.bash (100%) rename {scripts/utils => utils}/sensitive_encfs_decrypt/encfs decrypt/decrypt_file.sh (100%) rename {scripts/utils => utils}/zshstats.sh (100%) diff --git a/index.bash b/index.bash index feee12a..a90dde3 100755 --- a/index.bash +++ b/index.bash @@ -3,9 +3,9 @@ set -euo pipefail ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" -SYSTEM_DIR="$ROOT_DIR/scripts/system" -NETWORK_DIR="$ROOT_DIR/scripts/network" -UTILS_DIR="$ROOT_DIR/scripts/utils" +SYSTEM_DIR="$ROOT_DIR/system" +NETWORK_DIR="$ROOT_DIR/network" +UTILS_DIR="$ROOT_DIR/utils" LAMP_DIR="$ROOT_DIR/lamp" DEPENDENCY_SCRIPT="$SYSTEM_DIR/install_dependencies.sh" diff --git a/scripts/network/extractPorts.sh b/network/extractPorts.sh similarity index 100% rename from scripts/network/extractPorts.sh rename to network/extractPorts.sh diff --git a/scripts/network/localIp.sh b/network/localIp.sh similarity index 100% rename from scripts/network/localIp.sh rename to network/localIp.sh diff --git a/scripts/network/macAddr.sh b/network/macAddr.sh similarity index 100% rename from scripts/network/macAddr.sh rename to network/macAddr.sh diff --git a/scripts/network/publicIp.sh b/network/publicIp.sh similarity index 100% rename from scripts/network/publicIp.sh rename to network/publicIp.sh diff --git a/scripts/system/acelerateManjaro.sh b/system/acelerateManjaro.sh similarity index 100% rename from scripts/system/acelerateManjaro.sh rename to system/acelerateManjaro.sh diff --git a/scripts/system/addRepoVisualStudio.sh b/system/addRepoVisualStudio.sh similarity index 100% rename from scripts/system/addRepoVisualStudio.sh rename to system/addRepoVisualStudio.sh diff --git a/scripts/system/build-manjaro-kde.sh b/system/build-manjaro-kde.sh similarity index 100% rename from scripts/system/build-manjaro-kde.sh rename to system/build-manjaro-kde.sh diff --git a/scripts/system/configura.sh b/system/configura.sh similarity index 100% rename from scripts/system/configura.sh rename to system/configura.sh diff --git a/scripts/system/instalacion_paquetes.sh b/system/instalacion_paquetes.sh similarity index 100% rename from scripts/system/instalacion_paquetes.sh rename to system/instalacion_paquetes.sh diff --git a/scripts/system/install-samba.sh b/system/install-samba.sh similarity index 100% rename from scripts/system/install-samba.sh rename to system/install-samba.sh diff --git a/scripts/system/installOhMyzsh.sh b/system/installOhMyzsh.sh similarity index 100% rename from scripts/system/installOhMyzsh.sh rename to system/installOhMyzsh.sh diff --git a/scripts/system/install_brew.sh b/system/install_brew.sh similarity index 100% rename from scripts/system/install_brew.sh rename to system/install_brew.sh diff --git a/scripts/system/install_dependencies.sh b/system/install_dependencies.sh similarity index 100% rename from scripts/system/install_dependencies.sh rename to system/install_dependencies.sh diff --git a/scripts/system/killAuto.sh b/system/killAuto.sh similarity index 100% rename from scripts/system/killAuto.sh rename to system/killAuto.sh diff --git a/scripts/system/manage_services.sh b/system/manage_services.sh similarity index 100% rename from scripts/system/manage_services.sh rename to system/manage_services.sh diff --git a/scripts/system/manjaro_self_install/exec/config_install.sh b/system/manjaro_self_install/exec/config_install.sh similarity index 100% rename from scripts/system/manjaro_self_install/exec/config_install.sh rename to system/manjaro_self_install/exec/config_install.sh diff --git a/scripts/system/manjaro_self_install/install.sh b/system/manjaro_self_install/install.sh similarity index 100% rename from scripts/system/manjaro_self_install/install.sh rename to system/manjaro_self_install/install.sh diff --git a/scripts/system/servicios/zenity-service/app/gestor_servicios.sh b/system/servicios/zenity-service/app/gestor_servicios.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/gestor_servicios.sh rename to system/servicios/zenity-service/app/gestor_servicios.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/start_ModemManager.sh b/system/servicios/zenity-service/app/scripts/start_ModemManager.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/start_ModemManager.sh rename to system/servicios/zenity-service/app/scripts/start_ModemManager.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/start_NetworkManager-wait-online.sh b/system/servicios/zenity-service/app/scripts/start_NetworkManager-wait-online.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/start_NetworkManager-wait-online.sh rename to system/servicios/zenity-service/app/scripts/start_NetworkManager-wait-online.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/start_avahi-daemon.sh b/system/servicios/zenity-service/app/scripts/start_avahi-daemon.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/start_avahi-daemon.sh rename to system/servicios/zenity-service/app/scripts/start_avahi-daemon.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/start_bluetooth.sh b/system/servicios/zenity-service/app/scripts/start_bluetooth.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/start_bluetooth.sh rename to system/servicios/zenity-service/app/scripts/start_bluetooth.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/start_colord.sh b/system/servicios/zenity-service/app/scripts/start_colord.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/start_colord.sh rename to system/servicios/zenity-service/app/scripts/start_colord.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/start_cups-browsed.sh b/system/servicios/zenity-service/app/scripts/start_cups-browsed.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/start_cups-browsed.sh rename to system/servicios/zenity-service/app/scripts/start_cups-browsed.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/start_httpd.sh b/system/servicios/zenity-service/app/scripts/start_httpd.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/start_httpd.sh rename to system/servicios/zenity-service/app/scripts/start_httpd.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/start_nmb.sh b/system/servicios/zenity-service/app/scripts/start_nmb.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/start_nmb.sh rename to system/servicios/zenity-service/app/scripts/start_nmb.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/start_org.cups.cupsd.sh b/system/servicios/zenity-service/app/scripts/start_org.cups.cupsd.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/start_org.cups.cupsd.sh rename to system/servicios/zenity-service/app/scripts/start_org.cups.cupsd.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/start_packagekit.sh b/system/servicios/zenity-service/app/scripts/start_packagekit.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/start_packagekit.sh rename to system/servicios/zenity-service/app/scripts/start_packagekit.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/start_power-profiles-daemon.sh b/system/servicios/zenity-service/app/scripts/start_power-profiles-daemon.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/start_power-profiles-daemon.sh rename to system/servicios/zenity-service/app/scripts/start_power-profiles-daemon.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/start_rtkit-daemon.sh b/system/servicios/zenity-service/app/scripts/start_rtkit-daemon.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/start_rtkit-daemon.sh rename to system/servicios/zenity-service/app/scripts/start_rtkit-daemon.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/start_smb.sh b/system/servicios/zenity-service/app/scripts/start_smb.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/start_smb.sh rename to system/servicios/zenity-service/app/scripts/start_smb.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/start_sshd.sh b/system/servicios/zenity-service/app/scripts/start_sshd.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/start_sshd.sh rename to system/servicios/zenity-service/app/scripts/start_sshd.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/start_webmin.sh b/system/servicios/zenity-service/app/scripts/start_webmin.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/start_webmin.sh rename to system/servicios/zenity-service/app/scripts/start_webmin.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/start_wpa_supplicant.sh b/system/servicios/zenity-service/app/scripts/start_wpa_supplicant.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/start_wpa_supplicant.sh rename to system/servicios/zenity-service/app/scripts/start_wpa_supplicant.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/stop_ModemManager.sh b/system/servicios/zenity-service/app/scripts/stop_ModemManager.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/stop_ModemManager.sh rename to system/servicios/zenity-service/app/scripts/stop_ModemManager.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/stop_NetworkManager-wait-online.sh b/system/servicios/zenity-service/app/scripts/stop_NetworkManager-wait-online.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/stop_NetworkManager-wait-online.sh rename to system/servicios/zenity-service/app/scripts/stop_NetworkManager-wait-online.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/stop_avahi-daemon.sh b/system/servicios/zenity-service/app/scripts/stop_avahi-daemon.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/stop_avahi-daemon.sh rename to system/servicios/zenity-service/app/scripts/stop_avahi-daemon.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/stop_bluetooth.sh b/system/servicios/zenity-service/app/scripts/stop_bluetooth.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/stop_bluetooth.sh rename to system/servicios/zenity-service/app/scripts/stop_bluetooth.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/stop_colord.sh b/system/servicios/zenity-service/app/scripts/stop_colord.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/stop_colord.sh rename to system/servicios/zenity-service/app/scripts/stop_colord.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/stop_cups-browsed.sh b/system/servicios/zenity-service/app/scripts/stop_cups-browsed.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/stop_cups-browsed.sh rename to system/servicios/zenity-service/app/scripts/stop_cups-browsed.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/stop_httpd.sh b/system/servicios/zenity-service/app/scripts/stop_httpd.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/stop_httpd.sh rename to system/servicios/zenity-service/app/scripts/stop_httpd.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/stop_nmb.sh b/system/servicios/zenity-service/app/scripts/stop_nmb.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/stop_nmb.sh rename to system/servicios/zenity-service/app/scripts/stop_nmb.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/stop_org.cups.cupsd.sh b/system/servicios/zenity-service/app/scripts/stop_org.cups.cupsd.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/stop_org.cups.cupsd.sh rename to system/servicios/zenity-service/app/scripts/stop_org.cups.cupsd.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/stop_packagekit.sh b/system/servicios/zenity-service/app/scripts/stop_packagekit.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/stop_packagekit.sh rename to system/servicios/zenity-service/app/scripts/stop_packagekit.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/stop_power-profiles-daemon.sh b/system/servicios/zenity-service/app/scripts/stop_power-profiles-daemon.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/stop_power-profiles-daemon.sh rename to system/servicios/zenity-service/app/scripts/stop_power-profiles-daemon.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/stop_rtkit-daemon.sh b/system/servicios/zenity-service/app/scripts/stop_rtkit-daemon.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/stop_rtkit-daemon.sh rename to system/servicios/zenity-service/app/scripts/stop_rtkit-daemon.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/stop_smb.sh b/system/servicios/zenity-service/app/scripts/stop_smb.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/stop_smb.sh rename to system/servicios/zenity-service/app/scripts/stop_smb.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/stop_sshd.sh b/system/servicios/zenity-service/app/scripts/stop_sshd.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/stop_sshd.sh rename to system/servicios/zenity-service/app/scripts/stop_sshd.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/stop_webmin.sh b/system/servicios/zenity-service/app/scripts/stop_webmin.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/stop_webmin.sh rename to system/servicios/zenity-service/app/scripts/stop_webmin.sh diff --git a/scripts/system/servicios/zenity-service/app/scripts/stop_wpa_supplicant.sh b/system/servicios/zenity-service/app/scripts/stop_wpa_supplicant.sh similarity index 100% rename from scripts/system/servicios/zenity-service/app/scripts/stop_wpa_supplicant.sh rename to system/servicios/zenity-service/app/scripts/stop_wpa_supplicant.sh diff --git a/scripts/system/servicios/zenity-service/configurar_servicios.sh b/system/servicios/zenity-service/configurar_servicios.sh similarity index 100% rename from scripts/system/servicios/zenity-service/configurar_servicios.sh rename to system/servicios/zenity-service/configurar_servicios.sh diff --git a/scripts/system/setup_autoupdate.sh b/system/setup_autoupdate.sh similarity index 100% rename from scripts/system/setup_autoupdate.sh rename to system/setup_autoupdate.sh diff --git a/scripts/system/setup_manjaro_custom.sh b/system/setup_manjaro_custom.sh similarity index 100% rename from scripts/system/setup_manjaro_custom.sh rename to system/setup_manjaro_custom.sh diff --git a/scripts/utils/buscar_eliminar_duplicados.sh b/utils/buscar_eliminar_duplicados.sh similarity index 100% rename from scripts/utils/buscar_eliminar_duplicados.sh rename to utils/buscar_eliminar_duplicados.sh diff --git a/scripts/utils/clonar_repos_gh.sh b/utils/clonar_repos_gh.sh similarity index 100% rename from scripts/utils/clonar_repos_gh.sh rename to utils/clonar_repos_gh.sh diff --git a/scripts/utils/clonar_repos_gh_full.sh b/utils/clonar_repos_gh_full.sh similarity index 100% rename from scripts/utils/clonar_repos_gh_full.sh rename to utils/clonar_repos_gh_full.sh diff --git a/scripts/utils/clone.sh b/utils/clone.sh similarity index 100% rename from scripts/utils/clone.sh rename to utils/clone.sh diff --git a/scripts/utils/crear_password.sh b/utils/crear_password.sh similarity index 100% rename from scripts/utils/crear_password.sh rename to utils/crear_password.sh diff --git a/scripts/utils/duplicate.py b/utils/duplicate.py similarity index 100% rename from scripts/utils/duplicate.py rename to utils/duplicate.py diff --git a/scripts/utils/eliminajsonyvacios.py b/utils/eliminajsonyvacios.py similarity index 100% rename from scripts/utils/eliminajsonyvacios.py rename to utils/eliminajsonyvacios.py diff --git a/scripts/utils/find_man.sh b/utils/find_man.sh similarity index 100% rename from scripts/utils/find_man.sh rename to utils/find_man.sh diff --git a/scripts/utils/find_nd_extrct.sh b/utils/find_nd_extrct.sh similarity index 100% rename from scripts/utils/find_nd_extrct.sh rename to utils/find_nd_extrct.sh diff --git a/scripts/utils/fzf-lovely.sh b/utils/fzf-lovely.sh similarity index 100% rename from scripts/utils/fzf-lovely.sh rename to utils/fzf-lovely.sh diff --git a/scripts/utils/juego.sh b/utils/juego.sh similarity index 100% rename from scripts/utils/juego.sh rename to utils/juego.sh diff --git a/scripts/utils/juegomultiplechoice.sh b/utils/juegomultiplechoice.sh similarity index 100% rename from scripts/utils/juegomultiplechoice.sh rename to utils/juegomultiplechoice.sh diff --git a/scripts/utils/laranew.sh b/utils/laranew.sh similarity index 100% rename from scripts/utils/laranew.sh rename to utils/laranew.sh diff --git a/scripts/utils/legacy/main_menu.sh b/utils/legacy/main_menu.sh similarity index 98% rename from scripts/utils/legacy/main_menu.sh rename to utils/legacy/main_menu.sh index f8993ab..f9047ce 100644 --- a/scripts/utils/legacy/main_menu.sh +++ b/utils/legacy/main_menu.sh @@ -2,7 +2,7 @@ # Ruta base del proyecto ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../../.." && pwd)" -BASE_DIR="$ROOT_DIR/scripts" +BASE_DIR="$ROOT_DIR" # Función para mostrar el menú principal show_main_menu() { diff --git a/scripts/utils/limpiarNumerosLineas.sh b/utils/limpiarNumerosLineas.sh similarity index 100% rename from scripts/utils/limpiarNumerosLineas.sh rename to utils/limpiarNumerosLineas.sh diff --git a/scripts/utils/manColor.sh b/utils/manColor.sh similarity index 100% rename from scripts/utils/manColor.sh rename to utils/manColor.sh diff --git a/scripts/utils/memoria.sh b/utils/memoria.sh similarity index 100% rename from scripts/utils/memoria.sh rename to utils/memoria.sh diff --git a/scripts/utils/menu b/utils/menu similarity index 100% rename from scripts/utils/menu rename to utils/menu diff --git a/scripts/utils/menudialog b/utils/menudialog similarity index 100% rename from scripts/utils/menudialog rename to utils/menudialog diff --git a/scripts/utils/menuzenity b/utils/menuzenity similarity index 100% rename from scripts/utils/menuzenity rename to utils/menuzenity diff --git a/scripts/utils/ngrok/installNgrok.sh b/utils/ngrok/installNgrok.sh similarity index 100% rename from scripts/utils/ngrok/installNgrok.sh rename to utils/ngrok/installNgrok.sh diff --git a/scripts/utils/notify.sh b/utils/notify.sh similarity index 100% rename from scripts/utils/notify.sh rename to utils/notify.sh diff --git a/scripts/utils/pastebinInit.sh b/utils/pastebinInit.sh similarity index 100% rename from scripts/utils/pastebinInit.sh rename to utils/pastebinInit.sh diff --git a/scripts/utils/pathadd.sh b/utils/pathadd.sh similarity index 100% rename from scripts/utils/pathadd.sh rename to utils/pathadd.sh diff --git a/scripts/utils/phpserver.sh b/utils/phpserver.sh similarity index 100% rename from scripts/utils/phpserver.sh rename to utils/phpserver.sh diff --git a/scripts/utils/react/backend/mern/crearserver.sh b/utils/react/backend/mern/crearserver.sh similarity index 100% rename from scripts/utils/react/backend/mern/crearserver.sh rename to utils/react/backend/mern/crearserver.sh diff --git a/scripts/utils/reload.sh b/utils/reload.sh similarity index 100% rename from scripts/utils/reload.sh rename to utils/reload.sh diff --git a/scripts/utils/scanner.sh b/utils/scanner.sh similarity index 100% rename from scripts/utils/scanner.sh rename to utils/scanner.sh diff --git a/scripts/utils/scannerdialog.sh b/utils/scannerdialog.sh similarity index 100% rename from scripts/utils/scannerdialog.sh rename to utils/scannerdialog.sh diff --git a/scripts/utils/script React vite v2.sh b/utils/script React vite v2.sh similarity index 100% rename from scripts/utils/script React vite v2.sh rename to utils/script React vite v2.sh diff --git a/scripts/utils/send_key_to_konsole.sh b/utils/send_key_to_konsole.sh similarity index 100% rename from scripts/utils/send_key_to_konsole.sh rename to utils/send_key_to_konsole.sh diff --git a/scripts/utils/send_keys_to_console.sh b/utils/send_keys_to_console.sh similarity index 100% rename from scripts/utils/send_keys_to_console.sh rename to utils/send_keys_to_console.sh diff --git a/scripts/utils/sensitive_encfs_decrypt/encfs decrypt/contrasenas.txt b/utils/sensitive_encfs_decrypt/encfs decrypt/contrasenas.txt similarity index 100% rename from scripts/utils/sensitive_encfs_decrypt/encfs decrypt/contrasenas.txt rename to utils/sensitive_encfs_decrypt/encfs decrypt/contrasenas.txt diff --git a/scripts/utils/sensitive_encfs_decrypt/encfs decrypt/decrypt.bash b/utils/sensitive_encfs_decrypt/encfs decrypt/decrypt.bash similarity index 100% rename from scripts/utils/sensitive_encfs_decrypt/encfs decrypt/decrypt.bash rename to utils/sensitive_encfs_decrypt/encfs decrypt/decrypt.bash diff --git a/scripts/utils/sensitive_encfs_decrypt/encfs decrypt/decrypt_file.sh b/utils/sensitive_encfs_decrypt/encfs decrypt/decrypt_file.sh similarity index 100% rename from scripts/utils/sensitive_encfs_decrypt/encfs decrypt/decrypt_file.sh rename to utils/sensitive_encfs_decrypt/encfs decrypt/decrypt_file.sh diff --git a/scripts/utils/zshstats.sh b/utils/zshstats.sh similarity index 100% rename from scripts/utils/zshstats.sh rename to utils/zshstats.sh From 98f5fb2de59bc7bbc79329eb24c279c919f34a4e Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 19 May 2026 13:28:51 +0000 Subject: [PATCH 13/13] feat: add consistent interruption handlers to interactive scripts Agent-Logs-Url: https://github.com/jmrodev/scripts/sessions/4ad6a9cc-c383-4f39-a6c9-1faaa90117a0 Co-authored-by: jmrodev <32540750+jmrodev@users.noreply.github.com> --- index.bash | 8 ++++++++ utils/legacy/main_menu.sh | 8 ++++++++ utils/send_key_to_konsole.sh | 10 ++++++++-- utils/send_keys_to_console.sh | 10 ++++++++-- 4 files changed, 32 insertions(+), 4 deletions(-) diff --git a/index.bash b/index.bash index a90dde3..803905f 100755 --- a/index.bash +++ b/index.bash @@ -9,6 +9,14 @@ UTILS_DIR="$ROOT_DIR/utils" LAMP_DIR="$ROOT_DIR/lamp" DEPENDENCY_SCRIPT="$SYSTEM_DIR/install_dependencies.sh" +handle_interrupt() { + echo + echo "Interrupción detectada. Saliendo..." + exit 130 +} + +trap handle_interrupt SIGINT SIGTERM + print_header() { echo echo "==============================================" diff --git a/utils/legacy/main_menu.sh b/utils/legacy/main_menu.sh index f9047ce..313728a 100644 --- a/utils/legacy/main_menu.sh +++ b/utils/legacy/main_menu.sh @@ -4,6 +4,14 @@ ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../../.." && pwd)" BASE_DIR="$ROOT_DIR" +handle_interrupt() { + echo + echo "Interrupción detectada. Saliendo..." + exit 130 +} + +trap handle_interrupt SIGINT SIGTERM + # Función para mostrar el menú principal show_main_menu() { echo "Seleccione una categoría:" diff --git a/utils/send_key_to_konsole.sh b/utils/send_key_to_konsole.sh index 3c7eeec..96a6521 100755 --- a/utils/send_key_to_konsole.sh +++ b/utils/send_key_to_konsole.sh @@ -30,8 +30,14 @@ if [ -z "$TARGET_WINDOW_ID" ]; then exit 1 fi -# Función para manejar la señal de interrupción (Ctrl+C) -trap "echo 'Deteniendo el script...'; exit 0" SIGINT +# Función para manejar señales de interrupción/terminación +handle_interrupt() { + echo + echo "Deteniendo el script..." + exit 130 +} + +trap handle_interrupt SIGINT SIGTERM # Informar al usuario echo "Enviando la secuencia de teclas '$SEQUENCE' a la ventana $TARGET_WINDOW_ID cada $DELAY milisegundos." diff --git a/utils/send_keys_to_console.sh b/utils/send_keys_to_console.sh index 457e7db..97dcf09 100755 --- a/utils/send_keys_to_console.sh +++ b/utils/send_keys_to_console.sh @@ -36,8 +36,14 @@ if [ -z "$TARGET_WINDOW_ID" ]; then exit 1 fi -# Función para manejar la señal de interrupción (Ctrl+C) -trap "echo 'Deteniendo el script...'; exit 0" SIGINT +# Función para manejar señales de interrupción/terminación +handle_interrupt() { + echo + echo "Deteniendo el script..." + exit 130 +} + +trap handle_interrupt SIGINT SIGTERM # Informar al usuario echo "Enviando el comando '$COMMAND' a la ventana $TARGET_WINDOW_ID cada $DELAY milisegundos."