toaruos/lib/README.md

2.1 KiB

ToaruOS System Libraries

These are the core system libraries of ToaruOS. Where functionality isn't expected in the C standard library, these provide additional features that are shared by multiple ToaruOS applications.

toaru_auth

Provides password validation and login helper methods. Exists primarily because libc doesn't have these things and there are multiple places where logins are checked (login, glogin, sudo, gsudo...).

toaru_button

Renderer for button widgets. Not really a widget library at the moment.

toaru_confreader

Implements a basic INI parser for use with configuration files.

toaru_decorations

Client-side decoration library for the compositor. Supports pluggable decoration themes through additional libraries, which are named as libtoaru_decor-....

toaru_graphics

General-purpose 2D drawing and pixel-pushing library. Provides sprite blitting, rotation, scaling, etc.

toaru_hashmap

Generic hashmap implementation. Also used by the kernel.

toaru_iconcache

Convenience library for loading icons at specific sizes.

toaru_jpeg

Minimal, incomplete JPEG decoder. Mostly used for providing wallpapers. Doesn't support most JPEG features.

toaru_kbd

Keyboard scancode parser.

toaru_list

Generic expandable linked list implementation.

toaru_markup

XML-like syntax parser.

toaru_menu

Menu widget library. Used for the "Applications" menu, context menus, etc.

toaru_pex

Userspace library for using the ToaruOS "packetfs" subsystem, which provides packet-based IPC.

toaru_rline

Replacement for readline. Mostly deprecated in favor of rline_exp.

toaru_rline_exp

Replacement for readline, with support for syntax highlighting.

toaru_sdf

Signed Distance Field text rendering library.

toaru_termemu

Terminal ANSI escape processor.

toaru_textregion

WIP library for providing multiline wrapping label widgets with rich text support.

toaru_tree

Generic tree implementation. Also used by the kernel.

toaru_yutani

Compositor client library, used to build GUI applications.