Fix duplicate 'unix' OS and latest-revision deps

* The 'deps_os' list processed 'unix' twice. The former is likely meant
  to process 'linux' instead.
* The roller skips dependencies that do not an '@' to split on. However,
  it is valid to specify a DEPS that has no specific revision. In this
  case, gclient assumes to pull HEAD.

Bug: webrtc:15215
Change-Id: Idf2f51ebd55f00a96b7b7f4a1935cd69881cabd8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/307240
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Prashanth Swaminathan <prashanthsw@google.com>
Cr-Commit-Position: refs/heads/main@{#40189}
diff --git a/tools_webrtc/autoroller/roll_deps.py b/tools_webrtc/autoroller/roll_deps.py
index 58bdbff..cdb7432 100755
--- a/tools_webrtc/autoroller/roll_deps.py
+++ b/tools_webrtc/autoroller/roll_deps.py
@@ -275,8 +275,9 @@
         result[path] = CipdDepsEntry(path, dep['packages'])
       else:
         if '@' not in dep['url']:
-          continue
-        url, revision = dep['url'].split('@')
+          url, revision = dep['url'], 'HEAD'
+        else:
+          url, revision = dep['url'].split('@')
         result[path] = DepsEntry(path, url, revision)
 
   def AddVersionEntry(vars_subdict):
@@ -289,7 +290,7 @@
       result[key] = VersionEntry(value)
 
   AddDepsEntries(deps_dict['deps'])
-  for deps_os in ['win', 'mac', 'unix', 'android', 'ios', 'unix']:
+  for deps_os in ['win', 'mac', 'linux', 'android', 'ios', 'unix']:
     AddDepsEntries(deps_dict.get('deps_os', {}).get(deps_os, {}))
   AddVersionEntry(deps_dict.get('vars', {}))
   return result