lltexturecache-browser-qt is a cross-platform tool to browse and export textures from the second life texture cache.
this application is useful if you want to mod existing assets on second life, like character clothing and the author does not provide a texture to download.
lltexturecache-browser-qt only reads what is stored in your cache files. it is not a copybot and should not be used to steal assets.
the app's icon, slcachegirl, is designed by @sferics32.bsky.social.
- browse and filter through a large amount of textures
- find a texture by a screenshot
- save to disk in commonly-used image formats
- drag and drop support
- it's fast
- it's not an electron app
windows, linux and mac builds are attached to
each release.
on mac, open the .dmg and drag the app into Applications.
on mac, you may install with homebrew:
brew install --cask furudean/tap/lltexturecache-browser-qt| platform | runs on |
|---|---|
| mac | macos 15 sequoia or later, apple silicon |
| windows | windows 10 or later, x86-64 |
| linux | glibc 2.35 or later (ubuntu 22.04+), x86-64 |
intel macs are not built for.
to run from source or build your own, see develop and build.
use uv to run the app in a development context
uv run lltexturecache-browser-qta script makes the app for the host platform. mac gets a .app windows
.exe and linux a binary/AppImage. cross-compiling is not supported.
./scripts/build.sh| needs | on | for |
|---|---|---|
uv |
all | running the build |
patchelf |
linux | nuitka to fix up the rpaths of the bundled qt libraries |
libxcb-cursor0 |
linux | nuitka to have a copy to bundle into the binary |
none of it is needed to run the result
publishing a github release builds for all platforms and attaches the binaries
to it. write what changed under the ## unreleased heading in CHANGELOG.md
first, then run:
./scripts/release.sh major|minor|patchthe script will
- bump the version
- retitle
## unreleasedin CHANGELOG.md to the version and date being released - commit that along with the bump, and tag it
- push
- create the release with notes from the changelog
the release triggers a github workflow. which does the rest
signing needs a developer ID Application certificate in a keychain the signing machine can read, plus the environment below. then
./scripts/build.sh
./scripts/macos-sign.sh
./scripts/package.shmacos-sign.sh re-signs the bundle with the hardened
runtime, notarizes and staples it; package.sh then makes
the .dmg with another notarization pass.
notarization is skipped when the credentials are unset, so it degrades to a
plain signing step. in CI macos-keychain.sh runs
first to make a throwaway keychain out of MACOS_CERTIFICATE.
| variable | is a | needed |
|---|---|---|
MACOS_SIGN_IDENTITY |
e.g. Developer ID Application: Your Name (TEAMID) |
signing |
APPLE_ID |
Apple ID the app-specific password belongs to | notarization |
APPLE_APP_PASSWORD |
app-specific password | notarization |
APPLE_TEAM_ID |
last part of MACOS_SIGN_IDENTITY | notarization |
MACOS_CERTIFICATE |
developer id application certificate as .p12, base64 encoded |
keychain in CI |
MACOS_CERTIFICATE_PASSWORD |
password the .p12 was exported with |
keychain in CI |
- SLCacheViewer (Windows only)
