chiark / gitweb /
Add 'adopt' command. This adopts a randomly picked track by changing
[disorder] / README.upgrades
index 5bea1cd..c586dd8 100644 (file)
@@ -4,7 +4,8 @@ The general procedure is:
 
  * stop the old daemon:  /etc/init.d/disorder stop
  * back up your database directory (example below)
- * build and install the new version as described in the README
+ * build and install the new version as described in the README.  Remember to
+   install the new version of the web interface too.
  * update the configuration files (see below)
  * start the new daemon, e.g. with
      /etc/init.d/disorder start
@@ -14,16 +15,80 @@ upgrading between particular versions.  Minor versions are not
 explicitly mentioned; a version number like 1.1 implicitly includes
 all 1.1.x versions.
 
-* 2.0 -> 2.1
+If you install from .deb files then much of this work is automated.
+
+* 3.0 -> 4.x
+
+If you customized any of the templates, you will pretty much have to start from
+scratch as the web interface has been rewritten.  See disorder.cgi(8) for a
+starting point.
+
+The 'gap' directive will no longer work.  You must delete it from any
+configuration files that contain it.
+
+You may prefer to remove any 'smtp_server' directive you have, as the web
+interface will now use the local sendmail executable if available.
+
+If you want to be able to do use management over non-local connections (thereby
+potentially exposing passwords!) you must set 'remote_userman' to 'yes'.
+
+* 2.0 -> 3.0
 
 ** Authentication
 
 Users are now stored in the database rather than in 'allow' directives in a
 private configuration file.  'allow' is still understood in this version, but
 is only used to populate the database on startup.  After the first (successful)
-run of the server the remaining 'allow' directives can be deleted.
+run of the server the remaining 'allow' directives should be deleted.
+
+'restrict' and 'trust' are replaced by a system of per-user rights.  The
+default user rights are based on the 'restrict' setting, and the rights of
+users created frow 'allow' directives preserve the meaning of 'trust', but
+after the first run you should remove these directives and (optionally) add a
+'default_rights' directive.
+
+'allow', 'restrict' and 'trust' will stop working entirely in a future version
+but for now they will generate harmless error messages.  Remove them and the
+error messages will go away.
+
+See README for new setup instructions for the web interface.
+
+** Other Server Configuration
+
+Sensible defaults for 'stopword', 'player' and 'tracklength' are now built into
+the server.  If you haven't modified the values from the example or Debian
+configuration files then you can remove them.
+
+'gap' now defaults to 0 seconds instead of 2.
+
+The sound output API is now configured with the 'api' command although
+'speaker_backend' still works.  If you use 'api alsa' then you may need to
+change your 'mixer' and 'channel' settings.
+
+** Web Interface
+
+The web interface no longer uses HTTP basic authentication and the web server
+configuration imposing access control on it should be removed.  Users now log
+in using their main DisOrder password and the one in the htpassed file is now
+obsolete.  You should revisit the web interface setup instructions in README
+from scratch.
+
+As part of this, the DisOrder URL has changed from (e.g.)
+
+    http://yourserver/cgi-bin/disorder/disorder
+
+to just
+
+    http://yourserver/cgi-bin/disorder
+
+** Checklist
 
-'allow' will stop working entirely in a future version.
+   * delete default 'stopword', 'player' and 'tracklength' directives
+   * set 'gap' if you want a non-0 inter-track gap
+   * set 'api' and maybe 'mixer' and 'channel'
+   * perhaps add 'default_rights' directive
+   * delete 'allow', 'restrict' and 'trust' directives after first run
+   * follow new web interface setup in README
 
 * 1.4/1.5 -> 2.0