feat: init

This commit is contained in:
Nick 2024-11-09 18:07:47 -06:00
commit be12403f13
6 changed files with 116 additions and 0 deletions

1
.envrc Normal file
View file

@ -0,0 +1 @@
use flake

1
.gitignore vendored Normal file
View file

@ -0,0 +1 @@
.direnv

57
flake.lock generated Normal file
View file

@ -0,0 +1,57 @@
{
"nodes": {
"flake-parts": {
"inputs": {
"nixpkgs-lib": "nixpkgs-lib"
},
"locked": {
"lastModified": 1730504689,
"narHash": "sha256-hgmguH29K2fvs9szpq2r3pz2/8cJd2LPS+b4tfNFCwE=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "506278e768c2a08bec68eb62932193e341f55c90",
"type": "github"
},
"original": {
"id": "flake-parts",
"type": "indirect"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1730785428,
"narHash": "sha256-Zwl8YgTVJTEum+L+0zVAWvXAGbWAuXHax3KzuejaDyo=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "4aa36568d413aca0ea84a1684d2d46f55dbabad7",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-lib": {
"locked": {
"lastModified": 1730504152,
"narHash": "sha256-lXvH/vOfb4aGYyvFmZK/HlsNsr/0CVWlwYvo2rxJk3s=",
"type": "tarball",
"url": "https://github.com/NixOS/nixpkgs/archive/cc2f28000298e1269cea6612cd06ec9979dd5d7f.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://github.com/NixOS/nixpkgs/archive/cc2f28000298e1269cea6612cd06ec9979dd5d7f.tar.gz"
}
},
"root": {
"inputs": {
"flake-parts": "flake-parts",
"nixpkgs": "nixpkgs"
}
}
},
"root": "root",
"version": 7
}

21
flake.nix Normal file
View file

@ -0,0 +1,21 @@
{
description = "Elm Environment";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
};
outputs = inputs @ {
flake-parts,
self,
...
}: let
system = "x86_64-linux";
in
flake-parts.lib.mkFlake {inherit inputs;} {
imports = [
./parts
];
systems = [system];
};
}

13
parts/default.nix Normal file
View file

@ -0,0 +1,13 @@
{
perSystem = {
pkgs,
lib,
config,
self',
...
}: {
imports = [
./devshells.nix
];
};
}

23
parts/devshells.nix Normal file
View file

@ -0,0 +1,23 @@
{pkgs, ...}: {
devShells = {
default = pkgs.mkShell {
packages = builtins.attrValues {
inherit
(pkgs)
alejandra
just
nil
;
inherit
(pkgs.elmPackages)
elm
elm-format
elm-land
elm-language-server
elm-review
elm-test
;
};
};
};
}