1{ stdenv, fetchFromGitHub, pkg-config, libGL, glfw, soil, lib }:
2
3stdenv.mkDerivation {
4 pname = "esshader";
5 version = "unstable-2020-08-09";
6
7 src = fetchFromGitHub {
8 owner = "cmcsun";
9 repo = "esshader";
10 rev = "506eb02f3de52d3d1f4d81ac9ee145655216dee5";
11 sha256 = "sha256-euxJw7CqOwi6Ndzalps37kDr5oOIL3tZICCfmxsujfk=";
12 };
13
14 postPatch = ''
15 substituteInPlace config.mk \
16 --replace "-lGLESv2" "-lGL -lGLESv2"
17 '';
18
19 nativeBuildInputs = [
20 pkg-config
21 ];
22 buildInputs = [
23 libGL glfw soil
24 ];
25
26 installPhase = ''
27 mkdir -p $out/bin
28 cp -a esshader $out/bin/
29 '';
30
31 meta = with lib; {
32 description = "Offline ShaderToy-compatible GLSL shader viewer using OpenGL ES 2.0";
33 homepage = "https://github.com/cmcsun/esshader";
34 license = licenses.mit;
35 maintainers = with maintainers; [ astro ];
36 platforms = lib.platforms.unix;
37 # never built on aarch64-darwin, x86_64-darwin since first introduction in nixpkgs
38 broken = stdenv.isDarwin;
39 };
40}