Moodle is now available
- 
The plugin situation is what I feared - https://moodle.org/mod/forum/discuss.php?d=323960 and http://james-moodle.blogspot.com/2015/09/those-pesky-moodle-plugins-and-upgrading.html . You just have to copy files all over. 
- 
The plugin situation is what I feared - https://moodle.org/mod/forum/discuss.php?d=323960 and http://james-moodle.blogspot.com/2015/09/those-pesky-moodle-plugins-and-upgrading.html . You just have to copy files all over. @girish oh boy I didn’t really think of this part... I’ll see if I can come up with anything else but moving everything to the data folder is the last resort. 
- 
One option would be picking common types of plugins and supporting those. Like these: /path/to/moodle/theme/ - themes 
 /path/to/moodle/mod/ - activity modules and resources
 /path/to/moodle/blocks/ - sidebar blocks
 /path/to/moodle/question/ - question types/behaviours/formats
 /path/to/moodle/course/format/ - course formats
 /path/to/moodle/admin/report/ - admin reports
 /path/to/moodle/local - Generic plugins for local customisations
 /path/to/moodle/auth - Auth plugins
 /path/to/moodle/enrol - Enrollment methods
 /path/to/moodle/filter - Filters
 /path/to/moodle/webservice - Custom webservices
 /path/to/moodle/portfolio - Portfolio plugins (useful for Mahara)Could we symlink those? Part of me is concerned about the "why is x plusing supported on cloudron but not y" for more obscure use cases which might cause more support traffic, but I suppose that part is your call as you and @nebulon are the ones that have to handle that support traffic. 
- 
One option would be picking common types of plugins and supporting those. Like these: /path/to/moodle/theme/ - themes 
 /path/to/moodle/mod/ - activity modules and resources
 /path/to/moodle/blocks/ - sidebar blocks
 /path/to/moodle/question/ - question types/behaviours/formats
 /path/to/moodle/course/format/ - course formats
 /path/to/moodle/admin/report/ - admin reports
 /path/to/moodle/local - Generic plugins for local customisations
 /path/to/moodle/auth - Auth plugins
 /path/to/moodle/enrol - Enrollment methods
 /path/to/moodle/filter - Filters
 /path/to/moodle/webservice - Custom webservices
 /path/to/moodle/portfolio - Portfolio plugins (useful for Mahara)Could we symlink those? Part of me is concerned about the "why is x plusing supported on cloudron but not y" for more obscure use cases which might cause more support traffic, but I suppose that part is your call as you and @nebulon are the ones that have to handle that support traffic. @atrilahiji It's too much to symlink. I think /app/data it is. Sucks, but can't blame them really. I saw a copyright header from 1999 in the code (!). That was about the time I was learning to program, hee hee. I tried several plugins and they all really rely on the code writing all over, so there is no point wasting time trying to fit it into Cloudron's packaging model. For a start, I will go with the list you gave me and we can just fixup the package as we go. 
- 
@atrilahiji It's too much to symlink. I think /app/data it is. Sucks, but can't blame them really. I saw a copyright header from 1999 in the code (!). That was about the time I was learning to program, hee hee. I tried several plugins and they all really rely on the code writing all over, so there is no point wasting time trying to fit it into Cloudron's packaging model. For a start, I will go with the list you gave me and we can just fixup the package as we go. @girish Yeah. Nobody ever said Moodle was well written :^) But yeah their plugin system is pretty dated. I can push something to Moodle tracker (their JIRA instance) and see if they agree or decide to stick to their old ways. 
- 
@girish I pushed a MR here and my feelings would not be hurt if you decline it: https://git.cloudron.io/cloudron/moodle-app/-/merge_requests/3 This is super sketchy and I'm really not fond of it as a solution. In my mind its either this or move the code to /app/date entirely. Not sustainable the way it is now  
- 
@atrilahiji It's more complicated unfortunately  All those subdirectories already have existing code from upstream. So, let's say All those subdirectories already have existing code from upstream. So, let's saymodandcourse/formathave existing subdirectories coming in from moodle release. So, we have to keep a copy and reverse symlink etc. It gets very ugly...I have moved everything to /app/data now though (I pushed it). Will push a new package shortly. There was a php snippet in the docs that gave me all the interesting plugin directories - https://git.cloudron.io/cloudron/moodle-app/-/blob/master/plugintypes.php . And then I copy them over like https://git.cloudron.io/cloudron/moodle-app/-/blob/master/start.sh#L44 
- 
@atrilahiji It's more complicated unfortunately  All those subdirectories already have existing code from upstream. So, let's say All those subdirectories already have existing code from upstream. So, let's saymodandcourse/formathave existing subdirectories coming in from moodle release. So, we have to keep a copy and reverse symlink etc. It gets very ugly...I have moved everything to /app/data now though (I pushed it). Will push a new package shortly. There was a php snippet in the docs that gave me all the interesting plugin directories - https://git.cloudron.io/cloudron/moodle-app/-/blob/master/plugintypes.php . And then I copy them over like https://git.cloudron.io/cloudron/moodle-app/-/blob/master/start.sh#L44 @girish Yeah... the upgrade would get messy. I was just looking over that. That script is magic. This is what I get for panic pushing a MR. I'll remove that. 
- 
@atrilahiji To add to this, I also found that many plugin do require ../../config.phpwhich breaks with symlinks.@girish Oh boy. Automating this has turned out to be quite the struggle. Thanks for all your work! I thought it would be easier than it turned out to be  Egg on face for me 
 

