You enter into a job knowing full well when you will be working
If that was the case that would be OK. My DH started his job - in retail- 22 years ago. Over the years his contract has been changed and changed and changed. At that point you have two choices. Either sign the new contract or sack yourself.
So he started a job with Saturday nights off guaranteed, 4 nights a week, BHs recognised. He now works 5 nights a week, at least 10 extra hours a week unpaid, works every single weekend, they "don't recognise BHs" so you don't get any extra pay. He slept all day 24th because he was working 23rd. He had 25th at home, but ended up falling asleep most of the afternoon. Yesterday he had to "pop in" during the afternoon for about an hour to close the petrol station, after which he had to sleep so that he was ready to work again last night.
It does seem to be that people who are lucky enough to have a proper break from work are those shouting the loudest about needing shops to be open. As someone else said, why don't we go the whole hog and insist that offices, schools, dentists, doctors are open 24 hours 7 days a week?
Our grandparents fought for the right to have weekends off work, and for bank holidays and the like. We are just gradually giving up all those hard-won benefits :(