Code Monkey home page Code Monkey logo

nix-flake-templates's Introduction

Nix Templates

Templates I use for setting up language-specific development environments, based on Nix flakes.

To use these templates, run:

Golang

mkdir my-go-proj && cd my-go-proj

# For Golang
nix flake init -t github:chzerv/nix-flake-templates#go

go mod init github.com/<username>/my-go-proj

Tip

# Build the project
nix build

Rust

  • Fenix for installing toolchains and rust-analyzer
  • Crane for building the project
    • Let's us build the project's dependencies in a separate step and thus, avoid rebuilding them whenever we build the project
  • Treefmt for project-wide formatting
mkdir my-crate && cd my-crate
nix flake init -t github:chzerv/nix-flake-templates#typst

cargo init
cargo generate-lockfile

Tip

# Build the project (Cargo.toml and Cargo.lock must be already generated!)
nix build

# Clippy and cargo-audit
nix flake check

# Project-wide formatting
nix fmt

Gleam

Simple template that just installs Gleam, Erlang and rebar3, according to the Gleam docs

mkdir my-gleam-proj && cd my-gleam-proj
nix flake init -t github:chzerv/nix-flake-templates#gleam

gleam new .

Terraform

mkdir my-tf-proj && cd my-tf-proj
nix flake init -t github:chzerv/nix-flake-templates#terraform

LaTeX

mkdir my-latex-proj && cd my-latex-proj
nix flake init -t github:chzerv/nix-flake-templates#latex

Typst

mkdir my-typst-proj && cd my-typst-proj
nix flake init -t github:chzerv/nix-flake-templates#typst

TODO

  • Rust
  • Python
  • Ansible
  • Terraform

nix-flake-templates's People

Contributors

chzerv avatar

Stargazers

Sherif Abdalla avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.