A modern Music Player Daemon based on Rockbox open source high quality audio player
libadwaita
audio
rust
zig
deno
mpris
rockbox
mpd
1 __________ __ ___.
2 Open \______ \ ____ ____ | | _\_ |__ _______ ___
3 Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
4 Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
5 Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
6 \/ \/ \/ \/ \/
7 Contribution Policies
8
9
10In order for the project to run as smoothly as possible, it's best if all
11contributors adhere to a few simple source code conventions:
12
13Exceptions
14----------
15This project borrows and imports quite a lot of code from other free software
16projects. We do not change style of such code unless we really have to, even
17though they might be using style very different from others.
18
19Language
20--------
21Write all code in C. Sometimes assembly is faster, but C is always more
22readable and maintainable.
23
24Language features
25-----------------
26Write normal C code. Keep it simple. Don't redefine the language. No new types
27(structs are structs, not typedefs). No C++isms or Javaisms. No code in .h
28files or #defines.
29
30Identifiers
31-----------
32We do not want mixed case identifiers.
33Variables and function names should be all lower case.
34Struct and enum names should be all lower case.
35Preprocessor symbols and enum constants should be all upper case.
36
37Comments
38--------
39We only use plain old /* C standard comments */.
40If you want to comment out large blocks containing other comments, use #if 0.
41
42Style
43-----
44When changing code, follow the code style of the file you are editing.
45
46When writing new files, you may use the brace placement style of your choice.
47
48Braces for function declarations are put in a new line under the name, as in:
49
50 int foo(char *name)
51 {
52 return FOO_NAME:
53 }
54
55Always indent your code with four spaces. Don't use TAB characters, as that
56will mess up code display, printing, and a zillion other places.
57
58Keep lines below 80 columns length. Use whitespace and newlines to make the
59code easy to browse/read.
60
61Text format
62-----------
63Use "unix style" line feeds: "LF" only. Do not use "CR+LF".
64
65Use UTF-8 character set, but try to refrain from using any non-ascii
66letters as they will only appear weird in some camps no matter what.
67
68Contributing code
69-----------------
70We have a public code review system based on git, which is also how you can
71check out the latest version of the Rockbox sources.
72See https://www.rockbox.org/wiki/UsingGit for details on how to setup your
73environment and how to upload a change you have made for review.
74
75We'd prefer that you don't submit patches to the bug tracker any more,
76as it's much harder to read and discuss them there.
77
78Credits
79-------
80We believe in crediting all contributors by name. Before committing a patch to
81Git, we ask that you give us your full real name (no pseudonyms or nicknames)
82for adding to the credits list.