-{ env, makeWrapper, stdenv, writeText, fetchurl, fetchedGit, fetchedGithub, which, python3, pkgs, automake, autoconf, nodejs, nodePackages, git, cacert }:
+{ env, makeWrapper, stdenv, writeText, fetchurl, buildBowerComponents, fetchedGit, fetchedGithub, which, python3, pkgs, automake, autoconf, nodejs, nodePackages, git, cacert }:
let
plugins = {
basicsearch = stdenv.mkDerivation (fetchedGithub ./mediagoblin-plugin-basicsearch.json // rec {
rec {
socketsDir = "/run/mediagoblin";
varDir = "/var/lib/mediagoblin";
+ bowerComponents = buildBowerComponents {
+ name = "mediagoblin-bower-components";
+ generated = ./bower-packages.nix;
+ src = (fetchedGit ./mediagoblin.json).src;
+ };
mediagoblin = stdenv.mkDerivation (fetchedGit ./mediagoblin.json // rec {
preConfigure = ''
# ./bootstrap.sh
'';
configureFlags = [ "--with-python3" "--without-virtualenv" ];
postBuild = ''
+ cp -a ${bowerComponents}/bower_components/* extlib
+ chmod -R u+w extlib
make extlib
'';
installPhase = ''