Binder Building Blocks

This may well be crazy talk, but it arose from a practical use case: trying to build a Binderised repo that aggregated Binder configs from several other repos.

So I’m wondering about the following possible setups and wondering about things like the following… (I appreciate the following don’t completely generalise, that build files often appear outside of binder/ path etc etc, but: first thoughts and early steps, that may only work in some convention limited cases…)

apt & requirements folders

Create binder/apt and binder/requirements directories. A preBuild script then runs to cat the contents of files in binder/apt into apt.txt etc

Sub-binder folders

From my other projects, copy my binder dirs, rename them as binder/binder-proj1, binder/binder-proj2 etc. A preBuild script runs to cat binder/binder-proj1/apt.txt, binder/binder-proj2/apt.txt into apt.txt etc

Binder folder indirection

Copy over binder/ dirs as binder/binderblock/proj1/binder, binder/binderblock/proj2/binder and cat binder/binderblock/proj1/binder/apt.txt etc etc

Imports

Have an importBinder file that contains https://github.com/user/proj etc links and from which the binder/ dirs are imported and processed.

And PS…

A binder/ folder leaves untidiness in a built image. I often delete it from the end of postBuild or start. A hidden .binder dir would be tidier whilst still sharing the set-up for anyone interested…

Following on from this thread, re:

A hidden .binder dir would be tidier

repo2docker will look use either an explicit binder/ xor a hidden .binder/ directory as per here (h/t @betatim).

Re: merging multiple binder configs into one, I started making some crappy sketches around that here.

1 Like