Hiyu

Development

Build against the system, not a private copy of it.

01

Hiyu Framework

Hiyu Framework is the application framework. It is C++ inside with a C surface every app links, libhiyuframework.so.1, and a C++ wrapper over it. The operating system provides it; apps do not carry a private copy. Windows, controls, theming, scaling and the sandbox are the framework's job, so an app draws its content and never its own window chrome.

It is a library each app links, not a host process that tabs every app into one address space. A crash in one app does not take the shell with it.

You may write a Hiyu app in any language and toolkit you want. The C and C++ rule binds the system and the apps I ship, not yours. A native app in another language links the C surface.

03

A Hiyu app is one folder

Name.app holds a Manifest, a Signature, one signed code image per target, Data/ for the app's own files, encrypted by default, and Plugins/ for add-ons. Drag it anywhere and double-click it. Delete it to uninstall; its data goes with it. Every app runs in its jail, and there is no switch for that.

The Signature carries one line per signer: your key, and a review line when AuraFarm has reviewed the bundle, so the launcher's card can say who built it and whether it was reviewed from the bundle alone. Your key stays yours. Registration of a developer key is free, instant and identity only, and it can be revoked.

04

Compatibility Extensions

Software that is not ours runs through the Compatibility Extensions. Windows and Qt are installed by default: Windows games through the Windows Compatibility Extension, and unmodified Qt apps on the system Qt through the Qt one. The Wayland and X11 extensions and Gamescope install from the AuraFarm app when you want them. The base image needs none of the optional ones.

05

Submitting

AuraFarm is an app on Hiyu, not a website. When the door opens, submission is one button in the authoring app: a free app, theme, extension or icon set signed with your own key, checked by an automated pipeline, live in minutes, with no account required. Being named on the launcher's card needs a verified identity, free and same day. Selling needs a payout identity. Nothing of that is open yet, and this page will say so when it is.

Sideloading is free forever. Distribute a Hiyu app from your own website and the OS runs it. The store has to be worth being on.

06

Licensing

Using Hiyu OS does not ask you to agree to anything. This section is information; the same text ships in the source tree.

What you can build

Hiyu Framework is LGPL-3.0-only. Link libhiyuframework.so, include the public headers, and the app you write stays under the licence you choose. You can sell it, keep it closed, or license it however you like. Including those headers and calling the public API does not put your application under the LGPL; that extra permission is written in the framework's main header. If you ship a change to Hiyu Framework itself, that library change stays LGPL-3.0-only, and the people who receive it can replace the library.

The Development kit is BSD-3-Clause. Copy the starter app, the menu-bar extra and the learning theme into an app you own; the copy stays BSD-3 and your own files stay under your licence. The Developer Gallery samples are BSD-3 as well. Every header you compile against to talk to Hiyu is BSD-3-Clause: the Extension Engine header, the island ABI, the Graphics effect interface and the Stereo plugin hook table. Including one never changes the licence of your own code.

What ships with the computer

Every app I ship is AGPL-3.0-only, with no exceptions: System Settings, Graphics, Stereo, all of them. So are DisplayComp's server, the shell, the daemons and the themes. If you ship a modified version of any of those, or run a modified version as a remote service, you publish the source of your changes under AGPL-3.0-only.

The Windows Compatibility Extension, the Wine driver and client adapter, is LGPL-2.1-or-later, the licence Wine itself uses, so Wine can load it. It does not change the licence of anything around it.

A theme you write from scratch is yours. The theme files we ship are AGPL-3.0-only; copying Cyan or Blondie means your copy stays AGPL-3.0-only.

Names

Hiyu OS is the name of this system. Your app keeps the name you give it. A .app bundle is the format, not a claim on the name.

Submitting a change to Hiyu itself

If you send a patch to be included in Hiyu, you keep your copyright and you grant Kyle Blizzard a licence to relicense that contribution. The text is CONTRIBUTOR-LICENSE at the root of the source tree. It applies to a patch. It does not apply to using the computer or to writing your own app.

Texts

The licences are the GNU Affero General Public License version 3 only, the GNU Lesser General Public License version 3 only, the GNU General Public License version 3 only, the BSD 3-Clause licence, and the GNU Lesser General Public License version 2.1 or later. Code we did not write, including Skia, Filament and Flecs, keeps its own licence, and the source tree's NOTICE lists each one and where its text lives.

07

Source

When a public install image is offered, the corresponding source for its AGPL and LGPL parts is offered here: one entry per image, with the archive, its size and its SHA-256, kept for as long as the licences require and longer. Until then there is no public image and nothing to correspond to. Source is available on request at kyleblizzard@me.com.