struct

Quartz::Build::FapManifest

Inherits Struct < Value < Object

Serializes a FAP manifest header matching the firmware's FlipperApplicationManifestV1 struct byte-for-byte.

Reference: flipperzero-firmware/lib/flipper_application/application_manifest.h

#define FAP_MANIFEST_MAGIC 0x52474448 #define FAP_MANIFEST_SUPPORTED_VERSION 1 #define FAP_MANIFEST_MAX_APP_NAME_LENGTH 32 #define FAP_MANIFEST_MAX_ICON_SIZE 32

Packed layout (little-endian, #pragma pack(push, 1)): u32 manifest_magic (4) u32 manifest_version (4) u16 api_minor (2) u16 api_major (2) u16 hardware_target_id (2) u16 stack_size (2) u32 app_version (4) char name[32] (32) char has_icon (1) char icon[32] (32) = 85 bytes

Constants

MAGIC = 1380402248_u32
MAX_ICON_SIZE = 32
MAX_NAME_LENGTH = 32
SERIALIZED_SIZE = 85
VERSION = 1_u32

Constructors

new(name : String, api_major : UInt16, api_minor : UInt16, hardware_target : UInt16, stack_size : UInt16 = 2048_u16, app_version : UInt32 = 65536_u32, icon : Bytes | Nil = nil)
Source

Instance methods

api_major
Source
api_minor
Source
app_version
Source
hardware_target
Source
icon
Source
name
Source
stack_size
Source
to_bytes

Serialize to the exact 85-byte blob the firmware loader expects.

Source