how to "randomize the color "of arrayed object
A possible way to do it is to use UV offset from the array modifier (as mentioned by Gorgious, random per island is not implemented for Eevee).

From that we can use UV texture coordinates:


Get X (U from UV) value
Multiply it (just to tune randomness)
Get cell value to have one color per arch
Use Voronoi texture to have randomness (easier to tune than noise texture)
Eventually map range to tune the result
Plug it to a colorramp containing the colors you want