diff --git a/openag/cli/firmware/__init__.py b/openag/cli/firmware/__init__.py
index <HASH>..<HASH> 100644
--- a/openag/cli/firmware/__init__.py
+++ b/openag/cli/firmware/__init__.py
@@ -364,7 +364,15 @@ def run_module(
         ctx.invoke(run, **kwargs)
 
 def make_dir_name_from_url(url):
-    parsed = urlparse(url)
-    hostname = parsed.hostname
-    path = parsed.path.replace('/', ':')
-    return hostname + path
+    """This function attempts to emulate something like Git's "humanish"
+    directory naming for clone. It's probably not a perfect facimile,
+    but it's close."""
+    path = urlparse(url).path
+    head, tail = os.path.split(path)
+    # If tail happens to be empty as in case `/foo/`, use foo.
+    # If we are looking at a valid but ugly path such as
+    # `/foo/.git`, use the "foo" not the ".git".
+    if len(tail) is 0 or tail[0] is ".":
+        head, tail = os.path.split(head)
+    dir_name, ext = os.path.splitext(tail)
+    return dir_name
Keep old folder naming scheme, but make it smarter