2023-12-06 23:31:00 -08:00
|
|
|
{
|
|
|
|
description = "It's Adventing Time";
|
|
|
|
|
|
|
|
inputs.nixpkgs.url = "nixpkgs/nixos-unstable";
|
|
|
|
|
|
|
|
outputs = {
|
|
|
|
self,
|
|
|
|
nixpkgs,
|
|
|
|
}: let
|
|
|
|
inherit (nixpkgs) lib;
|
2024-04-16 09:53:53 -07:00
|
|
|
forSystems = f:
|
|
|
|
lib.genAttrs [
|
|
|
|
"x86_64-linux"
|
|
|
|
"aarch64-linux"
|
|
|
|
] (system: f nixpkgs.legacyPackages.${system});
|
2023-12-06 23:31:00 -08:00
|
|
|
in {
|
2024-04-16 09:53:53 -07:00
|
|
|
devShells = forSystems (
|
|
|
|
pkgs: {
|
2023-12-06 23:31:00 -08:00
|
|
|
default = pkgs.mkShell {
|
|
|
|
nativeBuildInputs = [
|
|
|
|
pkgs.clang-tools
|
|
|
|
(pkgs.sbcl.withPackages (p:
|
|
|
|
with p; [
|
|
|
|
alexandria
|
|
|
|
cl-ppcre
|
|
|
|
iterate
|
|
|
|
split-sequence
|
|
|
|
str
|
|
|
|
]))
|
2024-12-02 14:35:58 -08:00
|
|
|
pkgs.haskell-language-server
|
|
|
|
pkgs.stylish-haskell
|
2023-12-06 23:31:00 -08:00
|
|
|
(pkgs.ghc.withPackages (p:
|
|
|
|
with p; [
|
|
|
|
containers
|
2023-12-09 00:01:25 -08:00
|
|
|
extra
|
2024-12-02 15:12:48 -08:00
|
|
|
multiset
|
2023-12-06 23:31:00 -08:00
|
|
|
regex-compat
|
|
|
|
split
|
2023-12-10 20:14:59 -08:00
|
|
|
text
|
|
|
|
text-icu
|
2023-12-06 23:31:00 -08:00
|
|
|
unordered-containers
|
2024-12-03 22:10:00 -08:00
|
|
|
universe-base
|
2023-12-06 23:31:00 -08:00
|
|
|
vector
|
|
|
|
]))
|
|
|
|
];
|
|
|
|
CXXFLAGS = "-std=c++20 -Wall";
|
|
|
|
};
|
|
|
|
}
|
|
|
|
);
|
|
|
|
|
2024-04-16 09:53:53 -07:00
|
|
|
formatter = forSystems (pkgs: pkgs.alejandra);
|
2023-12-06 23:31:00 -08:00
|
|
|
};
|
|
|
|
}
|