Этот Nix флейк предоставляет полноценное окружение разработки для Elixir, Phoenix и LiveView с поддержкой macOS и Linux. Он включает в себя все необходимые инструменты и зависимости, а также кастомно собранный ElixirLS для улучшенной поддержки IDE.
- 🧬 Elixir и Erlang OTP 26
- 🔥 Phoenix Framework с поддержкой LiveView
- 🛠 Кастомно собранный ElixirLS для улучшенной поддержки IDE
- 🐘 PostgreSQL
- 🟩 Node.js для фронтенд-разработки
- 🔄 Поддержка direnv для автоматической активации окружения
- 🍎 Поддержка macOS и Linux
- 🔍 Инструменты для отслеживания изменений файловой системы (fswatch на macOS, inotify-tools на Linux)
-
Убедитесь, что у вас установлен Nix с поддержкой флейков.
-
Клонируйте этот репозиторий или скопируйте
flake.nix
в корень вашего проекта. -
Создайте файл
.envrc
в корне вашего проекта со следующим содержимым:use flake
-
Разрешите использование direnv:
direnv allow
-
Войдите в директорию проекта. Окружение разработки будет автоматически активировано.
После активации окружения у вас будет доступ к следующим инструментам:
elixir
,iex
: Интерактивная оболочка Elixirmix
: Инструмент сборки для Elixirphoenix.new
: Генератор новых проектов Phoenixpostgres
: PostgreSQL сервер и клиентnode
,npm
: Node.js и npm для фронтенд-разработкиelixir-ls
: Языковой сервер Elixir для поддержки IDE
Для использования ElixirLS в вашей IDE (например, VSCode, Vim, Emacs), настройте путь к исполняемому файлу elixir-ls
, который теперь доступен в вашем PATH.
Для Helix, добавьте следующее в ваш languages.toml
:
[[language]]
name = "elixir"
language-server = { command = "elixir-ls" }
Если у вас возникли проблемы:
- Убедитесь, что у вас установлена последняя версия Nix.
- Попробуйте обновить флейк:
nix flake update
- Пересоздайте окружение:
nix develop --recreate-lock-file
Мы приветствуем вклад в развитие этого флейка! Если у вас есть идеи по улучшению или вы нашли ошибку, пожалуйста, создайте issue или отправьте pull request.
Этот проект распространяется под лицензией MIT. Подробности смотрите в файле LICENSE.