# AppBundle

* **Author**: [`@xplshn`](https://github.com/xplshn)
* **Project Page**: <https://github.com/xplshn/pelf/>
* **Sources**: Mostly prebuilts from <https://github.com/xplshn/AppBundleHUB>

***

### Schema

{% hint style="info" %}
[<mark style="color:purple;">**`.pkg`**</mark>](https://docs.pkgforge.dev/sbuild/specification/2.pkg): <mark style="color:orange;">**`${PKG_NAME}`**</mark>

[<mark style="color:purple;">**`.pkg_type`**</mark>](https://docs.pkgforge.dev/sbuild/specification/2.pkg): <mark style="color:green;">**`appbundle`**</mark>

<mark style="color:blue;">**`${SBUILD_PKG}`**</mark> : <mark style="color:green;">**`${PKG_NAME}.appbundle`**</mark>
{% endhint %}

***

### **Prerequisites (`HOST)`**

{% hint style="info" %}

* [**Fuse**](https://docs.pkgforge.dev/formats/packages/broken-reference): Required for mounting Filesystems & Images
* [**Fonts**](https://docs.pkgforge.dev/formats/packages/broken-reference): Required to display/render Non-English Chars, Emojis, Symbols etc.
* [<mark style="color:blue;">**Kernel User NameSpaces**</mark>](https://docs.pkgforge.dev/formats/packages/broken-reference): Required for Sandboxing, Security & Performance
  {% endhint %}

***

### Quirks

{% hint style="info" %} <mark style="color:red;">**WARNINGS**</mark>

* NEVER run **`strip`**, **`objcopy`** or any other binary rewriting tool as they will often just strip the **`squashfs|dwarfs`** archive, only preserving the **`runtime`**.
* A typical <mark style="color:green;">**`.appbundle`**</mark> file is not a real elf binary, thus will not survive this process.
  {% endhint %}
