source: roaraudio/HACKING @ 2552:2ac7bac1feba

Last change on this file since 2552:2ac7bac1feba was 2552:2ac7bac1feba, checked in by phi, 15 years ago

note about needing pkgs for budling comp layers on build system only

File size: 4.1 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!
13I 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 I 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 me.
21
22Here is my recommendation on how to split the RoarAudio in pkgs:
23
24libroar               includes libroar, libroardsp, libroarmidi,
25                      libroarlight and libroareio
26roaraudio-common      include roard and roarclients
27                      (at least the ones with no special deps)
28roaraudio-tools       includes all other tools not in roaraudio-common
29                      because of special deps (if any)
30roaraudio-compat      includes libroaresd, libroararts, libroarpulse
31                      and libroaryiff. It would be nice to ask the user
32                      if he wants symlinks from libesd, libarts*, libpulse*.
33roaraudio-dev         includes include/
34someplayer-roar       pkgs from plugins/
35
36manpages should be included in the corresponding packet.
37
38If your system includes a libdnet (Linux DECnet support) please build
39it with DECnet support compiled in. There will be no strange warning messages
40anymore with DECnet enabled on a non-DECnet system. libdnet does not
41require any Kernel modules or has any non standard deps itself.
42
43If you system includes libslp (normaly one of the deps of cups) please
44consider to build with libslp support.
45
46In addition you should configure with --runtime-detect: this will
47let roard/libroar detect the presents of some tools at runtime and
48will reduce deps.
49
50Please ensure that configure finds the correct audio users group.
51In case it does not detect the correct one please set it via
52--audio-group.
53
54In case you want to provide emulation of other sound systems
55they need to be install on the build system (only). This is
56because we use parts of them (mainly header files) in order
57to build the compatibility librarys and abstraction layers
58to ensure best comaptibility. They will not be required
59after the build has been done and thereof does not need to be a
60dependency of the final packet you build.
61The only expection is in case you build driver support for
62one or more of them. If you do so you of cause need to ensure
63that all needed librarys are avalible on the target system.
64
65Running roard:
66Global (system wide) roards normaly are started as root.
67Ensure it drops it's privilegs by setting --setuid/--setgid
68and maybe -U and -G.
69
70It is allways nice to use --pidfile. If you use a pidfile
71you can start and stop roard by using --start and --stop easily.
72
73You can use --chroot to chroot into an empty directory to improve security.
74roard does the chrooting after loading everything so it is perfectly safe
75to chroot into an empty directory. In case your system includes a /var/empty
76or simular directory please do the chroot.
77
78To ensure no drops consider to add one or two --realtime
79
80In case of a public (for LAN) server have some way for the user to set --location
81and use --slp for Zero Conf.
82
83For more information see roard --help.
84
85--- 2. Infos for developer
86
87At the moment all the libs are under GPLv3.
88As libesd, libarts*, libpulse* and maybe other are under
89LGPL the corresponding roar replacements should be under LGPL as well.
90Because they link libroar independent of what licenses they are under
91they are downgraded to GPL. This may change in future.
92
93Because of that I *require* that *everything* that is contributed by
94someone I get under LGPL so I can upgrade code to LGPL if needed
95in future without asking. Code I get under a different license
96will *NOT* get into trunk nor will be hosted by me.
97
98Also add full contact infos when sending code to me, this includes:
991) Full name
1002) nickname
1013) E-Mail
1024) OpenPGP key
103
104When sending code please sign it with OpenPGP.
105
106
107#ll
Note: See TracBrowser for help on using the repository browser.