anchor.diff:          description = "A file containing SQL statements to be executed on the first startup. Can be used for granting certain permissions on the database";
         };
   
  +      # FIXME: remove this option; it's a really bad idea.
         rootPassword = mkOption {
           default = null;
           description = "Path to a file containing the root password, modified on the first startup. Not specifying a root password will leave the root password empty.";
  
positive.code: 
                rm /tmp/mysql_init
              fi
            '';
  
          postStop = "${mysql}/bin/mysqladmin ${optionalString (cfg.rootPassword != null) "--user=root --password=\"$(cat ${cfg.rootPassword})\""} shutdown";
          
          # !!! Need a postStart script to wait until mysqld is ready to
          # accept connections.
  
          extraConfig = "kill timeout 60";
        };
  
    };
  
negative.code:                 ${optionalString (cfg.rootPassword != null)
                    ''
                      # Change root password
  
                      ( echo "use mysql;"
                        echo "update user set Password=password('$(cat ${cfg.rootPassword})') where User='root';"
                        echo "flush privileges;"
  