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)
Связанные статьи: