mirror of
https://github.com/enso-org/enso.git
synced 2024-11-30 02:32:15 +03:00
47 lines
1.5 KiB
Nix
47 lines
1.5 KiB
Nix
|
{
|
||
|
inputs = {
|
||
|
nixpkgs.url = github:nixos/nixpkgs/nixpkgs-unstable;
|
||
|
fenix.url = github:nix-community/fenix;
|
||
|
fenix.inputs.nixpkgs.follows = "nixpkgs";
|
||
|
};
|
||
|
outputs = { self, nixpkgs, fenix }:
|
||
|
let
|
||
|
forAllSystems = with nixpkgs.lib; f: foldAttrs mergeAttrs { }
|
||
|
(map (s: { ${s} = f s; }) systems.flakeExposed);
|
||
|
in
|
||
|
{
|
||
|
devShell = forAllSystems
|
||
|
(system:
|
||
|
let
|
||
|
pkgs = nixpkgs.legacyPackages.${system};
|
||
|
rust = fenix.packages.${system}.fromToolchainFile {
|
||
|
dir = ./.;
|
||
|
sha256 = "sha256-o/MRwGYjLPyD1zZQe3LX0dOynwRJpVygfF9+vSnqTOc=";
|
||
|
};
|
||
|
in
|
||
|
pkgs.mkShell {
|
||
|
packages = with pkgs; [
|
||
|
# === TypeScript dependencies ===
|
||
|
nodejs_20 # should match the Node.JS version of the lambdas
|
||
|
corepack
|
||
|
# === Electron ===
|
||
|
electron
|
||
|
# === node-gyp dependencies ===
|
||
|
python3
|
||
|
gnumake
|
||
|
# === WASM parser dependencies ===
|
||
|
rust
|
||
|
wasm-pack
|
||
|
# Java and SBT omitted for now
|
||
|
];
|
||
|
|
||
|
shellHook = ''
|
||
|
# `sccache` can be used to speed up compile times for Rust crates.
|
||
|
# `~/.cargo/bin/sccache` is provided by `cargo install sccache`.
|
||
|
# `~/.cargo/bin` must be in the `PATH` for the binary to be accessible.
|
||
|
export PATH=$HOME/.cargo/bin:$PATH
|
||
|
'';
|
||
|
});
|
||
|
};
|
||
|
}
|