Former Ajax and Borussia Dortmund coach Bosz was most recently with Bayer Leverkusen and will take the reins at Lyon on 1 July.
The 57-year-old fills the void left after Garcia's decision to leave the Ligue 1 club this month, having guided it to fourth spot this season.
Bosz led Ajax to the UEFA Europa League final in 2017, beating his new employers in the semi-final, before a brief and disappointing spell with BVB.
He was sacked by Leverkusen in March and replaced on an interim basis by former Stuttgart boss Hannes Wolf, having endured a run of four wins in 18 matches in all competitions.
Lyon lost to Nice on the final day of the French season to miss out on UEFA Champions League qualification.
The club confirmed the appointment on its website, adding that club president Jean-Michel Aulas, football general manager Vincent Ponsot and sporting director Juninho would join Bosz in a news conference on Sunday.
Lyon announced the quartet would "clarify the new parameters of the team's technical organisation and explain what they will expect from the entire first team, as this commencement of a new cycle will give an added dimension to Olympique Lyonnais' ambitious project, both domestically and in the [UEFA] Europa League".