Repository navigation
Releases: 0then0/spacemosaic
Release list
SpaceMosaic v0.3.0
SpaceMosaic v0.3.0 adds adaptive scan memory management.
- Automatic budgets use device memory, available platform limits and reserves for other app work. Manual budgets accept 16–4096 MiB and still stop under critical memory pressure.
- Fixed scan object caps are replaced by memory admission checks. Interrupted scans retain partial results, unknown sizes and explicit stop reasons.
- Diagnostics distinguish estimated scanner allocations from measured process memory. Settings and explanations are translated into all seven supported languages.
- Native mobile settings and separate-folder scans are updated; wide-directory sorting avoids duplicate work.
- Linux sampler visibility and Windows cgroup test fixtures are fixed.
Compatibility: JSON exports use schema 3; schemas 1 and 2 remain readable. Older applications reject schema 3. CSV histogram exports use schema 2. Saved-file import retains independent size/object limits, so a sufficiently large new scan may export successfully but exceed reopening limits.
Memory budgeting is heuristic, not an OOM guarantee. Very wide result directories may still pause during initial index preparation. Native low-memory/provider behavior has not been qualified on physical mobile devices.
Downloads include Windows, Linux and macOS desktop packages, a release-signed Android APK (versionCode 9), unsigned iOS simulator/device build archives, and a source archive. macOS uses local ad-hoc signing, not Developer ID notarization; unsigned iOS device builds require your own provisioning. Build success does not establish device runtime qualification.
Verify downloaded files against SHA256SUMS. Android keeps the v0.2.0 release signing certificate; no signing-key rotation is performed.
SpaceMosaic v0.2.0
SpaceMosaic 0.2.0 adds saved results and change comparison.
- Open an exported JSON result with the system file dialog on desktop, Android and iOS. The folder is not read again, the result is marked as a saved snapshot, and unknown sizes, errors and partial-scan flags are kept. Locations stored in the file are never opened, revealed or rescanned.
- Compare a saved baseline with a new scan of the same area: explicit direction, text-labelled statuses (added, missing now, grew, shrank, same size, type changed, change unknown), search, filters, sorting by largest growth or decrease, list and folder tree, and a jump to the object in either result.
- Totals separate additions, removals and changes of existing objects and never add a folder together with its contents. When part of the comparison is unknown, a confirmed change is shown instead of a total. Absence counts only where the other result listed the parent folder completely. There is no rename or move detection, and equal sizes do not prove unchanged contents.
- Exports are now schema 2 (scope identity and per-folder listing state); schema 1 files still open, without gaining precision. Import is size-, object- and memory-bounded, validated, background and cancellable.
- Updated to egui/eframe 0.37 on all platforms.
Android retains the release signing identity of earlier releases, with versionCode 8. Windows packages are unsigned and macOS bundles are ad-hoc signed. iOS device builds require provisioning and signing; the simulator archive is separate. The source archive includes the Xcode project.
Not yet verified: the new screens on physical Android and iOS devices (builds and automated tests pass; no device or desktop visual acceptance was performed), and screen readers. See docs/testing.md for the acceptance steps.
Verify downloads with SHA256SUMS.
SpaceMosaic v0.1.2
SpaceMosaic 0.1.2 improves the phone interface and Android text input.
- Keep screens inside system safe areas and increase secondary text size.
- Use a native Android search editor for multilingual keyboard composition.
- Display readable Unicode locations while preserving original URIs for copy, native actions and exports.
- Explain unavailable allocated-space metadata and retain logical file sizes when the provider does not supply it.
Android retains the release signing identity used by 0.1.0 and 0.1.1, with versionCode 7. Earlier debug APKs may require a one-time reinstall, which removes settings and persisted grants. The phone fixes have automated validation; they have not yet been revalidated on a physical device. The earlier Pixel 8 / Android 17 report does not establish acceptance of these changes.
Windows packages are unsigned and macOS bundles are ad-hoc signed. iOS device builds require provisioning and signing; the simulator archive is separate. The source archive includes the Xcode project.
Verify downloads with SHA256SUMS.
SpaceMosaic v0.1.1
SpaceMosaic 0.1.1 improves browsing on phones with a folder-selection start screen and a compact Files/Map workspace.
- Open folders with one tap and compare sizes with proportional bars.
- Find settings, export and scan information under More.
- Read provider folder names in navigation; original URIs remain available in details and exports.
- Open file-type statistics from either view, use correct root totals for global search, and cancel repeat folder selections with Back.
Android uses the same release signing identity as 0.1.0, with versionCode 6. Earlier debug APKs may require a one-time reinstall, which removes settings and persisted grants. Desktop installers remain unsigned or ad-hoc signed as documented. iOS device builds require provisioning and signing; simulator builds are separate.
The new phone layout has automated and desktop-rendered validation. Its Android/iOS device interactions have not yet been revalidated on hardware. The earlier Pixel 8 / Android 17 report applies to the previous UI.
See SHA256SUMS for download verification.
Build provenance: desktop artifacts and source use commit 177e1b0 (CI run 40923982519). iOS artifacts use commit bcfffe1 (successful iOS job in run 40922988618); subsequent changes affect desktop packaging/tests only. The signed Android artifact uses commit 17db6fb (run 40922173876); subsequent changes affect packaging validation on other platforms only. Application source is identical across these commits.
SpaceMosaic v0.1.0
SpaceMosaic 0.1.0 is the first regular release of the local, read-only storage explorer.
Explore your storage
Choose a folder, expand its directory tree, and explore an interactive, colored treemap. Find the largest files, sort file types by extension, known size or count, and search a completed result without rescanning. Breadcrumbs identify the current path; small map items open a complete searchable list. Language, appearance and desktop window geometry persist between sessions.
The application supports English, Russian, Spanish, German, French, Japanese and Brazilian Portuguese, system/light/dark appearance, and JSON/CSV export. Scanning is cancellable and runs outside the UI. Missing metadata, access errors and resource limits produce explicitly partial results rather than misleading totals. No deletion or cleanup commands are included.
Android distribution
This release includes spacemosaic-release.apk, signed with the owner's persistent signing identity, with application ID dev.spacemosaic and versionCode 5. Future APKs signed with that identity and a higher versionCode can update it in place. The certificate SHA-256 is:
2ac32743e1923d1dd6dc13d83e56b489becd0b8785dc1bee01fc27e66cd4e3da
Moving from a published alpha debug APK: alpha.2 and alpha.3 were signed with different debug keys. They cannot be updated in place by this release. Export any wanted results, explicitly uninstall the old app once, then install this APK and select your folders again. Uninstalling clears app preferences and retained folder URI grants; SpaceMosaic does not automatically uninstall or clear data. The separately shared release-signed CI APK with code 4 has the same certificate as this release.
Signature and version compatibility have been verified; settings and SAF-grant retention across an actual A-to-B installation have not been runtime-tested. The user has reported relatively stable operation on Pixel 8 with Android 17. That report does not establish screen-reader or every-provider acceptance.
Downloads
- Windows x86-64: run
spacemosaic-windows-amd64-setup.exefor a per-user installation, or extract the portable ZIP and runspacemosaic.exe. The executable and installer are not Authenticode signed. - macOS Apple Silicon: open the DMG and drag SpaceMosaic to Applications, or extract the ZIP. The app is ad-hoc signed, without Developer ID signing or notarization.
- Linux x86-64: install the Ubuntu 24.04 DEB with
sudo apt install ./spacemosaic-linux-x86_64.deb, or extract a portable TAR.GZ/ZIP. Compatible system libraries are still required. - Android 8.0+: install
spacemosaic-release.apkwith the system installer oradb install -r. The APK contains arm64-v8a and x86_64 libraries. - iOS 16+: the device ZIP contains an unsigned app requiring provisioning and signing in Xcode. The simulator ZIP is for Apple Silicon.
spacemosaic-source.zipincludes the reproducible Xcode project and Rust sources. An unsigned device archive cannot be installed on an arbitrary iPhone.
Download SHA256SUMS beside the files you want and verify them with:
shasum -a 256 -c --ignore-missing SHA256SUMSandroid-release-metadata.json records the Android package version, certificate fingerprint and APK hash.
Scope and known limits
The release number does not certify every platform scenario. macOS arm64 has runtime verification; Windows 11 and Pixel 8/Android 17 have user-reported testing. Linux and iOS runtime acceptance, VoiceOver/TalkBack, provider failures and lifecycle scenarios remain incomplete. Consult the repository's testing documentation for the distinction between build checks and runtime evidence.
Mobile analysis is limited to the folder tree granted by the system picker, not the whole device. Cloud file contents are not downloaded to obtain sizes. Scans of live filesystems are not atomic snapshots. Logical file sizes are not guaranteed reclaimable space; hard links are counted per path and shared CoW blocks are not deduplicated. Node/memory limits and unavailable metadata are reported explicitly.
Built from commit 51d7e9bac6736ba807c699d3b1818348c7acd3c1:
SpaceMosaic v0.1.0-alpha.3
SpaceMosaic alpha.3 improves navigation, partial-scan reporting, and platform packaging. Downloads are available for Windows, macOS, Linux, Android, and iOS.
Changes since alpha.2
- Unknown sizes no longer look like verified zero-byte objects. Partial results distinguish cancellation, object limits, and metadata memory limits. Desktop object details can start a separate scan of an incomplete folder.
- Language and appearance preferences survive restarting, including System mode. Desktop window size, position, and maximized state are retained. Failed settings writes show a notice and use throttled retries.
- Smaller items opens its entire virtualized group list in one action, with search, sorting, and Back navigation.
- File-type columns support ascending and descending sorting. Column widths stay stable during scrolling.
- Breadcrumbs use a labeled path bar with separators and ancestor links. Long paths scroll horizontally; Back remains a separate action. The map divider is easier to discover and drag in both themes.
- Android has adaptive, round, and monochrome launcher icons. Phone toolbars keep exports in a compact menu; Settings accounts for system insets and provides Close and Back actions.
- Windows now includes a per-user Setup.exe with Start menu shortcuts and an uninstaller. Release executables no longer open a console window.
Downloads and installation
Download SHA256SUMS alongside the packages you need. Verify downloads with shasum -a 256 -c --ignore-missing SHA256SUMS, or use Get-FileHash -Algorithm SHA256 on Windows.
- Windows x86-64: run
spacemosaic-windows-amd64-setup.exe, or extract the complete portable ZIP. The installer does not require administrator rights. Packages have no Authenticode signature. - macOS Apple Silicon: open the DMG and copy SpaceMosaic.app to Applications, or extract the ZIP. The app is ad-hoc signed without Developer ID or notarization; first launch may require approval in System Settings → Privacy & Security.
- Linux x86-64: the DEB targets Ubuntu 24.04. TAR.GZ and ZIP portable packages are also included; system graphics libraries are still required.
- Android 8.0+: the experimental debug APK contains arm64-v8a and x86_64 builds. Debug signing keys may differ between CI runs, so replacing an older test installation can require uninstalling it first, which clears its settings and retained access grants.
- iOS 16+: the simulator ZIP contains an Apple Silicon simulator app. The device ZIP is unsigned and requires provisioning and signing in Xcode before installation on a physical iPhone. The source ZIP includes the reproducible Xcode project and Rust sources.
Verification and limitations
Release source: 8732c00. Packages come from the CI run for that exact commit, which checks Rust formatting, Clippy, tests, desktop packages, Android APK, and iOS simulator/unsigned device builds. Windows package checks include installation and uninstallation with preservation of an unrelated file.
macOS arm64 has prior runtime verification. Windows 11 and Pixel 8/Android 17 testing of alpha.2 exposed issues addressed here, but alpha.3 has not been retested on those physical devices. Linux and mobile runtime qualification, real provider/lifecycle scenarios, VoiceOver, and TalkBack remain open. Successful compilation does not establish device support.
Scans inspect metadata within the accessible selected scope. They are not atomic snapshots or measurements of guaranteed reclaimable space. Unknown metadata remains unknown; hard links count per path, shared CoW blocks are not deduplicated, and links are not followed. Default resource limits remain in place.
Apple bundles use marketing version 0.1.0, build 3; Android uses version code 3. The application version is 0.1.0-alpha.3.
SpaceMosaic v0.1.0-alpha.2
This alpha adds permanent release downloads for Windows, macOS, Linux, Android, and iOS, plus installer/package validation and a shared SHA-256 manifest.
Downloads
| Platform | Architecture | Files | Status |
|---|---|---|---|
| Windows | x86-64 | spacemosaic-windows-amd64.zip |
Portable, unsigned, experimental |
| macOS | Apple Silicon (arm64) | spacemosaic-darwin-arm64.dmg, spacemosaic-darwin-arm64.zip |
Ad-hoc signed alpha |
| Linux | x86-64, Ubuntu 24.04 build | spacemosaic-linux-x86_64.deb, spacemosaic-linux-x86_64.tar.gz, spacemosaic-linux-x86_64.zip |
Installer and portable formats, experimental |
| Android 8.0+ | arm64-v8a / x86_64 | spacemosaic-debug.apk |
Installable test APK, debug signed, experimental |
| iOS 16+ | arm64 | spacemosaic-simulator.zip, spacemosaic-device.zip |
Simulator app and unsigned device app, experimental |
Download SHA256SUMS alongside your selected files and verify them with:
shasum -a 256 -c --ignore-missing SHA256SUMSOn Windows, use Get-FileHash -Algorithm SHA256 <file> and compare the result with the manifest. Every binary download is attached directly to this release, independently of GitHub Actions artifact retention. The checksummed spacemosaic-source.zip includes the Xcode project, Rust sources, pinned dependencies, and build instructions.
Install or run
- Windows: extract the complete portable ZIP and run
spacemosaic.exe. The executable has no Authenticode signature. - macOS: open the DMG and drag
SpaceMosaic.apponto its Applications shortcut, or run the app from the extracted ZIP. The app is ad-hoc signed, without Developer ID signing or notarization. macOS may require approval in System Settings → Privacy & Security after the first launch attempt. - Linux: on Ubuntu 24.04, install the DEB with
sudo apt install ./spacemosaic-linux-x86_64.deb. Alternatively, extract a portable archive and runspacemosaic. Portable builds still require compatible system libraries; the DEB declares their dependencies. - Android: install the APK with Android's package installer or
adb install spacemosaic-debug.apk. CI debug signing keys can differ between builds, so in-place updates from an earlier test APK are not guaranteed. - iOS simulator: extract the simulator ZIP, then use
xcrun simctl install booted SpaceMosaic.appon an Apple Silicon Mac with a compatible booted simulator. - iPhone/iPad: the device ZIP is unsigned and cannot be installed as a generic IPA. Physical-device deployment requires provisioning and signing. Build the source Xcode project with your own development team and signing configuration; no personal certificates or provisioning secrets are included.
Changes since alpha.1
- Added macOS DMG packaging with an Applications shortcut and notices retained inside the installed app.
- Added Linux DEB and TAR.GZ packaging, a desktop launcher, icon, and explicit runtime dependencies.
- Published the existing Windows portable ZIP, Android APK, and separate iOS build archives as release assets.
- Included dependency notices covering all release target triples and bundled-font licenses in desktop/mobile packages.
- Added checks for checksums, portable archive contents, DMG mounting/app signatures, Debian paths/ownership/version ordering, APK signatures and ABIs, and iOS version/resource metadata.
- Updated the package version to
0.1.0-alpha.2; Apple bundles use marketing version0.1.0, build2.
Verification and limitations
The artifacts come from the CI run for source commit 6833a08. CI checks format, Clippy, Rust tests, desktop packages, Android APK, and iOS simulator/unsigned device builds.
Runtime verification remains limited to macOS arm64. Windows/Linux application flows, real mobile providers, lifecycle behavior, physical devices, VoiceOver, and TalkBack still require acceptance testing. Package validation establishes the contents and integrity of a build, not full runtime or accessibility qualification.
SpaceMosaic stays read-only and runs with ordinary user permissions. It measures accessible selected trees, not total device usage or guaranteed reclaimable space. Scans are live observations; unknown metadata, permission failures, cancellation, and resource limits can produce partial results.
See the README, changelog, and verification status.
SpaceMosaic v0.1.0-alpha.1
SpaceMosaic's first alpha provides local, read-only storage exploration for macOS on Apple Silicon (arm64). It helps you inspect an accessible folder without changing its files.
Download and launch
- Download
spacemosaic-darwin-arm64.zipandSHA256SUMSinto the same directory. - Verify the archive with
shasum -a 256 -c SHA256SUMS. - Extract the ZIP and open
spacemosaic-darwin-arm64/SpaceMosaic.app.
The application is ad-hoc signed, without Developer ID signing or notarization. macOS may require approval in System Settings → Privacy & Security after the first launch attempt. No personal signing certificates are included.
The ZIP includes the project license, bundled-font licenses, and third-party dependency notices. GitHub's source archives contain the complete project and reproducible mobile build configuration.
Available in this alpha
- Background scanning with progress, cancellation, explicit partial results, and resource limits.
- An expandable directory tree above an interactive, colored treemap, with synchronized selection, folder navigation, and grouped small items.
- Largest-file and file-type views, result search, name/size sorting, object details, copying paths, and system file-manager actions.
- Versioned JSON exports and CSV file-type summaries through system save dialogs.
- System, light, and dark appearance; seven interface languages; offline Japanese glyphs.
There are no accounts, telemetry, cleanup actions, or deletion tools.
Verification and limitations
Release source: f337e1d. The download comes from the CI run for that exact commit, which checks format, Clippy, Rust tests, desktop packaging, Android APK, and iOS simulator/unsigned device builds.
- Runtime verification is limited to macOS arm64, with local testing on macOS 15.7.9. macOS package checks cover its version metadata, icon resources, archive contents, and code-signature seal.
- Windows, Linux, Android, and iOS remain experimental. Their build artifacts are available from the linked CI run, but are not qualified release downloads. Mobile recursion and export are implemented; real provider, lifecycle, VoiceOver, and TalkBack acceptance testing remains outstanding. Android CI produces a debug APK. The unsigned iOS device build requires provisioning and signing before installation on a physical device.
- Known file sizes describe the selected scope, not whole-device use or guaranteed reclaimable space. Unknown measurements stay unknown. Hard links count per path; shared APFS/CoW blocks are not deduplicated. Links are not followed.
- A live scan is not an atomic filesystem snapshot. Access failures, disappearing files, cancellation, and limits can produce partial results. Desktop scans stop at 500,000 objects or an estimated 256 MiB of stored metadata; this is not a total-process memory limit.
- Appearance, language, and text-size choices currently last for the application session. UI latency under large interactive workloads and full screen-reader coverage remain unqualified.
Apple bundles use marketing version 0.1.0, build 1; the prerelease identifier is 0.1.0-alpha.1.
See the README, verification status, and changelog for details.