lol

Add pkgs.buildBowerComponents function

+53
+49
pkgs/development/bower-modules/generic/default.nix
··· 1 + { pkgs }: 2 + 3 + { buildInputs ? [], generated, ... } @ attrs: 4 + 5 + let 6 + # Fetches the bower packages. `generated` should be the result of a 7 + # `bower2nix` command. 8 + bowerPackages = import generated { 9 + inherit (pkgs) buildEnv fetchbower; 10 + }; 11 + 12 + in pkgs.stdenv.mkDerivation ( 13 + attrs 14 + // 15 + { 16 + name = "bower_components-" + attrs.name; 17 + 18 + inherit bowerPackages; 19 + 20 + builder = builtins.toFile "builder.sh" '' 21 + source $stdenv/setup 22 + 23 + # The project's bower.json is required 24 + cp $src/bower.json . 25 + 26 + # Dereference symlinks -- bower doesn't like them 27 + cp --recursive --reflink=auto \ 28 + --dereference --no-preserve=mode \ 29 + $bowerPackages bc 30 + 31 + # Bower install in offline mode -- links together the fetched 32 + # bower packages. 33 + HOME=$PWD bower \ 34 + --config.storage.packages=bc/packages \ 35 + --config.storage.registry=bc/registry \ 36 + --offline install 37 + 38 + # Sets up a single bower_components directory within 39 + # the output derivation. 40 + mkdir -p $out 41 + mv bower_components $out 42 + ''; 43 + 44 + buildInputs = buildInputs ++ [ 45 + pkgs.git 46 + pkgs.nodePackages.bower 47 + ]; 48 + } 49 + )
+4
pkgs/top-level/all-packages.nix
··· 9150 9150 9151 9151 yuicompressor = callPackage ../development/tools/yuicompressor { }; 9152 9152 9153 + ### DEVELOPMENT / BOWER MODULES (JAVASCRIPT) 9154 + 9155 + buildBowerComponents = callPackage ../development/bower-modules/generic { }; 9156 + 9153 9157 ### DEVELOPMENT / GO MODULES 9154 9158 9155 9159 go14Packages = callPackage ./go-packages.nix {