From flutter-skills
Sets up a Linux environment for Flutter development. Use when configuring a Linux machine to run, build, or deploy Flutter applications.
npx claudepluginhub gsmlg-dev/code-agent --plugin flutter-skillsThis skill uses the workspace's default tool permissions.
- [System Dependencies](#system-dependencies)
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Searches prompts.chat for AI prompt templates by keyword or category, retrieves by ID with variable handling, and improves prompts via AI. Use for discovering or enhancing prompts.
Guides MCP server integration in Claude Code plugins via .mcp.json or plugin.json configs for stdio, SSE, HTTP types, enabling external services as tools.
To build and run Flutter applications on a Linux desktop, install the required C/C++ toolchain and system libraries. Flutter relies on dart:ffi to interface with Linux system calls and the GTK framework for UI rendering.
Required packages for Debian/Ubuntu-based distributions:
curl, git, unzip, xz-utils, zipclang, cmake, ninja-build, pkg-configlibglu1-mesa, libgtk-3-dev, libstdc++-12-devFollow this sequential workflow to prepare the Linux host for Flutter desktop development.
Task Progress:
1. Update and Install Dependencies Execute the following command to install all required packages on Debian/Ubuntu systems:
sudo apt-get update -y && sudo apt-get upgrade -y
sudo apt-get install -y curl git unzip xz-utils zip libglu1-mesa clang cmake ninja-build pkg-config libgtk-3-dev libstdc++-12-dev
2. Conditional: ChromeOS Setup
apt-get commands above before proceeding.3. IDE Configuration Install Visual Studio Code, Android Studio, or an IntelliJ-based IDE. Install the official Dart and Flutter extensions/plugins to enable language server features and debugging capabilities.
Run this feedback loop to ensure the toolchain is correctly recognized by the Flutter SDK.
Task Progress:
1. Run Validator Execute the Flutter diagnostic tool with verbose output:
flutter doctor -v
2. Review and Fix (Feedback Loop)
flutter doctor -v. Repeat until the Linux toolchain section passes.3. Verify Device Availability Ensure the Linux desktop is recognized as a valid deployment target:
flutter devices
Expected Output: At least one entry must display with the platform marked as linux.
When preparing a release build for the Snap Store, configure the Snapcraft build environment.
Task Progress:
1. Install Build Tools
sudo snap install snapcraft --classic
sudo snap install lxd
2. Configure LXD
Initialize LXD and add the current user to the lxd group:
sudo lxd init
sudo usermod -a -G lxd <your_username>
Note: Log out and log back in to apply the group changes.
3. Build the Snap
Navigate to the project root containing the snap/snapcraft.yaml file and execute the build:
snapcraft --use-lxd
snapcraft.yaml ConfigurationUse this template for the <project_root>/snap/snapcraft.yaml file when packaging a Flutter Linux app for the Snap Store.
name: super-cool-app
version: 0.1.0
summary: Super Cool App
description: Super Cool App that does everything!
confinement: strict
base: core22
grade: stable
slots:
dbus-super-cool-app:
interface: dbus
bus: session
name: org.bar.super_cool_app
apps:
super-cool-app:
command: super_cool_app
extensions: [gnome]
plugs:
- network
slots:
- dbus-super-cool-app
parts:
super-cool-app:
source: .
plugin: flutter
flutter-target: lib/main.dart