CONTRIBUTING.md 3.17 KB
Newer Older
Frede Hundewadt's avatar
Frede Hundewadt committed
1 2
# Contributing

Frede Hundewadt's avatar
Frede Hundewadt committed
3
Contributions are welcome, and they are greatly appreciated! Every little bit helps, and credit will always be given.
Frede Hundewadt's avatar
Frede Hundewadt committed
4

Frede Hundewadt's avatar
Frede Hundewadt committed
5
You can contribute in many ways...
Frede Hundewadt's avatar
Frede Hundewadt committed
6 7 8 9 10

## Types of Contributions

### Report Bugs

Frede Hundewadt's avatar
Frede Hundewadt committed
11
Report bugs at [Manjaro Gitlab](https://gitlab.manjaro.org/fhdk/application-utility/issues).
Frede Hundewadt's avatar
Frede Hundewadt committed
12 13 14

If you are reporting a bug, please include:

Frede Hundewadt's avatar
Frede Hundewadt committed
15
- Your Manjaro Edition.
Frede Hundewadt's avatar
Frede Hundewadt committed
16 17 18 19 20
- Any details about your local setup that might be helpful in troubleshooting.
- Detailed steps to reproduce the bug.

### Fix Bugs

Frede Hundewadt's avatar
Frede Hundewadt committed
21
Look through the Gitlab issues for bugs. Anything tagged with "bug" is open to whoever wants to implement it.
Frede Hundewadt's avatar
Frede Hundewadt committed
22 23 24

### Implement Features

Frede Hundewadt's avatar
Frede Hundewadt committed
25
Look through the Gitlab issues for features. Anything tagged with "feature" is open to whoever wants to implement it.
Frede Hundewadt's avatar
Frede Hundewadt committed
26 27 28

### Write Documentation

Frede Hundewadt's avatar
Frede Hundewadt committed
29
The app could always use more documentation, whether as part of the official  docs, in docstrings, or even on the web in blog posts, articles, and such.
Frede Hundewadt's avatar
Frede Hundewadt committed
30 31 32 33 34 35 36

### Translations

Help us to ship  in your language by help translating.

### Submit Feedback

Frede Hundewadt's avatar
Frede Hundewadt committed
37
The best way to send feedback is to file an issue at [Manjaro Gitlab](https://gitlab.manjaro.org/fhdk/application-utility/issues).
Frede Hundewadt's avatar
Frede Hundewadt committed
38 39 40

If you are proposing a feature:

Frede Hundewadt's avatar
Frede Hundewadt committed
41 42 43
- Explain in detail how it would work.
- Keep the scope as narrow as possible, to make it easier to implement.
- Remember that this is a volunteer-driven project, and that contributions are welcome :)
Frede Hundewadt's avatar
Frede Hundewadt committed
44

Frede Hundewadt's avatar
Frede Hundewadt committed
45
## Get Started
Frede Hundewadt's avatar
Frede Hundewadt committed
46

Frede Hundewadt's avatar
Frede Hundewadt committed
47
Ready to contribute? Here's how to set up `application-utility` for local development.
Frede Hundewadt's avatar
Frede Hundewadt committed
48

Frede Hundewadt's avatar
Frede Hundewadt committed
49 50 51 52 53
- Fork the `application-utility` repo on Manjaro Gitlab.
- Clone your fork locally:

```bash
git clone https://gitlab.manjaro.org/your-name-here/application-utility.git
Frede Hundewadt's avatar
Frede Hundewadt committed
54 55
```

Frede Hundewadt's avatar
Frede Hundewadt committed
56 57
- Install your local copy into a virtualenv. Assuming you have [virtualenvwrapper](https://virtualenvwrapper.readthedocs.io/en/latest/) installed, this is how you set up your fork for local development
- Remember to `source /usr/bin/virtualenvwrapper.sh` to get the virtualenv CLI
Frede Hundewadt's avatar
Frede Hundewadt committed
58

Frede Hundewadt's avatar
Frede Hundewadt committed
59 60 61 62
```bash
mkvirtualenv
cd /
python setup.py develop
Frede Hundewadt's avatar
Frede Hundewadt committed
63
```
Frede Hundewadt's avatar
Frede Hundewadt committed
64 65 66 67 68

- Create a branch for local development:

```bash
git checkout -b name-of-your-bugfix-or-feature
Frede Hundewadt's avatar
Frede Hundewadt committed
69 70 71 72
```

   Now you can make your changes locally.

Frede Hundewadt's avatar
Frede Hundewadt committed
73
- When you're done making changes, commit your changes and push your branch to gitlab:
Frede Hundewadt's avatar
Frede Hundewadt committed
74

Frede Hundewadt's avatar
Frede Hundewadt committed
75 76 77 78
```bash
git add
git commit -m "Your detailed description of your changes."
git push origin name-of-your-bugfix-or-feature
Frede Hundewadt's avatar
Frede Hundewadt committed
79 80
```

Frede Hundewadt's avatar
Frede Hundewadt committed
81
- Submit a pull request through the Gitlab website.
Frede Hundewadt's avatar
Frede Hundewadt committed
82 83 84 85 86

## Pull Request Guidelines

Before you submit a pull request, check that it meets these guidelines:

Frede Hundewadt's avatar
Frede Hundewadt committed
87 88
- The pull request should include tests.
- If the pull request adds functionality, the docs should be updated. Put
Frede Hundewadt's avatar
Frede Hundewadt committed
89 90 91 92 93
   your new functionality into a function with a docstring, and add the
   feature to the list in README.md.

## Tips

Frede Hundewadt's avatar
Frede Hundewadt committed
94
### Developing environment
Frede Hundewadt's avatar
Frede Hundewadt committed
95

Frede Hundewadt's avatar
Frede Hundewadt committed
96
An editor of choice e.g.
Frede Hundewadt's avatar
Frede Hundewadt committed
97

Frede Hundewadt's avatar
Frede Hundewadt committed
98 99 100 101
- Visual Studio Code `pamac install code`
- PyCharm Community `pacman -Syu pycharm-community`
- Pandoc converter `pacman -Syu pandoc`
- Python environment
Frede Hundewadt's avatar
Frede Hundewadt committed
102

Frede Hundewadt's avatar
Frede Hundewadt committed
103 104
```bash
git clone https://gitlab.manjaro.org/fhdk/application-utility.git
Frede Hundewadt's avatar
Frede Hundewadt committed
105
cd application-utility
106
sudo pacman -Syu python-pip python-virtualenvwrapper
Frede Hundewadt's avatar
Frede Hundewadt committed
107
mkvirtualenv application-utility
108
pip install mkdocs coverage babel flake8 transifex-client
109 110
python setup.py develop

Frede Hundewadt's avatar
Frede Hundewadt committed
111
```