fdroiddata/CONTRIBUTING.md

83 lines
2.7 KiB
Markdown
Raw Normal View History

2014-08-06 23:12:46 +00:00
# Contributing to F-Droid
2014-08-06 23:12:46 +00:00
## Issue Tracker
2015-08-18 23:55:47 +00:00
You may use the issue tracker to report issues on app metadata and issues with
the packages distributed through our repository.
2014-08-06 23:12:46 +00:00
2015-08-18 23:55:47 +00:00
Please note that app submissions belong in the
[submission queue](https://f-droid.org/forums/forum/submission-queue/).
2015-08-18 23:55:47 +00:00
Before opening an issue about an outdated app, have a look at its metadata
file and make sure that updating the app is actually possible. Issues opened
about apps that can no longer be built will be closed.
2014-08-06 23:12:46 +00:00
## Merge Requests
2015-08-18 23:55:47 +00:00
### Setting up fdroiddata for merge requests
2014-08-06 23:12:46 +00:00
* [Register on GitLab](http://gitlab.com)
2015-08-19 00:11:01 +00:00
* Visit and fork the [fdroiddata repository](https://gitlab.com/fdroid/fdroiddata)
2015-08-18 23:55:47 +00:00
2015-08-19 00:11:01 +00:00
* Follow the [Quickstart](README.md#quickstart), but using the url
`git@gitlab.com:yourusername/fdroiddata.git` when cloning
2015-08-18 23:55:47 +00:00
### Adding a new app
If you want to add a new app you will have to add a new metadata file to the
repository, like `metadata/app.id.txt`. Here is how to write that file.
If the app is on GitHub, GitLab or Bitbucket, use `fdroid import`:
2015-08-18 23:55:47 +00:00
fdroid import --url https://github.com/foo/bar --subdir app
Alternatively, start the metadata file from scratch:
2015-08-18 23:55:47 +00:00
cp templates/app-minimal metadata/app.id.txt
Now that the file is created, you need to fill up all the app information and
add a working build recipe.
You can use the [metadata section](https://f-droid.org/manual/html_node/Metadata.html)
in the manual for reference, or the full template at `templates/app-full` for
some suggestions.
Once you're done, see if `fdroid readmeta` runs without any errors. If it
doesn't, there are syntax errors in your metadata file.
### Building it
We build apps from source, so a new app must have at least one working build.
You can have a look at the build templates at `templates/build-*` for some
quick suggestions. You may also follow the manual or look at how other apps
are built for working examples.
* Run `fdroid readmeta` again to make sure there still aren't any syntax
errors
2015-08-18 23:55:47 +00:00
* Run `fdroid rewritemeta app.id` to clean up your file
2015-08-18 23:55:47 +00:00
* Run `fdroid checkupdates app.id` to fill automated fields like `Auto Name`
and `Current Version`
2015-08-18 23:55:47 +00:00
* Make sure that `fdroid lint app.id` doesn't report any warnings. If it does,
fix them.
2015-08-18 23:55:47 +00:00
* Test your build recipe with `fdroid build -v -l app.id`
2015-08-18 23:55:47 +00:00
Congratulations! You can now open a merge request to add your app.
2015-08-18 23:55:47 +00:00
Our buildserver runs builds once a day, so it may take up to 24h for your app
to appear in our repository.
### General recommendations
* [Squash](http://gitready.com/advanced/2009/02/10/squashing-commits-with-rebase.html) your commits
* Make sure you've ran `fdroid lint` and `fdroid rewritemeta` before opening a
merge request
* If you haven't tested your build, say so in the merge request.