nix/packages/boomer/default.nix
2025-04-05 16:34:08 -05:00

54 lines
1.1 KiB
Nix

{
lib,
stdenv,
fetchFromGitHub,
nim,
libX11,
libXrandr,
libGL,
nim-1_0,
}:
let
x11-nim = fetchFromGitHub {
owner = "nim-lang";
repo = "x11";
rev = "29aca5e519ebf5d833f63a6a2769e62ec7bfb83a";
sha256 = "sha256-jBNsv8meDvF2ySKewbA+rF2XS+gqydZUl1xhEevD15o=";
};
opengl-nim = fetchFromGitHub {
owner = "nim-lang";
repo = "opengl";
rev = "8e2e098f82dc5eefd874488c37b5830233cd18f4";
sha256 = "sha256-v3bMDobYQZqX0anBFIUfZx5q5/vxTHO6PDtKQlf5mgU=";
};
in
stdenv.mkDerivation rec {
pname = "boomer";
version = "unstable-2024-02-08";
src = fetchFromGitHub {
owner = "tsoding";
repo = "boomer";
rev = "dfd4e1f5514e2a9d7c7a6429c1c0642c2021e792";
sha256 = "sha256-o65/VVxttriA5Qqt35lLKkWIZYS7T4VBBuYdAIGUmx8=";
};
buildInputs = [
nim-1_0
libX11
libXrandr
libGL
];
buildPhase = ''
HOME=$TMPDIR
nim -p:${x11-nim}/ -p:${opengl-nim}/src c -d:release src/boomer.nim
'';
installPhase = "install -Dt $out/bin src/boomer";
fixupPhase = "patchelf --set-rpath ${
lib.makeLibraryPath [
stdenv.cc.cc
libX11
libXrandr
libGL
]
} $out/bin/boomer";
}