Right now I use Park Tool's Bio Chainbrite to clean the drivetrain. What do you use as an alternative? Chainbrite seems spendy for what it is.
Rock N Roll Gold on my chain seems to keep things clean and working well. In instances where I want to clean further I wash the entire bike (cassette and derailleur included) with Simple Green or just Dawn dishsoap.
Not sure how great those are for the paint, but I don't really care how it looks as long as everything works.