The computational chemistry software ORCA (requires the registration of an account, although both registration and the software itself is free for academic users; for a tutorial that is viewable without registration, see https://www.orcasoftware.de/tutorials_orca/index.html). In ORCA one can compute XAS/XES/RIXS at the TDDFT, DFT/ROCIS (a spin-adapted, empirically scaled TDDFT/TDA method, suitable for Mott insulators) and CASCI/NEVPT2 (a multireference method with perturbative second-order dynamical correlation) levels. Some additional highlights are the inclusion of scalar relativistic (ZORA or DKH2) and spin-orbit coupling effects, the inclusion of transition quadrupole moment contributions to the oscillator strengths (thus dipole-forbidden but quadrupole-allowed transitions are correctly predicted as bright), and the possibility of computing circular dichroism and even magnetic circular dichroism spectra.
Note that ORCA is a molecular code, not a periodic code. This means that you have to use a cluster model in the computations, although as X-ray spectra are rather local properties, you can usually get away with clusters of modest size (well within 100 atoms, for example). The immediate environment of the cluster is treated by an embedding potential, while the distant part of the environment is treated by point charges. The non-periodicity of the system also means that some functionalities that are difficult to access with periodic codes become very easy to do, for example a full treatment of long-range HF exchange is well possible, and multireference treatments of the metal center are also completely doable.
Another possible option is the BDF (Beijing Density Functional) software package. BDF supports the calculation of XAS/XES spectra at the X-TDDFT level of theory, although it does not support RIXS yet. Advantages of BDF in this aspect include: (1) while X-TDDFT is also a spin-adapted TDDFT method, it is cheaper than DFT/ROCIS; (2) the scalar relativistic effects are treated at the sf-X2C level; (3) the core-valence excitations are allowed to mix with the valence-valence excitations; (4) thanks to the use of the iVI method (see my another answer on this site), the user can request the program to calculate all excited states within a given excitation energy range, and only those states that are within that range, without knowing how many excited states there are in that range; and (5) the boundary of the cluster and the environment is treated using the projected hybrid orbital (PHO) method, which is usually more accurate than the embedding potential method used by ORCA when the cluster-environment interaction is mostly covalent (conversely ORCA's treatment is more accurate when the interaction is mostly ionic). Therefore, BDF may be useful when you cannot afford DFT/ROCIS, when ZORA and DKH2 are not accurate enough for your system, or when your material has a high covalent character.