[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-nvidia-jetson-init-image":3,"mdc--2jdni6-key":33,"related-repo-nvidia-jetson-init-image":1522,"related-org-nvidia-jetson-init-image":1626},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":11,"stars":22,"repoUrl":23,"updatedAt":24,"license":25,"forks":26,"topics":27,"repo":28,"sourceUrl":31,"mdContent":32},"jetson-init-image","initialize Jetson Linux root file systems","Extract Jetson Linux + sample-rootfs tarballs and run apply_binaries.sh for the active target, then record bsp_image in the profile. Use after jetson-init-target; not for source-tree setup.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},"nvidia","NVIDIA","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Fnvidia.png",[12,16,19],{"name":13,"slug":14,"type":15},"Hardware","hardware","tag",{"name":17,"slug":18,"type":15},"Linux","linux",{"name":20,"slug":21,"type":15},"Deployment","deployment",2473,"https:\u002F\u002Fgithub.com\u002FNVIDIA\u002Fskills","2026-07-14T05:26:06.269705","Apache-2.0",281,[],{"repoUrl":23,"stars":22,"forks":26,"topics":29,"description":30},[],"AI agent skills published by NVIDIA","https:\u002F\u002Fgithub.com\u002FNVIDIA\u002Fskills\u002Ftree\u002FHEAD\u002Fskills\u002Fjetson-init-image","---\nname: jetson-init-image\ndescription: >-\n  Extract Jetson Linux + sample-rootfs tarballs and run\n  apply_binaries.sh for the active target, then record bsp_image in\n  the profile. Use after jetson-init-target; not for source-tree\n  setup.\nversion: 0.0.1\nlicense: \"Apache-2.0\"\nmetadata:\n  data-classification: public\n  author: \"Jetson Team\"\n  tags:\n    - bsp\n    - image\n    - bootstrap\n  domain: meta\n---\n\n# Initialize BSP Image\n\nOutput is only `bsp_image:` in the active profile: derived `version`\nplus `root_path` only when overriding `\u003Cworkspace>\u002FImage`.\n\n## When to invoke\n\n- The user asks to extract, prepare, or initialize the BSP image.\n- A downstream skill reports missing\n  `\u003Cbsp_image.root_path>\u002FLinux_for_Tegra\u002F`.\n- The active profile has no `bsp_image:` block yet.\n\n## Procedure\n\n### Resolve target and image path\n\nResolve the active profile per\n[`..\u002F..\u002Fcontext\u002Ftarget-platform-contract.md`](..\u002F..\u002Fcontext\u002Ftarget-platform-contract.md).\nRefuse if there is no active profile or `reference_devkit:` is missing.\n\n`\u003Cworkspace>` is the parent of the active profile's `target-platform\u002F`\ndirectory. `\u003Cbsp_image.root_path>` defaults to `\u003Cworkspace>\u002FImage`.\n\n| Profile state | Action |\n|---|---|\n| `bsp_image.root_path` exists | Use it without prompting. |\n| `bsp_image:` exists without `root_path` | Use `\u003Cworkspace>\u002FImage`. |\n| No `bsp_image:` block | Ask once: Enter for default, or absolute override path. |\n\nFor an override, validate that the closest existing parent is writable.\nOmit `root_path` when the default is used.\n\n### Determine GPU stack\n\nUse the shared GPU-driver invariant from\n[`..\u002F..\u002Fcontext\u002Ftarget-platform-contract.md`](..\u002F..\u002Fcontext\u002Ftarget-platform-contract.md#derived-platform-facts).\nDerive the expected stack from `reference_devkit.module.id` and the\ncatalogue:\n\n| Chip family | Module IDs | Stack | `apply_binaries.sh` flag |\n|---|---|---|---|\n| T234 \u002F Orin | `p3701`, `p3767` | nvgpu | none |\n| T264 and later \u002F Thor+ | `p3834` | OpenRM | `--openrm` |\n\nRefuse unknown module IDs. The `--openrm` flag is only valid on BSP\nreleases that ship the OpenRM stack; if the active BSP doesn't expose\nthe flag, omit it regardless of what the target wants.\n\n### Reuse or extract\n\nIf `\u003Cbsp_image.root_path>\u002FLinux_for_Tegra\u002F` already exists:\n\n1. Do not extract over it unless the user explicitly requested\n   re-extraction and accepted the overwrite risk.\n2. Derive the on-disk version from `Linux_for_Tegra\u002Fnv_tegra_release`.\n   Ask before replacing a different recorded `bsp_image.version`.\n3. Verify the installed GPU stack against the platform-derived\n   expectation when possible. Detection precedence (first probe that\n   yields a definitive answer wins):\n\n   1. `Linux_for_Tegra\u002Frootfs\u002Fetc\u002Fnv_tegra_release` carries an\n      `INSTALL_TYPE=` token on BSP releases that expose it (newer\n      lines). Read and compare directly.\n   2. Otherwise, `find Linux_for_Tegra -name nvgpu.ko`: present →\n      nvgpu, absent → OpenRM.\n   3. If the chip family has only ever shipped one stack (e.g. T234 \u002F\n      Orin is always nvgpu in current BSPs), fall back to the\n      catalogue-derived expectation without disk probing.\n\nIf the installed stack conflicts with the active target, refuse and ask\nthe user to re-extract with the correct stack or fix the target profile.\nOtherwise skip extraction and update the profile.\n\n### Locate tarballs\n\nWhen extraction is needed, search:\n\n1. `\u003Cbsp_image.root_path>\u002F`\n2. `\u003Cworkspace>\u002F`\n3. current working directory\n\nPrompt for absolute paths for anything missing. Required filenames:\n\n- `Jetson_Linux_R\u003Cver>_aarch64.tbz2`\n- `Tegra_Linux_Sample-Root-Filesystem_R\u003Cver>_aarch64.tbz2`\n\nBoth filenames must contain the same `R\u003Cver>` token. Refuse mismatches\nand record `\u003Cver>` as `bsp_image.version`. Do not download tarballs.\n\n### Extract and apply binaries\n\nUse absolute tarball paths; they may live outside\n`\u003Cbsp_image.root_path>`.\n\n```bash\nROOT=\"\u003Cbsp_image.root_path>\"\nBSP_TARBALL=\"\u003Cabsolute path to Jetson_Linux_R\u003Cver>_aarch64.tbz2>\"\nROOTFS_TARBALL=\"\u003Cabsolute path to Tegra_Linux_Sample-Root-Filesystem_R\u003Cver>_aarch64.tbz2>\"\n\nmkdir -p \"$ROOT\"\ntar xjf \"$BSP_TARBALL\" -C \"$ROOT\"\nsudo tar xpjf \"$ROOTFS_TARBALL\" -C \"$ROOT\u002FLinux_for_Tegra\u002Frootfs\"\n\ncd \"$ROOT\u002FLinux_for_Tegra\"\nif [ \"$GPU_STACK\" = \"openrm\" ]; then\n  sudo .\u002Fapply_binaries.sh --openrm\nelse\n  sudo .\u002Fapply_binaries.sh\nfi\n```\n\nSet `GPU_STACK` from the \"Determine GPU stack\" step above. Abort on the first failing command and\nsurface the failed command.\n\n### Update the active profile\n\nPersist the resolved BSP image metadata in the active target profile so\nlater skills can find the BSP without re-prompting. Preserve existing\nblocks, comments, and quoted SKU values; use a round-tripping YAML\nwriter such as `ruamel.yaml`.\n\n```yaml\nbsp_image:\n  root_path: \u003Cabsolute override path>  # omit for \u003Cworkspace>\u002FImage\n  version: \"\u003Cderived version>\"\n```\n\nRules:\n\n- Same version and same root path: no rewrite.\n- Different version: ask before updating.\n- Different recorded `root_path`: refuse automatic rewrite.\n- Always quote `version`.\n\n## Finish\n\nReport the image path, extracted vs reused state, GPU stack, derived\nversion, and profile update status. Then suggest `\u002Fjetson-init-source`.\n\n## Purpose\n\nMaterialize `Linux_for_Tegra\u002F` on disk by extracting the right Jetson\nLinux + sample-rootfs tarballs and running `apply_binaries.sh` with\nthe GPU-stack flag derived from the active target (nvgpu for T234,\nOpenRM for T264+). Then commit the derived BSP version into the\nprofile's `bsp_image:` block.\n\n## Prerequisites\n\n- Active target profile resolved per\n  `..\u002F..\u002Fcontext\u002Ftarget-platform-contract.md`.\n- Jetson Linux BSP tarball and matching sample-rootfs tarball staged\n  on disk (e.g. by `\u002Fjetson-download-bsp` or hand-placed).\n- Write access to the workspace `Image\u002F` root (or the override\n  `bsp_image.root_path`).\n- `sudo` available for `apply_binaries.sh`.\n\n## Limitations\n\n- Writes only the `bsp_image:` block; source tree, documents, and\n  carrier profile are owned by sibling skills.\n- Refuses to overwrite an existing `Linux_for_Tegra\u002F` without explicit\n  user direction.\n- Does not download tarballs; rely on `\u002Fjetson-download-bsp` or\n  hand-stage the inputs.\n\n## Troubleshooting\n\n- **`apply_binaries.sh` exits non-zero** — re-read its console output;\n  most failures are missing `sudo`, missing rootfs tarball, or wrong\n  GPU stack flag for the SoC generation.\n- **`nv_tegra_release` absent after extract** — extraction stopped\n  early; verify tarball integrity and rerun.\n- **Recorded `version` disagrees with the tarball filename** — the\n  tarball was renamed; trust the value parsed from\n  `Linux_for_Tegra\u002Fnv_tegra_release` over filenames.\n- **Different recorded `root_path` already in profile** — refuse and\n  ask the user to confirm before overwriting.\n\n## References\n\n- [`..\u002F..\u002Fcontext\u002Ftarget-platform-contract.md`](..\u002F..\u002Fcontext\u002Ftarget-platform-contract.md)\n- [`..\u002F..\u002Freferences\u002Fbsp-platforms-catalogue.md`](..\u002F..\u002Freferences\u002Fbsp-platforms-catalogue.md)\n- [`..\u002F..\u002Freferences\u002Fplatform_template.yaml`](..\u002F..\u002Freferences\u002Fplatform_template.yaml)\n- [`..\u002Fjetson-init-target\u002FSKILL.md`](..\u002Fjetson-init-target\u002FSKILL.md)\n- [`..\u002Fjetson-init-source\u002FSKILL.md`](..\u002Fjetson-init-source\u002FSKILL.md)\n- [`..\u002Fjetson-flash-image\u002FSKILL.md`](..\u002Fjetson-flash-image\u002FSKILL.md)\n",{"data":34,"body":44},{"name":4,"description":6,"version":35,"license":25,"metadata":36},"0.0.1",{"data-classification":37,"author":38,"tags":39,"domain":43},"public","Jetson Team",[40,41,42],"bsp","image","bootstrap","meta",{"type":45,"children":46},"root",[47,56,95,102,136,142,149,174,207,303,315,321,345,449,461,467,479,553,558,564,569,595,600,621,649,655,666,1039,1052,1058,1070,1142,1147,1183,1189,1201,1207,1234,1240,1303,1309,1348,1354,1436,1442,1516],{"type":48,"tag":49,"props":50,"children":52},"element","h1",{"id":51},"initialize-bsp-image",[53],{"type":54,"value":55},"text","Initialize BSP Image",{"type":48,"tag":57,"props":58,"children":59},"p",{},[60,62,69,71,77,79,85,87,93],{"type":54,"value":61},"Output is only ",{"type":48,"tag":63,"props":64,"children":66},"code",{"className":65},[],[67],{"type":54,"value":68},"bsp_image:",{"type":54,"value":70}," in the active profile: derived ",{"type":48,"tag":63,"props":72,"children":74},{"className":73},[],[75],{"type":54,"value":76},"version",{"type":54,"value":78},"\nplus ",{"type":48,"tag":63,"props":80,"children":82},{"className":81},[],[83],{"type":54,"value":84},"root_path",{"type":54,"value":86}," only when overriding ",{"type":48,"tag":63,"props":88,"children":90},{"className":89},[],[91],{"type":54,"value":92},"\u003Cworkspace>\u002FImage",{"type":54,"value":94},".",{"type":48,"tag":96,"props":97,"children":99},"h2",{"id":98},"when-to-invoke",[100],{"type":54,"value":101},"When to invoke",{"type":48,"tag":103,"props":104,"children":105},"ul",{},[106,112,124],{"type":48,"tag":107,"props":108,"children":109},"li",{},[110],{"type":54,"value":111},"The user asks to extract, prepare, or initialize the BSP image.",{"type":48,"tag":107,"props":113,"children":114},{},[115,117,123],{"type":54,"value":116},"A downstream skill reports missing\n",{"type":48,"tag":63,"props":118,"children":120},{"className":119},[],[121],{"type":54,"value":122},"\u003Cbsp_image.root_path>\u002FLinux_for_Tegra\u002F",{"type":54,"value":94},{"type":48,"tag":107,"props":125,"children":126},{},[127,129,134],{"type":54,"value":128},"The active profile has no ",{"type":48,"tag":63,"props":130,"children":132},{"className":131},[],[133],{"type":54,"value":68},{"type":54,"value":135}," block yet.",{"type":48,"tag":96,"props":137,"children":139},{"id":138},"procedure",[140],{"type":54,"value":141},"Procedure",{"type":48,"tag":143,"props":144,"children":146},"h3",{"id":145},"resolve-target-and-image-path",[147],{"type":54,"value":148},"Resolve target and image path",{"type":48,"tag":57,"props":150,"children":151},{},[152,154,164,166,172],{"type":54,"value":153},"Resolve the active profile per\n",{"type":48,"tag":155,"props":156,"children":158},"a",{"href":157},"..\u002F..\u002Fcontext\u002Ftarget-platform-contract.md",[159],{"type":48,"tag":63,"props":160,"children":162},{"className":161},[],[163],{"type":54,"value":157},{"type":54,"value":165},".\nRefuse if there is no active profile or ",{"type":48,"tag":63,"props":167,"children":169},{"className":168},[],[170],{"type":54,"value":171},"reference_devkit:",{"type":54,"value":173}," is missing.",{"type":48,"tag":57,"props":175,"children":176},{},[177,183,185,191,193,199,201,206],{"type":48,"tag":63,"props":178,"children":180},{"className":179},[],[181],{"type":54,"value":182},"\u003Cworkspace>",{"type":54,"value":184}," is the parent of the active profile's ",{"type":48,"tag":63,"props":186,"children":188},{"className":187},[],[189],{"type":54,"value":190},"target-platform\u002F",{"type":54,"value":192},"\ndirectory. ",{"type":48,"tag":63,"props":194,"children":196},{"className":195},[],[197],{"type":54,"value":198},"\u003Cbsp_image.root_path>",{"type":54,"value":200}," defaults to ",{"type":48,"tag":63,"props":202,"children":204},{"className":203},[],[205],{"type":54,"value":92},{"type":54,"value":94},{"type":48,"tag":208,"props":209,"children":210},"table",{},[211,230],{"type":48,"tag":212,"props":213,"children":214},"thead",{},[215],{"type":48,"tag":216,"props":217,"children":218},"tr",{},[219,225],{"type":48,"tag":220,"props":221,"children":222},"th",{},[223],{"type":54,"value":224},"Profile state",{"type":48,"tag":220,"props":226,"children":227},{},[228],{"type":54,"value":229},"Action",{"type":48,"tag":231,"props":232,"children":233},"tbody",{},[234,254,283],{"type":48,"tag":216,"props":235,"children":236},{},[237,249],{"type":48,"tag":238,"props":239,"children":240},"td",{},[241,247],{"type":48,"tag":63,"props":242,"children":244},{"className":243},[],[245],{"type":54,"value":246},"bsp_image.root_path",{"type":54,"value":248}," exists",{"type":48,"tag":238,"props":250,"children":251},{},[252],{"type":54,"value":253},"Use it without prompting.",{"type":48,"tag":216,"props":255,"children":256},{},[257,272],{"type":48,"tag":238,"props":258,"children":259},{},[260,265,267],{"type":48,"tag":63,"props":261,"children":263},{"className":262},[],[264],{"type":54,"value":68},{"type":54,"value":266}," exists without ",{"type":48,"tag":63,"props":268,"children":270},{"className":269},[],[271],{"type":54,"value":84},{"type":48,"tag":238,"props":273,"children":274},{},[275,277,282],{"type":54,"value":276},"Use ",{"type":48,"tag":63,"props":278,"children":280},{"className":279},[],[281],{"type":54,"value":92},{"type":54,"value":94},{"type":48,"tag":216,"props":284,"children":285},{},[286,298],{"type":48,"tag":238,"props":287,"children":288},{},[289,291,296],{"type":54,"value":290},"No ",{"type":48,"tag":63,"props":292,"children":294},{"className":293},[],[295],{"type":54,"value":68},{"type":54,"value":297}," block",{"type":48,"tag":238,"props":299,"children":300},{},[301],{"type":54,"value":302},"Ask once: Enter for default, or absolute override path.",{"type":48,"tag":57,"props":304,"children":305},{},[306,308,313],{"type":54,"value":307},"For an override, validate that the closest existing parent is writable.\nOmit ",{"type":48,"tag":63,"props":309,"children":311},{"className":310},[],[312],{"type":54,"value":84},{"type":54,"value":314}," when the default is used.",{"type":48,"tag":143,"props":316,"children":318},{"id":317},"determine-gpu-stack",[319],{"type":54,"value":320},"Determine GPU stack",{"type":48,"tag":57,"props":322,"children":323},{},[324,326,335,337,343],{"type":54,"value":325},"Use the shared GPU-driver invariant from\n",{"type":48,"tag":155,"props":327,"children":329},{"href":328},"..\u002F..\u002Fcontext\u002Ftarget-platform-contract.md#derived-platform-facts",[330],{"type":48,"tag":63,"props":331,"children":333},{"className":332},[],[334],{"type":54,"value":157},{"type":54,"value":336},".\nDerive the expected stack from ",{"type":48,"tag":63,"props":338,"children":340},{"className":339},[],[341],{"type":54,"value":342},"reference_devkit.module.id",{"type":54,"value":344}," and the\ncatalogue:",{"type":48,"tag":208,"props":346,"children":347},{},[348,380],{"type":48,"tag":212,"props":349,"children":350},{},[351],{"type":48,"tag":216,"props":352,"children":353},{},[354,359,364,369],{"type":48,"tag":220,"props":355,"children":356},{},[357],{"type":54,"value":358},"Chip family",{"type":48,"tag":220,"props":360,"children":361},{},[362],{"type":54,"value":363},"Module IDs",{"type":48,"tag":220,"props":365,"children":366},{},[367],{"type":54,"value":368},"Stack",{"type":48,"tag":220,"props":370,"children":371},{},[372,378],{"type":48,"tag":63,"props":373,"children":375},{"className":374},[],[376],{"type":54,"value":377},"apply_binaries.sh",{"type":54,"value":379}," flag",{"type":48,"tag":231,"props":381,"children":382},{},[383,418],{"type":48,"tag":216,"props":384,"children":385},{},[386,391,408,413],{"type":48,"tag":238,"props":387,"children":388},{},[389],{"type":54,"value":390},"T234 \u002F Orin",{"type":48,"tag":238,"props":392,"children":393},{},[394,400,402],{"type":48,"tag":63,"props":395,"children":397},{"className":396},[],[398],{"type":54,"value":399},"p3701",{"type":54,"value":401},", ",{"type":48,"tag":63,"props":403,"children":405},{"className":404},[],[406],{"type":54,"value":407},"p3767",{"type":48,"tag":238,"props":409,"children":410},{},[411],{"type":54,"value":412},"nvgpu",{"type":48,"tag":238,"props":414,"children":415},{},[416],{"type":54,"value":417},"none",{"type":48,"tag":216,"props":419,"children":420},{},[421,426,435,440],{"type":48,"tag":238,"props":422,"children":423},{},[424],{"type":54,"value":425},"T264 and later \u002F Thor+",{"type":48,"tag":238,"props":427,"children":428},{},[429],{"type":48,"tag":63,"props":430,"children":432},{"className":431},[],[433],{"type":54,"value":434},"p3834",{"type":48,"tag":238,"props":436,"children":437},{},[438],{"type":54,"value":439},"OpenRM",{"type":48,"tag":238,"props":441,"children":442},{},[443],{"type":48,"tag":63,"props":444,"children":446},{"className":445},[],[447],{"type":54,"value":448},"--openrm",{"type":48,"tag":57,"props":450,"children":451},{},[452,454,459],{"type":54,"value":453},"Refuse unknown module IDs. The ",{"type":48,"tag":63,"props":455,"children":457},{"className":456},[],[458],{"type":54,"value":448},{"type":54,"value":460}," flag is only valid on BSP\nreleases that ship the OpenRM stack; if the active BSP doesn't expose\nthe flag, omit it regardless of what the target wants.",{"type":48,"tag":143,"props":462,"children":464},{"id":463},"reuse-or-extract",[465],{"type":54,"value":466},"Reuse or extract",{"type":48,"tag":57,"props":468,"children":469},{},[470,472,477],{"type":54,"value":471},"If ",{"type":48,"tag":63,"props":473,"children":475},{"className":474},[],[476],{"type":54,"value":122},{"type":54,"value":478}," already exists:",{"type":48,"tag":480,"props":481,"children":482},"ol",{},[483,488,508],{"type":48,"tag":107,"props":484,"children":485},{},[486],{"type":54,"value":487},"Do not extract over it unless the user explicitly requested\nre-extraction and accepted the overwrite risk.",{"type":48,"tag":107,"props":489,"children":490},{},[491,493,499,501,507],{"type":54,"value":492},"Derive the on-disk version from ",{"type":48,"tag":63,"props":494,"children":496},{"className":495},[],[497],{"type":54,"value":498},"Linux_for_Tegra\u002Fnv_tegra_release",{"type":54,"value":500},".\nAsk before replacing a different recorded ",{"type":48,"tag":63,"props":502,"children":504},{"className":503},[],[505],{"type":54,"value":506},"bsp_image.version",{"type":54,"value":94},{"type":48,"tag":107,"props":509,"children":510},{},[511,513],{"type":54,"value":512},"Verify the installed GPU stack against the platform-derived\nexpectation when possible. Detection precedence (first probe that\nyields a definitive answer wins):",{"type":48,"tag":480,"props":514,"children":515},{},[516,535,548],{"type":48,"tag":107,"props":517,"children":518},{},[519,525,527,533],{"type":48,"tag":63,"props":520,"children":522},{"className":521},[],[523],{"type":54,"value":524},"Linux_for_Tegra\u002Frootfs\u002Fetc\u002Fnv_tegra_release",{"type":54,"value":526}," carries an\n",{"type":48,"tag":63,"props":528,"children":530},{"className":529},[],[531],{"type":54,"value":532},"INSTALL_TYPE=",{"type":54,"value":534}," token on BSP releases that expose it (newer\nlines). Read and compare directly.",{"type":48,"tag":107,"props":536,"children":537},{},[538,540,546],{"type":54,"value":539},"Otherwise, ",{"type":48,"tag":63,"props":541,"children":543},{"className":542},[],[544],{"type":54,"value":545},"find Linux_for_Tegra -name nvgpu.ko",{"type":54,"value":547},": present →\nnvgpu, absent → OpenRM.",{"type":48,"tag":107,"props":549,"children":550},{},[551],{"type":54,"value":552},"If the chip family has only ever shipped one stack (e.g. T234 \u002F\nOrin is always nvgpu in current BSPs), fall back to the\ncatalogue-derived expectation without disk probing.",{"type":48,"tag":57,"props":554,"children":555},{},[556],{"type":54,"value":557},"If the installed stack conflicts with the active target, refuse and ask\nthe user to re-extract with the correct stack or fix the target profile.\nOtherwise skip extraction and update the profile.",{"type":48,"tag":143,"props":559,"children":561},{"id":560},"locate-tarballs",[562],{"type":54,"value":563},"Locate tarballs",{"type":48,"tag":57,"props":565,"children":566},{},[567],{"type":54,"value":568},"When extraction is needed, search:",{"type":48,"tag":480,"props":570,"children":571},{},[572,581,590],{"type":48,"tag":107,"props":573,"children":574},{},[575],{"type":48,"tag":63,"props":576,"children":578},{"className":577},[],[579],{"type":54,"value":580},"\u003Cbsp_image.root_path>\u002F",{"type":48,"tag":107,"props":582,"children":583},{},[584],{"type":48,"tag":63,"props":585,"children":587},{"className":586},[],[588],{"type":54,"value":589},"\u003Cworkspace>\u002F",{"type":48,"tag":107,"props":591,"children":592},{},[593],{"type":54,"value":594},"current working directory",{"type":48,"tag":57,"props":596,"children":597},{},[598],{"type":54,"value":599},"Prompt for absolute paths for anything missing. Required filenames:",{"type":48,"tag":103,"props":601,"children":602},{},[603,612],{"type":48,"tag":107,"props":604,"children":605},{},[606],{"type":48,"tag":63,"props":607,"children":609},{"className":608},[],[610],{"type":54,"value":611},"Jetson_Linux_R\u003Cver>_aarch64.tbz2",{"type":48,"tag":107,"props":613,"children":614},{},[615],{"type":48,"tag":63,"props":616,"children":618},{"className":617},[],[619],{"type":54,"value":620},"Tegra_Linux_Sample-Root-Filesystem_R\u003Cver>_aarch64.tbz2",{"type":48,"tag":57,"props":622,"children":623},{},[624,626,632,634,640,642,647],{"type":54,"value":625},"Both filenames must contain the same ",{"type":48,"tag":63,"props":627,"children":629},{"className":628},[],[630],{"type":54,"value":631},"R\u003Cver>",{"type":54,"value":633}," token. Refuse mismatches\nand record ",{"type":48,"tag":63,"props":635,"children":637},{"className":636},[],[638],{"type":54,"value":639},"\u003Cver>",{"type":54,"value":641}," as ",{"type":48,"tag":63,"props":643,"children":645},{"className":644},[],[646],{"type":54,"value":506},{"type":54,"value":648},". Do not download tarballs.",{"type":48,"tag":143,"props":650,"children":652},{"id":651},"extract-and-apply-binaries",[653],{"type":54,"value":654},"Extract and apply binaries",{"type":48,"tag":57,"props":656,"children":657},{},[658,660,665],{"type":54,"value":659},"Use absolute tarball paths; they may live outside\n",{"type":48,"tag":63,"props":661,"children":663},{"className":662},[],[664],{"type":54,"value":198},{"type":54,"value":94},{"type":48,"tag":667,"props":668,"children":673},"pre",{"className":669,"code":670,"language":671,"meta":672,"style":672},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","ROOT=\"\u003Cbsp_image.root_path>\"\nBSP_TARBALL=\"\u003Cabsolute path to Jetson_Linux_R\u003Cver>_aarch64.tbz2>\"\nROOTFS_TARBALL=\"\u003Cabsolute path to Tegra_Linux_Sample-Root-Filesystem_R\u003Cver>_aarch64.tbz2>\"\n\nmkdir -p \"$ROOT\"\ntar xjf \"$BSP_TARBALL\" -C \"$ROOT\"\nsudo tar xpjf \"$ROOTFS_TARBALL\" -C \"$ROOT\u002FLinux_for_Tegra\u002Frootfs\"\n\ncd \"$ROOT\u002FLinux_for_Tegra\"\nif [ \"$GPU_STACK\" = \"openrm\" ]; then\n  sudo .\u002Fapply_binaries.sh --openrm\nelse\n  sudo .\u002Fapply_binaries.sh\nfi\n","bash","",[674],{"type":48,"tag":63,"props":675,"children":676},{"__ignoreMap":672},[677,710,736,762,772,801,845,898,906,933,989,1008,1017,1030],{"type":48,"tag":678,"props":679,"children":682},"span",{"class":680,"line":681},"line",1,[683,689,695,700,705],{"type":48,"tag":678,"props":684,"children":686},{"style":685},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[687],{"type":54,"value":688},"ROOT",{"type":48,"tag":678,"props":690,"children":692},{"style":691},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[693],{"type":54,"value":694},"=",{"type":48,"tag":678,"props":696,"children":697},{"style":691},[698],{"type":54,"value":699},"\"",{"type":48,"tag":678,"props":701,"children":703},{"style":702},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[704],{"type":54,"value":198},{"type":48,"tag":678,"props":706,"children":707},{"style":691},[708],{"type":54,"value":709},"\"\n",{"type":48,"tag":678,"props":711,"children":713},{"class":680,"line":712},2,[714,719,723,727,732],{"type":48,"tag":678,"props":715,"children":716},{"style":685},[717],{"type":54,"value":718},"BSP_TARBALL",{"type":48,"tag":678,"props":720,"children":721},{"style":691},[722],{"type":54,"value":694},{"type":48,"tag":678,"props":724,"children":725},{"style":691},[726],{"type":54,"value":699},{"type":48,"tag":678,"props":728,"children":729},{"style":702},[730],{"type":54,"value":731},"\u003Cabsolute path to Jetson_Linux_R\u003Cver>_aarch64.tbz2>",{"type":48,"tag":678,"props":733,"children":734},{"style":691},[735],{"type":54,"value":709},{"type":48,"tag":678,"props":737,"children":739},{"class":680,"line":738},3,[740,745,749,753,758],{"type":48,"tag":678,"props":741,"children":742},{"style":685},[743],{"type":54,"value":744},"ROOTFS_TARBALL",{"type":48,"tag":678,"props":746,"children":747},{"style":691},[748],{"type":54,"value":694},{"type":48,"tag":678,"props":750,"children":751},{"style":691},[752],{"type":54,"value":699},{"type":48,"tag":678,"props":754,"children":755},{"style":702},[756],{"type":54,"value":757},"\u003Cabsolute path to Tegra_Linux_Sample-Root-Filesystem_R\u003Cver>_aarch64.tbz2>",{"type":48,"tag":678,"props":759,"children":760},{"style":691},[761],{"type":54,"value":709},{"type":48,"tag":678,"props":763,"children":765},{"class":680,"line":764},4,[766],{"type":48,"tag":678,"props":767,"children":769},{"emptyLinePlaceholder":768},true,[770],{"type":54,"value":771},"\n",{"type":48,"tag":678,"props":773,"children":775},{"class":680,"line":774},5,[776,782,787,792,797],{"type":48,"tag":678,"props":777,"children":779},{"style":778},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[780],{"type":54,"value":781},"mkdir",{"type":48,"tag":678,"props":783,"children":784},{"style":702},[785],{"type":54,"value":786}," -p",{"type":48,"tag":678,"props":788,"children":789},{"style":691},[790],{"type":54,"value":791}," \"",{"type":48,"tag":678,"props":793,"children":794},{"style":685},[795],{"type":54,"value":796},"$ROOT",{"type":48,"tag":678,"props":798,"children":799},{"style":691},[800],{"type":54,"value":709},{"type":48,"tag":678,"props":802,"children":804},{"class":680,"line":803},6,[805,810,815,819,824,828,833,837,841],{"type":48,"tag":678,"props":806,"children":807},{"style":778},[808],{"type":54,"value":809},"tar",{"type":48,"tag":678,"props":811,"children":812},{"style":702},[813],{"type":54,"value":814}," xjf",{"type":48,"tag":678,"props":816,"children":817},{"style":691},[818],{"type":54,"value":791},{"type":48,"tag":678,"props":820,"children":821},{"style":685},[822],{"type":54,"value":823},"$BSP_TARBALL",{"type":48,"tag":678,"props":825,"children":826},{"style":691},[827],{"type":54,"value":699},{"type":48,"tag":678,"props":829,"children":830},{"style":702},[831],{"type":54,"value":832}," -C",{"type":48,"tag":678,"props":834,"children":835},{"style":691},[836],{"type":54,"value":791},{"type":48,"tag":678,"props":838,"children":839},{"style":685},[840],{"type":54,"value":796},{"type":48,"tag":678,"props":842,"children":843},{"style":691},[844],{"type":54,"value":709},{"type":48,"tag":678,"props":846,"children":848},{"class":680,"line":847},7,[849,854,859,864,868,873,877,881,885,889,894],{"type":48,"tag":678,"props":850,"children":851},{"style":778},[852],{"type":54,"value":853},"sudo",{"type":48,"tag":678,"props":855,"children":856},{"style":702},[857],{"type":54,"value":858}," tar",{"type":48,"tag":678,"props":860,"children":861},{"style":702},[862],{"type":54,"value":863}," xpjf",{"type":48,"tag":678,"props":865,"children":866},{"style":691},[867],{"type":54,"value":791},{"type":48,"tag":678,"props":869,"children":870},{"style":685},[871],{"type":54,"value":872},"$ROOTFS_TARBALL",{"type":48,"tag":678,"props":874,"children":875},{"style":691},[876],{"type":54,"value":699},{"type":48,"tag":678,"props":878,"children":879},{"style":702},[880],{"type":54,"value":832},{"type":48,"tag":678,"props":882,"children":883},{"style":691},[884],{"type":54,"value":791},{"type":48,"tag":678,"props":886,"children":887},{"style":685},[888],{"type":54,"value":796},{"type":48,"tag":678,"props":890,"children":891},{"style":702},[892],{"type":54,"value":893},"\u002FLinux_for_Tegra\u002Frootfs",{"type":48,"tag":678,"props":895,"children":896},{"style":691},[897],{"type":54,"value":709},{"type":48,"tag":678,"props":899,"children":901},{"class":680,"line":900},8,[902],{"type":48,"tag":678,"props":903,"children":904},{"emptyLinePlaceholder":768},[905],{"type":54,"value":771},{"type":48,"tag":678,"props":907,"children":909},{"class":680,"line":908},9,[910,916,920,924,929],{"type":48,"tag":678,"props":911,"children":913},{"style":912},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[914],{"type":54,"value":915},"cd",{"type":48,"tag":678,"props":917,"children":918},{"style":691},[919],{"type":54,"value":791},{"type":48,"tag":678,"props":921,"children":922},{"style":685},[923],{"type":54,"value":796},{"type":48,"tag":678,"props":925,"children":926},{"style":702},[927],{"type":54,"value":928},"\u002FLinux_for_Tegra",{"type":48,"tag":678,"props":930,"children":931},{"style":691},[932],{"type":54,"value":709},{"type":48,"tag":678,"props":934,"children":936},{"class":680,"line":935},10,[937,943,948,952,957,961,966,970,975,979,984],{"type":48,"tag":678,"props":938,"children":940},{"style":939},"--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic",[941],{"type":54,"value":942},"if",{"type":48,"tag":678,"props":944,"children":945},{"style":691},[946],{"type":54,"value":947}," [",{"type":48,"tag":678,"props":949,"children":950},{"style":691},[951],{"type":54,"value":791},{"type":48,"tag":678,"props":953,"children":954},{"style":685},[955],{"type":54,"value":956},"$GPU_STACK",{"type":48,"tag":678,"props":958,"children":959},{"style":691},[960],{"type":54,"value":699},{"type":48,"tag":678,"props":962,"children":963},{"style":691},[964],{"type":54,"value":965}," =",{"type":48,"tag":678,"props":967,"children":968},{"style":691},[969],{"type":54,"value":791},{"type":48,"tag":678,"props":971,"children":972},{"style":702},[973],{"type":54,"value":974},"openrm",{"type":48,"tag":678,"props":976,"children":977},{"style":691},[978],{"type":54,"value":699},{"type":48,"tag":678,"props":980,"children":981},{"style":691},[982],{"type":54,"value":983}," ];",{"type":48,"tag":678,"props":985,"children":986},{"style":939},[987],{"type":54,"value":988}," then\n",{"type":48,"tag":678,"props":990,"children":992},{"class":680,"line":991},11,[993,998,1003],{"type":48,"tag":678,"props":994,"children":995},{"style":778},[996],{"type":54,"value":997},"  sudo",{"type":48,"tag":678,"props":999,"children":1000},{"style":702},[1001],{"type":54,"value":1002}," .\u002Fapply_binaries.sh",{"type":48,"tag":678,"props":1004,"children":1005},{"style":702},[1006],{"type":54,"value":1007}," --openrm\n",{"type":48,"tag":678,"props":1009,"children":1011},{"class":680,"line":1010},12,[1012],{"type":48,"tag":678,"props":1013,"children":1014},{"style":939},[1015],{"type":54,"value":1016},"else\n",{"type":48,"tag":678,"props":1018,"children":1020},{"class":680,"line":1019},13,[1021,1025],{"type":48,"tag":678,"props":1022,"children":1023},{"style":778},[1024],{"type":54,"value":997},{"type":48,"tag":678,"props":1026,"children":1027},{"style":702},[1028],{"type":54,"value":1029}," .\u002Fapply_binaries.sh\n",{"type":48,"tag":678,"props":1031,"children":1033},{"class":680,"line":1032},14,[1034],{"type":48,"tag":678,"props":1035,"children":1036},{"style":939},[1037],{"type":54,"value":1038},"fi\n",{"type":48,"tag":57,"props":1040,"children":1041},{},[1042,1044,1050],{"type":54,"value":1043},"Set ",{"type":48,"tag":63,"props":1045,"children":1047},{"className":1046},[],[1048],{"type":54,"value":1049},"GPU_STACK",{"type":54,"value":1051}," from the \"Determine GPU stack\" step above. Abort on the first failing command and\nsurface the failed command.",{"type":48,"tag":143,"props":1053,"children":1055},{"id":1054},"update-the-active-profile",[1056],{"type":54,"value":1057},"Update the active profile",{"type":48,"tag":57,"props":1059,"children":1060},{},[1061,1063,1069],{"type":54,"value":1062},"Persist the resolved BSP image metadata in the active target profile so\nlater skills can find the BSP without re-prompting. Preserve existing\nblocks, comments, and quoted SKU values; use a round-tripping YAML\nwriter such as ",{"type":48,"tag":63,"props":1064,"children":1066},{"className":1065},[],[1067],{"type":54,"value":1068},"ruamel.yaml",{"type":54,"value":94},{"type":48,"tag":667,"props":1071,"children":1075},{"className":1072,"code":1073,"language":1074,"meta":672,"style":672},"language-yaml shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","bsp_image:\n  root_path: \u003Cabsolute override path>  # omit for \u003Cworkspace>\u002FImage\n  version: \"\u003Cderived version>\"\n","yaml",[1076],{"type":48,"tag":63,"props":1077,"children":1078},{"__ignoreMap":672},[1079,1093,1117],{"type":48,"tag":678,"props":1080,"children":1081},{"class":680,"line":681},[1082,1088],{"type":48,"tag":678,"props":1083,"children":1085},{"style":1084},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[1086],{"type":54,"value":1087},"bsp_image",{"type":48,"tag":678,"props":1089,"children":1090},{"style":691},[1091],{"type":54,"value":1092},":\n",{"type":48,"tag":678,"props":1094,"children":1095},{"class":680,"line":712},[1096,1101,1106,1111],{"type":48,"tag":678,"props":1097,"children":1098},{"style":1084},[1099],{"type":54,"value":1100},"  root_path",{"type":48,"tag":678,"props":1102,"children":1103},{"style":691},[1104],{"type":54,"value":1105},":",{"type":48,"tag":678,"props":1107,"children":1108},{"style":702},[1109],{"type":54,"value":1110}," \u003Cabsolute override path>",{"type":48,"tag":678,"props":1112,"children":1114},{"style":1113},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic",[1115],{"type":54,"value":1116},"  # omit for \u003Cworkspace>\u002FImage\n",{"type":48,"tag":678,"props":1118,"children":1119},{"class":680,"line":738},[1120,1125,1129,1133,1138],{"type":48,"tag":678,"props":1121,"children":1122},{"style":1084},[1123],{"type":54,"value":1124},"  version",{"type":48,"tag":678,"props":1126,"children":1127},{"style":691},[1128],{"type":54,"value":1105},{"type":48,"tag":678,"props":1130,"children":1131},{"style":691},[1132],{"type":54,"value":791},{"type":48,"tag":678,"props":1134,"children":1135},{"style":702},[1136],{"type":54,"value":1137},"\u003Cderived version>",{"type":48,"tag":678,"props":1139,"children":1140},{"style":691},[1141],{"type":54,"value":709},{"type":48,"tag":57,"props":1143,"children":1144},{},[1145],{"type":54,"value":1146},"Rules:",{"type":48,"tag":103,"props":1148,"children":1149},{},[1150,1155,1160,1172],{"type":48,"tag":107,"props":1151,"children":1152},{},[1153],{"type":54,"value":1154},"Same version and same root path: no rewrite.",{"type":48,"tag":107,"props":1156,"children":1157},{},[1158],{"type":54,"value":1159},"Different version: ask before updating.",{"type":48,"tag":107,"props":1161,"children":1162},{},[1163,1165,1170],{"type":54,"value":1164},"Different recorded ",{"type":48,"tag":63,"props":1166,"children":1168},{"className":1167},[],[1169],{"type":54,"value":84},{"type":54,"value":1171},": refuse automatic rewrite.",{"type":48,"tag":107,"props":1173,"children":1174},{},[1175,1177,1182],{"type":54,"value":1176},"Always quote ",{"type":48,"tag":63,"props":1178,"children":1180},{"className":1179},[],[1181],{"type":54,"value":76},{"type":54,"value":94},{"type":48,"tag":96,"props":1184,"children":1186},{"id":1185},"finish",[1187],{"type":54,"value":1188},"Finish",{"type":48,"tag":57,"props":1190,"children":1191},{},[1192,1194,1200],{"type":54,"value":1193},"Report the image path, extracted vs reused state, GPU stack, derived\nversion, and profile update status. Then suggest ",{"type":48,"tag":63,"props":1195,"children":1197},{"className":1196},[],[1198],{"type":54,"value":1199},"\u002Fjetson-init-source",{"type":54,"value":94},{"type":48,"tag":96,"props":1202,"children":1204},{"id":1203},"purpose",[1205],{"type":54,"value":1206},"Purpose",{"type":48,"tag":57,"props":1208,"children":1209},{},[1210,1212,1218,1220,1225,1227,1232],{"type":54,"value":1211},"Materialize ",{"type":48,"tag":63,"props":1213,"children":1215},{"className":1214},[],[1216],{"type":54,"value":1217},"Linux_for_Tegra\u002F",{"type":54,"value":1219}," on disk by extracting the right Jetson\nLinux + sample-rootfs tarballs and running ",{"type":48,"tag":63,"props":1221,"children":1223},{"className":1222},[],[1224],{"type":54,"value":377},{"type":54,"value":1226}," with\nthe GPU-stack flag derived from the active target (nvgpu for T234,\nOpenRM for T264+). Then commit the derived BSP version into the\nprofile's ",{"type":48,"tag":63,"props":1228,"children":1230},{"className":1229},[],[1231],{"type":54,"value":68},{"type":54,"value":1233}," block.",{"type":48,"tag":96,"props":1235,"children":1237},{"id":1236},"prerequisites",[1238],{"type":54,"value":1239},"Prerequisites",{"type":48,"tag":103,"props":1241,"children":1242},{},[1243,1254,1267,1287],{"type":48,"tag":107,"props":1244,"children":1245},{},[1246,1248,1253],{"type":54,"value":1247},"Active target profile resolved per\n",{"type":48,"tag":63,"props":1249,"children":1251},{"className":1250},[],[1252],{"type":54,"value":157},{"type":54,"value":94},{"type":48,"tag":107,"props":1255,"children":1256},{},[1257,1259,1265],{"type":54,"value":1258},"Jetson Linux BSP tarball and matching sample-rootfs tarball staged\non disk (e.g. by ",{"type":48,"tag":63,"props":1260,"children":1262},{"className":1261},[],[1263],{"type":54,"value":1264},"\u002Fjetson-download-bsp",{"type":54,"value":1266}," or hand-placed).",{"type":48,"tag":107,"props":1268,"children":1269},{},[1270,1272,1278,1280,1285],{"type":54,"value":1271},"Write access to the workspace ",{"type":48,"tag":63,"props":1273,"children":1275},{"className":1274},[],[1276],{"type":54,"value":1277},"Image\u002F",{"type":54,"value":1279}," root (or the override\n",{"type":48,"tag":63,"props":1281,"children":1283},{"className":1282},[],[1284],{"type":54,"value":246},{"type":54,"value":1286},").",{"type":48,"tag":107,"props":1288,"children":1289},{},[1290,1295,1297,1302],{"type":48,"tag":63,"props":1291,"children":1293},{"className":1292},[],[1294],{"type":54,"value":853},{"type":54,"value":1296}," available for ",{"type":48,"tag":63,"props":1298,"children":1300},{"className":1299},[],[1301],{"type":54,"value":377},{"type":54,"value":94},{"type":48,"tag":96,"props":1304,"children":1306},{"id":1305},"limitations",[1307],{"type":54,"value":1308},"Limitations",{"type":48,"tag":103,"props":1310,"children":1311},{},[1312,1324,1336],{"type":48,"tag":107,"props":1313,"children":1314},{},[1315,1317,1322],{"type":54,"value":1316},"Writes only the ",{"type":48,"tag":63,"props":1318,"children":1320},{"className":1319},[],[1321],{"type":54,"value":68},{"type":54,"value":1323}," block; source tree, documents, and\ncarrier profile are owned by sibling skills.",{"type":48,"tag":107,"props":1325,"children":1326},{},[1327,1329,1334],{"type":54,"value":1328},"Refuses to overwrite an existing ",{"type":48,"tag":63,"props":1330,"children":1332},{"className":1331},[],[1333],{"type":54,"value":1217},{"type":54,"value":1335}," without explicit\nuser direction.",{"type":48,"tag":107,"props":1337,"children":1338},{},[1339,1341,1346],{"type":54,"value":1340},"Does not download tarballs; rely on ",{"type":48,"tag":63,"props":1342,"children":1344},{"className":1343},[],[1345],{"type":54,"value":1264},{"type":54,"value":1347}," or\nhand-stage the inputs.",{"type":48,"tag":96,"props":1349,"children":1351},{"id":1350},"troubleshooting",[1352],{"type":54,"value":1353},"Troubleshooting",{"type":48,"tag":103,"props":1355,"children":1356},{},[1357,1380,1396,1420],{"type":48,"tag":107,"props":1358,"children":1359},{},[1360,1371,1373,1378],{"type":48,"tag":1361,"props":1362,"children":1363},"strong",{},[1364,1369],{"type":48,"tag":63,"props":1365,"children":1367},{"className":1366},[],[1368],{"type":54,"value":377},{"type":54,"value":1370}," exits non-zero",{"type":54,"value":1372}," — re-read its console output;\nmost failures are missing ",{"type":48,"tag":63,"props":1374,"children":1376},{"className":1375},[],[1377],{"type":54,"value":853},{"type":54,"value":1379},", missing rootfs tarball, or wrong\nGPU stack flag for the SoC generation.",{"type":48,"tag":107,"props":1381,"children":1382},{},[1383,1394],{"type":48,"tag":1361,"props":1384,"children":1385},{},[1386,1392],{"type":48,"tag":63,"props":1387,"children":1389},{"className":1388},[],[1390],{"type":54,"value":1391},"nv_tegra_release",{"type":54,"value":1393}," absent after extract",{"type":54,"value":1395}," — extraction stopped\nearly; verify tarball integrity and rerun.",{"type":48,"tag":107,"props":1397,"children":1398},{},[1399,1411,1413,1418],{"type":48,"tag":1361,"props":1400,"children":1401},{},[1402,1404,1409],{"type":54,"value":1403},"Recorded ",{"type":48,"tag":63,"props":1405,"children":1407},{"className":1406},[],[1408],{"type":54,"value":76},{"type":54,"value":1410}," disagrees with the tarball filename",{"type":54,"value":1412}," — the\ntarball was renamed; trust the value parsed from\n",{"type":48,"tag":63,"props":1414,"children":1416},{"className":1415},[],[1417],{"type":54,"value":498},{"type":54,"value":1419}," over filenames.",{"type":48,"tag":107,"props":1421,"children":1422},{},[1423,1434],{"type":48,"tag":1361,"props":1424,"children":1425},{},[1426,1427,1432],{"type":54,"value":1164},{"type":48,"tag":63,"props":1428,"children":1430},{"className":1429},[],[1431],{"type":54,"value":84},{"type":54,"value":1433}," already in profile",{"type":54,"value":1435}," — refuse and\nask the user to confirm before overwriting.",{"type":48,"tag":96,"props":1437,"children":1439},{"id":1438},"references",[1440],{"type":54,"value":1441},"References",{"type":48,"tag":103,"props":1443,"children":1444},{},[1445,1456,1468,1480,1492,1504],{"type":48,"tag":107,"props":1446,"children":1447},{},[1448],{"type":48,"tag":155,"props":1449,"children":1450},{"href":157},[1451],{"type":48,"tag":63,"props":1452,"children":1454},{"className":1453},[],[1455],{"type":54,"value":157},{"type":48,"tag":107,"props":1457,"children":1458},{},[1459],{"type":48,"tag":155,"props":1460,"children":1462},{"href":1461},"..\u002F..\u002Freferences\u002Fbsp-platforms-catalogue.md",[1463],{"type":48,"tag":63,"props":1464,"children":1466},{"className":1465},[],[1467],{"type":54,"value":1461},{"type":48,"tag":107,"props":1469,"children":1470},{},[1471],{"type":48,"tag":155,"props":1472,"children":1474},{"href":1473},"..\u002F..\u002Freferences\u002Fplatform_template.yaml",[1475],{"type":48,"tag":63,"props":1476,"children":1478},{"className":1477},[],[1479],{"type":54,"value":1473},{"type":48,"tag":107,"props":1481,"children":1482},{},[1483],{"type":48,"tag":155,"props":1484,"children":1486},{"href":1485},"..\u002Fjetson-init-target\u002FSKILL.md",[1487],{"type":48,"tag":63,"props":1488,"children":1490},{"className":1489},[],[1491],{"type":54,"value":1485},{"type":48,"tag":107,"props":1493,"children":1494},{},[1495],{"type":48,"tag":155,"props":1496,"children":1498},{"href":1497},"..\u002Fjetson-init-source\u002FSKILL.md",[1499],{"type":48,"tag":63,"props":1500,"children":1502},{"className":1501},[],[1503],{"type":54,"value":1497},{"type":48,"tag":107,"props":1505,"children":1506},{},[1507],{"type":48,"tag":155,"props":1508,"children":1510},{"href":1509},"..\u002Fjetson-flash-image\u002FSKILL.md",[1511],{"type":48,"tag":63,"props":1512,"children":1514},{"className":1513},[],[1515],{"type":54,"value":1509},{"type":48,"tag":1517,"props":1518,"children":1519},"style",{},[1520],{"type":54,"value":1521},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"items":1523,"total":1625},[1524,1541,1553,1567,1579,1596,1611],{"slug":1525,"name":1525,"fn":1526,"description":1527,"org":1528,"tags":1529,"stars":22,"repoUrl":23,"updatedAt":1540},"accelerated-computing-cudf","accelerate data processing with cuDF","Official NVIDIA-authored guidance for NVIDIA cuDF GPU DataFrames, pandas acceleration, dask-cuDF, ETL, joins, groupby, CSV\u002FParquet I\u002FO, nullable semantics, and multi-GPU DataFrame workloads.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1530,1533,1536,1537],{"name":1531,"slug":1532,"type":15},"Data Analysis","data-analysis",{"name":1534,"slug":1535,"type":15},"Data Engineering","data-engineering",{"name":9,"slug":8,"type":15},{"name":1538,"slug":1539,"type":15},"Performance","performance","2026-07-14T05:28:43.176466",{"slug":1542,"name":1542,"fn":1543,"description":1544,"org":1545,"tags":1546,"stars":22,"repoUrl":23,"updatedAt":1552},"aiq-deploy","deploy and manage NVIDIA AI-Q infrastructure","Use when asked to install, deploy, run, validate, troubleshoot, or stop NVIDIA AI-Q Blueprint infrastructure.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1547,1548,1551],{"name":20,"slug":21,"type":15},{"name":1549,"slug":1550,"type":15},"Infrastructure","infrastructure",{"name":9,"slug":8,"type":15},"2026-07-14T05:29:06.667109",{"slug":1554,"name":1554,"fn":1555,"description":1556,"org":1557,"tags":1558,"stars":22,"repoUrl":23,"updatedAt":1566},"aiq-research","conduct deep research with AI-Q","Use when asked to run deep research or AI-Q research through a reachable NVIDIA AI-Q Blueprint backend.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1559,1562,1563],{"name":1560,"slug":1561,"type":15},"Agents","agents",{"name":9,"slug":8,"type":15},{"name":1564,"slug":1565,"type":15},"Research","research","2026-07-14T05:28:06.816956",{"slug":1568,"name":1568,"fn":1569,"description":1570,"org":1571,"tags":1572,"stars":22,"repoUrl":23,"updatedAt":1578},"amc-run-sample-calibration","run AMC sample dataset calibration","Run end-to-end calibration on the shipped sample dataset (sdg_08_2_sample_data_010926.zip) against a running AMC microservice. Use when user says 'test sample dataset', 'run sample calibration', 'verify AMC install', or 'launch and test'.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1573,1574,1575],{"name":1531,"slug":1532,"type":15},{"name":9,"slug":8,"type":15},{"name":1576,"slug":1577,"type":15},"Testing","testing","2026-07-17T05:29:03.913266",{"slug":1580,"name":1580,"fn":1581,"description":1582,"org":1583,"tags":1584,"stars":22,"repoUrl":23,"updatedAt":1595},"amc-run-video-calibration","calibrate video datasets with AutoMagicCalib","Calibrate a new dataset from pre-recorded video files via the AutoMagicCalib REST API. Use when user has local MP4s and says 'calibrate my videos', 'run AMC on these videos', or similar. For RTSP\u002Flive streams, use amc-run-rtsp-calibration instead.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1585,1588,1591,1592],{"name":1586,"slug":1587,"type":15},"Automation","automation",{"name":1589,"slug":1590,"type":15},"Imaging","imaging",{"name":9,"slug":8,"type":15},{"name":1593,"slug":1594,"type":15},"Video","video","2026-07-17T05:28:53.905004",{"slug":1597,"name":1597,"fn":1598,"description":1599,"org":1600,"tags":1601,"stars":22,"repoUrl":23,"updatedAt":1610},"amc-setup-calibration-stack","deploy AutoMagicCalib microservice with Docker","Launch AutoMagicCalib microservice and web UI from NGC release images via Docker Compose. Use when user says 'deploy auto calibration', 'launch auto calibration', 'launch AMC', 'start MS+UI', or 'set up auto-magic-calib'. Requires NGC API key.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1602,1603,1606,1607],{"name":20,"slug":21,"type":15},{"name":1604,"slug":1605,"type":15},"Docker","docker",{"name":9,"slug":8,"type":15},{"name":1608,"slug":1609,"type":15},"Operations","operations","2026-07-17T05:28:56.913999",{"slug":1612,"name":1612,"fn":1613,"description":1614,"org":1615,"tags":1616,"stars":22,"repoUrl":23,"updatedAt":1624},"cudaq-guide","develop quantum applications with CUDA-Q","CUDA-Q onboarding guide for installation, test programs, GPU simulation, QPU hardware, and quantum applications.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1617,1618,1621],{"name":9,"slug":8,"type":15},{"name":1619,"slug":1620,"type":15},"Quantum Computing","quantum-computing",{"name":1622,"slug":1623,"type":15},"Simulation","simulation","2026-07-14T05:26:58.898253",305,{"items":1627,"total":1778},[1628,1646,1662,1673,1685,1699,1712,1726,1737,1746,1760,1769],{"slug":1629,"name":1629,"fn":1630,"description":1631,"org":1632,"tags":1633,"stars":1643,"repoUrl":1644,"updatedAt":1645},"nemoclaw-user-guide","retrieve NemoClaw documentation and configuration","Guides human users' AI agents to the NemoClaw docs MCP server and canonical Fern documentation in Markdown form. Use when users ask how to install, configure, operate, troubleshoot, secure, or learn NemoClaw with an AI coding assistant. Trigger keywords - nemoclaw docs, use nemoclaw with ai agent, nemoclaw mcp docs, nemoclaw install help, nemoclaw quickstart, nemoclaw markdown docs, llms.txt, agent skills.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1634,1637,1640],{"name":1635,"slug":1636,"type":15},"Documentation","documentation",{"name":1638,"slug":1639,"type":15},"MCP","mcp",{"name":1641,"slug":1642,"type":15},"Search","search",21777,"https:\u002F\u002Fgithub.com\u002FNVIDIA\u002FNemoClaw","2026-07-20T06:00:01.461044",{"slug":1647,"name":1647,"fn":1648,"description":1649,"org":1650,"tags":1651,"stars":1659,"repoUrl":1660,"updatedAt":1661},"mcore-build-and-dependency","manage Megatron-LM development environments","Container-based dev environment setup and dependency management for Megatron-LM. Covers acquiring and launching the CI container, uv package management, and updating uv.lock.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1652,1655,1656],{"name":1653,"slug":1654,"type":15},"Containers","containers",{"name":20,"slug":21,"type":15},{"name":1657,"slug":1658,"type":15},"Python","python",17049,"https:\u002F\u002Fgithub.com\u002FNVIDIA\u002FMegatron-LM","2026-07-27T06:06:11.249662",{"slug":1663,"name":1663,"fn":1664,"description":1665,"org":1666,"tags":1667,"stars":1659,"repoUrl":1660,"updatedAt":1672},"mcore-bump-base-image","update NVIDIA PyTorch base images","Bump the NVIDIA PyTorch base image (`nvcr.io\u002Fnvidia\u002Fpytorch:YY.MM-py3`) used by Megatron-LM CI. Covers the two pin sites (GitHub CI in `docker\u002F.ngc_version.dev` and GitLab CI in `.gitlab\u002Fstages\u002F01.build.yml`), the post-bump CI loop (re-run functional tests, refresh golden values, mark broken tests), and the gotchas that bit PRs",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1668,1671],{"name":1669,"slug":1670,"type":15},"CI\u002FCD","ci-cd",{"name":20,"slug":21,"type":15},"2026-07-14T05:25:59.97109",{"slug":1674,"name":1674,"fn":1675,"description":1676,"org":1677,"tags":1678,"stars":1659,"repoUrl":1660,"updatedAt":1684},"mcore-cicd","manage CI\u002FCD pipelines for Megatron-LM","CI\u002FCD reference for Megatron-LM. Covers CI pipeline structure, PR scope labels, triggering internal GitLab CI (which force-pushes the current branch to a pull-request\u002FBRANCH ref — always dry-run and verify the destination first; never run against shared or protected branches), and CI failure investigation.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1679,1680,1681],{"name":1669,"slug":1670,"type":15},{"name":20,"slug":21,"type":15},{"name":1682,"slug":1683,"type":15},"GitHub","github","2026-07-27T06:06:12.278222",{"slug":1686,"name":1686,"fn":1687,"description":1688,"org":1689,"tags":1690,"stars":1659,"repoUrl":1660,"updatedAt":1698},"mcore-create-issue","investigate CI failures and create issues","Investigate a failing GitHub Actions run or job and create a GitHub issue for the failure.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1691,1694,1695],{"name":1692,"slug":1693,"type":15},"Debugging","debugging",{"name":1682,"slug":1683,"type":15},{"name":1696,"slug":1697,"type":15},"Triage","triage","2026-07-14T05:25:57.442089",{"slug":1700,"name":1700,"fn":1701,"description":1702,"org":1703,"tags":1704,"stars":1659,"repoUrl":1660,"updatedAt":1711},"mcore-linting-and-formatting","lint and format Megatron-LM code","Linting and formatting for Megatron-LM. Covers running autoformat.sh, tools (ruff, black, isort, pylint, mypy), and code style rules.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1705,1708],{"name":1706,"slug":1707,"type":15},"Best Practices","best-practices",{"name":1709,"slug":1710,"type":15},"Code Analysis","code-analysis","2026-07-14T05:25:56.18433",{"slug":1713,"name":1713,"fn":1714,"description":1715,"org":1716,"tags":1717,"stars":1659,"repoUrl":1660,"updatedAt":1725},"mcore-migrate-gpt-to-hybrid","migrate Megatron-LM models to HybridModel","Migration guide for moving Megatron Core GPTModel checkpoints, model providers, training commands, and layer mappings to HybridModel.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1718,1721,1724],{"name":1719,"slug":1720,"type":15},"Machine Learning","machine-learning",{"name":1722,"slug":1723,"type":15},"Migration","migration",{"name":9,"slug":8,"type":15},"2026-07-17T06:07:11.777011",{"slug":1727,"name":1727,"fn":1728,"description":1729,"org":1730,"tags":1731,"stars":1659,"repoUrl":1660,"updatedAt":1736},"mcore-onboard-gb200-1node-tests","onboard functional tests for GB200","Onboard 1-node GitHub MR functional tests for GB200 from existing mr-scoped 2-node tests.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1732,1735],{"name":1733,"slug":1734,"type":15},"QA","qa",{"name":1576,"slug":1577,"type":15},"2026-07-14T05:25:53.673039",{"slug":1738,"name":1738,"fn":1739,"description":1740,"org":1741,"tags":1742,"stars":1659,"repoUrl":1660,"updatedAt":1745},"mcore-run-on-slurm","launch distributed training jobs on SLURM","How to launch distributed Megatron-LM training jobs on a SLURM cluster. Covers a minimal sbatch skeleton, environment-variable setup for torch.distributed.run, CUDA_DEVICE_MAX_CONNECTIONS rules across hardware and parallelism modes, container conventions, monitoring, and per-rank failure diagnosis.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1743,1744],{"name":20,"slug":21,"type":15},{"name":1549,"slug":1550,"type":15},"2026-07-14T05:25:49.362534",{"slug":1747,"name":1747,"fn":1748,"description":1749,"org":1750,"tags":1751,"stars":1659,"repoUrl":1660,"updatedAt":1759},"mcore-split-pr","split pull requests to reduce review load","Split a PR into multiple PRs to reduce the number of required CODEOWNERS reviewer groups.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1752,1755,1756],{"name":1753,"slug":1754,"type":15},"Code Review","code-review",{"name":1682,"slug":1683,"type":15},{"name":1757,"slug":1758,"type":15},"Pull Requests","pull-requests","2026-07-14T05:26:01.226578",{"slug":1761,"name":1761,"fn":1762,"description":1763,"org":1764,"tags":1765,"stars":1659,"repoUrl":1660,"updatedAt":1768},"mcore-testing","run and manage Megatron-LM tests","Test system for Megatron-LM. Covers test layout, recipe YAML structure, adding and running unit and functional tests, golden values, marker filters, and CI parity.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1766,1767],{"name":1733,"slug":1734,"type":15},{"name":1576,"slug":1577,"type":15},"2026-07-14T05:25:54.928983",{"slug":1770,"name":1770,"fn":1771,"description":1772,"org":1773,"tags":1774,"stars":1659,"repoUrl":1660,"updatedAt":1777},"nightly-sync","manage nightly main-to-dev sync workflows","Domain knowledge for the nightly main-to-dev sync workflow. Covers merge strategy, CI architecture, failure investigation, and known issues.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1775,1776],{"name":1586,"slug":1587,"type":15},{"name":1669,"slug":1670,"type":15},"2026-07-30T05:29:03.275638",496]