Compare commits
	
		
			2 commits
		
	
	
		
			a760bbb075
			...
			066caaa0b1
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 066caaa0b1 | |||
| baeb8ca9d7 | 
					 5 changed files with 227 additions and 8 deletions
				
			
		
							
								
								
									
										65
									
								
								bin/cortana_disable.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										65
									
								
								bin/cortana_disable.sh
									
									
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,65 @@ | ||||||
|  | #!/bin/bash | ||||||
|  | # | ||||||
|  | # cortana_disable.sh | ||||||
|  | # Modified: 2025/03/11 12:00:00 | ||||||
|  | # Derechos de Autor (C) [2025] [Mauro Rosero P. <mauro@rosero.one> (mauro.rosero@gmail.com)] | ||||||
|  | # | ||||||
|  | # Este programa es software libre: usted puede redistribuirlo y/o modificarlo | ||||||
|  | # bajo los términos de la Licencia Pública Affero General de GNU tal como | ||||||
|  | # lo publica la Free Software Foundation, ya sea la versión 3 de la licencia, | ||||||
|  | # o (a su elección) cualquier versión posterior. | ||||||
|  | # | ||||||
|  | # Este programa se distribuye con la esperanza de que sea útil, | ||||||
|  | # pero SIN NINGUNA GARANTÍA; sin siquiera la garantía implícita de | ||||||
|  | # COMERCIABILIDAD o IDONEIDAD PARA UN PROPÓSITO PARTICULAR. Consulte la | ||||||
|  | # Licencia Pública Affero General de GNU para obtener más detalles. | ||||||
|  | # | ||||||
|  | # Debería haber recibido una copia de la Licencia Pública Affero General | ||||||
|  | # junto con este programa. Si no la recibió, consulte <https://www.gnu.org/licenses/>. | ||||||
|  | 
 | ||||||
|  | # Script para desactivar el alias 'cortana' para Claude Code | ||||||
|  | # Uso: | ||||||
|  | #   ./cortana_disable.sh | ||||||
|  | 
 | ||||||
|  | DEVSPATH=devs | ||||||
|  | BIN_HOME=$HOME/$DEVSPATH | ||||||
|  | BIN_MESG=bin/msg | ||||||
|  | BIN_LIBS=bin/lib | ||||||
|  | BIN_CFGS=bin/config | ||||||
|  | VERSION=1.0.0 | ||||||
|  | 
 | ||||||
|  | # CHECK SHELL LANGUAGE | ||||||
|  | BIN_LANG=${LANG:0:2} | ||||||
|  | 
 | ||||||
|  | # LOAD BASE BASH LIBRARY | ||||||
|  | source $BIN_HOME/$BIN_LIBS/base.lib | ||||||
|  | 
 | ||||||
|  | # Load head messages | ||||||
|  | load_messages $BIN_HOME $BIN_MESG $BIN_LANG "head" | ||||||
|  | title="${head_000} ${head_002}" | ||||||
|  | 
 | ||||||
|  | # Verificar que 'dialog' esté instalado | ||||||
|  | if ! command -v dialog &>/dev/null; then | ||||||
|  |   echo "${npm_001}" | ||||||
|  |   exit 1 | ||||||
|  | fi | ||||||
|  | 
 | ||||||
|  | # Confirmar desactivación | ||||||
|  | dialog --backtitle "${title}" --title "${npm_031}" --yesno "¿Desea desactivar el alias 'cortana' para Claude Code?" 7 50 | ||||||
|  | if [[ $? -eq 0 ]]; then | ||||||
|  |   # Crear un archivo fuente para la desactivación del alias | ||||||
|  |   UNALIAS_FILE="$BIN_HOME/bin/cortana_unalias.sh" | ||||||
|  |   echo '#!/bin/bash' > "$UNALIAS_FILE" | ||||||
|  |   echo 'unalias cortana 2>/dev/null' >> "$UNALIAS_FILE" | ||||||
|  |   echo 'echo "Alias cortana desactivado en la sesión actual."' >> "$UNALIAS_FILE" | ||||||
|  |   chmod +x "$UNALIAS_FILE" | ||||||
|  |    | ||||||
|  |   # Ejecutar la función remove_cortana_alias del biblioteca base.lib para el archivo de configuración permanente | ||||||
|  |   remove_cortana_alias | ||||||
|  |    | ||||||
|  |   # Crear un mensaje con instrucciones para desactivar el alias en la sesión actual | ||||||
|  |   dialog --backtitle "${title}" --title "${npm_041}" --msgbox "${npm_042}\n\nPara desactivar el alias en la sesión actual, ejecute:\n\nsource $UNALIAS_FILE\n\n" 10 70 | ||||||
|  | else | ||||||
|  |   dialog --backtitle "${title}" --title "${head_canceled}" --msgbox "${npm_008}" 6 40 | ||||||
|  |   exit 1 | ||||||
|  | fi | ||||||
							
								
								
									
										72
									
								
								bin/cortana_enable.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										72
									
								
								bin/cortana_enable.sh
									
									
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,72 @@ | ||||||
|  | #!/bin/bash | ||||||
|  | # | ||||||
|  | # cortana_enable.sh | ||||||
|  | # Modified: 2025/03/11 12:00:00 | ||||||
|  | # Derechos de Autor (C) [2025] [Mauro Rosero P. <mauro@rosero.one> (mauro.rosero@gmail.com)] | ||||||
|  | # | ||||||
|  | # Este programa es software libre: usted puede redistribuirlo y/o modificarlo | ||||||
|  | # bajo los términos de la Licencia Pública Affero General de GNU tal como | ||||||
|  | # lo publica la Free Software Foundation, ya sea la versión 3 de la licencia, | ||||||
|  | # o (a su elección) cualquier versión posterior. | ||||||
|  | # | ||||||
|  | # Este programa se distribuye con la esperanza de que sea útil, | ||||||
|  | # pero SIN NINGUNA GARANTÍA; sin siquiera la garantía implícita de | ||||||
|  | # COMERCIABILIDAD o IDONEIDAD PARA UN PROPÓSITO PARTICULAR. Consulte la | ||||||
|  | # Licencia Pública Affero General de GNU para obtener más detalles. | ||||||
|  | # | ||||||
|  | # Debería haber recibido una copia de la Licencia Pública Affero General | ||||||
|  | # junto con este programa. Si no la recibió, consulte <https://www.gnu.org/licenses/>. | ||||||
|  | 
 | ||||||
|  | # Script para activar el alias 'cortana' para Claude Code | ||||||
|  | # Uso: | ||||||
|  | #   ./cortana_enable.sh | ||||||
|  | 
 | ||||||
|  | DEVSPATH=devs | ||||||
|  | BIN_HOME=$HOME/$DEVSPATH | ||||||
|  | BIN_MESG=bin/msg | ||||||
|  | BIN_LIBS=bin/lib | ||||||
|  | BIN_CFGS=bin/config | ||||||
|  | VERSION=1.0.0 | ||||||
|  | 
 | ||||||
|  | # CHECK SHELL LANGUAGE | ||||||
|  | BIN_LANG=${LANG:0:2} | ||||||
|  | 
 | ||||||
|  | # LOAD BASE BASH LIBRARY | ||||||
|  | source $BIN_HOME/$BIN_LIBS/base.lib | ||||||
|  | 
 | ||||||
|  | # Load head messages | ||||||
|  | load_messages $BIN_HOME $BIN_MESG $BIN_LANG "head" | ||||||
|  | title="${head_000} ${head_002}" | ||||||
|  | 
 | ||||||
|  | # Verificar que 'dialog' esté instalado | ||||||
|  | if ! command -v dialog &>/dev/null; then | ||||||
|  |   echo "${npm_001}" | ||||||
|  |   exit 1 | ||||||
|  | fi | ||||||
|  | 
 | ||||||
|  | # Confirmar activación | ||||||
|  | dialog --backtitle "${title}" --title "${npm_031}" --yesno "¿Desea activar el alias 'cortana' para Claude Code?" 7 50 | ||||||
|  | if [[ $? -eq 0 ]]; then | ||||||
|  |   # Crear un archivo fuente para la activación del alias | ||||||
|  |   ALIAS_FILE="$BIN_HOME/bin/cortana_alias.sh" | ||||||
|  |   echo '#!/bin/bash' > "$ALIAS_FILE" | ||||||
|  |   echo '# Verificar si ~/.npm-global/bin está en el PATH' >> "$ALIAS_FILE" | ||||||
|  |   echo 'if [[ ":$PATH:" != *":$HOME/.npm-global/bin:"* ]]; then' >> "$ALIAS_FILE" | ||||||
|  |   echo '  # Si no está en el PATH, usamos la ruta completa en el alias' >> "$ALIAS_FILE" | ||||||
|  |   echo '  alias cortana="$HOME/.npm-global/bin/claude"' >> "$ALIAS_FILE" | ||||||
|  |   echo 'else' >> "$ALIAS_FILE" | ||||||
|  |   echo '  # Si está en el PATH, podemos usar el nombre directamente' >> "$ALIAS_FILE" | ||||||
|  |   echo '  alias cortana="claude"' >> "$ALIAS_FILE" | ||||||
|  |   echo 'fi' >> "$ALIAS_FILE" | ||||||
|  |   echo 'echo "Alias cortana activado en la sesión actual."' >> "$ALIAS_FILE" | ||||||
|  |   chmod +x "$ALIAS_FILE" | ||||||
|  |    | ||||||
|  |   # Ejecutar la función cortana_alias del biblioteca base.lib para el archivo de configuración permanente | ||||||
|  |   cortana_alias | ||||||
|  |    | ||||||
|  |   # Crear un mensaje con instrucciones para activar el alias en la sesión actual | ||||||
|  |   dialog --backtitle "${title}" --title "${npm_036}" --msgbox "${npm_037}\n\nPara activar el alias en la sesión actual, ejecute:\n\nsource $ALIAS_FILE\n\n" 10 70 | ||||||
|  | else | ||||||
|  |   dialog --backtitle "${title}" --title "${head_canceled}" --msgbox "${npm_008}" 6 40 | ||||||
|  |   exit 1 | ||||||
|  | fi | ||||||
|  | @ -64,11 +64,33 @@ pre_anthropic() { | ||||||
|   # Configure npm to use the new directory path |   # Configure npm to use the new directory path | ||||||
|   npm config set prefix ~/.npm-global |   npm config set prefix ~/.npm-global | ||||||
| 
 | 
 | ||||||
|   # Note: Replace ~/.bashrc with ~/.zshrc, ~/.profile, or other appropriate file for your shell |   # Determinar el shell actual y su archivo de configuración | ||||||
|   echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.bashrc |   local shell_config="" | ||||||
|  |   case "$SHELL" in | ||||||
|  |     */bash) | ||||||
|  |       shell_config="$HOME/.bashrc" | ||||||
|  |       ;; | ||||||
|  |     */zsh) | ||||||
|  |       shell_config="$HOME/.zshrc" | ||||||
|  |       ;; | ||||||
|  |     *) | ||||||
|  |       # Fallback a bashrc | ||||||
|  |       shell_config="$HOME/.bashrc" | ||||||
|  |       ;; | ||||||
|  |   esac | ||||||
|    |    | ||||||
|   # Apply the new PATH setting |   # Verificar si la entrada PATH ya existe | ||||||
|   source ~/.bashrc |   if ! grep -q "export PATH=~/.npm-global/bin:\$PATH" "$shell_config"; then | ||||||
|  |     # Agregar la configuración PATH al archivo de shell | ||||||
|  |     echo 'export PATH=~/.npm-global/bin:$PATH' >> "$shell_config" | ||||||
|  |   fi | ||||||
|  | 
 | ||||||
|  |   # Exportar la variable PATH en la sesión actual | ||||||
|  |   export PATH=~/.npm-global/bin:$PATH | ||||||
|  |    | ||||||
|  |   # Informar al usuario que debe reiniciar su terminal o usar source | ||||||
|  |   dialog --backtitle "${title}" --infobox "Configuración de PATH actualizada. Para aplicar cambios permanentes, reinicie su terminal después de la instalación o ejecute:\n\nsource $shell_config" 8 60 | ||||||
|  |   sleep 4 | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| # Función para instalar Anthropoc Claude Code | # Función para instalar Anthropoc Claude Code | ||||||
|  | @ -91,9 +113,10 @@ uninstall_anthropic() { | ||||||
|   # Ejecutar la desinstalación |   # Ejecutar la desinstalación | ||||||
|   npm uninstall -g @anthropic-ai/claude-code |   npm uninstall -g @anthropic-ai/claude-code | ||||||
|   if [[ $? -eq 0 ]]; then |   if [[ $? -eq 0 ]]; then | ||||||
|  |     remove_cortana_alias | ||||||
|     dialog --backtitle "${title}" --title "${npm_028}" --msgbox "${npm_029}" 7 50 |     dialog --backtitle "${title}" --title "${npm_028}" --msgbox "${npm_029}" 7 50 | ||||||
|   else |   else | ||||||
|     dialog --backtitle "${title}" --title "${head_eror}" --msgbox "${npm_030}" 7 50 |     dialog --backtitle "${title}" --title "${head_error}" --msgbox "${npm_030}" 7 50 | ||||||
|   fi |   fi | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -420,8 +420,16 @@ function sops_freekv_token() { | ||||||
| # Alias claude code to cortana | # Alias claude code to cortana | ||||||
| cortana_alias() { | cortana_alias() { | ||||||
|     local alias_nombre="cortana" |     local alias_nombre="cortana" | ||||||
|     local alias_comando="claude" |     local alias_comando="" | ||||||
|     local shell_config="" |     local shell_config="" | ||||||
|  |     local title="${head_000} ${head_002}" | ||||||
|  |      | ||||||
|  |     # Determinar la ruta del comando claude | ||||||
|  |     if [[ -x "$HOME/.npm-global/bin/claude" ]]; then | ||||||
|  |         alias_comando="$HOME/.npm-global/bin/claude" | ||||||
|  |     else | ||||||
|  |         alias_comando="claude" # Fallback al comando en el PATH | ||||||
|  |     fi | ||||||
|      |      | ||||||
|     # Detectar el shell actual y seleccionar el archivo de configuración adecuado |     # Detectar el shell actual y seleccionar el archivo de configuración adecuado | ||||||
|     case "$SHELL" in |     case "$SHELL" in | ||||||
|  | @ -432,21 +440,61 @@ cortana_alias() { | ||||||
|             shell_config="$HOME/.zshrc" |             shell_config="$HOME/.zshrc" | ||||||
|             ;; |             ;; | ||||||
|         *) |         *) | ||||||
|  |             dialog --backtitle "${title}" --title "${head_error}" --msgbox "${npm_040}" 7 50 | ||||||
|             return 1 |             return 1 | ||||||
|             ;; |             ;; | ||||||
|     esac |     esac | ||||||
| 
 | 
 | ||||||
|     # Verificar si el alias ya existe en el archivo de configuración |     # Verificar si el alias ya existe en el archivo de configuración | ||||||
|     if grep -q "alias $alias_nombre=" "$shell_config"; then |     if grep -q "alias $alias_nombre=" "$shell_config"; then | ||||||
|  |         dialog --backtitle "${title}" --title "${npm_034}" --msgbox "${npm_035} $shell_config" 7 60 | ||||||
|         return 2 |         return 2 | ||||||
|     else |     else | ||||||
|         # Agregar el alias al final del archivo de configuración |         # Agregar el alias al final del archivo de configuración | ||||||
|         echo "alias $alias_nombre='$alias_comando'" >> "$shell_config" |         echo "alias $alias_nombre='$alias_comando'" >> "$shell_config" | ||||||
|         if [[ $? -eq 0 ]]; then |         if [[ $? -eq 0 ]]; then | ||||||
|             # Recargar el archivo de configuración |             # Recargar el archivo de configuración | ||||||
|             source "$shell_config" |             source "$shell_config" 2>/dev/null || true | ||||||
|  |             dialog --backtitle "${title}" --title "${npm_036}" --msgbox "${npm_037} $shell_config\n\n${npm_038}" 9 60 | ||||||
|         else |         else | ||||||
|  |             dialog --backtitle "${title}" --title "${head_error}" --msgbox "${npm_039}" 7 50 | ||||||
|             return 1 |             return 1 | ||||||
|         fi |         fi | ||||||
|     fi |     fi | ||||||
| } | } | ||||||
|  | 
 | ||||||
|  | # Remove cortana alias | ||||||
|  | remove_cortana_alias() { | ||||||
|  |     local alias_nombre="cortana" | ||||||
|  |     local shell_config="" | ||||||
|  |     local title="${head_000} ${head_002}" | ||||||
|  |      | ||||||
|  |     # Detectar el shell actual y seleccionar el archivo de configuración adecuado | ||||||
|  |     case "$SHELL" in | ||||||
|  |         */bash) | ||||||
|  |             shell_config="$HOME/.bashrc" | ||||||
|  |             ;; | ||||||
|  |         */zsh) | ||||||
|  |             shell_config="$HOME/.zshrc" | ||||||
|  |             ;; | ||||||
|  |         *) | ||||||
|  |             dialog --backtitle "${title}" --title "${head_error}" --msgbox "${npm_040}" 7 50 | ||||||
|  |             return 1 | ||||||
|  |             ;; | ||||||
|  |     esac | ||||||
|  | 
 | ||||||
|  |     # Verificar si el alias existe en el archivo de configuración | ||||||
|  |     if grep -q "alias $alias_nombre=" "$shell_config"; then | ||||||
|  |         # Eliminar el alias del archivo de configuración | ||||||
|  |         sed -i "/alias $alias_nombre=/d" "$shell_config" | ||||||
|  |         if [[ $? -eq 0 ]]; then | ||||||
|  |             dialog --backtitle "${title}" --title "${npm_041}" --msgbox "${npm_042} $shell_config" 7 60 | ||||||
|  |         else | ||||||
|  |             dialog --backtitle "${title}" --title "${head_error}" --msgbox "${npm_039}" 7 50 | ||||||
|  |             return 1 | ||||||
|  |         fi | ||||||
|  |     else | ||||||
|  |         dialog --backtitle "${title}" --title "${npm_043}" --msgbox "${npm_044}" 7 50 | ||||||
|  |         return 2 | ||||||
|  |     fi | ||||||
|  | } | ||||||
|  |  | ||||||
|  | @ -102,3 +102,14 @@ npm_030="Ocurrió un error durante la desinstalación." | ||||||
| npm_031="Confirmación" | npm_031="Confirmación" | ||||||
| npm_032="¿Está seguro que desea desinstalar Anthropoc Claude Code?" | npm_032="¿Está seguro que desea desinstalar Anthropoc Claude Code?" | ||||||
| npm_033="¿Desea instalar Anthropoc Claude Code?" | npm_033="¿Desea instalar Anthropoc Claude Code?" | ||||||
|  | npm_034="Alias existente" | ||||||
|  | npm_035="El alias 'cortana' ya existe en" | ||||||
|  | npm_036="Alias creado" | ||||||
|  | npm_037="Alias 'cortana' añadido a" | ||||||
|  | npm_038="Ahora puede usar el comando 'cortana' para ejecutar Claude." | ||||||
|  | npm_039="Error al crear el alias 'cortana'" | ||||||
|  | npm_040="Shell no compatible detectado." | ||||||
|  | npm_041="Alias eliminado" | ||||||
|  | npm_042="Alias 'cortana' eliminado de" | ||||||
|  | npm_043="Alias no encontrado" | ||||||
|  | npm_044="El alias 'cortana' no existe en la configuración del shell." | ||||||
|  |  | ||||||
		Loading…
	
		Reference in a new issue