Found the best code, I think: https://github.com/JChristensen/Timezone it is fully customizable. But since it uses TimeLib there is a conflict
dayOfWeek is used in TimeLib and RTClib but is a define in TimeLib
#define dayOfWeek(_time_) ((( _time_ / SECS_PER_DAY + 4) % DAYS_PER_WEEK)+1) // 1 = Sunday
and a function in RTClib
uint8_t dayOfWeek() const;
I added this in the opened issue in TimeLib library but I am thinking to modify one of the libs and put the modified library in the same folder of the main sketch because dayOfWeek is used often and if I change the main library it will break others sketch. The main candidate is RTClib since it has only two files, TimeLib instead has many files.
This issue is well known since years but never resolved.
Edit: I am wrong because I used an old RTClib, the new one uses dayOfTheWeek