AE4PHS6EEAG647L3MTTR6IKZJZGRTP6TGOUEBSTUYKKDFIOPF47QC { pkgs, stdenv, lib, self }:letdiscoPkgs = pkgs.recurseIntoAttrs self.packages.${stdenv.system};discoDrvs = lib.filterAttrs (_: value: lib.isDerivation value) discoPkgs;filterDrvs = inputs:lib.filter(drv:!(lib.hasAttr "pname" drv) ||drv.pname == null ||!(lib.any(name: name == drv.pname || name == drv.name)(lib.attrNames discoDrvs)))inputs;in(pkgs.mkShell {OCAMLRUNPARAM = "b";inputsFrom = lib.attrValues discoDrvs;# inputsFrom = [ self.packages.${stdenv.system}.discopotty ];buildInputs = with pkgs; [ocamlocamlPackages.ocaml-lspocamlPackages.duneocamlformatocamlPackages.merlinocamlPackages.utopffmpegyoutube-dl];})# .overrideAttrs (o: {# propagatedBuildInputs = filterDrvs o.propagatedBuildInputs;# buildInputs = filterDrvs o.buildInputs;# })
ctypes-foreign = super.ocamlPackages.buildDunePackage {pname = "${self.ocamlPackages.ctypes.pname}-foreign";inherit (self.ocamlPackages.ctypes) version src;buildInputs = with self; [ libffi ];};
# TODO @quartz55: upstream thiswebsocketaf = super.ocamlPackages.websocketaf.overrideAttrs (_: rec {rev = "49bb812266608835b56ea75bf18f75666639a760";src = builtins.fetchurl {url = "https://github.com/quartz55/websocketaf/archive/${rev}.tar.gz";sha256 = sha256:0lsnrl8h5bmx866lflnbca4yhwzq4q67d15q51157khnchjr34rq;};});
{ pkgs, stdenv, lib, self }:letdiscoPkgs = pkgs.recurseIntoAttrs self.packages.${stdenv.system};discoDrvs = lib.filterAttrs (_: value: lib.isDerivation value) discoPkgs;filterDrvs = inputs:lib.filter(drv:!(lib.hasAttr "pname" drv) ||drv.pname == null ||!(lib.any(name: name == drv.pname || name == drv.name)(lib.attrNames discoDrvs)))inputs;in(pkgs.mkShell {OCAMLRUNPARAM = "b";inputsFrom = lib.attrValues discoDrvs;buildInputs = with pkgs; [ocamlPackages.ocaml-lspocamlformatocamlPackages.merlinocamlPackages.utopffmpegyoutube-dl];}).overrideAttrs (o: {propagatedBuildInputs = filterDrvs o.propagatedBuildInputs;buildInputs = filterDrvs o.buildInputs;})