Skip to content

The social cards and the site say Linux runs too - #292

Merged
donislawdev merged 1 commit into
masterfrom
feat/linux-on-cards-and-site
Oct 26, 2026
Merged

donislawdev merged 1 commit into
masterfrom
feat/linux-on-cards-and-site

Conversation

@donislawdev

Copy link
Copy Markdown
Owner

The social cards showed Windows alone, and four places on the site said the tool runs on Windows only - the Clumsy page added "and it always will be". Linux runs from source as an experiment since the capture and GUI stages merged, so all of it is out of date.

The cards

docs/social-preview.png (1280x640, the repository's social preview) and docs/og-image.png (1200x630, the site's og:image):

  • the footer reads "Windows · Linux (experimental) · free, GPLv3 · nothing leaves your PC";
  • the back window is a real Linux window: Ubuntu 26.04 with GNOME, the program from master started as root with the "Cafe (crowded WiFi)" profile, a session running (its log shows the eBPFDivert queue). The session ran inside a network namespace of its own, so it could not reach anything else on that machine;
  • layout, colours, fonts and sizes are the old card's, measured from it; the front window (Windows, Statistics) is unchanged. The image sizes are unchanged, so the og:image width and height the site reads from the PNG stay the same.

GitHub has no API for the social preview: after the merge, docs/social-preview.png has to be uploaded under Settings -> Social preview.

The site, in every language

  • FAQ, "Does it work on Linux or macOS?": the answer was "No, and it will not". It now says Linux runs from source with root rights on kernel 5.10 or newer, the download and some tools on the Tools tab are Windows only, tc with netem covers delay and loss for the whole machine, and macOS is not supported.
  • Clumsy alternative, "When to use something else": the bullet is now for macOS, or for someone who wants a ready-made package on Linux.
  • netem: the closing sentence says the tool runs on Linux too, from source and as an experiment.
  • llms.txt: the note ends with Linux running from source as an experiment, macOS not supported.

The tagline is unchanged. It is not shown on the site; tools/build_packages.py uses it as the summary of the Windows packages (WinGet, Chocolatey, MSI), where "on Windows" describes what is installed.

Verification

  • tests/test_site.py, tests/test_repo_conventions.py, tests/test_code_hygiene.py, tests/test_public_text_guard.py and tests/test_packaging.py pass; the site was built locally and the FAQ answer, the Tools tab name in it and the llms.txt line render as intended.
  • Every text change was found by structure and applied only once all 88 places (22 languages, four files each) had been found exactly once.
  • Not run locally: the full suite (CI runs it).

🤖 Generated with Claude Code

The cards said "Windows" alone, and four places on the site said the
tool runs on Windows only - one of them that it always will. Linux runs
from source as an experiment since the capture and GUI stages merged.

- docs/social-preview.png and docs/og-image.png: the footer reads
  "Windows · Linux (experimental) · free, GPLv3 · nothing leaves your
  PC", and the back window is a real Linux one (Ubuntu 26.04, GNOME,
  a running session started from the window). Same layout, colours and
  sizes as before; the front window is unchanged.
- In every site language: the FAQ answer to "Does it work on Linux or
  macOS?", the "When to use something else" bullet on the Clumsy
  page, the closing sentence of the netem page, and the end of the
  llms.txt note now say Linux runs from source as an experiment and
  macOS does not.
- The tagline is unchanged: it is the summary of the Windows packages
  (WinGet, Chocolatey, MSI), not site copy.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Oct 26, 2026

Copy link
Copy Markdown

Important

Review skipped

Review was skipped due to path filters

⛔ Files ignored due to path filters: 90
  • docs/og-image.png is excluded by !**/*.png, !**/*.png
  • docs/social-preview.png is excluded by !**/*.png, !**/*.png
  • site/i18n/ar.json is excluded by !**/site/**
  • site/i18n/cs.json is excluded by !**/site/**
  • site/i18n/de.json is excluded by !**/site/**
  • site/i18n/en.json is excluded by !**/site/**
  • site/i18n/es.json is excluded by !**/site/**
  • site/i18n/fr.json is excluded by !**/site/**
  • site/i18n/hi.json is excluded by !**/site/**
  • site/i18n/id.json is excluded by !**/site/**
  • site/i18n/it.json is excluded by !**/site/**
  • site/i18n/ja.json is excluded by !**/site/**
  • site/i18n/ko.json is excluded by !**/site/**
  • site/i18n/nl.json is excluded by !**/site/**
  • site/i18n/pl.json is excluded by !**/site/**
  • site/i18n/pt-BR.json is excluded by !**/site/**
  • site/i18n/ro.json is excluded by !**/site/**
  • site/i18n/ru.json is excluded by !**/site/**
  • site/i18n/th.json is excluded by !**/site/**
  • site/i18n/tr.json is excluded by !**/site/**
  • site/i18n/uk.json is excluded by !**/site/**
  • site/i18n/vi.json is excluded by !**/site/**
  • site/i18n/zh-Hans.json is excluded by !**/site/**
  • site/i18n/zh-Hant.json is excluded by !**/site/**
  • site/pages/clumsy-alternative/ar.html is excluded by !**/*.html, !**/site/**
  • site/pages/clumsy-alternative/cs.html is excluded by !**/*.html, !**/site/**
  • site/pages/clumsy-alternative/de.html is excluded by !**/*.html, !**/site/**
  • site/pages/clumsy-alternative/en.html is excluded by !**/*.html, !**/site/**
  • site/pages/clumsy-alternative/es.html is excluded by !**/*.html, !**/site/**
  • site/pages/clumsy-alternative/fr.html is excluded by !**/*.html, !**/site/**
  • site/pages/clumsy-alternative/hi.html is excluded by !**/*.html, !**/site/**
  • site/pages/clumsy-alternative/id.html is excluded by !**/*.html, !**/site/**
  • site/pages/clumsy-alternative/it.html is excluded by !**/*.html, !**/site/**
  • site/pages/clumsy-alternative/ja.html is excluded by !**/*.html, !**/site/**
  • site/pages/clumsy-alternative/ko.html is excluded by !**/*.html, !**/site/**
  • site/pages/clumsy-alternative/nl.html is excluded by !**/*.html, !**/site/**
  • site/pages/clumsy-alternative/pl.html is excluded by !**/*.html, !**/site/**
  • site/pages/clumsy-alternative/pt-BR.html is excluded by !**/*.html, !**/site/**
  • site/pages/clumsy-alternative/ro.html is excluded by !**/*.html, !**/site/**
  • site/pages/clumsy-alternative/ru.html is excluded by !**/*.html, !**/site/**
  • site/pages/clumsy-alternative/th.html is excluded by !**/*.html, !**/site/**
  • site/pages/clumsy-alternative/tr.html is excluded by !**/*.html, !**/site/**
  • site/pages/clumsy-alternative/uk.html is excluded by !**/*.html, !**/site/**
  • site/pages/clumsy-alternative/vi.html is excluded by !**/*.html, !**/site/**
  • site/pages/clumsy-alternative/zh-Hans.html is excluded by !**/*.html, !**/site/**
  • site/pages/clumsy-alternative/zh-Hant.html is excluded by !**/*.html, !**/site/**
  • site/pages/faq/ar.html is excluded by !**/*.html, !**/site/**
  • site/pages/faq/cs.html is excluded by !**/*.html, !**/site/**
  • site/pages/faq/de.html is excluded by !**/*.html, !**/site/**
  • site/pages/faq/en.html is excluded by !**/*.html, !**/site/**
  • site/pages/faq/es.html is excluded by !**/*.html, !**/site/**
  • site/pages/faq/fr.html is excluded by !**/*.html, !**/site/**
  • site/pages/faq/hi.html is excluded by !**/*.html, !**/site/**
  • site/pages/faq/id.html is excluded by !**/*.html, !**/site/**
  • site/pages/faq/it.html is excluded by !**/*.html, !**/site/**
  • site/pages/faq/ja.html is excluded by !**/*.html, !**/site/**
  • site/pages/faq/ko.html is excluded by !**/*.html, !**/site/**
  • site/pages/faq/nl.html is excluded by !**/*.html, !**/site/**
  • site/pages/faq/pl.html is excluded by !**/*.html, !**/site/**
  • site/pages/faq/pt-BR.html is excluded by !**/*.html, !**/site/**
  • site/pages/faq/ro.html is excluded by !**/*.html, !**/site/**
  • site/pages/faq/ru.html is excluded by !**/*.html, !**/site/**
  • site/pages/faq/th.html is excluded by !**/*.html, !**/site/**
  • site/pages/faq/tr.html is excluded by !**/*.html, !**/site/**
  • site/pages/faq/uk.html is excluded by !**/*.html, !**/site/**
  • site/pages/faq/vi.html is excluded by !**/*.html, !**/site/**
  • site/pages/faq/zh-Hans.html is excluded by !**/*.html, !**/site/**
  • site/pages/faq/zh-Hant.html is excluded by !**/*.html, !**/site/**
  • site/pages/netem/ar.html is excluded by !**/*.html, !**/site/**
  • site/pages/netem/cs.html is excluded by !**/*.html, !**/site/**
  • site/pages/netem/de.html is excluded by !**/*.html, !**/site/**
  • site/pages/netem/en.html is excluded by !**/*.html, !**/site/**
  • site/pages/netem/es.html is excluded by !**/*.html, !**/site/**
  • site/pages/netem/fr.html is excluded by !**/*.html, !**/site/**
  • site/pages/netem/hi.html is excluded by !**/*.html, !**/site/**
  • site/pages/netem/id.html is excluded by !**/*.html, !**/site/**
  • site/pages/netem/it.html is excluded by !**/*.html, !**/site/**
  • site/pages/netem/ja.html is excluded by !**/*.html, !**/site/**
  • site/pages/netem/ko.html is excluded by !**/*.html, !**/site/**
  • site/pages/netem/nl.html is excluded by !**/*.html, !**/site/**
  • site/pages/netem/pl.html is excluded by !**/*.html, !**/site/**
  • site/pages/netem/pt-BR.html is excluded by !**/*.html, !**/site/**
  • site/pages/netem/ro.html is excluded by !**/*.html, !**/site/**
  • site/pages/netem/ru.html is excluded by !**/*.html, !**/site/**
  • site/pages/netem/th.html is excluded by !**/*.html, !**/site/**
  • site/pages/netem/tr.html is excluded by !**/*.html, !**/site/**
  • site/pages/netem/uk.html is excluded by !**/*.html, !**/site/**
  • site/pages/netem/vi.html is excluded by !**/*.html, !**/site/**
  • site/pages/netem/zh-Hans.html is excluded by !**/*.html, !**/site/**
  • site/pages/netem/zh-Hant.html is excluded by !**/*.html, !**/site/**

CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including **/dist/** will override the default block on the dist directory, by removing the pattern from both the lists.

Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Repository UI (base), Organization UI (inherited)
  • Review profile: ASSERTIVE
  • Plan: Advanced
  • Run ID: 206b8294-e4c8-4f49-aa6c-b06b4161dc90

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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.

@donislawdev
donislawdev merged commit 37fab29 into master Oct 26, 2026
19 checks passed
@donislawdev
donislawdev deleted the feat/linux-on-cards-and-site branch October 26, 2026 19:44
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