Repository navigation
Releases: UnhingedSoftware/kirie
Releases · UnhingedSoftware/kirie
Release list
v0.8.2
Bug Fixes
- Refuse a trailer that cannot describe this file
- Read a long program path, and stop asking for an unread z-order
- Find Steam on Windows, and read a Windows path as a path
- Give Windows a cache directory to bake and compile into
CI/CD
- Cross-check the three crates that were caching into nowhere
Documentation
- Say where the control socket is on Windows
Other
- Put wallpapers on the Windows desktop (#3)
- Build Linux releases on GitHub's runners (#4)
- Ask for the macOS build the release actually publishes (#5)
- Link the Media Foundation GUID libraries on Windows (#6)
- Honour the prerelease input when the release already exists (#7)
- Draw the scene in one render pass instead of one per layer
- Check that sharing the scene pass draws the same frame
- Merge remote-tracking branch 'origin/claude/project-thread-ihp5e5' into lagm2g
- Merge remote-tracking branch 'origin/claude/project-thread-lagm2g' into claude/project-thread-lagm2g
- Show web wallpapers on Windows through WebView2
- Merge pull request #9 from UnhingedSoftware/claude/project-thread-lagm2g
- Put the wallpaper under the icons on Windows 11 24H2, and draw on the screen's GPU
- Move a rebuilt draft's target to the commit it was built from
- Draw in front of the icons when Explorer will not split the desktop
- Merge pull request #11 from UnhingedSoftware/claude/project-thread-0i0dc9
- Stop particle alpha and size operators from compounding each frame
- Cover the screen by default instead of overscanning it
- Fix layer placement, particle transforms and effect uniforms
- Merge pull request #12 from UnhingedSoftware/claude/project-thread-tyokzj
Refactoring
- Remove what can go, and finish the safety comments
Downloads
All assets are standalone executables — download, chmod +x, run.
| File | Variant |
|---|---|
kirie-linux-x86_64 |
scenes + video + images |
kirie-web-cef-linux-x86_64 |
+ web wallpapers, bundled Chromium (self-extracting, no system deps) |
kirie-web-webview-linux-x86_64 |
+ web wallpapers via the system webkit, presented natively on the compositor's background layer. One file — the webkit host is built in. Needs webkit2gtk-4.1, libsoup3, gtk-layer-shell installed; web items are Wayland-only. |
kirie-macos-aarch64 |
Apple Silicon — scenes, video, images, and web wallpapers through the system WebKit. Self-contained; run xattr -d com.apple.quarantine kirie-macos-aarch64 once, since it is not notarized. |
kirie-windows-x86_64.exe |
Windows 10 1809 or newer — scenes, video and images on the desktop behind the icons. Self-contained; web wallpapers run in the Microsoft Edge WebView2 Runtime that Windows 11 ships (haru installs it on a Windows 10 machine without it). SmartScreen will warn once, since it is not signed. |
v0.8.1
Bug Fixes
- Give scripts the real cursor position off-output
- Give each account its own control socket
Documentation
- Add a verified command reference, and fix two flags it exposed
Other
- Merge pull request #2 from UnhingedSoftware/claude/docs-command-examples-ws6ek9
- Put wallpapers on the Windows desktop (#3)
- Build Linux releases on GitHub's runners (#4)
- Ask for the macOS build the release actually publishes (#5)
- Link the Media Foundation GUID libraries on Windows (#6)
- Honour the prerelease input when the release already exists (#7)
Downloads
All assets are standalone executables — download, chmod +x, run.
| File | Variant |
|---|---|
kirie-linux-x86_64 |
scenes + video + images |
kirie-web-cef-linux-x86_64 |
+ web wallpapers, bundled Chromium (self-extracting, no system deps) |
kirie-web-webview-linux-x86_64 |
+ web wallpapers via the system webkit, presented natively on the compositor's background layer. One file — the webkit host is built in. Needs webkit2gtk-4.1, libsoup3, gtk-layer-shell installed; web items are Wayland-only. |
kirie-macos-aarch64 |
Apple Silicon — scenes, video, images, and web wallpapers through the system WebKit. Self-contained; run xattr -d com.apple.quarantine kirie-macos-aarch64 once, since it is not notarized. |
kirie-windows-x86_64.exe |
Windows 10 1809 or newer — scenes, video and images on the desktop behind the icons. Self-contained; web wallpapers are not supported yet. SmartScreen will warn once, since it is not signed. |
v0.8.0
Bug Fixes
- Open a window instead of taking the desktop
- Honour alpha-channel priority for rg88 and r8
- Decode with the stream's own colour matrix
- Sample the screen under the layer, not the whole scene
- Find a unique buffer under its per-layer name
- Load a text input that has no value
- Open the package the project names
- Read a text layer's markup instead of drawing it
- Keep effect buffers out of the texture lookup
- Keep the base pass of a layer others draw from
- Leave the built-in inverse alone on modern GLSL
- Narrow a wide value the way HLSL does
- Narrow into swizzled targets and locals too
- Never narrow the name a line declares
- Let the compiler's own error mend a conversion
- Leave matrix arithmetic at full width
- Read a not on a float as a zero test
- Mend HLSL-isms from the compiler's own diagnostic
- Animate spritesheets whose last page is short
- Place the web host on the wallpaper's own output
- Place particle systems the same way up as everything else
- Keep the wallpaper still when the cursor is elsewhere
- Size text layers by their authored box
- Resolve script properties bound to user settings
- Draw scene-reading donors at their own z-slot
- Flip WE screen-space varyings for wgpu
- Sample the scene through the compose layer quad
- Ship the reference WEMath, WEColor and WEVector modules
- Hand update() typed vectors and alias thisObject
- Run every init before the first update
- Expose layer size and accept createLayer configs
- Hide text layers whose text goes empty
- Build hidden and empty text layers
- Key bundles by the baking binary
- Resolve label properties to empty text
- Apply user properties once at load
- Run text scripts only as modules
- Move text layers with their parent chain
- Anchor image layers by their alignment
- Size text once and anchor it by alignment
- Snap text quads to whole pixels
- Lay text out with the font's line metrics
- Pad text rasters like the engine
- Raster effect text at the engine's em size
- Expose text layer font and pointsize like WE
- Pass layer angles to scripts in degrees
- Report the cursor world position y-up
- Read the relative flag from the animation block
- Wrap at maxwidth in the text's own pixels
- Move compose-layer donors with scripted transforms
- Drop samplers compiled out by combos
- Derive the scene redraw hint from what the scene reads
- Keep numeric combo values numeric
- Parse every MDLA clip behind the version trailers
- Additive layers offset from the bind pose
- Derive puppet vertex layout from the mesh flags
- Walk model mesh headers by the format rules
- Keep every band's peak in the 16- and 32-band spectrum
- Reject a NUL byte instead of panicking in shaderc
- Interrupt a runaway wallpaper script
- Cap the script heap so a runaway cannot balloon memory
- Assert a runaway allocation stops, not which limit trips
- Pass the output position through to the renderer
Features
- Name a render target that resolves to nothing
- Name a texture that will not load
- Read MDLV0016 and MDLV0019 puppet meshes
- Parse text effects and sound volume
- Load text effect and sound volume scripts
- Let scripts write thisScene settings
- Parse property animations
- Play keyframed property animations
- Expose property animations to scripts
- Drive property animations from scripts
- Run effects on text layers
- Render text layers created by createLayer
- Rotate text layers about their origin
- Cut rows past maxrows like the engine
- Run pointsize and maxwidth property scripts
- Honour --render-debug skip-effect
- Evaluate compound preprocessor conditions
- Honour base-only, no-solid-final and pass-log
- Forward page console with KIRIE_WEB_CONSOLE
- Add a puppet animation layer player
- Read animation layer name and additive flag
- Play puppet animation layers
- Play mirror clips and report ended layers
- Drive puppet animation layers from scripts
- Name a blank project.json for what it is
Miscellaneous
- Allow build_for_spec's argument count
Other
- Format
- Format
- Format
Refactoring
- Drop the surface size the renderers never read
- Name the shared vertex layout for what it is
Tests
- Fuzz every parser against mutated real files
- Fuzz scene parsing against mutated input
Downloads
All assets are standalone executables — download, chmod +x, run.
| File | Variant |
|---|---|
kirie-linux-x86_64 |
scenes + video + images |
kirie-web-cef-linux-x86_64 |
+ web wallpapers, bundled Chromium (self-extracting, no system deps) |
kirie-web-webview-linux-x86_64 |
+ web wallpapers via the system webkit, presented natively on the compositor's background layer. One file — the webkit host is built in. Needs webkit2gtk-4.1, libsoup3, gtk-layer-shell installed; web items are Wayland-only. |
kirie-macos-aarch64 |
Apple Silicon — scenes, video, images, and web wallpapers through the system WebKit. Self-contained; run xattr -d com.apple.quarantine kirie-macos-aarch64 once, since it is not notarized. |
v0.7.0
Bug Fixes
- Sample the frame buffer in texture space
- Rebuild when the bloom toggle changes
Features
- Keep each wallpaper's settings between runs
Downloads
All assets are standalone executables — download, chmod +x, run.
| File | Variant |
|---|---|
kirie-linux-x86_64 |
scenes + video + images |
kirie-web-cef-linux-x86_64 |
+ web wallpapers, bundled Chromium (self-extracting, no system deps) |
kirie-web-webview-linux-x86_64 |
+ web wallpapers via the system webkit, presented natively on the compositor's background layer. One file — the webkit host is built in. Needs webkit2gtk-4.1, libsoup3, gtk-layer-shell installed; web items are Wayland-only. |
kirie-macos-aarch64 |
Apple Silicon — scenes, video, images, and web wallpapers through the system WebKit. Self-contained; run xattr -d com.apple.quarantine kirie-macos-aarch64 once, since it is not notarized. |
v0.6.4
Bug Fixes
- Ignore an empty background instead of refusing
- Limit the screen-rect copy to compose layers
- Keep parsing after an empty background
- Take a whole real path over a screen-name guess
- Read a bare bg path as the wallpaper, not a screen
- Apply an unnamed background to every screen
Downloads
All assets are standalone executables — download, chmod +x, run.
| File | Variant |
|---|---|
kirie-linux-x86_64 |
scenes + video + images |
kirie-web-cef-linux-x86_64 |
+ web wallpapers, bundled Chromium (self-extracting, no system deps) |
kirie-web-webview-linux-x86_64 |
+ web wallpapers via the system webkit, presented natively on the compositor's background layer. One file — the webkit host is built in. Needs webkit2gtk-4.1, libsoup3, gtk-layer-shell installed; web items are Wayland-only. |
kirie-macos-aarch64 |
Apple Silicon — scenes, video, images, and web wallpapers through the system WebKit. Self-contained; run xattr -d com.apple.quarantine kirie-macos-aarch64 once, since it is not notarized. |
v0.6.3
Bug Fixes
- Find the wallpaper path when the screen is unknown
- Bind each mesh's own material texture
- Bump the translator version for today's changes
- Ignore an empty background instead of refusing
- Limit the screen-rect copy to compose layers
- Keep parsing after an empty background
CI/CD
- Keep a published release published when re-run
Downloads
All assets are standalone executables — download, chmod +x, run.
| File | Variant |
|---|---|
kirie-linux-x86_64 |
scenes + video + images |
kirie-web-cef-linux-x86_64 |
+ web wallpapers, bundled Chromium (self-extracting, no system deps) |
kirie-web-webview-linux-x86_64 |
+ web wallpapers via the system webkit, presented natively on the compositor's background layer. One file — the webkit host is built in. Needs webkit2gtk-4.1, libsoup3, gtk-layer-shell installed; web items are Wayland-only. |
kirie-macos-aarch64 |
Apple Silicon — scenes, video, images, and web wallpapers through the system WebKit. Self-contained; run xattr -d com.apple.quarantine kirie-macos-aarch64 once, since it is not notarized. |
v0.6.2
Bug Fixes
- Refresh the frame buffer for default-bound samplers
- Translate HLSL-style modulo on floats
- Accept screen names that contain spaces
- Place text layers through their parents
- Skip passes whose stages disagree on a varying
- Sample compose layers through their own screen rect
- Carry object alpha into the shader colour
- Read numeric comparisons in preprocessor conditions
- Resync mesh headers past the per-mesh trailer
- Pad odd index runs to a whole word
Documentation
- Say scenes need Wallpaper Engine ownership
Tests
- Make the corpus gates survive growth and broken installs
Downloads
All assets are standalone executables — download, chmod +x, run.
| File | Variant |
|---|---|
kirie-linux-x86_64 |
scenes + video + images |
kirie-web-cef-linux-x86_64 |
+ web wallpapers, bundled Chromium (self-extracting, no system deps) |
kirie-web-webview-linux-x86_64 |
+ web wallpapers via the system webkit, presented natively on the compositor's background layer. One file — the webkit host is built in. Needs webkit2gtk-4.1, libsoup3, gtk-layer-shell installed; web items are Wayland-only. |
kirie-macos-aarch64 |
Apple Silicon — scenes, video, images, and web wallpapers through the system WebKit. Self-contained; run xattr -d com.apple.quarantine kirie-macos-aarch64 once, since it is not notarized. |
v0.6.1
Bug Fixes
- Count jobs without nproc
CI/CD
- Make the macOS build carry its own ffmpeg
Downloads
All assets are standalone executables — download, chmod +x, run.
| File | Variant |
|---|---|
kirie-linux-x86_64 |
scenes + video + images |
kirie-web-cef-linux-x86_64 |
+ web wallpapers, bundled Chromium (self-extracting, no system deps) |
kirie-web-webview-linux-x86_64 |
+ web wallpapers via the system webkit, presented natively on the compositor's background layer. One file — the webkit host is built in. Needs webkit2gtk-4.1, libsoup3, gtk-layer-shell installed; web items are Wayland-only. |
kirie-macos-aarch64 |
Apple Silicon — scenes, video, images, and web wallpapers through the system WebKit. Self-contained; run xattr -d com.apple.quarantine kirie-macos-aarch64 once, since it is not notarized. |
v0.6.0
Bug Fixes
- Place puppet meshes in scene space
- Anchor attached layers to their puppet bone
- Read MDLV0013 bone indices and puppet animations
- Pose puppet meshes with their animation
- Parse puppet attachments as real MDAT records
- Deliver each property batch to a listener once
- Compose puppet bones through their parent chain
- Let a combo stand in for a boolean condition
- Look where macOS keeps Steam
- Keep the power watcher and soak off the linux-only path
- Cover every screen when none matches the filter
- Keep the frame-based web path off macOS
- Quiet dead code that only the Linux run path uses
- Give wgpu the AppKit display handle
- Supply matrix inverse instead of the builtin
- Clamp render targets to the gpu texture limit
- Rebuild the wallpaper when a property needs it
- Close the socket after each reply
- Keep taking commands while the desktop is hidden
- Drop a pending rebuild when the wallpaper changes
- Draw a swapped wallpaper and refuse what cannot swap
- Keep the wallpaper up when a swap cannot be built
- Never freeze a wallpaper that is covered
- Keep the Linux-only test and example off other platforms
CI/CD
- Delete the artifacts once the draft holds the binaries
- Build macOS releases on GitHub runners
- Give the macOS build its shader compiler deps
- Build macOS on the hosted arm runner only
- Link macOS against a stable ffmpeg path
Documentation
- Say how to open the unnotarized macOS build
- How to build and allow kirie on macOS
Features
- Render a wallpaper into a socket, live
- Parse MDLV0013 puppet meshes
- Honour the object render-debug filters
- Refuse a scene when the base assets are missing
- Screenshot web wallpapers with the webview backend
- Put wallpapers on the desktop with AppKit
- Show web wallpapers on the desktop with WKWebView
- Control socket, playback speed and wallpaper sound
- Swap web wallpapers in place, no restart
- Keep staged properties for the wallpaper they belong to
- Ask a running renderer one command
- Say why a wallpaper was refused
- Follow the pointer and let wallpapers take clicks
Other
- Remove all comments
- Format the puppet and object-filter changes
- Format the audio and compat split
Performance
- Give the wallpaper back when nobody is watching
- Pace the wallpaper for battery and idle
- Honour a renderer's redraw hint
Refactoring
- Drop the scanner MDAT records replaced
- Keep wayland and x11 to linux targets
- Keep pulseaudio and glibc calls to linux
- Split the offscreen paths from the wayland run loop
Tests
- Give the corpus scene the new object filters
- Move the version tripwire to 4
Downloads
All assets are standalone executables — download, chmod +x, run.
| File | Variant |
|---|---|
kirie-linux-x86_64 |
scenes + video + images |
kirie-web-cef-linux-x86_64 |
+ web wallpapers, bundled Chromium (self-extracting, no system deps) |
kirie-web-webview-linux-x86_64 |
+ web wallpapers via the system webkit, presented natively on the compositor's background layer. One file — the webkit host is built in. Needs webkit2gtk-4.1, libsoup3, gtk-layer-shell installed; web items are Wayland-only. |
kirie-macos-aarch64 |
Apple Silicon — scenes, video, images, and web wallpapers through the system WebKit. Needs brew install ffmpeg, and xattr -d com.apple.quarantine kirie-macos-aarch64 once, since it is not notarized. |
v0.5.0
Bug Fixes
- Survive a half-uploaded asset from a cancelled run
- A workshop directory without a manifest is not an item
Features
- Report where Wallpaper Engine's assets are
Downloads
All assets are standalone executables — download, chmod +x, run.
| File | Variant |
|---|---|
kirie-linux-x86_64 |
scenes + video + images |
kirie-web-cef-linux-x86_64 |
+ web wallpapers, bundled Chromium (self-extracting, no system deps) |
kirie-web-webview-linux-x86_64 |
+ web wallpapers via the system webkit, presented natively on the compositor's background layer. One file — the webkit host is built in. Needs webkit2gtk-4.1, libsoup3, gtk-layer-shell installed; web items are Wayland-only. |