source: README @ b58aada

debianmacno-cupsweb
Last change on this file since b58aada was b58aada, checked in by Jessica B. Hamrick <jhamrick@…>, 14 years ago

Use perl bindings for gbr and gbrm in addition to gbq. Update README.

  • Property mode set to 100644
File size: 3.9 KB
Line 
1So, you want to develop gutenbach, eh?  Good!
2
3Gutenbach is a distributed music player built on top of CUPs.  It
4essentially enables anybody with access to it to play music from their
5own computer -- all they have to do is "print" to the Gutenbach
6instance as they would any other document!
7
8The current Gutenbach features are:
9    - the Gutenbach server (packaged as gutenbach-server)
10    - a terminal queue display (packaged as gutenbach-queue)
11    - remctl bindings (packaged as gutenbach-remctl)
12    - client-side scripts to print to, list, and delete from
13      queues (packaged as gutenbach-client)
14    - a Rhythmbox plugin
15    - iTunes plugins
16    - a webapp interface
17
18All of these are located on GitHub:
19http://github.com/jhamrick/gutenbach
20
21In terms of how the repository is structured: after discussing the
22possibility of supporting multiple systems, we decided it would be
23best to merge everything platform unspecific into the master branch,
24and then keep separate branches for each other system; e.g. at the
25moment we have the debian branch, which should be the same as the
26master branch except that it also contains a debian/ directory.  Now,
27this means that you should never edit platform-unspecific files in the
28debian directory; they should *always* be edited from the master
29branch.  The debian branch should never be merged into the master
30branch; merging should *always* happen the other way around.
31
32See README.old for how Gutenbach /used/ to be installed.  This can
33sometimes offer insight into how to fix things that are broken.
34
35Questions or comments should be directed at gutenbach AT mit DOT edu.
36
37NOTES:
38
39- If you keep getting zephyrs with the following errors:
40
41      Playback completed with the following errors:
42      bt_audio_service_open: connect() failed: Connection refused (111)
43      bt_audio_service_open: connect() failed: Connection refused (111)
44      bt_audio_service_open: connect() failed: Connection refused (111)
45
46  This is because you have alsa configured for bluetooth, but
47  bluetooth is not enabled.  You should either enable bluetooth, or
48  uninstall the bluez-alsa package.
49
50- The commands to print and remove jobs should be used via the scripts
51  in gutenbach-client package.  However, if you insist on using them,
52  the correct syntax is:
53     
54      CUPS_SERVER=servername lp -dqueuename foo.mp3
55      CUPS_SERVER=servername cancel [ID|-a] queuename
56
57TODO:
58
59- include mixer and channel in debconf, or even better, move it to
60  gutenbach-remctl and implement debconf in that package
61
62- this should really not conflict with pulse (the biggest problem at
63  the moment is that pulse will spew a bunch of errors like "Home
64  directory /var/spool/cups/tmp not ours." I can't figure out how to
65  get rid of them, but they're really annoying.  As long as pulse is
66  in system mode, things seem to work otherwise.)
67
68- CUPS issues
69
70    * the CUPS daemon processes do not inherit groups from the lp user
71      (so, for example, even if we add 'lp' to 'audio', the process
72      will not be running in group 'audio').  For the time being, I've
73      set the CUPS daemon to always run under group 'audio', but there
74      should really be a better solution.
75
76    * when the Purge-Jobs command is sent, the jobs are removed, but
77      the current mplayer instance continues playing.  This
78      unfortunately leads to jobs being played over each other when
79      the CUPS server restarts
80
81- Making it easier to use across multiple platforms, regardless of
82  debathena/normal linux/etc?
83
84- Gutenbach should not depend on Debathena -- ideally,
85  gutenbach-server should be debathena free, and then if people want
86  to use zephyr, etc., they can install an additional gutenbach-zephyr
87  package or something
88
89- add client scripts for the remctl package, something maybe like
90  `gbvol [set|get] number`.  Or maybe just leave it with using remctl.
91
92- fix the web interface
93
94- Make it possible to play movies; i.e. add video support (the audio
95  support is already there, obviously)
Note: See TracBrowser for help on using the repository browser.