source: roaraudio/HACKING @ 5908:66940b2023ee

Last change on this file since 5908:66940b2023ee was 4402:f95a905ca1d2, checked in by phi, 9 years ago

a lot update to the HACKING

File size: 5.0 KB
Line 
1                 RoarAudio
2             As loud as a Lion
3           ---------------------
4
5--- 0. INDEX
60.  Index
71.  Infos for maintainers
82.  Infos for developer
9
10--- 1. Infos for maintainers:
11
12If you want to maintain a packet for your favorite OS please let me know!
13We would love to be in contact with the maintainers to send them infos about
14updates and maybe get feedback or things like init scripts or the like
15(see 2. Infos for developer).
16
17If it would make your work simpler we can put things in trunk
18(info files for pkg build tools or the like). Just ask.
19
20Also if you need any help you may contact us.
21
22You can conntact us at our mailinglist or on IRC.
23If you do not want to subscribe to the full traffic mailinglist
24but want to keep informed about new releases and such (very recommended)
25please join our announce list.
26
27Contact information can be found in our homepage at:
28http://roaraudio.keep-cool.org/contact.html
29
30Here is my recommendation on how to split the RoarAudio in pkgs:
31
32libroar               includes libroar, libroardsp, libroarmidi,
33                      libroarlight and libroareio
34roaraudio-common      include roard and roarclients
35                      (at least the ones with no special deps)
36roaraudio-tools       includes all other tools not in roaraudio-common
37                      because of special deps (if any)
38libroar-compat        includes libroaresd, libroararts, libroarpulse
39                      and libroaryiff, ... and the compatinitly binarys.
40                      It would be nice to ask the user
41                      if he wants symlinks from libesd, libarts*, libpulse*.
42roaraudio-dev         includes include/, *.pc and such
43someplayer-roar       pkgs from plugins/
44roaraudio-server      virtual package provided by the package containing
45                      roard. Applications should recommend this package
46                      not the package with roard directly.
47                      This is to enable the use to use an alternative server.
48
49manpages should be included in the corresponding packet.
50
51If your system includes a libdnet (Linux DECnet support) please build
52it with DECnet support compiled in. There will be no strange warning messages
53anymore with DECnet enabled on a non-DECnet system. libdnet does not
54require any Kernel modules or has any non standard deps itself.
55But be aware that several systems ship a libdnet which is not DECnet support.
56In this case disable the build with libdnet.
57
58If your system includes libslp (normaly one of the deps of cups) please
59consider to build with libslp support.
60
61In addition you should configure with --runtime-detect: this will
62let roard/libroar detect the presents of some tools at runtime and
63will reduce deps.
64
65Please ensure that configure finds the correct audio users group.
66In case it does not detect the correct one please set it via
67--audio-group.
68
69In case you want to provide emulation of other sound systems
70they need to be install on the build system (only). This is
71because we use parts of them (mainly header files) in order
72to build the compatibility librarys and abstraction layers
73to ensure best comaptibility. They will not be required
74after the build has been done and thereof does not need to be a
75dependency of the final packet you build.
76The only expection is in case you build driver support for
77one or more of them. If you do so you of cause need to ensure
78that all needed librarys are avalible on the target system.
79
80Running roard:
81Global (system wide) roards normaly are started as root.
82Ensure it drops it's privilegs by setting --setuid/--setgid
83and maybe -U and -G.
84Common usernames are: roard, roar, roaraudio, nobody.
85You can use the init script for debian (in dist/debian-like/)
86as example.
87
88It is allways nice to use --pidfile. If you use a pidfile
89you can start and stop roard by using --start and --stop easily.
90
91You can use --chroot to chroot into an empty directory to improve security.
92roard does the chrooting after loading everything so it is perfectly safe
93to chroot into an empty directory. In case your system includes a /var/empty
94or simular directory please do the chroot.
95
96To ensure no drops consider to add one or two --realtime.
97
98In case of a public (for LAN) server have some way for the user
99to set --location and use --slp for Zero Conf.
100
101For more information see roard --help.
102
103--- 2. Infos for developer
104
105At the moment all the libs are under GPLv3.
106As libesd, libarts*, libpulse* and maybe other are under
107LGPL the corresponding roar replacements should be under LGPL as well.
108Because they link libroar independent of what licenses they are under
109they are downgraded to GPL. This may change in future.
110
111Because of that we *require* that *everything* that is contributed by
112someone we get under LGPL so we can upgrade code to LGPL if needed
113in future without asking. Code we get under a different license
114will *NOT* get into trunk nor will be hosted by us.
115
116Also add full contact infos when sending code to us, this includes:
1171) Full name
1182) nickname
1193) E-Mail
1204) OpenPGP key
121
122When sending code please sign it with OpenPGP.
123
124#ll
Note: See TracBrowser for help on using the repository browser.