Never use tar on windows, and don't use the old-style call() function in new code
cerbero: Fix recipe and bootstrap unpack errors on Windows This regressed after https://gitlab.freedesktop.org/gstreamer/cerbero/merge_requests/197 tar is much faster than tarfile, but the tar that we use on Windows is an ancient MSYS tar with many bugs that make it impossible to use it. So, we use tar only if we're not running on Windows.
cerbero: Use the new subprocess API for unpacking This avoids quoting issues. We should never, ever, use the old call API for new code. A list of arguments is always going to be correct and devoid of quoting issues, at least on platforms that natively support argv. Also, pass -C as the first argument to tar because the order can matter sometimes.
cerbero: Fix circular imports in shell.py Import cerbero.hacks inside the function call that needs it to avoid a top-level circular dependency in the importing. This is not a problem right now, but it's a ticking time-bomb.