All new buildings with large roofs must have solar panels installed. The law will apply to all new builds with a roof space of more than 300 m2.
But parliament has rejected a campaign to also include renovations and is still discussing solar panels for parking spaces.
The move comes after voters in canton Valais rejected building solar farms in the Alps.
Commentators suggested the people wanted buildings to be prioritized for solar panels before installing them in the mountains.
Trees down, power out across western Switzerland
Police frank about French crime wave
Skiing to be more expensive this season
Thousands struggle with basic skills
Army sergeant throws cat at recruits
Clock change sends people to the ER
