{ inputs = { nixpkgs.url = "nixpkgs/nixpkgs-unstable"; hs-bindgen.url = "github:well-typed/hs-bindgen/fd74e8fa4216eccd67069ec9d8637b57000ffc83"; self.submodules = true; }; outputs = { nixpkgs, hs-bindgen, self, ... }: let version = "0.3.0"; package = { mkDerivation, base, bindings-DSL, c-expr-runtime, gl, hs-bindgen-runtime, lib, libGL, libX11, xcursor, xi, xrandr, }: mkDerivation { pname = "hs-rgfw"; inherit version; src = ./.; libraryHaskellDepends = [ base bindings-DSL c-expr-runtime hs-bindgen-runtime ]; libraryPkgconfigDepends = [ gl libGL libX11 xcursor xi xrandr ]; homepage = "https://git.mtgmonkey.net/Andromeda/hs-rgfw"; license = lib.licenses.bsd3; platforms = ["x86_64-linux"]; }; system = "x86_64-linux"; pkgs = import nixpkgs { inherit system; overlays = [ hs-bindgen.overlays.libclangBindings hs-bindgen.overlays.hsBindgen ]; }; in { devShells.${system} = { default = pkgs.mkShell { stdenv = pkgs.clangStdenv; packages = [ pkgs.clang pkgs.cabal-install ]; inputsFrom = [ self.packages.${system}.default ]; }; }; packages.${system} = { default = pkgs.haskellPackages.callPackage package { xcursor = pkgs.xorg.libXcursor; xi = pkgs.xorg.libXi; }; }; }; }