about summary refs log tree commit diff stats


nix snowflake logo
nix flake templates — just one `nix flake init`

Quick start

Add this flake to your flake registry, for example on NixOS like this:

# services/nix/default.nix
nix.registry = {
    t.flake = nix_flake_templates;
};

Then you can just create a new directory and run nix flake init -t t#<template-name> and run the init script, like so:

mkdir lfcd
cd lfcd

# initialize the template
nix flake init -t t#rust

# set the executable bit on the `init` script and run it to populate the meta-data.
chmod +x ./init && ./init

Supported templates

These are the actively supported templates (i.e. they are updated, whence I update my process.). The key features of these templates have been highlighted.

awk

c

  • Makefile with build directory support

latex

  • lpm and a file heavy structure included, to ensure visibility of the document structure at an FS level
  • build.sh script to automate the building process

rust

  • Cargo.toml and cog.toml already pre-populated with the values from the init script to allow a release on crates.io.

shell

License

Unless explicitly stated otherwise, any contribution intentionally submitted for inclusion will be licensed under the GPL-3.0-or-later License. Beware that this license only affects the code in this repository, not the generated templates nor the general inclusion in your flake.