I don't think that works, because the command substitution in "$(…).txt"
runs immediately in the current shell.
Aside from that, find -exec
doesn't use a shell to run its command, which means $(…)
won't work without an explicit sh call.
I believe the right command in this style that will work is:
find /my/mp3dir -type f -iname '*.mp3' -exec sh -c \
'test -f "${0%.mp3}.txt" && mp3splt -A "${0%.mp3}.txt" "$0"' \
'{}' ';'
However, I would recommend the for f in *.mp3
-style solution instead, as to me it's more readable. (The Bash/Zsh recursive glob (**
) syntax can be used if subdirectories are involved.)
They're switching their main repository from Mercurial to Git. Mozilla started using Mercurial before Git became de facto standard, but I imagine these days learning Mercurial is seen as an unnecessary obstacle for new contributors, hence the current switch.
As for why GitHub specifically, it's because that's where the rest of Mozilla's projects already are. They have been using GitHub for a long time (14 years or more), with thousands of repositories there. It's why Rust and Servo are on GitHub, for example.
Edit: See https://glandium.org/blog/?p=4346 for more thorough/accurate info.