Properly install multiple plugins in series
diff --git a/package.json b/package.json
index acacbd2..5be8601 100644
--- a/package.json
+++ b/package.json
@@ -18,7 +18,8 @@
   "engineStrict": true,
   "dependencies": {
     "cordova-lib": "^9.0.0",
-    "nopt": "^4.0.1"
+    "nopt": "^4.0.1",
+    "p-each-series": "^1.0.0"
   },
   "devDependencies": {
     "eslint": "^5.15.3",
diff --git a/src/commands.js b/src/commands.js
index 1e25716..81807c6 100644
--- a/src/commands.js
+++ b/src/commands.js
@@ -19,6 +19,7 @@
 
 // copyright (c) 2013 Andrew Lunny, Adobe Systems
 
+const pEachSeries = require('p-each-series');
 const { plugman } = require('cordova-lib');
 
 module.exports = {
@@ -38,14 +39,10 @@
             force: cli_opts.force || false,
             nohooks: cli_opts.nohooks || false
         };
-        var p = Promise.resolve();
-        cli_opts.plugin.forEach(function (pluginSrc) {
-            p = p.then(function () {
-                return plugman.install(cli_opts.platform, cli_opts.project, pluginSrc, cli_opts.plugins_dir, opts);
-            });
-        });
 
-        return p;
+        return pEachSeries(cli_opts.plugin, pluginSrc =>
+            plugman.install(cli_opts.platform, cli_opts.project, pluginSrc, cli_opts.plugins_dir, opts)
+        );
     },
 
     uninstall (cli_opts) {
@@ -53,19 +50,15 @@
             return console.log(plugman.help());
         }
 
-        var p = Promise.resolve();
-        cli_opts.plugin.forEach(function (pluginSrc) {
-            var opts = {
-                www_dir: cli_opts.www,
-                save: cli_opts.save || false,
-                projectRoot: cli_opts.project
-            };
-            p = p.then(function () {
-                return plugman.uninstall(cli_opts.platform, cli_opts.project, pluginSrc, cli_opts.plugins_dir, opts);
-            });
-        });
+        var opts = {
+            www_dir: cli_opts.www,
+            save: cli_opts.save || false,
+            projectRoot: cli_opts.project
+        };
 
-        return p;
+        return pEachSeries(cli_opts.plugin, pluginSrc =>
+            plugman.uninstall(cli_opts.platform, cli_opts.project, pluginSrc, cli_opts.plugins_dir, opts)
+        );
     },
 
     create (cli_opts) {