After experimenting with environment variables. I found it really bothersome since after renaming any directory, a system restart was required so the env variables would be updated properly. I just discarded this approach.
EDIT: I found a way to get the updated environment variables, but is a workaround. See next post.
Now I would try this one instead, of using a python file with the list of directories.
In this file
scripts\modules\addon_utils.py replace this function:
# RELEASE SCRIPTS: official scripts distributed in Blender releases
addon_paths = _bpy.utils.script_paths("addons")
# CONTRIB SCRIPTS: good for testing but not official scripts yet
# if folder addons_contrib/ exists, scripts in there will be loaded too
addon_paths += _bpy.utils.script_paths("addons_contrib")
# ADDITIONAL SCRIPTS PATHS: good for maintaining a repository with hundreds
# of addons but only activating a few of them when doing focused development
# occationally in a few of them.
for p in blender_script_paths.paths:
Now you must create this python file anywhere so that it can be imported as a module. I just place mine in the same place as
And the file must contain a list of paths. Each path is either a single-file-addon or a package addon with an
paths = [