I had always assumed that SourceTree was a portable Qt app (it looks like it, doesn't it?), but it's only available on macOS and Windows.
Tower and GitUp are a huge lock-in into macOS for me. Tower for line-by-line staging/discarding, GitUp for minor history fix-ups (editing a commit message without remembering the CLI command, etc.).