you can simplify it as a package cannot have several links to the same target (as it is stored as an associative array in the composer.json)