Je trouve normal que seul l'administrateur puisse créer un tel dépôt.
Si un utilisateur avait cette capacité, il pourrait créer une instance liée avec n'importe quel répertoire présent dans <moodledata>/repository
Par contre, si l'administrateur peut créer une instance dans un cours, impossible dans le compte d'un utilisateur à part celui de l'admin.
J'ai finalement réussi en modifiant un test dans le code :
fichier : <moodle>/repository/manage_instances.php , ligne 90
if ($USER->id != $context->instanceid){
Le test est donc :
Si l'utilisateur courant (administateur) est différent du contexte utilisateur concerné (utilisateur X) => rejet
Donc forcément, à part dans son propre compte, l'administrateur ne peut pas créé un tel dépôt dans le compte d'un utilisateur
Solution : tester si l'utilisateur courant est administrateur :
if (!is_siteadmin()){
A mon sens, ce simple test suffit, puisque de toute façon, seul l'administrateur à le droit de créer des instances de ces dépôts.
Bruno