pw_package: Update nanopb to 0.4.4

Also switch to mirror on pigweed.googlesource.com (mirrored through
github.googlesource.com).

Now checking if URLs are equivalent given that many Googlers have
insteadOf lines in their Git configs.

Change-Id: Ib776523eed44a0154d76550a9ccfe35396e434b2
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/31360
Commit-Queue: Auto-Submit <auto-submit@pigweed.google.com.iam.gserviceaccount.com>
Reviewed-by: Wyatt Hepler <hepler@google.com>
Pigweed-Auto-Submit: Rob Mohr <mohrr@google.com>
diff --git a/pw_package/py/pw_package/git_repo.py b/pw_package/py/pw_package/git_repo.py
index 4b98366..fa9f129 100644
--- a/pw_package/py/pw_package/git_repo.py
+++ b/pw_package/py/pw_package/git_repo.py
@@ -18,6 +18,7 @@
 import shutil
 import subprocess
 from typing import Union
+import urllib.parse
 
 import pw_package.package_manager
 
@@ -50,6 +51,16 @@
             return False
 
         remote = git_stdout('remote', 'get-url', 'origin', repo=path)
+        url = urllib.parse.urlparse(remote)
+        if url.scheme == 'sso' or '.git.corp.google.com' in url.netloc:
+            host = url.netloc.replace(
+                '.git.corp.google.com',
+                '.googlesource.com',
+            )
+            if not host.endswith('.googlesource.com'):
+                host += '.googlesource.com'
+            remote = 'https://{}{}'.format(host, url.path)
+
         commit = git_stdout('rev-parse', 'HEAD', repo=path)
         status = git_stdout('status', '--porcelain=v1', repo=path)
         return remote == self._url and commit == self._commit and not status
diff --git a/pw_package/py/pw_package/packages/nanopb.py b/pw_package/py/pw_package/packages/nanopb.py
index c582c76..b5875d4 100644
--- a/pw_package/py/pw_package/packages/nanopb.py
+++ b/pw_package/py/pw_package/packages/nanopb.py
@@ -23,11 +23,13 @@
 class NanoPB(pw_package.git_repo.GitRepo):
     """Install and check status of nanopb."""
     def __init__(self, *args, **kwargs):
-        super().__init__(*args,
-                         name='nanopb',
-                         url='https://github.com/nanopb/nanopb.git',
-                         commit='9f57cc871d8a025039019c2d2fde217591f4e30d',
-                         **kwargs)
+        super().__init__(
+            *args,
+            name='nanopb',
+            url=
+            'https://pigweed.googlesource.com/third_party/github/nanopb/nanopb',
+            commit='2b48a361786dfb1f63d229840217a93aae064667',
+            **kwargs)
 
     def info(self, path: pathlib.Path) -> Sequence[str]:
         return (