Something went wrong. Try again.
What happens if I push all of nixpkgs
Something went wrong. Try again.
5.7 kB · 234 lines
Nix
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235{ pkgs, config, idris-no-deps, overrides ? (self: super: { }),}:let inherit (pkgs.lib) callPackageWith fix' extends;
# Taken from haskell-modules/default.nix, should probably abstract this away callPackageWithScope = scope: drv: args: (callPackageWith scope drv args) // { overrideScope = f: callPackageWithScope (mkScope (fix' (extends f scope.__unfix__))) drv args; };
mkScope = scope: pkgs // pkgs.xorg // pkgs.gnome2 // scope;
idrisPackages = self: let defaultScope = mkScope self;
callPackage = callPackageWithScope defaultScope;
builtins_ = pkgs.lib.mapAttrs self.build-builtin-package { prelude = [ ];
base = [ self.prelude ];
contrib = [ self.prelude self.base ];
effects = [ self.prelude self.base ];
pruviloj = [ self.prelude self.base ]; };
in { inherit idris-no-deps callPackage;
# Idris wrapper with specified compiler and library paths, used to build packages
idris = pkgs.callPackage ./idris-wrapper.nix { inherit idris-no-deps; };
# Utilities for building packages
with-packages = callPackage ./with-packages.nix { };
build-builtin-package = callPackage ./build-builtin-package.nix { };
build-idris-package = callPackage ./build-idris-package.nix { };
# The set of libraries that comes with idris
builtins = pkgs.lib.mapAttrsToList (name: value: value) builtins_;
# Libraries
array = callPackage ./array.nix { };
bi = callPackage ./bi.nix { };
bifunctors = callPackage ./bifunctors.nix { };
bytes = callPackage ./bytes.nix { };
canvas = callPackage ./canvas.nix { };
categories = callPackage ./categories.nix { };
coda = callPackage ./coda.nix { };
config = callPackage ./config.nix { };
comonad = callPackage ./comonad.nix { };
composition = callPackage ./composition.nix { };
console = callPackage ./console.nix { };
containers = callPackage ./containers.nix { };
cube = callPackage ./cube.nix { };
derive = callPackage ./derive.nix { };
descncrunch = callPackage ./descncrunch.nix { };
dict = callPackage ./dict.nix { };
dom = callPackage ./dom.nix { };
electron = callPackage ./electron.nix { };
eternal = callPackage ./eternal.nix { };
farrp = callPackage ./farrp.nix { };
free = callPackage ./free.nix { };
fsm = callPackage ./fsm.nix { };
glfw = callPackage ./glfw.nix { };
graphviz = callPackage ./graphviz.nix { };
hamt = callPackage ./hamt.nix { };
html = callPackage ./html.nix { };
hezarfen = callPackage ./hezarfen.nix { };
hrtime = callPackage ./hrtime.nix { };
http = callPackage ./http.nix { };
http4idris = callPackage ./http4idris.nix { };
iaia = callPackage ./iaia.nix { };
idrishighlighter = callPackage ./idrishighlighter.nix { };
idrisscript = callPackage ./idrisscript.nix { };
ipkgparser = callPackage ./ipkgparser.nix { };
jheiling-extras = callPackage ./jheiling-extras.nix { };
jheiling-js = callPackage ./jheiling-js.nix { };
js = callPackage ./js.nix { };
lens = callPackage ./lens.nix { };
lightyear = callPackage ./lightyear.nix { };
logic = callPackage ./logic.nix { };
mapping = callPackage ./mapping.nix { };
mhd = callPackage ./mhd.nix { };
pacman = callPackage ./pacman.nix { };
patricia = callPackage ./patricia.nix { };
permutations = callPackage ./permutations.nix { };
pfds = callPackage ./pfds.nix { };
pipes = callPackage ./pipes.nix { };
posix = callPackage ./posix.nix { };
quantities = callPackage ./quantities.nix { };
rationals = callPackage ./rationals.nix { };
recursion_schemes = callPackage ./recursion_schemes.nix { };
refined = callPackage ./refined.nix { };
sdl2 = callPackage ./sdl2.nix { };
semidirect = callPackage ./semidirect.nix { };
setoids = callPackage ./setoids.nix { };
smproc = callPackage ./smproc.nix { };
snippets = callPackage ./snippets.nix { };
software_foundations = callPackage ./software_foundations.nix { };
specdris = callPackage ./specdris.nix { };
tap = callPackage ./tap.nix { };
test = callPackage ./test.nix { };
tf-random = callPackage ./tfrandom.nix { };
tlhydra = callPackage ./tlhydra.nix { };
tomladris = callPackage ./tomladris.nix { };
tp = callPackage ./tp.nix { };
tparsec = callPackage ./tparsec.nix { };
transducers = callPackage ./transducers.nix { };
trees = callPackage ./trees.nix { };
union_type = callPackage ./union_type.nix { };
vdom = callPackage ./vdom.nix { };
vecspace = callPackage ./vecspace.nix { };
webgl = callPackage ./webgl.nix { };
wl-pprint = callPackage ./wl-pprint.nix { };
wyvern = callPackage ./wyvern.nix { };
xhr = callPackage ./xhr.nix { };
yaml = callPackage ./yaml.nix { };
yampa = callPackage ./yampa.nix { };
} // builtins_ // pkgs.lib.optionalAttrs config.allowAliases { # removed packages protobuf = throw "idrisPackages.protobuf has been removed: abandoned by upstream"; # Added 2022-02-06 sdl = throw "'idrisPackages.sdl' has been removed, as it was broken and unmaintained"; # added 2024-05-09 };infix' (extends overrides idrisPackages)