Skip to content

feat: use static appimage runtime for Linux#715

Open
alexsch01 wants to merge 2 commits into
pingdotgg:mainfrom
alexsch01:main
Open

feat: use static appimage runtime for Linux#715
alexsch01 wants to merge 2 commits into
pingdotgg:mainfrom
alexsch01:main

Conversation

@alexsch01
Copy link
Copy Markdown
Contributor

@alexsch01 alexsch01 commented Mar 9, 2026

What Changed

uses electron-userland/electron-builder#9558 to use static appimage runtime

Why

Problem: libfuse2 is not installed on Ubuntu 22.04 and later

electron-userland/electron-builder#9632

  • electron-builder doesn't enable this by default yet (as of 26.8.1)

When electron-builder enables this by default, this workaround should be removed

Checklist

  • This PR is small and focused
  • I explained what changed and why

Note

Use static AppImage runtime for Linux desktop builds

Sets toolsets.appimage to "1.0.2" in the Linux branch of createBuildConfig in build-desktop-artifact.ts, switching Linux builds to use a static AppImage runtime.

Macroscope summarized 7f847d8.

Summary by CodeRabbit

  • Chores
    • Linux desktop build configuration updated to pin the AppImage static runtime to version 1.0.2, improving consistency and reliability of Linux desktop artifacts across builds.

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Mar 9, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: 15065ed3-aa61-4444-8978-7d5cd7b09957

📥 Commits

Reviewing files that changed from the base of the PR and between 563a33a and 7f847d8.

📒 Files selected for processing (1)
  • scripts/build-desktop-artifact.ts
🚧 Files skipped from review as they are similar to previous changes (1)
  • scripts/build-desktop-artifact.ts

📝 Walkthrough

Walkthrough

A new AppImage toolset entry "1.0.2" was added to the Linux platform's buildConfig in scripts/build-desktop-artifact.ts, pinning the AppImage static runtime without changing other platform branches or control flow.

Changes

Cohort / File(s) Summary
Build Configuration
scripts/build-desktop-artifact.ts
Added buildConfig.toolsets = { appimage: "1.0.2" } for the Linux platform, including explanatory comments.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~5 minutes

Poem

🐰 With whiskers twitched and nose held high,
A new AppImage does comply,
Pinned to version one-oh-two,
Linux builds now hum anew! 🥕✨

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and concisely summarizes the main change: using a static AppImage runtime for Linux builds, which is the primary focus of the changeset.
Description check ✅ Passed The description covers the required template sections with concrete details: it explains what changed (setting toolsets.appimage to 1.0.2), why it was needed (libfuse2 dependency issue on Ubuntu 22.04+), and includes relevant context about when the workaround should be removed.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
📝 Coding Plan
  • Generate coding plan for human review comments

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@alexsch01
Copy link
Copy Markdown
Contributor Author

@coderabbitai review

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Mar 10, 2026

✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

🧹 Nitpick comments (1)
scripts/build-desktop-artifact.ts (1)

476-478: Document this temporary runtime pin inline.

The rationale and removal condition currently only live in the PR description, so 1.0.2 will read like a magic value later. A short TODO here will make future electron-builder upgrades safer.

📝 Suggested change
   if (platform === "linux") {
     buildConfig.linux = {
       target: [target],
       icon: "icon.png",
       category: "Development",
     };
+    // TODO: Remove this once electron-builder defaults to the static AppImage runtime.
+    // Ubuntu 22.04+ does not install libfuse2 by default, so we pin the static runtime here.
     buildConfig.toolsets = {
       appimage: "1.0.2",
     };
   }
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@scripts/build-desktop-artifact.ts` around lines 476 - 478, Add an inline TODO
comment next to the buildConfig.toolsets assignment that pins appimage to
"1.0.2": explain this is a temporary runtime pin for electron-builder
compatibility (reference the PR rationale) and state the removal condition
(e.g., when electron-builder supports newer appimage runtime or after testing X
version), and include a short date/author or PR number for traceability so the
magic value in buildConfig.toolsets.appimage is self-documented.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In `@scripts/build-desktop-artifact.ts`:
- Around line 476-478: Add an inline TODO comment next to the
buildConfig.toolsets assignment that pins appimage to "1.0.2": explain this is a
temporary runtime pin for electron-builder compatibility (reference the PR
rationale) and state the removal condition (e.g., when electron-builder supports
newer appimage runtime or after testing X version), and include a short
date/author or PR number for traceability so the magic value in
buildConfig.toolsets.appimage is self-documented.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: cbad2f35-39ac-4fd7-938b-1185ba9f4547

📥 Commits

Reviewing files that changed from the base of the PR and between 24122b1 and 563a33a.

📒 Files selected for processing (1)
  • scripts/build-desktop-artifact.ts

@alexsch01
Copy link
Copy Markdown
Contributor Author

@coderabbitai review

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Mar 13, 2026

✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

vouch:unvouched PR author is not yet trusted in the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant