X-Git-Url: https://git.distorted.org.uk/~mdw/disorder/blobdiff_plain/be2d9f37e1fdeb7cc5746453e6dbcae0b25a7f74..5e34540b562f91c7b383a307c32e1a159266dd11:/README diff --git a/README b/README index b61ac7a..373e572 100644 --- a/README +++ b/README @@ -15,9 +15,9 @@ DisOrder is a multi-user software jukebox. See CHANGES for details of recent changes to DisOrder. -The server supports Linux and can be made to on a Mac (see README.mac). The -clients work on both Linux and the Mac. It could probably be ported to some -other UNIX variants without too much effort. Things you will need: +The server supports Linux and can be made to work on a Mac (see README.mac). +The clients work on both Linux and the Mac. It could probably be ported to +some other UNIX variants without too much effort. Things you will need: Build dependencies: Name Tested Notes @@ -73,6 +73,9 @@ Installation NOTE: If you are upgrading from an earlier version, see README.upgrades. +On a Debian system, if you install from .deb files then you should be able to +skip steps 1 to 6 and configure it via debconf. This is strongly recommended! + 1. Build the software. Do something like this: ./configure --sysconfdir=/etc --localstatedir=/var @@ -145,18 +148,20 @@ NOTE: If you are upgrading from an earlier version, see README.upgrades. start up correctly there should be an error message. Correct the problem and try again. -7. After a minute it should start to play something. Try scratching it: +7. After a minute it should start to play something. Try scratching it (as + root): disorder scratch The track should stop playing, and (if you set any up) a scratch sound play. -8. Add any other users you want. These easiest way to do this is: +8. Add any other users you want. These easiest way to do this is (still as + root): disorder authorize USERNAME - This will automatically choose a random password and add new line to - /etc/disorder/config.private and create /etc/disorder/config.USERNAME. + This will automatically choose a random password and create + /etc/disorder/config.USERNAME. Those users should now be able to access the server from the same host as it runs on, either via the disorder command or Disobedience. To run @@ -180,8 +185,17 @@ These instructions assumes you are using Apache 1.3.x. You need to configure a number of things to make this work: -1. If you want to have a 'jukebox' virtual host, modify the DNS accordingly and - use a fragment such as this one: +1. The web interface depends on a 'guest' user existing. You can create this + with the following command: + + disorder setup-guest + + If you don't want to allow online registration instead use: + + disorder -- setup-guest --no-online-registration + +2a. If you want to have a 'jukebox' virtual host, modify the DNS accordingly + and use a fragment such as this one: DocumentRoot /home/jukebox/public_html @@ -193,94 +207,57 @@ You need to configure a number of things to make this work: Alias /static/ /usr/local/share/disorder/static/ - /static/ should point to the 'static' directory installed by DisOrder. If - you don't want to use the name 'static' then you can change the url.static - label in the web interface configuration to your preferred URL; see - disorder_config(5) for details. - Don't forget to reload Apache after modifying its configuration. - Separate logging is not required but I find it convenient. Up to you. - -2. disorder.cgi assumes it is subject to access control (and in particular uses - the username to report who did what). Here's how I configured Apache, given - the above VirtualHost settings: + You must tell the web interface how to find its icons and stylesheet: - - Require valid-user - AuthType basic - AuthName jukebox - AuthUserFile /home/jukebox/http.users - + echo label url.static /static/ >> /etc/disorder/options.user + echo label links.css /static/disorder.css >> /etc/disorder/options.user - Adjust this according to wherever you're going to install disorder.cgi and - its expected URL. +2b. If you don't want a virtual host then you must still make sure that + DisOrder can find its icons and stylesheet. For example in your web server + configuration: - Don't forget to reload apache after modifying its configuration. If you got - it wrong, fix it and restart Apache. + Alias /disorder/ /usr/local/share/disorder/static/ -3. Create the password file configured above. Something like this: + Alternatively you could use a symlink from the right location in your + document root, provided your web server is configured to follow them. - # htpasswd -b -c /home/jukebox/http.users myusername mypassword - Adding password for user myusername - # htpasswd -b /home/jukebox/http.users othername otherpass - Adding password for user othername + Also you must tell the web interface how to find them: -4. The jukebox must be configured to trust the web user. The example - configuration assumes that this is www-data, but it might be something else - on your system. Edit the 'trust' line if necessary. + echo label url.static /disorder/ >> /etc/disorder/options.user + echo label links.css /disorder/disorder.css >> /etc/disorder/options.user -5. Install disorder.cgi in an appropriate location. Remember to make it - executable. For example: +3. Install disorder.cgi in an appropriate location. Remember to make it + executable. For example assuming a virtual host as above (2a): install -m 755 clients/disorder.cgi ~jukebox/public_html/index.cgi -6. The config file must also allow the web interface to be any user, and it - must list the URL of the web interface explicitly: - - trust www-data - url http://jukebox.DOMAIN/ - -7. Give www-data (or whatever user it is) a password and edit - /etc/disorder/config.private accordingly. This file should be mode 640 and - owned by root:jukebox. The line should look something like this: - - allow www-data MYPASSWORD - - After editing the config file, you must make the daemon re-read it: - - disorder reconfigure - -8. Teach www-data its password, by putting it in /etc/disorder/config.www-data. - This file should be mode 640 and owned by root:www-data. - - password MYPASSWORD + or not (2b): - (You could also use ~www-data/.disorder/passwd for this but on some systems - the web server user's home directory is inside the document root, which - would have rather unfortunate consequences!) + install -m 755 clients/disorder.cgi /usr/lib/cgi-bin/disorder -9. Try it out. You should be asked for a username and password that you - configured earlier, and be shown details of what is playing and what other - tracks have been configured for future play. +4. Try it out. You should be able to perform read-only operations straight + away, and after visiting the 'Login' page to authenticate, perform other + operations like adding a track to the queue. -10. If you run into problems, always look at the appropriate error log; the - message you see in your web browser will usually not be sufficient to - diagnose the problem all by itself. +5. If you run into problems, always look at the appropriate error log; the + message you see in your web browser will usually not be sufficient to + diagnose the problem all by itself. -11. If you have a huge number of top level directories, then you might find - that the 'Choose' page is unreasonably large. If so add the following line - to /etc/disorder/options.user: - label sidebar.choosewhich choosealpha +6. If you have a huge number of top level directories, then you might find + that the 'Choose' page is unreasonably large. If so add the following line + to /etc/disorder/options.user: + label sidebar.choosewhich choosealpha - This will make 'Choose' be a link for each letter of the 26-letter Roman - alphabet; follow the link and you just get the directories which start with - that letter. The "*" link at the end gives you directories which don't - start with a letter. + This will make 'Choose' be a link for each letter of the 26-letter Roman + alphabet; follow the link and you just get the directories which start with + that letter. The "*" link at the end gives you directories which don't + start with a letter. - You can copy choosealpha.html to /etc/disorder and edit it to change the - set of initial choices to anything that can be expressed with regexps. The - regexps must be URL-encoded UTF-8 PCRE regexps. + You can copy choosealpha.html to /etc/disorder and edit it to change the + set of initial choices to anything that can be expressed with regexps. The + regexps must be URL-encoded UTF-8 PCRE regexps. Copyright @@ -290,6 +267,8 @@ Copyright DisOrder - select and play digital audio files Copyright (C) 2003-2007 Richard Kettlewell +Portions copyright (C) 2007 Ross Younger +Portions copyright (C) 2007 Mark Wooding Portions extracted from MPG321, http://mpg321.sourceforge.net/ Copyright (C) 2001 Joe Drew Copyright (C) 2000-2001 Robert Leslie