The deal, pending a physical, could include some incentives, according to the source.
Arrieta, 34, starred for the Cubs from 2013 to 2017, winning a Cy Young Award in the 2015 season and helping the team to three playoff appearances and a World Series championship in 2016. In the 2015 and 2016 seasons, he threw two no-hitters and won 40 games.
Arrieta signed a three-year deal with Philadelphia before the 2018 season, but injuries marred his tenure there.
Arrieta joins a revamped rotation that includes World Series holdover Kyle Hendricks along with Zach Davies and Alec Mills. The Cubs showed early interest in Arrieta this offseason and began closing in on a deal after seeing him throw in Texas recently.
MLB Network was first to report news of the agreement.