Saltar al contenido

Gestor

Gestionaremos nuestro entorno de software con el Gestor de Entornos de Software pkgx.
Además de gestionar paquetes de software, pkgx permite gestionar variables de entorno de forma sencilla (no jerárquica) por proyecto.

Requisitos previos

Instalar el comando sudo si no está ya disponible (por ejemplo, dentro de un contenedor).

# (command -v sudo) || (apt update && apt -y install sudo)

Instalar el comando curl si no está ya disponible.

$ (command -v curl) || ( sudo apt update && sudo apt -y install curl )

pkgx

Instalación

Instalar el comando pkgx.

~ $ curl https://pkgx.sh | sh
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  3485  100  3485    0     0   9146      0 --:--:-- --:--:-- --:--:--  9171
installing: /usr/local/bin/pkgx
######################################################################## 100.0%
pkgx 2.7.0
pkgm 0.11.1
mash 0.4.0
now type: pkgx --help
~ $ pkgx --help
usage:
  pkgx [+pkg@x.y…] <program|path> [--] [arg…]

examples:
  $ pkgx gum format "# hello world" "sup?"
  $ pkgx node@18 --eval 'console.log("hello world")'
  $ pkgx +openssl cargo build

modes:
  $ pkgx --query bun  # could you run `bun`? (-Q)
  $ pkgx --help       # hi mom!
  $ pkgx --version

flags:
  -q,  --quiet      # suppress brief informational messages
  -qq, --silent     # no chat. no errors. just execute.
  -j,  --json=v2    # output JSON (if sensible)
  -C,  --chdir <d>  # change directory first
  --sync            # sync first (note: rarely if ever needed)
  -v                # print version and continue

more:
  $ xdg-open https://docs.pkgx.sh

Integración

Integrar pkgx con el shell.

~ $ pkgx integrate
/Users/david_delavennat/.zshrc << `source <(pkgx --shellcode)`
/Users/david_delavennat/.bashrc << `eval "$(pkgx --shellcode)"`
/Users/david_delavennat/.bash_profile << `eval "$(pkgx --shellcode)"`
restart your terminal for `pkgx` hooks to take effect

Instalarlo con pkgx.

~/tp/ $ pkgx install github.com/mikefarah/yq
pkgx: installed: ~/.local/bin/yq

Uso

Para poder utilizar el entorno de desarrollo definido en un archivo pkgx.yaml, es necesario ejecutar previamente el comando dev.