The calculated distance (air line) between Ruiru and Machakos is approximately 33 miles respectively 54 kilometers.
By car or train, the actual journey to Machakos is certainly longer, as only the direct route (as the crow flies) between Ruiru and Machakos has been calculated here.