In case you pull Donut in a separate directory, then build a symbolic link of the plugin and the theme into q2a, two defines would break the code because they would refer to the original checkout dir and not q2a. By using Q2A already defined constants we can work around this issue:
@define( 'DONUT_THEME_BASE_DIR', dirname( __FILE__ ) );
@define( 'DONUT_THEME_BASE_DIR', QA_BASE_DIR . 'qa-theme/Donut-theme');