Skip to content

docs: Linux platform - #207

Open
triniwiz wants to merge 1 commit into
mainfrom
docs/linux
Open

triniwiz wants to merge 1 commit into
mainfrom
docs/linux

Conversation

@triniwiz

@triniwiz triniwiz commented Nov 12, 2026 •

Copy link
Copy Markdown
Member

Adds documentation for the experimental Linux desktop platform (GTK 4). The Linux content goes next to the existing Android and iOS content, and every Linux page and section is marked experimental.

New pages

  • Developing for Linux (guide/linux/): requirements, adding the platform, JavaScript engines (@nativescript/linux and the QuickJS, V8 Node-API, Hermes and JavaScriptCore variants), platform-specific code (.linux.ts, __LINUX__, <linux>, .ns-linux), native API access, the Linux SDK, plugins and known limitations.
  • Linux Marshalling: C ↔ JS type mapping, pointers, strings, buffers, references and out parameters, structs, callbacks, GObject signals and memory management, variadic functions, threading.
  • Extending GObject classes and implementing interfaces: JavaScript subclasses of GObject and GTK classes (vfunc overrides, super, extend, @NativeClass), interfaces, GObject properties and signals, lifetime.
  • Adding Linux native code: C/C++ sources in App_Resources/Linux, native.json, prebuilt .so/.a libraries, module maps, CMake, plugin platforms/linux folders.
  • Distributing Linux apps: the release .tar.gz, app.nsbundle and fuses, source protection, install.sh.

Updated pages

  • Setup: a Linux column in the setup matrix and a "Linux desktop" setup guide (GTK 4, optional C toolchain, ns doctor).
  • Workflow: running, CLI basics and debugging (ns debug linux, inspector port 9229, --debug-brk/--start, console output, GDB).
  • Configuration: the linux.* section of the config reference, App_Resources/Linux (icon, desktop entry, AppStream metadata, images), and __LINUX__ / --env.linux in the Vite and webpack references.
  • Concepts: metadata, multithreading, typings (ns typings linux), styling, marshalling, subclassing (with a Linux entry in the sidebar), platform-file splitting and troubleshooting.
  • UI: the GTK 4 widget on every UI component page.
  • Navigation: the sidebar.

Depends on

This touches several of the same files as #201 (setup matrix, sidebar, config reference, debugging, running), so whichever lands second needs a small rebase.

Checked with prettier and textlint; every internal link and anchor these pages add resolves.

@coderabbitai

coderabbitai Bot commented Nov 12, 2026 •

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

Run configuration

  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: f6c8eb3d-6f61-4c7d-8aec-d6e007852dde

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

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Nov 12, 2026 •

Copy link
Copy Markdown

Deploying nativescript-docs-latest with  Cloudflare Pages  Cloudflare Pages

Latest commit: f60d83c
Status: ✅  Deploy successful!
Preview URL: https://a829419d.nativescript-docs-beta.pages.dev
Branch Preview URL: https://docs-linux.nativescript-docs-beta.pages.dev

View logs

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