Update flake.nix

This commit is contained in:
VOXEL 2025-08-06 04:22:04 +03:00 committed by GitHub
parent 4040cafac0
commit 52dac7a94f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -1,16 +1,69 @@
{
description = "VoxelCore voxel game engine in C++";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
flake-utils.url = "github:numtide/flake-utils";
};
outputs = { self, nixpkgs, flake-utils }:
flake-utils.lib.eachDefaultSystem (system: {
devShells.default = with nixpkgs.legacyPackages.${system}; mkShell {
nativeBuildInputs = [ cmake pkg-config ];
buildInputs = [ glm glfw glew zlib libpng libvorbis openal luajit curl ]; # libglvnd
packages = [ glfw mesa freeglut entt ];
LD_LIBRARY_PATH = "${wayland}/lib:$LD_LIBRARY_PATH";
outputs =
{
self,
nixpkgs,
flake-utils,
}:
flake-utils.lib.eachDefaultSystem (
system:
let
pkgs = import nixpkgs { inherit system; };
voxel-core = pkgs.stdenv.mkDerivation {
name = "voxel-core";
src = ./.;
nativeBuildInputs = with pkgs; [
cmake
pkg-config
];
buildInputs = with pkgs; [
glm
glfw
glew
zlib
libpng
libvorbis
openal
luajit
curl
entt
mesa
freeglut
]; # libglvnd
packages = with pkgs; [
glfw
mesa
freeglut
entt
];
cmakeFlags = [
"-DCMAKE_PREFIX_PATH=${pkgs.entt}"
"-DCMAKE_INCLUDE_PATH=${pkgs.entt}/include"
];
installPhase = ''
mkdir -p $out/bin
cp VoxelEngine $out/bin/
'';
};
in
{
packages.default = voxel-core;
apps.default = {
type = "app";
program = "${voxel-core}/bin/VoxelCore";
};
});
}
);
}