X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=virtual%2Fmodules%2Fwebsites%2Ftools%2Fmediagoblin%2Fmediagoblin.nix;h=cad6225166a32a4859c24bf9e00f911f502f69dc;hb=b0781dbc85da7bba5a3a9209ca4d3b3900eea7b5;hp=e94d8a66fa3b883645b815f528dc2e7ef234fbea;hpb=56eba41617f405624330aa755fcbfc0af68cf64f;p=perso%2FImmae%2FConfig%2FNix.git diff --git a/virtual/modules/websites/tools/mediagoblin/mediagoblin.nix b/virtual/modules/websites/tools/mediagoblin/mediagoblin.nix index e94d8a6..cad6225 100644 --- a/virtual/modules/websites/tools/mediagoblin/mediagoblin.nix +++ b/virtual/modules/websites/tools/mediagoblin/mediagoblin.nix @@ -1,4 +1,4 @@ -{ checkEnv, 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 { @@ -108,6 +108,11 @@ in 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 @@ -120,6 +125,8 @@ in ''; configureFlags = [ "--with-python3" "--without-virtualenv" ]; postBuild = '' + cp -a ${bowerComponents}/bower_components/* extlib + chmod -R u+w extlib make extlib ''; installPhase = '' @@ -183,10 +190,7 @@ in url_scheme = https ''; - mediagoblin_local = - assert checkEnv "NIXOPS_MEDIAGOBLIN_LDAP_PASSWORD"; - assert checkEnv "NIXOPS_MEDIAGOBLIN_SQL_URI"; - writeText "mediagoblin_local.ini" '' + mediagoblin_local = writeText "mediagoblin_local.ini" '' [DEFAULT] data_basedir = "${varDir}" @@ -195,7 +199,7 @@ in email_sender_address = "mediagoblin@mail.immae.eu" #sql_engine = sqlite:///%(data_basedir)s/mediagoblin.db - sql_engine = ${builtins.getEnv "NIXOPS_MEDIAGOBLIN_SQL_URI"} + sql_engine = ${env.psql_url} email_debug_mode = false allow_registration = false @@ -221,8 +225,8 @@ in base_url = /mgoblin_media/ [celery] - CELERY_RESULT_DBURI = redis+socket:///run/redis/redis.sock?virtual_host=12 - BROKER_URL = redis+socket:///run/redis/redis.sock?virtual_host=12 + CELERY_RESULT_DBURI = ${env.redis_url} + BROKER_URL = ${env.redis_url} CELERYD_CONCURRENCY = 1 [plugins] @@ -232,7 +236,7 @@ in LDAP_SERVER_URI = 'ldaps://ldap.immae.eu:636' LDAP_SEARCH_BASE = 'dc=immae,dc=eu' LDAP_BIND_DN = 'cn=mediagoblin,ou=services,dc=immae,dc=eu' - LDAP_BIND_PW = '${builtins.getEnv "NIXOPS_MEDIAGOBLIN_LDAP_PASSWORD"}' + LDAP_BIND_PW = '${env.ldap.password}' LDAP_SEARCH_FILTER = '(&(memberOf=cn=users,cn=mediagoblin,ou=services,dc=immae,dc=eu)(uid={username}))' EMAIL_SEARCH_FIELD = 'mail' [[mediagoblin.plugins.basicsearch]]