Установка Dart на Debian 13, 12, 11: подробное руководство

Dart — это язык программирования от Google, оптимизированный для создания пользовательских интерфейсов. Он используется во Flutter для мобильной и десктопной разработки, а также для серверных приложений и веб-фронтенда. Debian не включает Dart в свои репозитории, поэтому нужно добавить официальный репозиторий Google. Главные сложности для новичка: правильно добавить GPG-ключ и репозиторий (в формате DEB822), а также выбрать нужный канал — stable (рекомендован), beta или dev. Также важно проверить, поддерживается ли архитектура вашего процессора.

💡 В этом руководстве вы установите Dart SDK на Debian из официального репозитория Google. Вы также узнаете, как создать и скомпилировать тестовое приложение (включая AOT-компиляцию), а также решить типичные проблемы.

В этой статье вы узнаете:

  • Как добавить GPG-ключ и репозиторий Google для Dart
  • Как проверить, что ключ и репозиторий настроены правильно
  • Как установить Dart SDK через APT
  • Как создать и запустить тестовое Dart-приложение (JIT и AOT)
  • Как скомпилировать приложение в нативный исполняемый файл
  • Как решить типичные проблемы: ошибки GPG, проблемы с архитектурой, command not found

Для кого: разработчики мобильных приложений (Flutter), веб-разработчики, а также все, кто хочет изучать Dart на Debian 11, 12 или 13.

Оглавление

1. 🔧 Предварительные требования

Перед установкой убедитесь, что:

  • У вас установлена Debian 11, 12 или 13
  • Подключение к интернету стабильно
  • У вас есть права sudo

⚠️ ВАЖНО: Проверьте права sudo перед установкой

Если вы не уверены, есть ли у вашего пользователя права администратора, выполните в терминале:

sudo whoami

Что делает: sudo выполняет команду от имени суперпользователя, whoami показывает имя текущего пользователя.

Зачем: Эта команда проверяет, есть ли у вас права sudo. Без них вы не сможете устанавливать пакеты.

✅ Если выводит root — всё в порядке, можете продолжать.

❌ Если выводит is not in the sudoers file — сначала пройдите наше руководство по настройке sudo.

1.1 Обновление системы

Перед установкой всегда обновляйте список пакетов.

sudo apt update && sudo apt upgrade -y

Что делает: Обновляет список пакетов и устанавливает последние обновления.

1.2 Установка вспомогательных пакетов

sudo apt install curl ca-certificates gpg -y

Что делает: Устанавливает инструменты для безопасного скачивания и работы с GPG-ключами.

2. 📊 Выбор канала Dart

Google предоставляет три канала обновлений:

КаналЧастота обновленийСтабильностьДля кого
StableКаждые 3 месяцаProduction-readyБольшинство
пользователей
BetaЕжемесячноPreviewТестирование
новых фич
DevДважды в неделюЭкспериментальнаяРазработчики,
которым нужны
последние правки

💡 Рекомендация: Используйте Stable для повседневной разработки.

3. 📦 Установка Dart из официального репозитория Google

3.1 Проверка архитектуры (важно!)

ARCH=$(dpkg --print-architecture)
if echo "amd64 arm64 armhf riscv64" | grep -q "$ARCH"; then
    echo "Архитектура $ARCH поддерживается официальным репозиторием Dart."
else
    echo "Ошибка: архитектура $ARCH не поддерживается официальным репозиторием Dart."
    echo "Установите Dart вручную с https://dart.dev/get-dart"
    exit 1
fi

Поддерживаемые архитектуры: amd64, arm64, armhf, riscv64.

3.2 Импорт GPG-ключа Google

curl -fsSL https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo gpg --dearmor --yes -o /usr/share/keyrings/dart.gpg
sudo chmod 644 /usr/share/keyrings/dart.gpg

Проверка прав доступа к ключу:

stat -c '%a %U %G %n' /usr/share/keyrings/dart.gpg

Ожидаемый вывод: 644 root root /usr/share/keyrings/dart.gpg

3.3 Добавление репозитория (Stable, рекомендовано)

sudo tee /etc/apt/sources.list.d/dart.sources > /dev/null <<EOF
Types: deb
URIs: https://storage.googleapis.com/download.dartlang.org/linux/debian
Suites: stable
Components: main
Architectures: $(dpkg --print-architecture)
Signed-By: /usr/share/keyrings/dart.gpg
EOF

Для Beta (опционально): замените Suites: stable на Suites: testing.

Для Dev (опционально): замените Suites: stable на Suites: unstable.

3.4 Обновление списка пакетов и проверка источника

sudo apt update
apt-cache policy dart

Ожидаемый вывод: В строке Candidate должна быть версия, а в таблице версий — https://storage.googleapis.com/download.dartlang.org/linux/debian.

3.5 Установка Dart SDK

sudo apt install dart -y

Что делает: Устанавливает Dart SDK, включая dart (VM), pub (менеджер пакетов), dart2js (компилятор в JS) и dart analyze.

3.6 Проверка установки

command -v dart
dart --version
dpkg-query -W -f='${db:Status-Abbrev} ${binary:Package} ${Version}\n' dart

Ожидаемый вывод:

/usr/bin/dart
Dart SDK version: 3.12.0 (stable) (Fri May 8 01:51:14 2026 -0700) on "linux_x64"
ii dart 3.12.0-1

4. 🧪 Создание и запуск тестового приложения

4.1 Создание проекта

dart create -t console my_dart_app
cd my_dart_app

4.2 Запуск (JIT — Just-In-Time компиляция)

dart run

Ожидаемый вывод: Hello world: 42!

4.3 Компиляция в нативный исполняемый файл (AOT — Ahead-Of-Time)

dart compile exe bin/my_dart_app.dart

4.4 Запуск скомпилированного файла и замер времени

time bin/my_dart_app.exe

Ожидаемый вывод: Hello world: 42! (AOT-компиляция даёт очень быстрый запуск).

5. 🔄 Обновление Dart

sudo apt update
sudo apt install --only-upgrade dart -y

6. ⚠️ Решение типичных проблем

6.1 Ошибка: NO_PUBKEY или Signature verification failed

Симптом: sudo apt update выдаёт ошибку подписи.

Решение: Перезагрузите ключ и проверьте права доступа:

sudo rm -f /usr/share/keyrings/dart.gpg
curl -fsSL https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo gpg --dearmor --yes -o /usr/share/keyrings/dart.gpg
sudo chmod 644 /usr/share/keyrings/dart.gpg
sudo apt update

6.2 Ошибка: dart: command not found

Симптом: dart --version не работает.

Решение: Проверьте, установлен ли пакет:

dpkg -l dart

Если пакет установлен, но команда не найдена — переустановите:

sudo apt reinstall dart

6.3 Ошибка: архитектура не поддерживается

Симптом: Репозиторий не добавляется, так как архитектура не в списке поддержки.

Решение: Если ваша архитектура не поддерживается, скачайте Dart вручную с официального сайта.

6.4 Конфликт дублирующихся источников

Симптом: Предупреждение о дублировании источника download.dartlang.org.

Решение: Проверьте, нет ли старых файлов репозитория:

grep -R "download.dartlang.org" /etc/apt/sources.list /etc/apt/sources.list.d/ 2>/dev/null

Если есть старый файл dart_stable.list, удалите его:

sudo rm -f /etc/apt/sources.list.d/dart_stable.list
sudo apt update

7. ❌ Удаление Dart

7.1 Удаление пакета

sudo apt remove --purge dart -y
sudo apt autoremove -y

7.2 Безопасное удаление ключа (проверка, не используется ли он другими репозиториями)

sudo rm -f /etc/apt/sources.list.d/dart.sources

if grep -rq '/usr/share/keyrings/dart.gpg' /etc/apt/sources.list.d/ 2>/dev/null; then
    echo "Ключ используется другим репозиторием, не удаляю."
else
    sudo rm -f /usr/share/keyrings/dart.gpg
fi

sudo apt update

7.3 Удаление кэша пакетов и проектов (опционально)

hash -r
command -v dart || echo "dart command absent"
dpkg-query -W -f='${db:Status-Abbrev} ${binary:Package}\n' dart 2>/dev/null || echo "dart package absent"

Ожидаемый вывод: dart command absent и dart package absent

Очистка пользовательских данных:

rm -rf ~/.dart ~/.dart-tool ~/.pub-cache
rm -rf ~/my_dart_app

8. 📝 Чек-лист: всё готово к работе

  • [ ] Система обновлена (sudo apt update && sudo apt upgrade -y)
  • [ ] Архитектура проверена и поддерживается
  • [ ] GPG-ключ импортирован и права доступа корректны (stat показывает 644 root root)
  • [ ] Репозиторий Dart добавлен (файл /etc/apt/sources.list.d/dart.sources)
  • [ ] apt-cache policy dart показывает источник storage.googleapis.com
  • [ ] Пакет dart установлен (command -v dart и dpkg-query показывают ii)
  • [ ] Тестовое приложение создано и запускается (dart run выводит Hello world: 42!)
  • [ ] Приложение скомпилировано в нативный исполняемый файл
  • [ ] (Для Flutter-разработчиков) Учтите, что Flutter SDK включает свой dart

Заключение

Вы установили Dart SDK на Debian из официального репозитория Google с проверкой ключа и архитектуры. Теперь вы можете разрабатывать на Dart: серверные приложения, веб-фронтенд (через dart2js) или кроссплатформенные мобильные/десктопные приложения с Flutter. Главное, что нужно запомнить: Dart не входит в стандартные репозитории Debian, поэтому репозиторий Google нужно добавлять вручную. Используйте stable-канал для повседневной разработки. Тестовое приложение доказывает, что Dart работает в режиме JIT (быстрая разработка) и AOT (быстрый запуск в production).

Что дальше:

  • Изучите официальную документацию Dart
  • Установите Flutter для мобильной и десктопной разработки (Flutter SDK включает Dart)
  • Настройте редактор: VS Code с расширением Dart или IntelliJ IDEA
  • Установите Git для управления версиями
  • Изучите управление пакетами через pub (pub get, pub add)

Связанные статьи: