Compare commits

..
Author SHA1 Message Date
pc-heiniandClaude Fable 5.1 981eb11b6d fix(console): pass TERM/COLORTERM through flatpak-spawn --host
Build and Publish HeiniRemote Agent Flatpak / build (push) Successful in 7m16s
flatpak-spawn --host does not forward the caller's environment; the host
login shell started without TERM (tput errors, integer test on empty
LINES/COLUMNS in the profile scripts).

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018jkHZhr7ZzHGGuE2bJQmGa
2026-09-22 01:32:51 +02:00
pc-heini b33494d399 Revert "ci: cache cargo registry and target between Flatpak builds"
Build and Publish HeiniRemote Agent Flatpak / build (push) Successful in 7m17s
This reverts commit 11def894e2.
2026-09-22 01:12:24 +02:00
pc-heiniandClaude Fable 5.1 11def894e2 ci: cache cargo registry and target between Flatpak builds
Build and Publish HeiniRemote Agent Flatpak / build (push) Failing after 6m7s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018jkHZhr7ZzHGGuE2bJQmGa
2026-09-22 01:02:22 +02:00
pc-heiniandClaude Fable 5.1 da04640fdf fix(console): host-side PTY via script(1) so the host shell has a named tty and a controlling terminal
Build and Publish HeiniRemote Agent Flatpak / build (push) Successful in 8m37s
The PTY the agent allocates lives in the sandbox's devpts; on the host the
forwarded fd cannot be named (`tty` fails, no controlling terminal, tools
that open /dev/tty break). script(1) gives the login shell a host PTY and
relays through the forwarded one. Also picks up upstream main (frame-burst
fix).

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018jkHZhr7ZzHGGuE2bJQmGa
2026-09-22 00:43:01 +02:00
pc-heiniandClaude Fable 5.1 537d3b8aa8 chore: trigger rebuild for upstream f8c509b
Build and Publish HeiniRemote Agent Flatpak / build (push) Successful in 7m53s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018jkHZhr7ZzHGGuE2bJQmGa
2026-09-21 21:04:20 +02:00
pc-heiniandClaude Fable 5.1 de18d439e5 chore: trigger rebuild for upstream eac11e0; correct README rebuild note
Build and Publish HeiniRemote Agent Flatpak / build (push) Successful in 6m59s
The workflow ignores README pushes, so the previous note was wrong.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018jkHZhr7ZzHGGuE2bJQmGa
2026-09-21 20:30:04 +02:00
pc-heiniandClaude Fable 5.1 05105a6532 docs: note how to trigger a rebuild (and trigger one)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018jkHZhr7ZzHGGuE2bJQmGa
2026-09-21 20:11:16 +02:00
pc-heini c879df948c docs: unit description matches the customer-facing name 2026-09-21 04:41:26 +02:00
3 changed files with 18 additions and 2 deletions

No files matched your search

+3 -1
View File
@@ -61,7 +61,7 @@ user unit wrapping `flatpak run`:
```ini ```ini
# ~/.config/systemd/user/heiniremote-agent.service # ~/.config/systemd/user/heiniremote-agent.service
[Unit] [Unit]
Description=HeiniRemote agent (Flatpak) Description=PC-Heini Fernwartung (HeiniRemote Agent, Flatpak)
After=graphical-session.target After=graphical-session.target
[Service] [Service]
@@ -100,3 +100,5 @@ StatusNotifier names for the tray icon.
| `heiniremote-wrapper.sh` | Entry point: host-shell `$SHELL` override + config adoption. | | `heiniremote-wrapper.sh` | Entry point: host-shell `$SHELL` override + config adoption. |
| `host-shell.sh` | `flatpak-spawn --host` bridge for the PTY console. | | `host-shell.sh` | `flatpak-spawn --host` bridge for the PTY console. |
| `de.pc_heini.HeiniRemoteAgent.*` | Desktop file, AppStream metainfo (version stamped by CI), icon. | | `de.pc_heini.HeiniRemoteAgent.*` | Desktop file, AppStream metainfo (version stamped by CI), icon. |
Builds track the newest upstream `main` commit. To rebuild before the nightly check, push a change to a packaging file (README, docs, LICENSE and .gitignore are ignored by the workflow) or run the workflow manually via `workflow_dispatch`.
+13 -1
View File
@@ -9,9 +9,21 @@
# The inner resolution runs ON THE HOST: flatpak-spawn forwards the sandbox # The inner resolution runs ON THE HOST: flatpak-spawn forwards the sandbox
# environment, so $SHELL would still point at this script — resolve the user's # environment, so $SHELL would still point at this script — resolve the user's
# real login shell from passwd instead and fix up $SHELL before exec'ing it. # real login shell from passwd instead and fix up $SHELL before exec'ing it.
exec flatpak-spawn --host /bin/sh -c ' #
# The PTY itself was allocated inside the sandbox (its own devpts instance),
# so on the host the forwarded fd cannot be named (`tty` fails, no
# controlling terminal, tools that open /dev/tty break). script(1) allocates a
# second, host-side PTY for the shell and relays through the forwarded one;
# util-linux >= 2.35 also passes window-size changes along.
# flatpak-spawn --host does not forward the caller's environment: without
# --env the host shell starts with no TERM at all (login scripts then fail
# in tput and in integer tests on the empty LINES/COLUMNS).
exec flatpak-spawn --host --env=TERM="${TERM:-xterm-256color}" --env=COLORTERM=truecolor /bin/sh -c '
shell="$(getent passwd "$(id -un)" | cut -d: -f7)" shell="$(getent passwd "$(id -un)" | cut -d: -f7)"
[ -x "$shell" ] || shell=/bin/sh [ -x "$shell" ] || shell=/bin/sh
export SHELL="$shell" export SHELL="$shell"
if command -v script >/dev/null 2>&1; then
exec script -q -e -c "exec \"$shell\" -l" /dev/null
fi
exec "$shell" -l exec "$shell" -l
' '
+2
View File
@@ -72,3 +72,5 @@ flatpak build-export --disable-sandbox repo build-dir "$BRANCH"
flatpak build-update-repo repo --title="HeiniRemote Agent" --prune --prune-depth=1 flatpak build-update-repo repo --title="HeiniRemote Agent" --prune --prune-depth=1
echo ">> done: ./repo" echo ">> done: ./repo"
# Touched to trigger a rebuild against upstream f8c509b (2026-09-21).