refactor: replace nixify with flake-utils and rust-overlay in flake.nix

This commit is contained in:
Harald Hoyer 2026-05-04 22:15:27 +02:00
parent 3c226b3f78
commit b04bd3e74b
2 changed files with 59 additions and 486 deletions

107
flake.nix
View file

@ -1,67 +1,54 @@
{
inputs.nixify.url = "github:rvolosatovs/nixify";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
flake-utils.url = "github:numtide/flake-utils";
rust-overlay = {
url = "github:oxalica/rust-overlay";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs =
{ nixify, ... }:
with nixify.lib;
rust.mkFlake {
src = ./.;
withDevShells =
{
devShells,
pkgs,
...
}:
extendDerivations {
env.LD_LIBRARY_PATH = "$LD_LIBRARY_PATH:${
with pkgs;
pkgs.lib.makeLibraryPath [
xorg.libX11
xorg.libXcursor
xorg.libXi
libxkbcommon
xorg.libxcb
pkgs.vulkan-loader
pkgs.glfw
]
}";
buildInputs = with pkgs; [
pkgs.pkg-config
pkgs.alsa-lib.dev
pkgs.udev.dev
];
} devShells;
buildOverrides =
{
pkgs,
pkgsCross ? pkgs,
...
}:
{
buildInputs ? [ ],
nativeBuildInputs ? [ ],
depsBuildBuild ? [ ],
...
}:
with pkgs.lib;
{
nativeBuildInputs =
nativeBuildInputs
++ optional (pkgs.stdenv.hostPlatform.isLinux) [ pkgs.pkg-config ];
{
nixpkgs,
flake-utils,
rust-overlay,
...
}:
flake-utils.lib.eachDefaultSystem (
system:
let
overlays = [ (import rust-overlay) ];
pkgs = import nixpkgs { inherit system overlays; };
runtimeLibs = with pkgs; [
libx11
libxcursor
libxi
libxkbcommon
libxcb
vulkan-loader
glfw
];
in
{
devShells.default = pkgs.mkShell {
buildInputs =
buildInputs
++ optional pkgs.stdenv.hostPlatform.isDarwin pkgs.libiconv
++ optional (pkgs.stdenv.hostPlatform.isLinux) [
pkgs.alsa-lib.dev
pkgs.udev.dev
];
with pkgs;
[
(rust-bin.stable.latest.default.override {
extensions = [
"rust-src"
"rust-analyzer"
];
})
pkg-config
alsa-lib.dev
udev.dev
]
++ runtimeLibs;
depsBuildBuild =
depsBuildBuild
++ optional pkgsCross.stdenv.hostPlatform.isDarwin pkgsCross.xcbuild.xcrun;
LD_LIBRARY_PATH = pkgs.lib.makeLibraryPath runtimeLibs;
};
};
}
);
}