Saltar al contenido principal
MDev Env Pro
Curso: Mise - Adiós nvm/pyenv63% Completado

En este módulo aprenderás:

  • Explora el catálogo oficial de alias, backends custom y configuración segura.
  • Comandos y configuraciones clave para 05. Modos Pro, Registry & Trust
  • Ejercicios prácticos listos para probar en tu terminal local

Nivel Senior: Aliases, Backends y Seguridad con mise trust

Mano, llegaste al último módulo. Ya dominas herramientas, entornos y tareas. Ahora toca aprender los conceptos avanzados que usan los equipos pro de ingeniería: el catálogo Registry, los distintos Backends y el mecanismo de seguridad Trust.

Catálogo (Registry) y Backends

Cuando ejecutas mise use aws-cli, no necesitas escribir la URL completa del binario. mise consulta su registro de shorthands que soporta múltiples fuentes:

  • Core: Herramientas nativas optimizadas (Node, Python, Go, Rust, Ruby, Zig).
  • Aqua / GitHub: Descarga directa de releases oficiales de GitHub.
  • npm / Cargo / Go: Binarios publicados en administradores de paquetes de lenguaje.
mise.tomltoml
[settings]
# Habilitar actualizaciones dinámicas del catálogo de herramientas
registry_floating = true
experimental = true

[tools]
# Instalación directa desde GitHub release u otro backend custom
"cargo:ripgrep" = "14.1.0"
"npm:typescript" = "5.6.3"

Seguridad y mise trust

Cuando clonas un repositorio desconocido de GitHub, el archivo mise.toml podría incluir comandos sospechosos en las tareas o variables de entorno. Por eso mise requiere que confíes explícitamente en la carpeta del proyecto antes de ejecutar cualquier script automático.

  • mise trust: Marca el directorio actual como seguro para ejecutar sus variables y tareas.
  • mise trust --all: Confía en todos los proyectos dentro de tu directorio de trabajo.

Ejercicio Práctico Ninja 🥷

  1. Ejecuta mise trust en tu directorio de trabajo actual.
  2. Añade un alias de herramienta como "npm:prettier" = "latest" en tu mise.toml.
  3. Corre mise install y verifica que Prettier se instaló correctamente mediante el backend de npm.