Opener Abid Ali became the first batsman to score hundreds on both Test and one-day debuts as Pakistan's first home match in the long form of the game since the 2009 attack on the visiting Sri Lanka team ended in a tame draw against the same opponents Sunday. On 95, the 32-year-old hit paceman Vishwa Fernando for a boundary and then drove him through cover for two to complete his hundred, raising his hands in jubilation before kneeling on the ground to offer a prayer of gratitude. His hundred came in 267 minutes, laced with 11 boundaries, and was the highlight of a Test badly affected by bad weather.
Pakistan finished at 252-2, with stylish batsman Babar Azam knocking his third Test century with a boundary off spinner Dilruwan Perera.
Azam ended with 102 not out, which came in 151 minutes of punishing batting spiced by 14 crisp boundaries.
But the day belonged to Abid, one of 15 batsmen to score a hundred on their one-day international debut -- against Australia in Dubai in March his year -- since the inception of limited over cricket in January 1971.
None of the others also scored a century on their debut in Test cricket, which started in 1876.
Abid is the 11th Pakistani batsmen to score a century on Test debut.
Abid's feat spiced up the historic Test, the first in Pakistan since the 2009 attacks on the Sri Lankan team bus left international cricket suspended in the country.
Only 91.5 overs were possible on the first four days as rain, bad light and overcast conditions affected play. The fourth day was abandoned without a ball being bowled.
But there was bright sunshine on Sunday as Sri Lanka batted for 20 minutes to declare their first innings at 308-6 with middle-order batsman Dhananjaya de Silva scoring an unbeaten 102.
With gates opened to the crowd for free, about 12,000 fans were kept entertained by Dhananjaya and then Abid.
Pakistan lost opener Shan Masood for nought when he drove a full toss from paceman Kasun Rajitha straight into the hands of Dinesh Chandimal at cover
Skipper Azhar Ali scored a shaky 36 before he was caught off Lahiru Kumara.
Dhananjaya finally completed his sixth Test century in the morning.
The 28-year-old right-hander drove paceman Mohammad Abbas for his 15th boundary to bring up the hundred in his 28th Test.
De Silva remained unbeaten on 102 after 241 minutes of batting, having come in with the score on 127-4 on Thursday. Dilruwan Perera remained unbeaten on 16.
The pick of the Pakistan bowlers were 16-year-old quickie Naseem Shah, who took 2-92, and Shaheen Shah Afridi with 2-58.
The second Test is in Karachi starting December 19.