self: super: let src = { codex = super.fetchFromGitHub { owner = "aloiscochard"; repo = "codex"; rev = "48b2a4b94132b537943bcd966c3922cbf67a7409"; sha256 = "1mwsz824rqsphy68frqdrpkdmvlqg3zfn7wb565r8621jbbn9iws"; }; haskell-code-explorer = super.fetchFromGitHub { owner = "alexwl"; repo = "haskell-code-explorer"; #rev = "eddf2c825dee199de0e958857f0daf3d08a07532"; #rev = "cac568f01609bf224c0e26ec62880bf7dbb58a07"; rev = "3da88457b2566aec3f4e0b368a21c9f2bb389e29"; #sha256 = "07b8apl6qkp3bahjyykhskrsfwbglc69dpr43lifbc8pg0xv1v49"; #sha256 = "0s26yav6w4j4nzrbdv3wms931zbi0vm2nbiinfqwv87x35y42sbg"; sha256 = "0yib189bh9x5qs5rx4a7i3cj77nn7nd6395kdm1nb2120iv37bl5"; }; }; ghc82Packages = super.haskell.packages.ghc822.override { overrides = hSelf: hSuper: { }; }; ghc84Packages = super.haskell.packages.ghc844.override { overrides = hSelf: hSuper: { }; }; ghc86Packages = super.haskell.packages.ghc865.override { overrides = hSelf: hSuper: { }; }; haskellPackages = super.haskellPackages.override { overrides = hSelf: hSuper: { # DESIGN: pinning to the latest version codex = hSuper.callCabal2nix "codex" src.codex {}; haskell-code-explorer = hSuper.callCabal2nix "haskell-code-explorer" src.haskell-code-explorer {}; # DESIGN: try commenting out, but the tests hang #ghc-exactprint = super.haskell.lib.dontCheck (hSuper.callHackage "ghc-exactprint" "0.5.8.2" {}); ghc-exactprint = super.haskell.lib.dontCheck (hSuper.callHackage "ghc-exactprint" "0.6.1" {}); # DESIGN: Nixpkgs isn't on latest yet (as of 2019-04-30), but this # breaks # hlint = hSuper.callHackage "hlint" "2.1.17" {}; #ghcid = hSuper.callHackage "hlint" "0.7.2" {}; # Not using currently #cabal-helper = super.haskell.lib.doJailbreak hSuper.cabal-helper; #cabal-helper = hSuper.callHackage "cabal-helper" "0.8.2.0" {}; }; }; haskellApp = super.haskell.lib.justStaticExecutables; # fails to build nodejs = let buildNodejs = super.callPackage "${super.path}/pkgs/development/web/nodejs/nodejs.nix" {}; enableNpm = true; rawNodejs = buildNodejs { inherit enableNpm; version = "10.15.1"; sha256 = "0n68c4zjakdj6yzdc9fbrn0wghyslkya9sz1v6122i40zfwzfm8s"; }; rawNodejs_ = super.callPackage "${super.path}/pkgs/development/web/nodejs/v10.nix" {}; in super.lib.hiPrio rawNodejs; yarn = self.yarn.override { nodejs = self.nodejs-10_x; }; in { global = super.global.overrideAttrs (oldAttrs: { postInstall = '' mkdir -p "$out/share/emacs/site-lisp" cp -v *.el "$out/share/emacs/site-lisp" wrapProgram $out/bin/gtags \ --set GTAGSCONF "$out/share/gtags/gtags.conf" \ --prefix PYTHONPATH : "$(toPythonPath ${super.pythonPackages.pygments})" wrapProgram $out/bin/global \ --set GTAGSCONF "$out/share/gtags/gtags.conf" \ --prefix PYTHONPATH : "$(toPythonPath ${super.pythonPackages.pygments})" ''; }); all-cabal-hashes = super.fetchurl { url = "https://github.com/commercialhaskell/all-cabal-hashes/archive/58e8d9489a7588093b432bcdc9a981628e41673a.tar.gz"; sha256 = "1qwq386q15pwwy8136n632hzy0gkrmi57gfdyz7lh5nixcrmdhmi"; }; my-packages = [ yarn self.autojump self.cabal-install self.cabal2nix self.cloc self.coreutils self.dfu-programmer self.dfu-util self.dhall self.direnv self.fswatch self.ghc self.git self.global self.gnugrep self.gnupg self.graphviz self.htop self.imagemagick self.ispell self.jq self.jre self.kubernetes-helm self.mpc_cli self.mongodb self.mongodb-tools self.nix-diff self.nix-index self.nodejs self.oh-my-zsh self.pandoc self.patchelf self.postgresql self.procps self.ripgrep self.rsync self.sbt-extras self.schemaspy self.shellcheck self.silver-searcher self.stack self.stack2nix self.teensy-loader-cli self.tree self.unison self.unzip self.vim self.wget self.yarn2nix (haskellApp haskellPackages.apply-refact) (haskellApp haskellPackages.codex) (haskellApp haskellPackages.fast-tags) (haskellApp haskellPackages.ghc-events) (haskellApp haskellPackages.ghcid) (haskellApp haskellPackages.haskdogs) (haskellApp haskellPackages.hasktags) (haskellApp haskellPackages.hlint) (haskellApp haskellPackages.hoogle) (haskellApp haskellPackages.hp2pretty) (haskellApp haskellPackages.hpack) (haskellApp haskellPackages.pointfree) (haskellApp haskellPackages.stylish-haskell) #self.emacs # emacs-mac from Brew more compatible with Mac/Yabai #(haskellApp ghc82Packages.djinn) # interesting, but exotic #(haskellApp haskellPackages.ghc-events-analyze) # replacement? #(haskellApp haskellPackages.haskell-code-explorer) # finicky build #(haskellApp haskellPackages.pointful) # interesting, but exotic #(haskellApp haskellPackages.purescript) # finicky build #(haskellApp haskellPackages.threadscope) # broken on Darwin #self.nodePackages_8_x.npm # finicky build ]; }