chiark / gitweb /
Move apply button creation earlier so it exists in time to be
[disorder] / README.upgrades
index 88d0d3b8a4f98c62e2a89721a84f90df3d974120..d1c4024599d9bd0f35d2f02901444f6a7e2c8ffa 100644 (file)
@@ -2,9 +2,10 @@
 
 The general procedure is:
 
- * stop the old daemon, e.g. with
-     /etc/init.d/disorder stop
- * build and install the new version as described in the README
+ * 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.  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,7 +15,59 @@ upgrading between particular versions.  Minor versions are not
 explicitly mentioned; a version number like 1.1 implicitly includes
 all 1.1.x versions.
 
-* 1.5 -> 1.6
+If you install from .deb files then much of this work is automated.
+
+* 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 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.
+
+** Checklist
+
+   * 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
 
 ** 'transform' and 'namepart' directives
 
@@ -26,10 +79,33 @@ More importantly however both 'transform' and 'namepart' are now optional, with
 sensible defaults being built in.  So if you were already using the default
 values you can just delete all instances of both.
 
-** enabled' and 'random_enabled' directives
+See disorder_config(5) for the default values.  Hopefuly they will be suitable
+for many configurations.  Please do send feedback.
+
+** 'enabled' and 'random_enabled' directives
 
 These have been removed.  Instead the state persists from one run of the server
-to the next.
+to the next.  If they appear in your configuration file they must be removed;
+the server will not start if they are present.
+
+** Database upgrade
+
+It is strongly recommended that you back up your database before performing the
+upgrade.  For example, as root, with the server STOPPED:
+  cd /var/disorder
+  mkdir BACKUP
+  cp -p * BACKUP
+
+To restore, again as root:
+  cd /var/disorder
+  rm *
+  cp -p BACKUP/* .
+
+The first thing the server does when upgrading from 1.5 is run the
+disorder-dbupgrade program.  This is necessary to modify any non-ASCII track
+names to meet the latest version's stricter normalization practices.  The
+upgrade should succeed automatically; if not it should leave an error message
+in syslog.
 
 * 1.3 -> 1.4