avalon install <config-name>
Goal
Simplify getting started on your first pipeline.
Motivation
First thing anyone asks when getting started with Avalon is what config to use and how to use it. Turn that into a single command.
Implementation
Like a package registry e.g. pip or scoop or conda, enable the user to install both avalon and a (registered) config via the command-line on first-use.
$ pip install avalon
$ avalon install colorbleed
# Downloading https://github.com/.../...
# Success
$ avalon launcher
# GUI appears
install would be a subcommand of avalon that then looks at e.g. https://github.com/getavalon/packages for things to download, things others can register akin to the Sublime Text package control channel.
I like it :) Though the configs out there like colorbleed and pype aren't self contained atm, but maybe this will encourage it.
Though the configs out there like colorbleed and pype aren't self contained atm
They are not? :O What do they depend on? Could dependencies be pip-like, e.g. a requirements.txt?
What do they depend on?
Various private or forks of public repos. Maybe colorbleed less, since its more open. There is nothing preventing them from getting isolated though, so as I said maybe this will encourage isolating the configs.
If anything required from colorbleed-config isn't open/public let me know. It should be close to having no dependencies outside of the config itself. However our acre branch currently relies on acre being on your pythonpath too.
I've never created pip installables, but I'd be happy to ease the way with colorbleed-config.
E.g. I can put in requirements.txt if that's helpful.
We have a large cleanup sprint this and next week after which we're releasing current state of pype to github again and hopefully being once again as much avalon-core compatible as possible, but it's hard to say whether it will be fully out. The biggest difference being our tray app probably. we'll put more effort into putting a lot of it back to core.