Add Haskell env
This commit is contained in:
parent
43df5c9b0b
commit
7d3513701f
10
README.md
10
README.md
|
@ -32,6 +32,7 @@ Once your preferred template has been initialized, you can use the provided shel
|
|||
| [Cue] | [`cue`](./cue/) |
|
||||
| [Dhall] | [`dhall`](./dhall/) |
|
||||
| [Elixir] | [`elixir`](./elixir/) |
|
||||
| [Elm] | [`elm`](./elm/) |
|
||||
| [Gleam] | [`gleam`](./gleam/) |
|
||||
| [Go] 1.17 | [`go1_17`](./go1.17/) |
|
||||
| [Go] 1.18 | [`go1_18`](./go1.18/) |
|
||||
|
@ -109,6 +110,11 @@ The sections below list what each template includes. In all cases, you're free t
|
|||
- [damon]
|
||||
- [Terragrunt] 0.37.0
|
||||
|
||||
### [`haskell`](./haskell/)
|
||||
|
||||
- [GHC][haskell] 9.0.2
|
||||
- [cabal] 3.6.2.0
|
||||
|
||||
### [`java`](./java)
|
||||
|
||||
- [Java] 17.0.3
|
||||
|
@ -191,6 +197,7 @@ All of the templates have only the root [flake](./flake.nix) as a flake input. T
|
|||
|
||||
[ant]: https://ant.apache.org
|
||||
[buf]: https://github.com/bufbuild/buf
|
||||
[cabal]: https://www.haskell.org/cabal
|
||||
[cachix]: https://www.cachix.org
|
||||
[cargo]: https://doc.rust-lang.org/cargo
|
||||
[cargo-audit]: https://crates.io/crates/cargo-audit
|
||||
|
@ -211,7 +218,8 @@ All of the templates have only the root [flake](./flake.nix) as a flake input. T
|
|||
[goimports]: https://pkg.go.dev/golang.org/x/tools/cmd/goimports
|
||||
[golangci-lint]: https://github.com/golangci/golangci-lint
|
||||
[gradle]: https://gradle.org
|
||||
[hashicorp]: https://hashicorp.com/
|
||||
[hashicorp]: https://hashicorp.com
|
||||
[haskell]: https://haskell.org
|
||||
[iex]: https://hexdocs.pm/iex/IEx.html
|
||||
[java]: https://java.com
|
||||
[kotlin]: https://kotlinlang.org
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
description = "A Nix-flake-based Dhall development environment";
|
||||
description = "A Nix-flake-based Cue development environment";
|
||||
|
||||
inputs = { dev.url = "github:the-nix-way/dev-templates"; };
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
description = "A Nix-flake-based Protobuf development environment";
|
||||
description = "A Nix-flake-based Elm development environment";
|
||||
|
||||
inputs = { dev.url = "github:the-nix-way/dev-templates"; };
|
||||
|
||||
|
|
|
@ -50,6 +50,11 @@
|
|||
description = "HashiCorp DevOps tools development environment";
|
||||
};
|
||||
|
||||
haskell = {
|
||||
path = ./haskell;
|
||||
description = "Haskell development environment";
|
||||
};
|
||||
|
||||
java = {
|
||||
path = ./java;
|
||||
description = "Java development environment";
|
||||
|
|
1
haskell/.envrc
Normal file
1
haskell/.envrc
Normal file
|
@ -0,0 +1 @@
|
|||
use flake .
|
60
haskell/flake.lock
Normal file
60
haskell/flake.lock
Normal file
|
@ -0,0 +1,60 @@
|
|||
{
|
||||
"nodes": {
|
||||
"dev": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils",
|
||||
"nixpkgs": "nixpkgs"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1659301425,
|
||||
"narHash": "sha256-ws9jVuS3XKx5nYITvSGnMDj8y+JLu7W4ZLWgSoaWDG0=",
|
||||
"owner": "the-nix-way",
|
||||
"repo": "dev-templates",
|
||||
"rev": "34bf508a971639577be4ac3fc422897d380c5086",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "the-nix-way",
|
||||
"repo": "dev-templates",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils": {
|
||||
"locked": {
|
||||
"lastModified": 1656928814,
|
||||
"narHash": "sha256-RIFfgBuKz6Hp89yRr7+NR5tzIAbn52h8vT6vXkYjZoM=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "7e2a3b3dfd9af950a856d66b0a7d01e3c18aa249",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1659300577,
|
||||
"narHash": "sha256-mTlKMvvBJ4W32Y9VdEXATyMDUWEYVO4P9IWo8Mzn3rM=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "b91029be03d836b5ab33042aaf0167f02221c1ac",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"dev": "dev"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
"version": 7
|
||||
}
|
24
haskell/flake.nix
Normal file
24
haskell/flake.nix
Normal file
|
@ -0,0 +1,24 @@
|
|||
{
|
||||
description = "A Nix-flake-based Haskell development environment";
|
||||
|
||||
inputs = { dev.url = "github:the-nix-way/dev-templates"; };
|
||||
|
||||
outputs = { self, dev }:
|
||||
let inherit (dev.lib) flake-utils nixpkgs;
|
||||
in flake-utils.lib.eachDefaultSystem (system:
|
||||
let
|
||||
pkgs = import nixpkgs { inherit system; };
|
||||
inherit (pkgs) cabal-install ghc mkShell;
|
||||
in {
|
||||
devShells = {
|
||||
default = mkShell {
|
||||
buildInputs = [ cabal-install ghc ];
|
||||
|
||||
shellHook = ''
|
||||
${ghc}/bin/ghc --version
|
||||
${cabal-install}/bin/cabal --version
|
||||
'';
|
||||
};
|
||||
};
|
||||
});
|
||||
}
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
description = "A Nix-flake-based Protobuf development environment";
|
||||
description = "A Nix-flake-based Nim development environment";
|
||||
|
||||
inputs = { dev.url = "github:the-nix-way/dev-templates"; };
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
description = "A Nix-flake-based Protobuf development environment";
|
||||
description = "A Nix-flake-based Open Policy Agent development environment";
|
||||
|
||||
inputs = { dev.url = "github:the-nix-way/dev-templates"; };
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
description = "A Nix-flake-based Protobuf development environment";
|
||||
description = "A Nix-flake-based Python development environment";
|
||||
|
||||
inputs = {
|
||||
dev.url = "github:the-nix-way/dev-templates";
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
description = "A Nix-flake-based Protobuf development environment";
|
||||
description = "A Nix-flake-based Ruby development environment";
|
||||
|
||||
inputs = { dev.url = "github:the-nix-way/dev-templates"; };
|
||||
|
||||
|
|
Loading…
Reference in a new issue