Установка
maxicfg распространяется одним статическим бинарником. Выберите способ, удобный для вашего окружения, — результат во всех случаях одинаковый.
Debian / Ubuntu
curl -fsSL https://maxicfg.pro/apt/key.gpg \
| sudo gpg --dearmor -o /usr/share/keyrings/maxicfg.gpg
echo "deb [signed-by=/usr/share/keyrings/maxicfg.gpg] \
https://maxicfg.pro/apt stable main" \
| sudo tee /etc/apt/sources.list.d/maxicfg.list
sudo apt update && sudo apt install maxicfg
macOS
brew tap maxicfg/tap
brew install maxicfg
Бинарный релиз
Скачайте архив для своей платформы, проверьте контрольную сумму и положите
бинарник в каталог из PATH:
VERSION=0.9.5
curl -fsSLO https://maxicfg.pro/dl/${VERSION}/maxicfg_linux_amd64.tar.gz
curl -fsSLO https://maxicfg.pro/dl/${VERSION}/checksums.txt
sha256sum --check --ignore-missing checksums.txt
tar -xzf maxicfg_linux_amd64.tar.gz
sudo install -m 0755 maxicfg /usr/local/bin/maxicfg
Docker
docker run --rm -v "$PWD:/work" -w /work \
ghcr.io/maxicfg/maxicfg:0.9.5 lint ./config
Из исходников
Требуется Go 1.22 или новее:
go install maxicfg.pro/cmd/maxicfg@v0.9.5
Проверка установки
$ maxicfg version
maxicfg 0.9.5 (linux/amd64, go1.22.6)
Использование в CI
В CI всегда фиксируйте точную версию. Проект младше 1.0, флаги могут меняться между минорными релизами — установка без фиксации рано или поздно сломает пайплайн в самый неподходящий момент.
Минимальный шаг для GitHub Actions:
- name: Lint configuration
run: |
curl -fsSL https://maxicfg.pro/dl/0.9.5/maxicfg_linux_amd64.tar.gz \
| tar -xz -C /usr/local/bin maxicfg
maxicfg lint ./config --schema ./config/schema.yaml --format github
Флаг --format github выводит аннотации workflow, и проблемы
появляются прямо в диффе пул-реквеста.
Автодополнение в shell
# bash
maxicfg completion bash | sudo tee /etc/bash_completion.d/maxicfg
# zsh
maxicfg completion zsh > "${fpath[1]}/_maxicfg"
# fish
maxicfg completion fish > ~/.config/fish/completions/maxicfg.fish
Удаление
sudo apt remove maxicfg # Debian / Ubuntu
brew uninstall maxicfg # macOS
sudo rm /usr/local/bin/maxicfg # ручная установка