diff --git a/lib/private/App/DependencyAnalyzer.php b/lib/private/App/DependencyAnalyzer.php
index 7adb5d1c57413a721e14cc4975bb47212aca33e1..7b48e81f3ebffa68ce09737b25443fc677cdb1ad 100644
--- a/lib/private/App/DependencyAnalyzer.php
+++ b/lib/private/App/DependencyAnalyzer.php
@@ -197,6 +197,9 @@ class DependencyAnalyzer {
 		if (!is_array($commands)) {
 			$commands = array($commands);
 		}
+		if (isset($commands['@value'])) {
+			$commands = [$commands];
+		}
 		$os = $this->platform->getOS();
 		foreach ($commands as $command) {
 			if (isset($command['@attributes']['os']) && $command['@attributes']['os'] !== $os) {
diff --git a/tests/lib/App/DependencyAnalyzerTest.php b/tests/lib/App/DependencyAnalyzerTest.php
index eb1142afd9dc40f67e0a850e56d503f7c89485f0..091479798b3eeeaa1cdadbfaba38760a71b3d7bc 100644
--- a/tests/lib/App/DependencyAnalyzerTest.php
+++ b/tests/lib/App/DependencyAnalyzerTest.php
@@ -266,6 +266,7 @@ class DependencyAnalyzerTest extends TestCase {
 			[[], [['@attributes' => ['os' => 'Windows'], '@value' => 'grepp']]],
 			// grep is known on all systems
 			[[], 'grep'],
+			[[], ['@attributes' => ['os' => 'Linux'], '@value' => 'grep']],
 		];
 	}