As far as I am aware, this is by design. A lot of Nix features (nested package sets, …) have been removed from Flakes to make evaluation caching easier. A function is fundamentally not-cacheable, so flakes has no first class support for passing arguments.