Gate switch icons based on status

I have a button that opens the gate:

  - name: "Car gate"
    unique_id: "car_gate_button"
    command_topic: "home/utilities/PT/car_gate/set"
    qos: 0
    payload_press: "push"
    retain: false

how can I have the icon that changes from closed to open based on a status?
I see that buttons don’t have status and the only things that can change icons are binary sensors. How can I mix the button with the binary sensor?
This seems a pretty “normal” thing that shouldn’t require automation, right?