fabapp/flake.nix

78 lines
2.0 KiB
Nix

{
description = "FabApp";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-23.05";
nixpkgs-unstable.url = "github:nixos/nixpkgs/nixpkgs-unstable";
flake-parts.url = "github:hercules-ci/flake-parts";
};
outputs = inputs@{ flake-parts, nixpkgs, ... }:
flake-parts.lib.mkFlake { inherit inputs; } {
flake = { };
systems = [ "x86_64-linux" ];
# https://flake.parts/module-arguments.html#persystem-module-parameters
perSystem = { pkgs, system, ... }: {
_module.args.pkgs = import inputs.nixpkgs-unstable {
inherit system;
# https://flake.parts/overlays
# NOTE: zig overlay triggers issues with X11/GL libraries
# This might be misconfiguration on my end
overlays = [ ];
config = { };
};
formatter = pkgs.nixfmt;
devShells.default = with pkgs;
mkShell {
# EM_CONFIG = pkgs.writeText ".emscripten" ''
# EMSCRIPTEN_ROOT = '${pkgs.emscripten}/share/emscripten'
# LLVM_ROOT = '${pkgs.emscripten.llvmEnv}/bin'
# BINARYEN_ROOT = '${pkgs.binaryen}'
# NODE_JS = '${pkgs.nodejs-18_x}/bin/node'
# CACHE = '${toString ./.cache}'
# '';
nativeBuildInputs = [ clang cmake just ninja tup ];
buildInputs = [
sqlite
# Android
android-tools
godot_4
# Zig / webAssembly impl.
zig
zls
emscripten
# Linux graphical deps
## X11
xorg.libX11
xorg.libXcursor
xorg.libXi
xorg.libXext
xorg.libXrandr
xorg.libXinerama
xorg.libxcb
libGL
libGLU
pkg-config
## Wayland
wayland-protocols
wayland
libxkbcommon
];
};
};
};
}