Skip to content

Latest commit

 

History

History
48 lines (34 loc) · 1.17 KB

README.md

File metadata and controls

48 lines (34 loc) · 1.17 KB

Snowflake

Snowflake is a language-agnostic build system that aims to implement caching correctly.

Highlights

  • Robust caching mechanism based on cryptographic hashes.
  • Language-agnostic build system with no assumed conventions.
  • Configurable with highly expressive Perl programming language.
  • Built on a small number of simple core concepts.

Installation

As with all software, Snowflake is best installed with Nix. The file default.nix in this repository evaluates to a derivation that builds a self-contained Snowflake executable in the Nix store.

Example

For an example, see the example directory. The example directory contains a file build.pl which you may pass to Snowflake as shown in figure 1. This will build the example source code, yielding an executable in build/artifact/hello.

Figure 1:

snowflake example/build.pl

License

You are licensed to redistribute and use Snowflake under the terms of the 3-Clause BSD License. See the file COPYING.md for more information.