在Manjaro上安裝Flutter
Arch Linux通用
簡介
Flutter 官網上有關於如何在Windows,MacOS及Linux上安裝的教學:傳送門,在Manjaro大致上照著做就好,不過有20%的細節可能需要自己調整搞懂,這篇文就是關於怎樣幫你省下這些摸索時間。你想自己挑戰一下就不要再看下去,以下有劇透啊啊啊
節錄自Wikipedia:
Flutter是一個由Google開發的開源行動應用軟體開發套件,用於為Android、iOS、 Windows、Mac、Linux、Google Fuchsia開發應用
Manjaro Linux是基於 Arch Linux 的 Linux 發行版,使用 Xfce 和 KDE Plasma 作為預設桌面環境,和 Arch 一樣,採用滾動更新。其目標是為 PC 提供易於使用的自由的作業系統。
撰文當下,Flutter版本為1.12.13
安裝Flutter SDK
首先除了等會要安裝的Flutter以外的東西(Ex: Android Studio, Android SDK…),你需要先安裝Flutter本人。這裡我會介紹兩種在Manjaro上可能的安裝方式。
官方方式
在Flutter官網的 Docs > Get started > Install > Linux > Get the Flutter SDK,你可以找到完整的官方指示,教你該如何安裝Flutter SDK。
基本上照做就好,步驟分別為:
- 下載含有Flutter sdk的壓縮檔
- 可以點選官網上提供的連結
- 或者透過
git clone https://github.com/flutter/flutter.git -b stable
下載
- 解壓縮到某個你想要放的資料夾(Ex: ~/dev)
- 建議在你的家目錄下
tar xf ~/Downloads/flutter_linux_v1.12.13+hotfix.9-stable.tar.xz -C ~/dev
- 把flutter的執行擋路徑加入你環境變數的path
- 在.bashrc或是.bash_profile
用zsh或是其他的自己應該知道要改哪中加入flutter的binary路徑- Ex:
export PATH="$PATH:~/dev/flutter/bin"
- Ex:
- 在.bashrc或是.bash_profile
- 重載環境或重開terminal你應該就可以直接執行flutter了
但我們其實離完成還有一段落 Orz
AUR(Arch User Repository) 是你的好朋友
這個方式安裝的Flutter SDK版本有可能不是最新,但應該至少頗新。
竟然都用Manjaro了,當然要來好好利用一下AUR
方法一 - 土法煉鋼AUR
git clone https://aur.archlinux.org/flutter.git
cd flutter
makepkg -si
細節參考這裡,抱歉它是英文的,大家看不懂的話應該看圖說故事應該還是會懂的~~(毆飛)~~
方法二 - yay是你的好朋友
雖說這是方法二好像跟方法一不一樣,但是如果你在manjaro上還沒安裝yay的話,基本上你還是需要用到土法煉鋼AUR(?
- 安裝 yay
git clone https://aur.archlinux.org/yay.git cd yay makepkg -si
- 透過yay安裝Flutter SDK
yay flutter # 你會看到如以下 # 4 aur/flutter-git 1.4.19.r2.27b058a414-1 (+1 0.00%) # A new mobile app SDK to help developers and designers build modern mobile apps for iOS and Android. # 3 aur/flutter-beta 1.15.17-1 (+2 0.10%) # A new mobile app SDK to help developers and designers build modern mobile apps for iOS and Android. # 2 aur/flutter-dev 1.16.2-1 (+2 0.05%) # A new mobile app SDK to help developers and designers build modern mobile apps for iOS and Android. # 1 aur/flutter 1.12.13+hotfix.8-1 (+48 0.97%) (Out-of-date 2020-04-04) # A new mobile app SDK to help developers and designers build modern mobile apps for iOS and Android.
- aur/flutter
- 最多人用,官方正式的穩定版本
- aur/flutter-dev/beta
- 如其名,dev及beta版
- aur/flutter-git
- 熱騰騰從flutter git repo TOT編出來的版本
- 這才是最最最最最新!
- 建議沒事裝aur/flutter就好
- aur/flutter
注意:使用yay安裝flutter,AUR上的設定會將flutter安裝在/opt下,但flutter會需要對其存在的資料夾有寫的權限,故採取此方法需要對該資料夾改變權限設定來修正。
sudo setfacl -m u:YOURUSERNAME:rwx -R /opt/flutter/
該issue在我寫這篇文時追蹤於flutter/issues/44526
安裝Android Studio
官方方式 + pacman
根據官方所說,只需要下載然後安裝Android Studio就好了。
但根據筆者實際測試,下載壓縮檔,解壓縮及後面相關的設定實在是有點麻煩且痛苦。
筆者摸索了一陣後,以下步驟應該可行
- 下載Linux用的tar.gz壓縮檔
sudo pacman -U --noconfirm android-studio-3.6.1.0-1-x86_64.pkg.tar.xz
但與其採用此方法,不如直接使用yay來安裝。早說阿
yay是你的好朋友
yay android-studio
- aur/android-studio
- Stable branch
- 想選Canary或Beta自理
- aur/android-studio
安裝Android SDK及Plugin
Android SDK + (SDK Tools)
- 開啟剛剛安裝好的Android Studio
- Configure > SDK Manager
- 假如你還沒安裝Android SDK,勾選後安裝
Plugin
- Android Studio > Configure > Plugins
- 安裝
Dart
及Flutter
簽署Android Licenses
flutter doctor --android-licenses
- 有個已知Issue可能需要你安裝Android SDK Tools(Obsolete)以完成簽署,下列步驟假如該Issue已解應可忽略
- 開啟Android Studio > Configure > SDK Manager
- 取消"Hide Obsolete Pacakge”
- 安裝Android SDK Tools(Obsolete)
- 有個已知Issue可能需要你安裝Android SDK Tools(Obsolete)以完成簽署,下列步驟假如該Issue已解應可忽略
- 閱讀後y接受所有協議
執行 flutter doctor
檢查是否相關安裝都已完成
幸運的話,你該會看到以下輸出
[✓] Flutter (Channel stable, v1.12.13+hotfix.9, on Linux, locale en_US.UTF-8)
[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
[✓] Android Studio (version 3.6)
[!] Connected device
! No devices available
! Doctor found issues in 1 category.
除了Connected device
外其他項目都應顯示✓。
其他可能問題
unzip未安裝
sudo pacman -S unzip