David, The path into which AOT shared objects go is just a hack to make life easier for the developers, and it probably won't change until AOT makes things consistently faster rather than slower. AOT files are conceptually equivalent to caching, and they will most likely eventually be stored in a cache path, perhaps in /usr/lib, perhaps somewhere more temporary, but only when the feature starts to become useful. The very foundation of the Mono project is to provide portable libraries and applications which don't have to be recompiled on different architectures. AOT is a neat new feature that might speed things up when it's ready, but it has no bearing on any packaging policies, and if AOT ever becomes supported, it will obviously be made to follow sensible filesystem hierarchy guidelines, rather than the other way round. This all makes a bit more sense if you consider what will end up in the RPM for each architecture you support -- which will be exactly the same thing, byte for byte. This is pretty much the definition of a noarch package.