BEIRUT, Lebanon — A deal to evacuate insurgents from the Old City of Homs in central Syria hit a snag on Thursday when rebels in Aleppo Province refused to allow all of a humanitarian convoy to enter two villages they had blockaded, as called for under a pact between the government and the rebels, opposition activists and a pro-government television channel reported.

The problems came as insurgents in the northern city of Aleppo set off an enormous explosion that leveled the historic Carlton Hotel, facing the city’s ancient citadel, where government troops had been billeted. Clouds of dust and debris towered above the citadel’s ramparts, underscoring the insurgents’ vow to continue the fight and their ability to carry out damaging attacks despite retreating from Homs.

The Islamic Front, the insurgent coalition that claimed responsibility for the blast, also controls territory where the aid convoys were blocked from entering the villages of Nubol and Zahra. Its members are among those who have objected to the deal on the grounds that rebels should make no compromise with the government.

The government was preventing the last busload of fighters from leaving Homs’s Old City until the aid was allowed to reach the villages, the Lebanese television channel Al Mayadeen reported, leaving the completion of the deal in limbo. Several hundred fighters remained in the Old City after nearly 1,000 left on Wednesday for insurgent-held areas in northern Homs Province. Scores of prisoners and hostages held by rebels in Aleppo and Latakia Provinces have been released.