The most efficient way for performing such homomorphic arbitrary permutations that I am aware of is based on a linear transformation of an encrypted vector, where the linear map is composed of 0’s and 1’s. Two relevant papers are Faster Homomorphic Linear Transformations in HElib and Secure Outsourced Matrix Computation and Application to Neural Networks. The matrix arithmetic library we are adding for OpenFHE is based on some of these algorithms.
In OpenFHE, there is a function EvaLT that can be used for such linear transforms. Ar a high level, you can use rotations, multiplications by masks with 1’s and 0’s, and additions to obtain any permutation.