devenvious 0.1.0

Apply & update git-based devenv templates
# Docs: https://devenv.sh/basics/
{ pkgs, ... }: {

  languages = {
    # Docs: https://devenv.sh/languages/
    nix.enable = true;
    rust = {
      enable = true; # https://github.com/cachix/devenv/blob/main/src/modules/languages/rust.nix
      channel = "beta"; # = nightly
    };
  };

  packages = with pkgs; [
    # Search for packages: https://search.nixos.org/packages?channel=unstable&query=cowsay
    # (note: this searches on unstable channel, be aware your nixpkgs flake input might be on a release channel)
    cargo-watch
    watchexec # HACK: https://github.com/watchexec/watchexec/issues/459
    bacon
    go-task

    openssl # required for reqwest
  ];

  scripts = {
    # Docs: https://devenv.sh/scripts/
    #cr.exec = ''cargo run'';
  };

  difftastic.enable = true; # https://devenv.sh/integrations/difftastic/

  pre-commit.hooks = {
    # Docs: https://devenv.sh/pre-commit-hooks/
    # available pre-configured hooks: https://devenv.sh/reference/options/#pre-commithooks
    # adding hooks which are not included: https://github.com/cachix/pre-commit-hooks.nix/issues/31
    nil.enable = true; # nix check
    nixpkgs-fmt.enable = true; # nix formatting

    clippy.enable = true;
    #cargo-check.enable = true; ← if you don't want clippy
  };
}