syntaqxThe desktop app runs jobs sandboxed on Windows, macOS and Linux. Its Sandboxed choice, the default, is now g1t-runner's sandbox launcher on every computer, where on Windows and macOS it said a sandbox isn't available on this computer yet and ran nothing. A few seconds after g1t opens, the app runs `g1t-runner sandbox up --json` with its own copy of the runner and its state in the app's data folder, its URL, the computer's name and the `desktop` label (the launcher adds `-linux` and `-windows` and the OS labels itself), and the registration token from the site the first time only: the launcher keeps the registration after that, across updates too, and a workspace's sandbox is remembered (sandbox-registration.json), so choosing Sandboxed again after another way of running jobs needs no new token. Linux jobs run in a Linux VM of the runner's own (WSL 2 on Windows, vfkit on macOS, Sysbox or QEMU with KVM on Linux), and on Windows 11 Pro and up Windows jobs run each in a Windows Sandbox. While it runs, the app asks `sandbox status --json` every eight seconds, on a thread of its own, for the tray, settings and the site. Quitting or Stop runs `sandbox down`; choosing another way of running jobs waits for the job and runs `down --drain`; moving to another workspace removes the sandbox (`down --delete`) and makes it again. A new runner release is put in place while nothing runs, and the sandbox then takes the release's image with `sandbox update`; every six hours, `update` also runs on an idle sandbox, which does nothing when its image is the newest.18ef42eHistory
- ..
- anchors.yml
- artifacts.yml
- branches-ignore.yml
- cache.yml
- codeql.yml
- concurrency.yml
- container-job.yml
- defaults.yml
- dependabot-automerge.yml
- description-and-env.yml
- docker-action.yml
- docker-publish.yml
- environments.yml
- g1t-extension.yml
- go.yml
- if-expressions.yml
- issue-comment.yml
- java-gradle.yml
- job-options.yml
- labeler.yml
- many-events.yml
- matrix-from-json.yml
- max-parallel-expression.yml
- merge-queue.yml
- multiline-and-quotes.yml
- needs-outputs.yml
- node-matrix.yml
- on-null-events.yml
- pages.yml
- permissions-all.yml
- pr-review.yml
- pr-target-paths.yml
- publish-npm.yml
- python-package.yml
- release-on-tag.yml
- repository-dispatch.yml
- reusable-called.yml
- reusable-caller.yml
- runs-on-forms.yml
- rust-ci.yml
- sccache-like.yml
- schedule.yml
- services-postgres.yml
- single-event-string.yml
- stale.yml
- step-options.yml
- workflow-call-and-dispatch.yml
- workflow-dispatch-inputs.yml
- workflow-run.yml