Machete

Mexico: Machete Cortez (Danny Trejo), a former Mexican Federal and his younger partner are on a mission to rescue a kidnapped girl (Mayra J. Leal). During the operation, his partner is killed, the kidnapped girl stabs him before being killed herself, and Machete is betrayed by his corrupt Chief to the powerful drug lord, Rogelio Torrez (Steven Seagal), who kills Machete's wife and implies that he will kill his daughter before leaving him for dead.
Three years later, a down-and-out Machete roams Texas, scraping by on yard work. Michael Booth (Jeff Fahey), a local businessman and spin doctor, explains to Machete that corrupt Texas State Senator John McLaughlin (Robert De Niro) is sending hundreds of illegal immigrants out of the country. In order to stop this, Booth offers Machete $150,000 to kill McLaughlin. Machete accepts the murder contract after Booth threatens to kill him if he does not.
Machete trains a rifle on McLaughlin from a rooftop during a rally, but before he fires he sees one of Booth's henchmen aiming at him. The henchman shoots Machete in the shoulder, the latter then shoots McLaughlin in the leg. It is revealed that Booth orchestrated the attempted assassination as part of a false flag operation to gain public support for McLaughlin's secure border campaign. By setting up Machete as the gunman, the conspirators make it appear that an outlaw illegal Mexican immigrant has tried to assassinate the senator, who is known for his tough stance on illegal immigration.
An injured Machete escapes capture by Booth and is taken to a hospital to be treated for wounds, escaping once again from Booth's henchmen at the hospital. Agent Sartana Rivera (Jessica Alba), a persistent U.S. Immigration and Customs Enforcement agent, is sent by her superior to find and capture the injured Machete. Machete, with the help of Luz (Michelle Rodriguez), aka ShÃ©, the leader of an illegal immigrant aid movement known as the Network, recruits Padre (Cheech Marin), his "holy" brother. To take revenge on Booth, Machete kidnaps Booth's wife and his daughter, April (Lindsay Lohan), after "starring" in an amateur adult film with them. He also collects evidence from Booth's house linking McLaughlin and the Mexican drug lord in a major drug trafficking deal. After encountering Machete, Sartana begins to develop an interest in him. Elsewhere, Booth, who is revealed to be working for Torrez, hires a hitman, Osiris Amanpour (Tom Savini), to assist in the hunt for Machete.
Booth and Osiris kill Padre in his church by nailing him to a cross, but do not find his own wife and daughter. Unbeknownst to Booth, the church has cameras. Through the CCTV recordings, the news of McLaughlin's corruption and faked assassination is eventually aired on national television. Infuriated, McLaughlin kills Booth and heads back to join Torrez to kill Machete. In order to eliminate the people who double-crossed him, Machete gathers the Mexican Network and leads them to the base of the border vigilantes, led by Von Jackson (Don Johnson).
During this confrontation, the Mexican illegals triumph over the border vigilantes. Jackson tries to escape, but Luz shoots him in the back of the head. Machete fights Torrez and stabs him. April shows up wearing a nun's habit after escaping from the church and shoots McLaughlin after figuring out that he has killed her father.
McLaughlin, injured, manages to escape, but he is later killed by the last remnants of his own border vigilante group, who mistake him for a Mexican. Ultimately, Machete meets with Sartana, who gives him a green card. They kiss and ride off into the night. The closing credits announce further adventures for Machete.

Question: Who shoots Jackson?
Answer: Luz.; Luz.