3个版本

0.2.11 2021年7月25日
0.2.10 2020年4月19日
0.2.9 2020年4月16日

游戏中排名第159

Download history • Rust 包仓库 31/week @ 2024-03-11 • Rust 包仓库 42/week @ 2024-03-18 • Rust 包仓库 34/week @ 2024-03-25 • Rust 包仓库 89/week @ 2024-04-01 • Rust 包仓库 25/week @ 2024-04-08 • Rust 包仓库 32/week @ 2024-04-15 • Rust 包仓库 23/week @ 2024-04-22 • Rust 包仓库 9/week @ 2024-04-29 • Rust 包仓库 19/week @ 2024-05-06 • Rust 包仓库 12/week @ 2024-05-13 • Rust 包仓库 28/week @ 2024-05-20 • Rust 包仓库 23/week @ 2024-05-27 • Rust 包仓库 37/week @ 2024-06-03 • Rust 包仓库 22/week @ 2024-06-10 • Rust 包仓库 18/week @ 2024-06-17 • Rust 包仓库 20/week @ 2024-06-24 • Rust 包仓库

每月下载量99
cargo-skyline中使用

MIT/Apache

170KB
3.5K SLoC

MIT license Apache 2 license Discord

简介

此程序允许转换或创建用于Nintendo Switch的多种格式。目前,它仅支持创建PFS0/NSP和64位NRO/NSO。它还可以通过cargo nro与cargo一起使用,以简化Megaton-Hammer自煮软件的构建过程。

安装

源安装

假设您已安装cargo,则运行cargo install --features=binaries linkle将安装linklecargo nro子命令。

二进制安装

或者,您可以从GitHub发行版中下载Windows、MacOS和Linux ARM64的linkle二进制文件。

用法

创建NRO文件

linkle nro input.elf output.nro

创建NSO文件

linkle nso input.elf output.nso

创建PFS0/NSP文件

linkle pfs0 input_directory output.pfs0

创建NACP文件

linkle ncap input.json output.nacp

创建RomFs文件

linkle romfs input_directory output.romfs

编译并创建NRO文件(需要xargo,使用cargo install xargo安装)

cargo nro

Cargo.toml元数据格式

当使用 cargo nro 编译项目时,会使用一个特殊的 [package.metadata.linkle.BINARY_NAME] 键来允许自定义构建。这是一个 Cargo.toml 的示例

[package]
name = "link"
version = "0.1.0"
authors = ["linkle"]

[package.metadata.linkle.megaton-example]
romfs = "res/"
icon = "icon.jpeg"
titleid = "0100000000819"

[package.metadata.linkle.megaton-example.nacp]
name = "Link"

[package.metadata.linkle.megaton-example.nacp.lang.ja]
"name": "リンク",
"author": "リンクル"

所有路径都是相对于项目根目录(Cargo.toml 文件所在的位置)。

每个字段都有合理的默认值

字段 描述 默认值
romfs 应用程序的 romfs 目录。 res/
icon 应用程序的图标。 icon.jpg
title_id 应用程序的标题 ID。 0000000000000000

[package.metadata.linkle.BINARY_NAME.nacp] 键遵循 NACP 输入格式

NACP 输入格式

这是一个兼容 JSON 的示例

{
    "name": "Link",
    "author": "Linkle",
    "version": "1.0.0",
    "title_id": "0400000000020000",
    "lang": {
        "ja": {
            "name": "リンク",
            "author": "リンクル"
        }
    }
}

字段

注意:每个字段都是可选的

字段 描述 默认值
name 应用程序的名称。 未知应用程序
author 应用程序的作者。 未知作者
version 应用程序的版本。 1.0.0
title_id 应用程序的标题 ID。 0000000000000000
dlc_base_title_id 所有标题 DLC 的基本 ID。 title_id + 0x1000
lang (对象) 不同语言下的名称/作者 使用名称和作者
支持的语言
en-US
en-GB
ja
fr
de
es-419
es
it
nl
fr-CA
pt
ru
ko
zh-TW
zh-CN

依赖项

~7-11MB
~201K SLoC