<div dir="ltr">Has anyone built the GStreamer SDK on an offline machine? I've just done it on Windows, but it was very tedious since cerbero relies so much on cloning repos and downloading tarballs. Here's a rough outline of what I had to in case anyone else has to do this.<div>

<br></div><div>All the Windows dependencies were easy to install, though for mingw I had to install it on an online machine then copy it over (making sure to install msys-wget which isn't installed by default). Bootstrapping was a bit of an annoyance, as I had to manually download the archives from bootstrap/windows.py and either copy them so wget wouldn't try to download them or extract it myself, commenting out the redundant bits in bootstrap/windows.py.</div>

<div><br></div><div style>For building recipes I modified commands/info.py to spit out the URLs for any tarballs required by the recipes, then downloaded them on an online machine with wget -i. I had to do some more minor modifications to use the downloaded files. For git repos I just did a mirror clone of all gstreamer and gstreamer-sdk repos. Thankfully most of the remotes can be updated just by setting DEFAULT_GIT_ROOT in cerbero/config.py to the local mirror, however for the 1.0 recipes I had to do a find and replace since they directly use the upstream URL.</div>

<div style><br></div><div style>The biggest annoyance was that every GStreamer repo references the common repo by it's upstream URL, so I had to fix that for every recipe by running git config submodule.common.url to point to the local mirror.</div>

<div style><br></div><div style>I'll probably end up doing this again on another machine, so wanted to see if anyone else has tried this and has a better way. If not I might just patch cerbero to spit out a list of all zip/tarball/git URLs, and to fix the other issues I mentioned above.</div>

<div style><br></div><div style>-Josh</div></div>