Currently supported project sources are:
These locations are all frequently used for interpreted languages. There is no
0compiled (source) feeds yet, but I hope to add it in the future.
Create a new feed:
0downstream new --prefix=<prefix> <url> <filename>
0downstream new \ --prefix=http://gfxmonk.net/dist/0install/ \ https://github.com/jkbr/httpie \ httpie.xml
Instead of the URL, you can also just use :, i.e:
This will fill in feed details using the available metadata, and add an implementation for the latest implementation of the project, based on project releases (or version tags in the case of github). You'll still have to fill in dependency information, environment bindings and any commands yourself, but hopefully only once. You can see the result at my 0install repository (view source to see the actual generated xml).
prefix argument is the base URL where you plan to upload the feed. All mine
update an existing feed:
because 0downstream embeds project information inside the generated feed, you can just run:
0downstream update <filename>
And it'll add an <implementation> for the latest version of the project (in the <group> nearest the end of the file).
check for updates:
Not very useful for manual use, but this command will exit with a
code if there is a newer version on the project page than in the feed. Probably
useful in a
0downstream check <filename>
"it doesn't work", or "you should add ..."
Please open a github issue. I especially like the "pull request" type where you've done all the hard work and I just press the green button.
It should be reasonably easy to add a new project type - you can use one of the
existing ones in
zeroinstall_downstream/project to base it on. I won't merge
pull requests for new project sources until you've added the appropriate tests
(they're not hard!).