Because the package was added to doom-disabled-packages at macro expansion time, rather than at run time. This meant that, even if you did: (when nil (package! x :disable t)) x would still be disabled. Reported by @ar1a