Package Base Details: flutter

Git Clone URL: https://aur.archlinux.org/flutter.git (read-only, click to copy)
Keywords: android fuchsia ios mobile sdk
Submitter: flipflop97
Maintainer: WithTheBraid
Last Packager: WithTheBraid
Votes: 135
Popularity: 7.66
First Submitted: 2017-06-05 21:03 (UTC)
Last Updated: 2024-04-18 09:55 (UTC)

Pinned Comments

WithTheBraid commented on 2024-03-28 00:44 (UTC) (edited on 2024-04-16 08:22 (UTC) by WithTheBraid)

Note to the lovers of AUR helpers : It looks like dependency resolution is a complex topic. Despite all package relations being properly declared in the Flutter packages, most AUR helpers seem to have trouble resolving the dependency chain between the package bases aur/flutter and aur/flutter-artifacts-google-bin. This is not my fault and I cannot do anything about it.

It looks like the initial installation works fine using aur/paru. Sadly aur/paru does not reach at building updates for the package.

On the other hand aur/yay properly reaches at both installing and updating this package, even though it builds the package 15 times (!!!) again and again.

If you use aur/paru, consider to simply execute pacman -R flutter && pacman -Rns flutter to clean up the previous installation of both package bases.

If you build both package bases using makepkg -sfC and later on install all build outputs using pacman -U, both the installation and the updates work like a charm.

I'm very sorry for the inconvenience, but sadly there's nothing I can do about this.

WithTheBraid commented on 2024-03-25 20:55 (UTC) (edited on 2024-03-26 15:07 (UTC) by WithTheBraid)

Huge update to the Flutter AUR package :

The previous implementation basically did a user installation of Flutter - downloaded the custom Dart SDK, CI artifacts from Chromium CI and had to be kept in user R/W access in order to have the Flutter Cache Manager working.

These times are now over - a clean and (almost) completely rewritten PKGBUILD which now uses clean dependency declarations, system Dart and Gradle and for sure no more user R/W installation directory.

This AUR entry is now a split package. Installing aur/flutter will still bundle the entire toolchain you knew from before. The other way round, if you don't need everything - e.g. when depending on Flutter as a build dependency in another package, you can choose to only depend on what you need.

The following split packages are available :

  • flutter : meta package containing all other split packages

  • flutter-common : the common files for Flutter needed for all use cases

  • flutter-devel : your option of choice as a developer - ships the Flutter tool and all required templates to e.g. create a new project

  • flutter-tool : The pure Flutter tool. Use as depends to build your package.

  • flutter-target-linux : The Flutter Linux build files. Use as depends to build your package.

  • flutter-target-web : The Flutter web build files. Use as depends to build web apps (e.g. fluffychat-web does this).

  • flutter-target-android : The Flutter Android build files. Use if you want to develop Android apps.

  • flutter-gradle : The Flutter Gradle wrapper. Populated from system Gradle.

  • flutter-intellij-patch : a tiny patch to make the IntelliJ Flutter plugin work with the new package.

  • flutter-material-fonts-google-bin : Mandatory fonts package, planned to have a system-installed drop-in replacement soon.

  • flutter-engine-common-google-bin : Shared part of the Flutter engine - downloaded from Google servers.

  • flutter-sky-engine-google-bin : Flutter sky engine - downloaded from Google servers.

  • flutter-engine-linux-google-bin : Linux part of the Flutter engine - downloaded from Google servers.

  • flutter-engine-web-google-bin : Web part of the Flutter engine - downloaded from Google servers.

  • flutter-engine-android-google-bin : Android part of the Flutter engine - downloaded from Google servers.

  • flutter-gradle-google-bin : The Flutter Gradle wrapper - downloaded from Google servers.

Stay tuned for non google-bin versions of the engine, they are in coming !

Since almost everything is written from scratch and heavy patches are applied to use the system packages as dependencies, there might still be bugs occurring. Please report them otherwise I can't fix them !

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 7 8 9 .. 22 Next › Last »

WithTheBraid commented on 2024-03-28 00:44 (UTC) (edited on 2024-04-16 08:22 (UTC) by WithTheBraid)

Note to the lovers of AUR helpers : It looks like dependency resolution is a complex topic. Despite all package relations being properly declared in the Flutter packages, most AUR helpers seem to have trouble resolving the dependency chain between the package bases aur/flutter and aur/flutter-artifacts-google-bin. This is not my fault and I cannot do anything about it.

It looks like the initial installation works fine using aur/paru. Sadly aur/paru does not reach at building updates for the package.

On the other hand aur/yay properly reaches at both installing and updating this package, even though it builds the package 15 times (!!!) again and again.

If you use aur/paru, consider to simply execute pacman -R flutter && pacman -Rns flutter to clean up the previous installation of both package bases.

If you build both package bases using makepkg -sfC and later on install all build outputs using pacman -U, both the installation and the updates work like a charm.

I'm very sorry for the inconvenience, but sadly there's nothing I can do about this.

WithTheBraid commented on 2024-03-27 23:29 (UTC)

@juaji Sad manjaro still ships dart 3.0.7. Anyway, I now patched the flutter package to also compile with dart-sdk-dev (though I highly suggest the arch extra/dart package). This should now also work on manjaro without further workarounds.

juaji commented on 2024-03-27 23:22 (UTC) (edited on 2024-03-27 23:24 (UTC) by juaji)

Greetings, as discussed here the workaround for the error "Null check operator used on a null value" consists of create a symbolic link from /opt/dart-sdk-dev to /opt/dart-dev. This (I assume) taking into account if: 1. dart is installed using dart-sdk-dev 2. The operating system is Manjaro and not ArchLinux (as is my case) since the "extra" repo of Manjaro has dart in a version lower than the required one (3.0.7, see), but the "extra" repo of ArchLinux has dart in the required version for this package (>=3.3.2, see). By doing this (that is, the symbolic link) the error disappears, however it was a way out of an error and finding others that have already been discussed regarding dependencies. I suggest installing flutter using flutterup, it seems to do the work, it has not taken me more than 5 minutes what I have been trying to do for three days.

Papitz commented on 2024-03-27 19:38 (UTC)

@silikeite yay does loop but it's not infinite. It just seems like it. It builds it around 10-12 times and takes about half an hour but it does work. paru manages to do it properly.

silikeite commented on 2024-03-27 19:36 (UTC) (edited on 2024-03-27 19:44 (UTC) by silikeite)

PKGBUILD structure is causing yay to not be able to properly build this package - yay just loops and repeatedly tries to build flutter over and over again.

EDIT: Saw the comment earlier regarding yay taking a long time to build. For now I'll switch back to using Google's official way of installing flutter until this package's build process settles down.

WithTheBraid commented on 2024-03-27 17:14 (UTC)

@Papitz Thanks for the comment, looks like I forgot to include the engine stamp into the Android target. I will publish a fix in a moment.

WithTheBraid commented on 2024-03-27 17:13 (UTC) (edited on 2024-03-27 23:27 (UTC) by WithTheBraid)

EDIT : SOLVED.

Many users were trying to use the aur/flutter package together with aur/dart-sdk-dev. Since that package didn't behave as the extra/dart package. The build failed. If you try out the aur/flutter=3.19.4-18, this should be fixed.

I hope you will now be finally able to enjoy the new Flutter package - hopefully without further major issues. If not, keep posting here or in GitLab, I'll give my best to investigate !


Many user report an error with the Flutter tool trying to figure out the current version.

_TypeError: Null check operator used on a null value

Those of you who are fine with using GitLab, I'd highly appreciate more detailed bug reports in this issue : https://gitlab.com/flutter-archlinux/tool/-/issues/1

juaji commented on 2024-03-27 15:47 (UTC)

@WithTheBraid I keep getting the same error "Null check operator used on a null value". Does anyone know of an alternative to installing flutter while this (broken) package is being fixed?

Papitz commented on 2024-03-27 15:19 (UTC)

After installing the new package I am getting this error:

An exception occurred applying plugin request [id: 'dev.flutter.flutter-gradle-plugin']
> Failed to apply plugin 'dev.flutter.flutter-gradle-plugin'.
   > /usr/lib/flutter/bin/internal/engine.version (No such file or directory)

I also cannot find the file anywhere anymore. It used to be there with the old version. Does anyone know what package I am missing or where the file might end up?