diff --git a/docs/dev/upgrade.rst b/docs/dev/upgrade.rst index 64dd59ab..2c18604d 100644 --- a/docs/dev/upgrade.rst +++ b/docs/dev/upgrade.rst @@ -6,7 +6,7 @@ Basics After each sysupgrade (including the initial installation), Gluon will execute all scripts under ``/lib/gluon/upgrade``. These scripts' filenames usually begin with a 3-digit number -specifying the order of execution. +specifying the order of execution. Note that the script files need to be executable. To get an overview of the ordering of all scripts of all packages, the helper script ``contrib/lsupgrade.sh`` in the Gluon repository can be used, which will print all upgrade scripts' filenames and directories. If executed @@ -19,14 +19,12 @@ Best practices by Gluon, e.g. to access the site configuration or edit UCI configuration files. * Whenever possible, scripts shouldn't check if they are running for the first time, but just edit configuration - files to achive a valid configuration (without overwriting configuration changes made by the user where desirable). + files to achieve a valid configuration (without overwriting configuration changes made by the user where desirable). This allows using the same code to create the initial configuration and upgrade configurations on upgrades. * If it is unavoidable to run different code during the initial installation, the ``sysconfig.gluon_version`` variable can be checked. This variable is ``nil`` during the initial installation and contains the previously install Gluon - version otherwise. The package ``gluon-legacy`` (which is responsible for upgrades from the old firmwares of - Hamburg/Kiel/Lübeck) uses the special value ``legacy``; other packages should handle this value just as any other - string. + version otherwise. Script ordering ---------------