From 97dff5137acb012fb3cfe6df4b25fe28f2aa7a49 Mon Sep 17 00:00:00 2001 From: Henri Bourcereau Date: Wed, 30 Nov 2022 16:15:03 +0100 Subject: [PATCH] devenv with rust --- .envrc | 4 ++ .gitignore | 6 +- .pre-commit-config.yaml | 1 + README.md | 8 ++- devenv.lock | 138 ++++++++++++++++++++++++++++++++++++++++ devenv.nix | 26 ++++++++ devenv.yaml | 3 + 7 files changed, 181 insertions(+), 5 deletions(-) create mode 100644 .envrc create mode 120000 .pre-commit-config.yaml create mode 100644 devenv.lock create mode 100644 devenv.nix create mode 100644 devenv.yaml diff --git a/.envrc b/.envrc new file mode 100644 index 0000000..5dae8de --- /dev/null +++ b/.envrc @@ -0,0 +1,4 @@ +watch_file devenv.nix +watch_file devenv.yaml +watch_file devenv.lock +eval "$(devenv print-dev-env)" \ No newline at end of file diff --git a/.gitignore b/.gitignore index 088ba6b..3f67872 100644 --- a/.gitignore +++ b/.gitignore @@ -2,9 +2,7 @@ # will have compiled files and executables /target/ -# Remove Cargo.lock from gitignore if creating an executable, leave it for libraries -# More information here https://doc.rust-lang.org/cargo/guide/cargo-toml-vs-cargo-lock.html -Cargo.lock - # These are backup files generated by rustfmt **/*.rs.bk +.devenv* +devenv.local.nix diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml new file mode 120000 index 0000000..f42ae13 --- /dev/null +++ b/.pre-commit-config.yaml @@ -0,0 +1 @@ +/nix/store/kz9rvg242p5cpk4x5ybbfafnaixmqbp9-pre-commit-config.json \ No newline at end of file diff --git a/README.md b/README.md index 5390c0e..084267b 100644 --- a/README.md +++ b/README.md @@ -1 +1,7 @@ -# trictrac \ No newline at end of file +# trictrac + +Game of [Trictrac](https://en.wikipedia.org/wiki/Trictrac) in rust. + +wip + + diff --git a/devenv.lock b/devenv.lock new file mode 100644 index 0000000..ce59abe --- /dev/null +++ b/devenv.lock @@ -0,0 +1,138 @@ +{ + "nodes": { + "devenv": { + "locked": { + "dir": "src/modules", + "lastModified": 1669813939, + "narHash": "sha256-mtduxqCAkj8JbeYjYlT1q2UPztDHc5PRQAMtpKKb1bM=", + "owner": "cachix", + "repo": "devenv", + "rev": "a4f2babd1cebc10d3f33f9f1533e1ed092d7efde", + "type": "github" + }, + "original": { + "dir": "src/modules", + "owner": "cachix", + "repo": "devenv", + "type": "github" + } + }, + "flake-compat": { + "flake": false, + "locked": { + "lastModified": 1668681692, + "narHash": "sha256-Ht91NGdewz8IQLtWZ9LCeNXMSXHUss+9COoqu6JLmXU=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "009399224d5e398d03b22badca40a37ac85412a1", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, + "flake-utils": { + "locked": { + "lastModified": 1667395993, + "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "gitignore": { + "inputs": { + "nixpkgs": [ + "pre-commit-hooks", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1660459072, + "narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "a20de23b925fd8264fd7fad6454652e142fd7f73", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "gitignore.nix", + "type": "github" + } + }, + "nixpkgs": { + "locked": { + "lastModified": 1669750745, + "narHash": "sha256-C9ZNizmMiuML40Imt79rCoiMt1O4aM6TCg/ME1Uu/Q8=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "19a6b85e8f8daca80e38418e96247cc499e2640e", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-stable": { + "locked": { + "lastModified": 1668984258, + "narHash": "sha256-0gDMJ2T3qf58xgcSbYoXiRGUkPWmKyr5C3vcathWhKs=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "cf63ade6f74bbc9d2a017290f1b2e33e8fbfa70a", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-22.05", + "repo": "nixpkgs", + "type": "github" + } + }, + "pre-commit-hooks": { + "inputs": { + "flake-compat": "flake-compat", + "flake-utils": "flake-utils", + "gitignore": "gitignore", + "nixpkgs": [ + "nixpkgs" + ], + "nixpkgs-stable": "nixpkgs-stable" + }, + "locked": { + "lastModified": 1669807480, + "narHash": "sha256-MwIcNG1xqkqQSNcQC5x6bFb78/H3r+hc+p7U+Kf3BxM=", + "owner": "cachix", + "repo": "pre-commit-hooks.nix", + "rev": "84dc0bdabbcabf6617797fc43342429bf5bf663f", + "type": "github" + }, + "original": { + "owner": "cachix", + "repo": "pre-commit-hooks.nix", + "type": "github" + } + }, + "root": { + "inputs": { + "devenv": "devenv", + "nixpkgs": "nixpkgs", + "pre-commit-hooks": "pre-commit-hooks" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/devenv.nix b/devenv.nix new file mode 100644 index 0000000..ff02410 --- /dev/null +++ b/devenv.nix @@ -0,0 +1,26 @@ +{ pkgs, ... }: + +{ + # https://devenv.sh/basics/ + # env.GREET = "devenv"; + + # https://devenv.sh/packages/ + packages = [ pkgs.git ]; + + # enterShell = '' + # hello + # git --version + # ''; + + # https://devenv.sh/languages/ + languages.rust.enable = true; + + # https://devenv.sh/scripts/ + # scripts.hello.exec = "echo hello from $GREET"; + + # https://devenv.sh/pre-commit-hooks/ + pre-commit.hooks.shellcheck.enable = true; + + # https://devenv.sh/processes/ + # processes.ping.exec = "ping example.com"; +} diff --git a/devenv.yaml b/devenv.yaml new file mode 100644 index 0000000..9860f42 --- /dev/null +++ b/devenv.yaml @@ -0,0 +1,3 @@ +inputs: + nixpkgs: + url: github:NixOS/nixpkgs/nixpkgs-unstable \ No newline at end of file