{
inputs = {
flake-utils.url = "github:numtide/flake-utils";
nixpkgs.url = "github:nixos/nixpkgs";
};
outputs =
{ self
, nixpkgs
, flake-utils
, ...
}:
let
system = "x86_64-linux";
pkgs = import nixpkgs { inherit system; };
in
{
formatter.x86_64-linux = nixpkgs.legacyPackages.x86_64-linux.nixpkgs-fmt;
packages.${system}.default =
pkgs.stdenv.mkDerivation
{
src = "./.";
name = "birdy-0.1.8";
inherit system;
nativeBuildInputs = [ pkgs.cargo ];
dontUnpack = true;
#sourceRoot = ".";
buildPhase = ''
cargo build
'';
installPhase = ''
mkdir -p $out/bin
cp target/release/birdy $out/bin/birdy
chmod +x $out
'';
};
devShell.${system} = pkgs.mkShell rec {
buildInputs = [
pkgs.pkg-config
# pkgs.musl
pkgs.libxkbcommon
pkgs.libGL
# pkgs.xorg.libxcb
# pkgs.glibc
# pkgs.gcc
# WINIT_UNIX_BACKEND=wayland
pkgs.wayland
# WINIT_UNIX_BACKEND=x11
pkgs.xorg.libXcursor
pkgs.xorg.libXrandr
pkgs.xorg.libXi
pkgs.xorg.libX11
];
LD_LIBRARY_PATH = "${pkgs.lib.makeLibraryPath buildInputs}";
};
};
}