a one dimensional cellular automata, using comonads
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
- bspkgs:
- let
- dontCheckPackages = [ ];
- doJailbreakPackages = [ ];
- dontHaddockPackages = [ ];
- config = {
- packageOverrides = pkgs: rec {
- haskellPackages =
- let
- generatedOverrides = haskellPackagesNew: haskellPackagesOld:
- let
- toPackage = file: _: {
- name = builtins.replaceStrings [ ".nix" ] [ "" ] file;
- value = haskellPackagesNew.callPackage
- ( ./. + "/nix/${file}") { };
- };
- in
- pkgs.lib.mapAttrs' toPackage
- (builtins.readDir ./nix);
- makeOverrides =
- function: names: haskellPackagesNew: haskellPackagesOld:
- let
- toPackage = name: {
- inherit name;
- value = function haskellPackagesOld.${name};
- };
- in
- builtins.listToAttrs (map toPackage names);
- composeExtensionsList =
- pkgs.lib.fold pkgs.lib.composeExtensions (_: _: {});
- manualOverrides = haskellPackagesNew: haskellPackagesOld: {
- };
- in
- pkgs.haskellPackages.override {
- overrides = composeExtensionsList [
- generatedOverrides
- (makeOverrides pkgs.haskell.lib.dontCheck dontCheckPackages)
- (makeOverrides pkgs.haskell.lib.doJailbreak doJailbreakPackages)
- (makeOverrides pkgs.haskell.lib.dontHaddock dontHaddockPackages)
- manualOverrides
- ];
- };
- };
- };
- pkgs = import bspkgs.path { inherit config; system = bspkgs.system; };
- in
- pkgs.haskellPackages.cellularAutomata
|