Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 

Repository files navigation

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.

Requirements

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

How to install

Windows

Run .msi installer file.

Note

App is unsigned, so Windows will show you the warning screen — select "run anyway".

macOS

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*.app

Note

App is unsigned, so on some systems you may have to take standard steps like these.

Linux

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 && ./homesprite

for 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 && ./homesprite

Some Linuxes (e.g., latest Ubuntu) restricts the use of sandboxes. To lift the restrictions:

sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0

On 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 fuse

On 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.

How to create your Sprite

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.

How to remove character

  • Open tray menu → Settings → "Open app folder".
  • Remove needed character's folder
  • Restart HomeSprite

Speech

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>

Scripting

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

About

Multiplatform retro desktop companion

Topics

Resources

Stars

6 stars

Watchers

0 watching

Forks

Releases

Sponsor this project

Packages

Contributors