Skip to content

Linux support#8

Open
dimitriosGX wants to merge 2 commits into
mainfrom
dk-stdiod
Open

Linux support#8
dimitriosGX wants to merge 2 commits into
mainfrom
dk-stdiod

Conversation

@dimitriosGX

@dimitriosGX dimitriosGX commented Jun 29, 2026

Copy link
Copy Markdown
Contributor

Summary by cubic

Add Linux support for edison-stdiod via a systemd user service and ship static musl binaries for x64 and arm64. This lets Linux users install the daemon per-user (no sudo) with reliable restarts and unified logs.

  • New Features

    • Systemd user service (install/uninstall/status): writes ~/.config/systemd/user/edison-stdiod.service, enables --now, uses Restart=on-failure, WantedBy=default.target, and avoids lingering.
    • Detects when a systemd user manager isn’t available and returns a clear error; you can still run edison-stdiod run under any init/PM.
    • Routes stdout/stderr to the daemon log (append) and seeds PATH for child spawns.
    • CI: new Linux job builds fully static musl binaries for x86_64 and aarch64 using zig + cargo-zigbuild, smoke-tests x64, generates SHA256SUMS-linux, uploads artifacts, and publishes on tags.
    • Added scripts/build-linux.sh to reproduce the static builds locally.
  • Migration

    • Requires saved credentials before install: edison-stdiod login --backend ... --api-key ...
    • Install: edison-stdiod install; Uninstall: edison-stdiod uninstall; Logs: edison-stdiod logs --follow

Written for commit f2216ca. Summary will update on new commits.

Review in cubic

@qodo-code-review

Copy link
Copy Markdown

Qodo reviews are paused for this user.

Troubleshooting steps vary by plan Learn more →

On a Teams plan?
Reviews resume once this user has a paid seat and their Git account is linked in Qodo.
Link Git account →

Using GitHub Enterprise Server, GitLab Self-Managed, or Bitbucket Data Center?
These require an Enterprise plan - Contact us
Contact us →

@dimitriosGX dimitriosGX requested a review from IliaMManolov June 29, 2026 08:30

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

1 issue found across 5 files

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name="crates/edison-stdiod/src/platform/linux.rs">

<violation number="1" location="crates/edison-stdiod/src/platform/linux.rs:102">
P2: ExecStart uses an unquoted binary path, so paths with spaces break service startup. Quote the executable path in the unit template.</violation>
</file>

Reply with feedback, questions, or to request a fix.

Re-trigger cubic

\n\
[Service]\n\
Type=simple\n\
ExecStart={bin} run\n\

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2: ExecStart uses an unquoted binary path, so paths with spaces break service startup. Quote the executable path in the unit template.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At crates/edison-stdiod/src/platform/linux.rs, line 102:

<comment>ExecStart uses an unquoted binary path, so paths with spaces break service startup. Quote the executable path in the unit template.</comment>

<file context>
@@ -0,0 +1,274 @@
+         \n\
+         [Service]\n\
+         Type=simple\n\
+         ExecStart={bin} run\n\
+         Restart=on-failure\n\
+         RestartSec=5\n\
</file context>

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