Your desktop, but with a little magic.
HomeSprite is a companion app that brings animated Sprites from TrinketOS to your Windows, macOS, or Linux desktop. They live in your tray, wander around in their little frame, and can be any character that the community creates.
| Was tested on | In theory, should support | Will definitely not run on |
|---|---|---|
| macOS Sequoia 15.5 | macOS (Apple Silicon) | macOS Intel |
| Windows 11 | Windows 10, 11 (x64) | Windows 8/7/... |
| Ubuntu 24.04 | Windows 11 ARM | Windows 10 32-bit |
| Ubuntu 25.04 ARM | Linux x64 | macOS Intel |
| Linux ARM |
Run .msi installer file.
Note
App is unsigned, so Windows will show you the warning screen — select "run anyway".
Mount .dmg file and drag app icon to Applications.
One-line command that will download the latest file, mount, install, remove dmg and run app:
curl -sL $(curl -s https://api.github.com/repos/ismslv/HomeSprite/releases/latest | grep "browser_download_url.*\.dmg" | cut -d '"' -f 4) -o ~/homesprite.dmg && hdiutil attach ~/homesprite.dmg && cp -r /Volumes/HomeSprite*/HomeSprite*.app /Applications && hdiutil detach /Volumes/HomeSprite* && rm ~/homesprite.dmg && open /Applications/HomeSprite*.appNote
App is unsigned, so on some systems you may have to take standard steps like these.
Extract .tar.gz and run homesprite. One-line commands that will download the latest file, extract it, chmod and run app:
for x64
curl -sL $(curl -s https://api.github.com/repos/ismslv/HomeSprite/releases/latest | grep "browser_download_url.*homesprite-[0-9]*\.[0-9]*\.[0-9]*\.tar\.gz" | cut -d '"' -f 4) | tar -xzf - -C ~ && cd ~/homesprite-* && chmod +x homesprite && ./homespritefor ARM
curl -sL $(curl -s https://api.github.com/repos/ismslv/HomeSprite/releases/latest | grep "browser_download_url.*homesprite-[0-9]*\.[0-9]*\.[0-9]*-arm64\.tar\.gz" | cut -d '"' -f 4) | tar -xzf - -C ~ && cd ~/homesprite-* && chmod +x homesprite && ./homespriteSome Linuxes (e.g., latest Ubuntu) restricts the use of sandboxes. To lift the restrictions:
sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0On some systems, you may need to install fuse library.
# Ubuntu/Debian
sudo apt update
sudo apt install libfuse2
# Arch/Manjaro
sudo pacman -S fuse2
# Fedora/CentOS
sudo dnf install fuseOn some systems you can see a warning Exiting GPU process due to errors during initialization. It is harmless and due to drivers. If you want to remove this warning, launch app with a --disable-gpu flag.
Note
Due to how some distros display tray menu, Linux version contains a special, compact version of the menu.
First, open the Matrix.
If you want to download some character, click on its card, and in the editor click the button "Export to .sprite".
If you want to create your own character, click the "New" card. Add your frames to the animations, enter name aand other data, and export the file in the same manner.
Frames should be:
- Square png files without background
- Black and white
- Preferably in pixel-art style
- 256×256 (or down to 48×48 if they are pixel perfect)
- With a little space around, but not too small
Then you can click "submit" button and send me the file, if you want it to be added to the Matrix gallery.
- Open tray menu → Settings → "Open app folder".
- Remove needed character's folder
- Restart HomeSprite
One of the main abilities of the Sprite is the ability to speak. You can create lines for a character when creating a new one in Matrix (only "greeting" type for now), also you can send any text to a "say" command (see Scripting).
Here is the list of tags that you can use inside of speech lines:
| <br> | Makes a new line. |
| <pause> | Makes a 1s pause. |
| <pause X> | Makes a Xs pause. |
| <trick> | Character pauses a speech and makes a special move. |
| <slow>text</slow> | Text will be written slowly. |
| <fast>text</fast> | Text will be written fast |
| <notype> | Text is output immediately, without typing effect. Disables all tags like pause, slow, fast. Should be put in the beginning. |
| <noclose> | Does not close text bubble after typing. Useful for long texts. Should be put in the beginning. |
Example of speech text with multiple tags:
Luke!<trick>I am<slow>...</slow> your father!<pause><br><fast>Nooooooooo!</fast>
You can use command line to call Sprite from your scripts. Only these commands are available in the first version: say, sleep, wake.
<path_to_homesprite_executable> say "Greetings!"
<path_to_homesprite_executable> sleep
<path_to_homesprite_executable> wake