homeman-elixir/flake.nix
2024-01-21 23:26:07 -06:00

49 lines
1.2 KiB
Nix

{
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable";
lexical.url = "github:lexical-lsp/lexical";
lexical.inputs.nixpkgs.follows = "nixpkgs";
};
outputs = {
self,
nixpkgs,
...
}: let
inherit (self) outputs;
systems = [
"aarch64-linux"
"aarch64-darwin"
"x86_64-darwin"
];
forAllSystems = nixpkgs.lib.genAttrs systems;
in {
devShells = forAllSystems (
system: let
pkgs = import nixpkgs {inherit system;};
inherit (pkgs) beam mkShell;
# inherit (beamPackages) mixRelease fetchMixDeps;
erlang = beam.packages.erlang_26;
elixir = erlang.elixir_1_15;
# pname = "homeman";
# version = "1.0.0"; # TODO: source from mix.exs? or vice-versa?
# src = ./.;
# mixFodDeps = fetchMixDeps {
# inherit src version;
# pname = "mix-deps-${pname}";
# hash = "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA";
# };
in {
homeman = mkShell {
shellHook = "export LOCALE_ARCHIVE=/usr/lib/locale/locale-archive";
buildInputs = [elixir pkgs.inotify-tools];
};
default = outputs.devShells.homeman;
}
);
};
}