aboutsummaryrefslogtreecommitdiff
path: root/pkgs/boomer
diff options
context:
space:
mode:
authorspl3g <spleefer6@yandex.ru>2024-12-27 01:02:21 +0300
committerspl3g <spleefer6@yandex.ru>2025-05-01 14:58:57 +0300
commitcc92eba10fc28b7b0f48836af2e2817f7ffed4a2 (patch)
treeb30fc8a0d4b7e57f4aecbad6446654023cae5ed9 /pkgs/boomer
parentad4d39ffb686898955427a848e6c5d2aac21fe29 (diff)
feat: add boomer package
Diffstat (limited to 'pkgs/boomer')
-rw-r--r--pkgs/boomer/default.nix55
1 files changed, 55 insertions, 0 deletions
diff --git a/pkgs/boomer/default.nix b/pkgs/boomer/default.nix
new file mode 100644
index 0000000..885de27
--- /dev/null
+++ b/pkgs/boomer/default.nix
@@ -0,0 +1,55 @@
+{ lib, stdenv, fetchgit, makeWrapper, nim, libX11, libXrandr, libGL }:
+
+let
+
+ x11-nim = fetchgit {
+ url = "https://github.com/nim-lang/x11";
+ rev = "b7bae7dffa4e3f12370d5a18209359422ae8bedd";
+ sha256 = "1j3kyp0vf2jl20c67gcm759jnfskdf0wc4ajrdbvfxias285c5sb";
+ };
+
+ opengl-nim = fetchgit {
+ url = "https://github.com/nim-lang/opengl";
+ rev = "a6fb649e5bd94d8420d4a11287092a4dc3e922b4";
+ sha256 = "0w62lfrdms2vb24kd4jnypwmqvdk5x9my1dinnqdq82yl4nz6d0s";
+ };
+
+in stdenv.mkDerivation rec {
+
+ pname = "boomer";
+ version = "cc0f5311193da8361ee782a421d6bc4ad8541cf3";
+
+ src = fetchgit {
+ url = "https://github.com/tsoding/boomer";
+ rev = version;
+ sha256 = "sha256-3yg0nuJE0Rrw13VEQ/CjjjPN5G4ytssgiesdXwlHaF8=";
+ };
+
+ buildInputs = [ nim libX11 libXrandr libGL makeWrapper ];
+
+ buildPhase = ''
+ runHook preBuild
+ HOME=$TMPDIR
+ nim -p:${x11-nim}/ -p:${opengl-nim}/src c -d:release src/boomer.nim
+ runHook postBuild
+ '';
+
+ installPhase = ''
+ runHook preInstall
+ install -Dt $out/bin src/boomer
+ runHook postInstall
+ '';
+
+ fixupPhase = ''
+ runHook preFixup
+ patchelf --set-rpath ${lib.makeLibraryPath [ stdenv.cc.cc libX11 libXrandr libGL ]} $out/bin/boomer
+ wrapProgram "$out/bin/boomer" --set LIBGL_ALWAYS_SOFTWARE 1
+ runHook postFixup
+ '';
+
+ meta = with lib; {
+ license = licenses.mit;
+ platforms = platforms.linux;
+ homepage = "https://github.com/tsoding/boomer";
+ };
+}