How To Install Flutter on AlmaLinux 10

Install Flutter on AlmaLinux 10

If you want to install Flutter on AlmaLinux 10, you are in exactly the right place. Flutter is Google’s open-source UI SDK that lets you build natively compiled apps for Android, iOS, Linux desktop, and the web from a single Dart codebase. AlmaLinux 10 is a rock-solid, RHEL 10-compatible enterprise Linux distribution, and it makes a reliable and powerful host for a Flutter development environment. This guide walks you through every step clearly and precisely, from a fresh AlmaLinux 10 system all the way to running your first Flutter application.

What Is Flutter and Why Run It on AlmaLinux 10?

Flutter is maintained by Google and uses the Dart programming language. It lets developers write one codebase and deploy to Android, iOS, Linux, Windows, macOS, and the web without rewriting platform-specific code.

AlmaLinux 10, codenamed “Purple Lion,” was released in May 2025. It is binary-compatible with RHEL 10 and ships with a modern toolchain including kernel 6.12, LLVM 19.1.7, Rust 1.84.1, Go 1.23, and Git 2.47. That modern toolchain means Flutter’s C/C++ compilation requirements are met right out of the box.

For sysadmins and developers who run enterprise Linux workstations, AlmaLinux 10 offers something most other options do not: long-term stability with a genuinely current development stack. That combination makes it one of the best RPM-based platforms to build and test Flutter apps on today.

Prerequisites

Before you start, make sure the following are in place:

  • Operating System: AlmaLinux 10.0 (“Purple Lion”) or 10.1 (“Heliotrope Lion”)
  • Architecture: 64-bit x86_64 processor
  • RAM: Minimum 8 GB (16 GB recommended when running the Android emulator)
  • Disk Space: At least 20 GB free (Flutter SDK ~600 MB; Android Studio + Android SDK ~8-10 GB)
  • User Privileges: A non-root user account with sudo access
  • Internet Connection: Required for downloading the SDK and Android components
  • Tools pre-installed: curl, wget, git (verify with git --version)
  • Terminal Access: Direct or SSH access to your AlmaLinux 10 machine

Step 1: Update Your AlmaLinux 10 System

The first thing to do before installing any development tooling on AlmaLinux 10 is update every package to its latest version. This prevents dependency conflicts that can break the Flutter setup process.

Run the following command to update and upgrade your system:

sudo dnf update -y && sudo dnf upgrade -y

The dnf update command refreshes all installed packages, while dnf upgrade resolves and applies any version changes. Running both together ensures nothing gets left behind.

If the update includes a kernel upgrade, reboot the system before continuing:

sudo reboot

After the reboot, log back in and confirm your AlmaLinux version:

cat /etc/almalinux-release

Expected output:

AlmaLinux release 10.1 (Heliotrope Lion)

This confirms your system is up to date and ready for the Flutter on AlmaLinux 10 setup to begin.

Step 2: Install Required System Dependencies

Flutter on Linux requires a set of base libraries and a Linux desktop development toolchain. On AlmaLinux 10, you install all of these through DNF, the default package manager for RHEL-based systems.

Install Base Utilities

These command-line tools are required by Flutter’s internal processes for downloading, extracting, and managing its SDK files:

sudo dnf install -y curl git unzip xz zip wget

Here is what each package does:

  • curl / wget: Downloads files from the internet
  • git: Flutter uses Git internally to manage SDK versions and packages
  • unzip / xz / zip: Handles archive files used during SDK extraction

Install the Mesa GLU Library

The mesa-libGLU package provides libGLU.so.1, a shared library that Flutter requires to run flutter test on Linux:

sudo dnf install -y mesa-libGLU mesa-libGLU-devel

Without this library, the flutter test command will fail with a shared object error.

Install the Linux Desktop Toolchain

Flutter’s Linux desktop build target requires a C/C++ compiler, a build system, and GTK development headers. On AlmaLinux 10, install them like this:

sudo dnf install -y clang cmake ninja-build pkgconf-pkg-config gtk3-devel lzma-sdk-devel libstdc++-devel

What each package provides:

  • clang: The C/C++ compiler Flutter uses to build Linux desktop apps
  • cmake: Build configuration tool required by Flutter’s Linux build system
  • ninja-build: A fast build system that cmake generates build files for
  • pkgconf-pkg-config: Provides pkg-config, used to locate library headers and linker flags
  • gtk3-devel: GTK 3 development headers required for the Flutter Linux window
  • lzma-sdk-devel: Compression library headers needed by some Flutter packages
  • libstdc++-devel: The C++ standard library development files

Step 3: Install the Java Development Kit (JDK)

The Android SDK and Android Studio both require a compatible JDK. AlmaLinux 10 provides OpenJDK directly through its DNF repositories, so no third-party repo is needed.

Install OpenJDK 17, which is the version recommended for Flutter and Android development:

sudo dnf install -y java-17-openjdk java-17-openjdk-devel

Verify the installation succeeded:

java -version

Expected output:

openjdk version "17.x.x" ...

Now set the JAVA_HOME environment variable permanently so that Android Studio and Flutter can locate it:

echo 'export JAVA_HOME=/usr/lib/jvm/java-17-openjdk' >> ~/.bashrc
source ~/.bashrc

Confirm the variable is active:

echo $JAVA_HOME

Expected output:

/usr/lib/jvm/java-17-openjdk

Step 4: Download and Extract the Flutter SDK

AlmaLinux 10 does not support Snap packages by default, so manual installation of the Flutter SDK is the correct approach here. Manual installation also gives you precise control over which version you install and where it lives on your filesystem.

Create a Development Directory

mkdir -p ~/development
cd ~/development

Download the Flutter SDK Tarball

Visit https://docs.flutter.dev/install/archive to get the exact filename for the latest stable release. Then download it using wget:

wget https://storage.googleapis.com/flutter_infra_release/releases/stable/linux/flutter_linux_3.24.0-stable.tar.xz

Replace 3.24.0 with the latest stable version number shown on the official Flutter archive page.

Extract the SDK

tar xf flutter_linux_3.24.0-stable.tar.xz

Remove the archive to free up disk space:

rm flutter_linux_3.24.0-stable.tar.xz

Verify the Flutter binary exists:

ls ~/development/flutter/bin/flutter

The flutter binary should appear at ~/development/flutter/bin/flutter.

Step 5: Add Flutter to Your PATH

The Flutter binary needs to be in your shell’s PATH so you can run flutter from any directory. Without this step, the shell will report flutter: command not found every time you try to use it.

Add Flutter to PATH Permanently

Open ~/.bashrc and append the Flutter bin directory:

echo 'export PATH="$HOME/development/flutter/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

If you use Zsh, replace ~/.bashrc with ~/.zshrc.

Verify the PATH is set correctly:

echo $PATH | grep flutter

Confirm Flutter resolves from the shell:

which flutter

Expected output:

/home/<your-username>/development/flutter/bin/flutter

Now check the Flutter version to confirm the SDK is working:

flutter --version

This returns the Flutter version, Dart SDK version, and channel (should be stable).

Step 6: Run Flutter Doctor

flutter doctor is Flutter’s built-in environment checker. It scans your system, identifies what is correctly configured, and tells you exactly what is missing. Think of it as a pre-flight checklist before you start development.

Run it now:

flutter doctor

The output uses a simple visual system:

  • Green checkmark means that component is configured correctly
  • Yellow exclamation means there is a warning worth noting
  • Red cross means something is broken or missing

At this stage, expect red crosses next to the Android toolchain because Android Studio is not installed yet. That is normal and expected. The Flutter SDK, Linux toolchain, and Chrome components should be green if you followed the previous steps correctly.

Run the verbose version for detailed diagnostics:

flutter doctor -v

One important note: Dart SDK ships bundled with Flutter. You do not need to install Dart separately.

Step 7: Install Android Studio on AlmaLinux 10

Android Studio is the official IDE for Android development and provides the Android SDK that Flutter needs to build and test Android apps. On AlmaLinux 10, installation involves a manual tarball deployment.

Download Android Studio

Go to https://developer.android.com/studio and copy the download link for the Linux tarball. Then download it:

wget https://redirector.gvt1.com/edgedl/android/studio/ide-zips/<version>/android-studio-<version>-linux.tar.gz

Extract and Install

tar xzf android-studio-*-linux.tar.gz
sudo mv android-studio /opt/android-studio

Install Required 32-bit Libraries

Android Studio on RHEL-based systems requires specific 32-bit compatibility libraries:

sudo dnf install -y glibc.i686 glibc-devel.i686 libstdc++.i686 ncurses-devel.i686 libX11-devel.i686 libXrender.i686 libXrandr.i686

These libraries handle 32-bit compatibility and rendering for the Android emulator.

Create a Desktop Launcher Entry

Create a .desktop file so Android Studio appears in your application menu:

sudo tee /usr/share/applications/android-studio.desktop > /dev/null <<EOF
[Desktop Entry]
Version=1.0
Type=Application
Name=Android Studio
Exec=/opt/android-studio/bin/studio.sh
Icon=/opt/android-studio/bin/studio.png
Terminal=false
Categories=Development;IDE;
EOF

Update the desktop database:

sudo update-desktop-database

Launch Android Studio for the First Time

/opt/android-studio/bin/studio.sh

When the setup wizard opens, choose Standard installation. Android Studio will download the Android SDK, build tools, and platform tools automatically.

Step 8: Configure the Android SDK and Accept Licenses

Once Android Studio finishes its initial setup, you need to accept the Android SDK licenses. Flutter will not build Android apps until all licenses are accepted.

Run this from your terminal:

flutter doctor --android-licenses

You will see a series of license prompts. Type y and press Enter to accept each one.

If flutter doctor --android-licenses reports a Java error, open Android Studio, navigate to File > Settings > Appearance & Behavior > System Settings > Android SDK, click the SDK Tools tab, check Android SDK Command-line Tools, and click Apply. Then re-run the command.

After accepting all licenses, configure the ANDROID_HOME environment variable:

echo 'export ANDROID_HOME=$HOME/Android/Sdk' >> ~/.bashrc
echo 'export PATH="$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$PATH"' >> ~/.bashrc
source ~/.bashrc

Verify the variable:

echo $ANDROID_HOME

Expected output:

/home/<your-username>/Android/Sdk

Now run flutter doctor again to confirm the Android toolchain shows a green checkmark.

Step 9: Install Flutter and Dart Plugins in Android Studio

Open Android Studio and navigate to File > Settings > Plugins. Search for Flutter in the marketplace and click Install. Android Studio will automatically prompt you to install the Dart plugin as well. Accept it.

Restart Android Studio when prompted.

Once it restarts, confirm both plugins appear as Enabled under the installed plugins list. With these plugins active, Android Studio gains full Flutter project creation, code completion, widget previews, and integrated flutter run support.

Step 10: Set Up an Android Virtual Device (AVD)

An Android Virtual Device (AVD) is an emulator that lets you test your Flutter Android apps without a physical device.

Open the Device Manager from Tools > Device Manager in Android Studio. Click Create Device and follow these steps:

  1. Select a hardware profile (Pixel 6 is a solid, well-tested choice)
  2. Choose a system image: API 34 or higher is recommended for modern Flutter app testing
  3. Click Finish to create the AVD

Launch the emulator from the Device Manager to confirm it boots correctly.

If you are running AlmaLinux 10 inside a virtual machine, check whether KVM hardware acceleration is available. Without KVM, the Android emulator will run extremely slowly:

egrep -c '(vmx|svm)' /proc/cpuinfo

A result greater than 0 means KVM is available. If KVM is not available inside your VM, enable nested virtualization in your hypervisor settings.

Step 11: Create and Run Your First Flutter App

Everything is installed. Now confirm the setup works end to end by creating a new Flutter project and running it.

Create a new project:

flutter create my_first_app
cd my_first_app

Flutter generates a complete project scaffold with a sample counter app in lib/main.dart.

Run it on the Linux desktop target:

flutter run -d linux

Or run it on the Android emulator (make sure the AVD is booted first):

flutter run

A successful run opens the default Flutter counter app. If you see it launch without errors, your Flutter on AlmaLinux 10 setup is fully working.

Troubleshooting Common Issues

Even a clean install can run into problems. Here are the most common errors you will encounter when you configure Flutter on AlmaLinux 10, along with direct fixes.

1. flutter: command not found

The Flutter binary is not in your PATH. Re-run:

source ~/.bashrc
which flutter

If which flutter still returns nothing, double-check that the export line in ~/.bashrc points to the correct path where you extracted the Flutter SDK.

2. libGLU.so.1: cannot open shared object file

This error appears when running flutter test. Install the missing library:

sudo dnf install -y mesa-libGLU

3. Android licenses not accepted (persistent)

If flutter doctor keeps reporting unaccepted licenses even after running flutter doctor --android-licenses, the issue is likely a write permission problem on the Android SDK directory. Fix it with:

sudo chown -R $USER:$USER $HOME/Android
flutter doctor --android-licenses

4. flutter doctor --android-licenses fails with a Java error

Open Android Studio, go to SDK Tools, and install Android SDK Command-line Tools. Then re-run:

flutter doctor --android-licenses

5. Android emulator is extremely slow or will not start

KVM is not enabled. On a bare-metal AlmaLinux 10 machine, install KVM support:

sudo dnf install -y qemu-kvm libvirt virt-manager
sudo systemctl enable --now libvirtd

If you are inside a virtual machine, enable nested virtualization in your hypervisor (VMware, VirtualBox, or KVM host) settings.

Congratulations! You have successfully installed Flutter. Thanks for using this tutorial for installing the Flutter open-source UI software development kit on your AlmaLinux OS 10 system. For additional or useful information, we recommend you check the official Flutter website.

VPS Manage Service Offer
If you don’t have time to do all of this stuff, or if this is not your area of expertise, we offer a service to do “VPS Manage Service Offer”, starting from $10 (Paypal payment). Please contact us to get the best deal!
r00t is a dedicated and highly skilled Linux Systems Administrator with over a decade of progressive experience in designing, deploying, and maintaining enterprise-grade Linux infrastructure. His professional journey began in the telecommunications industry, where early exposure to Unix-based operating systems ignited a deep and enduring passion for open-source technologies and server administration.​ Throughout his career, r00t has demonstrated exceptional proficiency in managing large-scale Linux environments, overseeing more than 300 servers across development, staging, and production platforms while consistently achieving 99.9% system uptime. He holds advanced competencies in Red Hat Enterprise Linux (RHEL), Debian, and Ubuntu distributions, complemented by hands-on expertise in automation tools such as Ansible, Terraform, Bash scripting, and Python.

Related Posts