Compare commits

..

3 Commits

Author SHA1 Message Date
4089851fc8 Add direnv config 2023-12-14 14:27:27 +00:00
7097e19d40 Add Nix flake for development environment 2023-12-14 14:27:27 +00:00
16b92f4c34 Flesh out README a little 2023-12-14 14:20:11 +00:00
4 changed files with 76 additions and 5 deletions

1
.envrc Normal file
View File

@@ -0,0 +1 @@
use flake

View File

@@ -6,14 +6,16 @@ area for a solution as well as the tests.
## Set Up ## Set Up
To get started, create a fork of this repo on your own account (with To get started, create a fork of this repo on your own account, then
the "Fork" button in the top-left of the Gitea page"), then clone it, clone it, passing the `--recursive` flag. If you already cloned it
passing the `--recursive` flag. If you already cloned it without without passing `--recursive`, you can run `git submodule update
passing `--recursive`, you can run `git submodule update --init` to --init` to fix it.
fix it.
```sh ```sh
git clone --recursive git@git.wip.sh:<your-username>/lua-exercises.git git clone --recursive git@git.wip.sh:<your-username>/lua-exercises.git
# or
git clone git@git.wip.sh:<your-username>/lua-exercises.git
git submodule update --init
``` ```
## Doing the Exercises ## Doing the Exercises

40
flake.lock generated Normal file
View File

@@ -0,0 +1,40 @@
{
"nodes": {
"flake-schemas": {
"locked": {
"lastModified": 1697467827,
"narHash": "sha256-j8SR19V1SRysyJwpOBF4TLuAvAjF5t+gMiboN4gYQDU=",
"rev": "764932025c817d4e500a8d2a4d8c565563923d29",
"revCount": 29,
"type": "tarball",
"url": "https://api.flakehub.com/f/pinned/DeterminateSystems/flake-schemas/0.1.2/018b3da8-4cc3-7fbb-8ff7-1588413c53e2/source.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://flakehub.com/f/DeterminateSystems/flake-schemas/%2A.tar.gz"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1702346276,
"narHash": "sha256-eAQgwIWApFQ40ipeOjVSoK4TEHVd6nbSd9fApiHIw5A=",
"rev": "cf28ee258fd5f9a52de6b9865cdb93a1f96d09b7",
"revCount": 553141,
"type": "tarball",
"url": "https://api.flakehub.com/f/pinned/NixOS/nixpkgs/0.2311.553141%2Brev-cf28ee258fd5f9a52de6b9865cdb93a1f96d09b7/018c652c-2ff2-777b-bade-dae9c2abe1e1/source.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://flakehub.com/f/NixOS/nixpkgs/%2A.tar.gz"
}
},
"root": {
"inputs": {
"flake-schemas": "flake-schemas",
"nixpkgs": "nixpkgs"
}
}
},
"root": "root",
"version": 7
}

28
flake.nix Normal file
View File

@@ -0,0 +1,28 @@
{
description = "Environment for Lua programming exercises";
inputs = {
flake-schemas.url = "https://flakehub.com/f/DeterminateSystems/flake-schemas/*.tar.gz";
nixpkgs.url = "https://flakehub.com/f/NixOS/nixpkgs/*.tar.gz";
};
outputs = { self, flake-schemas, nixpkgs }:
let
supportedSystems = [
"x86_64-linux"
"aarch64-darwin"
"x86_64-darwin"
"aarch64-linux"
];
forEachSupportedSystem = f: nixpkgs.lib.genAttrs supportedSystems (system: f {
pkgs = import nixpkgs { inherit system; };
});
in {
schemas = flake-schemas.schemas;
devShells = forEachSupportedSystem ({ pkgs }: {
default = pkgs.mkShell {
name = "lua-exercises";
packages = with pkgs; [ git lua ];
};
});
};
}