WindowsmacOSLinux

Where Does Nickel Store Configs and Cache?

Nickel language configs and package cache on desktop OSes, contracts plus imports.

Last updated

Nickel (Tweag) evaluates .ncl configuration files with contracts. Project sources live in the repo. Fetched packages cache under the user cache home per OS.

The cache layout follows platform conventions like other toolchains. Back up sources and manifests. Clear the cache when imports stale, not the contracts.

Where Nickel stores this, by platform

Windows
%LOCALAPPDATA%\nickel\cache

Project .ncl sources plus manifest belong in git. Cache under LocalAppData rebuilds on eval. Pin versions for stable outputs.

macOS
~/Library/Caches/nickel

Same project relative layout. Cache clears safely when imports misbehave. Contracts carry the logic.

Linux
~/.cache/nickel

Respects XDG cache home. Sources stay in the repo. Cache size grows with dependency graphs.

Frequently asked questions

What do I back up for Nickel?

Commit .ncl files and the package manifest to git. Cache rebuilds from imports. Contracts are the durable logic, cache is disposable.

Where does Nickel fetch packages?

Check the project inputs directory and the user cache home. Imports fetch on first eval. Pin versions in the manifest for reproducible runs.

Notice an outdated path? Let us know.