chiark / gitweb /
further docs fettling
[disorder] / README.upgrades
1 * Upgrading DisOrder
2
3 The general procedure is:
4
5  * stop the old daemon:  /etc/init.d/disorder stop
6  * back up your database directory (example below)
7  * build and install the new version as described in the README
8  * update the configuration files (see below)
9  * start the new daemon, e.g. with
10      /etc/init.d/disorder start
11
12 The rest of this file describes things you must pay attention to when
13 upgrading between particular versions.  Minor versions are not
14 explicitly mentioned; a version number like 1.1 implicitly includes
15 all 1.1.x versions.
16
17 * 1.4/1.5 -> 2.0
18
19 ** 'transform' and 'namepart' directives
20
21 'transform' has moved from the web options to the main configuration file, so
22 that they can be used by other interfaces.  The syntax and semantics are
23 unchanged.
24
25 More importantly however both 'transform' and 'namepart' are now optional, with
26 sensible defaults being built in.  So if you were already using the default
27 values you can just delete all instances of both.
28
29 See disorder_config(5) for the default values.  Hopefuly they will be suitable
30 for many configurations.  Please do send feedback.
31
32 ** 'enabled' and 'random_enabled' directives
33
34 These have been removed.  Instead the state persists from one run of the server
35 to the next.  If they appear in your configuration file they must be removed;
36 the server will not start if they are present.
37
38 ** Database upgrade
39
40 It is strongly recommended that you back up your database before performing the
41 upgrade.  For example, as root, with the server STOPPED:
42   cd /var/disorder
43   mkdir BACKUP
44   cp -p * BACKUP
45
46 To restore, again as root:
47   cd /var/disorder
48   rm *
49   cp -p BACKUP/* .
50
51 The first thing the server does when upgrading from 1.5 is run the
52 disorder-dbupgrade program.  This is necessary to modify any non-ASCII track
53 names to meet the latest version's stricter normalization practices.  The
54 upgrade should succeed automatically; if not it should leave an error message
55 in syslog.
56
57 * 1.3 -> 1.4
58
59 ** Raw Format Decoders
60
61 You will probably want reconfigure your install to use the new facilities
62 (although the old way works fine).  See the example configuration file and
63 README.raw for more details.
64
65 Depending on how your system is configured you may need to link the disorder
66 libao driver into the right directory:
67
68    ln -s /usr/local/lib/ao/plugins-2/libdisorder.so /usr/lib/ao/plugins-2/.
69
70 * 1.2 -> 1.3
71
72 ** Server Environment
73
74 It is important that $sbindir is on the server's path.  The example init script
75 guarantees this.  You may need to modify the installed one.  You will get
76 "deadlock manager unexpectedly terminated" if you get this wrong.
77
78 ** namepart directives
79
80 These have changed in three ways.
81
82 Firstly they have changed to substitute in a more convenient way.  Instead of
83 matches for the regexp being substituted back into the original track name, the
84 replacement string now completely replaces it.  Given the usual uses of
85 namepart, this is much more convenient.  If you've stuck with the defaults no
86 changes should be needed for this.
87
88 Secondly they are matched against the track name with the collection root
89 stripped off.
90
91 Finally you will need to add an extra line to your config file as follows for
92 the new track aliasing mechanisms to work properly:
93
94 namepart        ext     "(\\.[a-zA-Z0-9]+)$"                   "$1"    *
95
96 * 1.1 -> 1.2
97
98 ** Web Interface Changes
99
100 The web interface now includes static content as well as templates.
101 The static content must be given a name visible to HTTP clients which
102 maps to its location in the real filesystem.
103
104 The README suggests using a rule in httpd.conf to make /static in the
105 HTTP namespace point to /usr/local/share/disorder/static, which is
106 where DisOrder installs its static content (by default).
107 Alternatively you can set the url.static label to the base URL of the
108 static content.
109
110 ** Configuration File Changes
111
112 The trackname-part web interface directive has now gone, and the
113 options.trackname file with it.
114
115 It is replaced by a new namepart directive in the main configuration
116 file.  This has exactly the same syntax as trackname-part, only the
117 name and location have changed.
118
119 The reason for the change is to allow track name parsing to be
120 centrally configured, rather than every interface to DisOrder having
121 to implement it locally.
122
123 If you do not install new namepart directives into the main
124 configuration file then track titles will show up blank.
125
126 If you do not remove the trackname-part directives from the web
127 interface configuration then you will get error messages in the web
128 server's error log.
129
130 Local Variables:
131 mode:outline
132 fill-column:79
133 End: