-let nixpkgs_unstable = import (builtins.fetchTarball {
- # FIXME: upgrade to nixpkgs 19 when stable and stick to stable
- # versions
- name = "nixos-unstable-2018-12-08";
- url = https://github.com/nixos/nixpkgs/archive/61c3169a0e17d789c566d5b241bfe309ce4a6275.tar.gz;
- sha256 = "0qbycg7wkb71v20rchlkafrjfpbk2fnlvvbh3ai9pyfisci5wxvq";
-}) {};
-in
- with nixpkgs_unstable;
-{
- inherit nixpkgs_unstable;
+{ pkgs }:
+with pkgs;
+rec {
+ yarn2nixPackage = let
+ src = fetchFromGitHub {
+ owner = "moretea";
+ repo = "yarn2nix";
+ rev = "780e33a07fd821e09ab5b05223ddb4ca15ac663f";
+ sha256 = "1f83cr9qgk95g3571ps644rvgfzv2i4i7532q8pg405s4q5ada3h";
+ fetchSubmodules = true;
+ };
+ in
+ (callPackage src {}) // { inherit src; };
+
+ nodeEnv = import ./lib/node-env.nix;
+
fetchedGithub = path:
let
json = lib.importJSON path;
''
makeWrapper "$f" "$out" ${toString args}
'';
+
+ # This adds header colors to the builds, but it rebuilds the whole
+ # world from scratch, so only use it to debug!
+ # add it as postHook in derivations
+ immaePostHook = ''
+ header() {
+ echo -ne "\033[1;36m"
+ echo -n "$1"
+ echo -e "\033[0m"
+ }
+
+ echoCmd() {
+ printf "\033[1;34m%s:\033[0m" "$1"
+ shift
+ printf ' %q' "$@"
+ echo
+ }
+ '';
+
}