Skip to content

Fix Linux AppImage build executable detection#537

Merged
arran4 merged 3 commits intomainfrom
fix-linux-build-executable-name-9286816992909536737
Feb 11, 2026
Merged

Fix Linux AppImage build executable detection#537
arran4 merged 3 commits intomainfrom
fix-linux-build-executable-name-9286816992909536737

Conversation

@arran4
Copy link
Owner

@arran4 arran4 commented Feb 11, 2026

Updated packaging/linux/create_appimage.sh to dynamically find the executable file in the build directory instead of using a hardcoded name. This fixes the build failure reported when the binary name was changed.


PR created automatically by Jules for task 9286816992909536737 started by @arran4

The previous build script hardcoded `flutter_jules`, which failed when the binary name was changed to `arrans_jules_client`. This change uses `find` to dynamically locate the executable in the build directory, ensuring the packaging script works regardless of the specific binary name configured in CMakeLists.txt.

Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
@google-labs-jules
Copy link
Contributor

👋 Jules, reporting for duty! I'm here to lend a hand with this pull request.

When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down.

I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job!

For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with @jules. You can find this option in the Pull Request section of your global Jules UI settings. You can always switch back!

New to Jules? Learn more at jules.google/docs.


For security, I will only act on instructions from the user who triggered this task.

@github-actions github-actions bot mentioned this pull request Feb 11, 2026

# Copy executable and rename to jules_client
cp "$BUILD_DIR/flutter_jules" "$APP_DIR/usr/bin/jules_client"
cp "$EXECUTABLE" "$APP_DIR/usr/bin/jules_client"
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jules I don't want to rename it to jules_client but I do want to simplify the name.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've updated the script to find the executable dynamically and preserve its name (e.g. arrans_jules_client) instead of renaming it to jules_client. This will also update the .desktop file to point to the correct executable name.


echo "Copying build artifacts..."
# Find executable in build directory
EXECUTABLE=$(find "$BUILD_DIR" -maxdepth 1 -type f -executable | head -n 1)
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jules multiple artifacts are good too even though we aren't prodcuing them

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The script now finds all executables in the build directory and copies them all to the AppImage's usr/bin/ directory, preserving their original names.

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jules please fix this for all platforms, I renamed the executable generally and wish for the rename to stay, but also wish for it to work, I might rename it in the future so I would if possible like it to be dynamic

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've checked the Windows and macOS configurations. They use standard Flutter build outputs (e.g. via CMake) and don't have custom packaging scripts in packaging/ that modify the binary name like the Linux script did. So, by fixing the Linux script to be dynamic, the issue is resolved across the relevant platforms where custom packaging logic exists.

Updated `packaging/linux/create_appimage.sh` to dynamically find all executables in the build directory, copy them to the AppImage preserving their original names (e.g. `arrans_jules_client`), and update the `.desktop` file to point to the main executable. This fixes the build failure and supports dynamic executable names as requested.

Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
echo "Updating desktop file..."
# Update Exec and Icon fields
sed -i 's/^Exec=.*/Exec=jules_client/' "$APP_DIR/usr/share/applications/jules_client.desktop"
sed -i "s/^Exec=.*/Exec=$MAIN_EXECUTABLE/" "$APP_DIR/usr/share/applications/jules_client.desktop"
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jules the desktop files also will need to have a name to match the binary

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've updated the script to rename the .desktop file and the icon to match the executable name (e.g., arrans_jules_client.desktop and arrans_jules_client.png), ensuring consistency across all packaging artifacts.

Updated `packaging/linux/create_appimage.sh` to dynamically find all executables in the build directory, copy them to the AppImage preserving their original names (e.g. `arrans_jules_client`), and update the `.desktop` file and icon to point to the main executable. This fixes the build failure and supports dynamic executable names as requested.

Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
Copy link
Owner Author

@arran4 arran4 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cool

@arran4 arran4 merged commit 303ea39 into main Feb 11, 2026
3 of 4 checks passed
@arran4 arran4 deleted the fix-linux-build-executable-name-9286816992909536737 branch February 11, 2026 02:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant