Updated at 11:45 a.m. ET
Joe Walsh, a conservative talk-radio host and former Tea Party congressman, is launching a long-shot primary challenge to President Trump. He's the second Republican to officially announce a run against Trump, who has a strong approval rating among his party's base.
Walsh, 57, supported Trump during his 2016 campaign but in recent months has been offering a bitter critique of the president, calling Trump a liar and bully who is unfit for office. Walsh has also attacked Trump from the right.
"Mr. Trump isn't a conservative. He's reckless on fiscal issues; he's incompetent on the border; he's clueless on trade; he misunderstands executive power; and he subverts the rule of law. It's his poor record that makes him most worthy of a primary challenge," Walsh wrote in a New York Times op-ed this month.
On the Democratic side, meanwhile, 21 candidates are vying for the White House in 2020. But far fewer Republicans are attempting to deny Trump a second term. Former Massachusetts Gov. Bill Weld is the only other person so far to announce he'll try to unseat Trump, whose support among Republicans usually polls in the 80s, making him a formidable party incumbent.
"We can't take four more years of Donald Trump. And that's why I'm running for President," Walsh tweeted on Sunday. "It won't be easy, but bravery is never easy."
When asked by Politico if he could raise enough money to pose a legitimate challenge to Trump, Walsh responded: "Abso-freaking-lutely. There's a drumbeat from a lot of people out there for somebody who wants to take this on."
Walsh has a history of controversial, incendiary and offensive comments.
In October 2016, Walsh said on Twitter that he was backing Trump for president, saying: "On November 9th, if Trump loses, I'm grabbing my musket. You in?"
Walsh was pulled off the air from his radio show in 2014 following his use of racial slurs in a discussion over the controversy around the Washington Redskins name. He later tweeted: "I'm trying to have an honest, adult conversations about words without resorting to alphabet soup phrases(C-word, N-word, etc)."
Walsh, who has called President Barack Obama a "Muslim" and a "traitor," told George Stephanopoulos on ABC News's This Week on Sunday that he has apologized for those comments, saying he feels responsible for some of Trump's incendiary rhetoric.
"I helped create Trump. There's no doubt about that. The personal ugly politics. I regret that," Walsh said. "Now we have a guy in the White House, that's all he does."
In a video posted to his website, the former one-term Illinois congressman says, "These are not conventional times. These are urgent times. Let's be real — these are scary times."
He goes on: "We're tired of a president waking up every morning and tweeting ugly insults at ordinary Americans. We're tired of a president who sides with Putin against our own intelligence community. We're tired of a president who thinks he's above the law. We're tired of a president who's tweeting this country into a recession."