Let me clarify that -- there are people who are using Scrum to do agile. Scrum is not _against_ agile. But if you are doing two-week sprints because management is chasing the latest fad, without empowering the team, you're not agile, you're just in a Scrum cargo cult.
Exactly this, agile is all about empowering devs, trusting them and allowing them to work.
Sprints are about enforcing feedback from the customer into the loop. If you have a half decent customer they should be happy with any length sprint and releases that make sense.
No, sprints are about creating artificial deadlines to stress developers to work more hours to meet so-called commitments/forecasts.
It does not work of course, but that is what it is about.