It is not ethical for a government agency of any kind to accept a donation when the donator has any say as to what that money may be spent on.
Allowing that will guarantee power to corporations and further allow our government to be corrupted by the one percent.
Donations should be accepted, but ONLY if the donation is anonymous and cannot be set toward any specific purpose.
Giving money to the government is, in all actuality, giving that money to the people, because this is a government by the people and for the people! After understanding that you should logically take that the people as a whole will decide where our money goes and not just the one percent.