Extiverse console helper
This console binary (executable) can be downloaded to your own computer or a server to check compatibility of your extensions with the latest Flarum release (see Download section for instructions).
Authenticate with Extiverse
Once you've downloaded the binary run extiverse auth
which will provide a URL to extiverse which will generate a token you need to copy to your console. A token file is then created in your home directory.
Use
- Check command
You can use the extiverse check
command to see compatibility of your installed extensions with the latest Flarum version. Run extiverse check --help
for all options.
--path <toFlarum>
to run the check command on the target Flarum installation; extiverse check --path /var/www/flarum
--flarum-version <version>
to check against a specific flarum version, defaults to latest released Flarum version. Use any major.minor.patch or major.minor version (1.0, 0.1, 1.0.1 etc all work). This is helpful to check against an unreleased, but expected version of Flarum.
- Upgrade command
The extiverse upgrade
command can be used to upgrade your Flarum forum. It can handle upgrading not just extensions based on their compatibility, but also the actual Flarum version. The command will create a backup of your composer.json and then replace it with sensible changes. Once done it will take care of running the required composer command, updating your database and clearing the cache.
--timeout <seconds>
the upgrade command runs composer update in the background, this task is limited to 360 seconds (6 minutes) by default. You can override this on slow servers or servers with limited bandwidth by adding this option and setting it to a sensible different value, for instance use --timeout 600
would timeout that task at 10 minutes.
--composer <toComposer>
in case you want to use a different composer version than the system default one, use this option to point to the composer binary, eg --composer /home/luceos/composer.phar
.
--path <toFlarum>
to run the upgrade command on the target Flarum installation.
Always create a backup of your composer files and your database before attempting an upgrade!
- Toggle command
The ext:toggle
can be used as extiverse ext:toggle
and several options to dis- or enable extensions:
ext:toggle {name}
, eg ext:toggle flarum/tags
to enable flarum tags
ext:toggle {name} --disable
, eg ext:toggle flarum/tags --disable
to disable flarum tags
ext:toggle --all
,to enable all extensions
ext:toggle --all --disable
,to disable all extensions
ext:toggle --path {toFlarum}
, eg ext:toggle --path /var/www/flarum
to run commands on a specific Flarum installation, otherwise the current directory is used.
The toggle command reads your config.php
and uses a custom connection to interact with the database table settings
and the key extensions_enabled
to set which extensions are on or off. As such this command is really helpful in case your Flarum has critical errors and your admin area is no longer available. Please understand that any database tool like phpmyadmin can be used to do every this command does.
Download
With composer
- Run
composer global require extiverse/helper
.
- Accessing the binary, choose from these options:
~/.composer/vendor/bin/extiverse
- Add the composer bin path to your PATH and then simply use it with
extiverse
: export PATH="$(composer global config bin-dir --absolute --quiet):$PATH"
- Or symlink the binary to your
/usr/local/bin
with ln -s ~/.composer/vendor/bin/extiverse /usr/local/bin/extiverse
Upgrading the helper can be done quite similarly:
composer global require extiverse/helper
It will pull down the latest changes, no other actions are necessary.
Without composer
- Visit https://github.com/extiverse/helper/releases/latest
- Save
- For use locally on your own machine, click on "extiverse" under Assets to download
- For use on a server (either download locally and upload or) right click "extiverse" under Assets to save the link to the
extiverse
file and run wget <link>
on your server.
- Save the file somewhere convenient, either in your Flarum root directory, your home directory or
/usr/local/bin
for instance.
Upgrading the helper requires you to download the file from the same page. Best would to completely follow the above instructions but re-using the directory you saved the file to.
Feedback
I'm exceptionally interested what you would need from such a tool. In theory there's a lot of power that can be leveraged from using the extiverse api. In theory I could also ship this tool with a way to auto update your lock file. I have some work in progress that will allow to do that through ftp/ssh, but this is obviously also a great option.
License
The binary and its code are proprietary.
Disclaimer
This tool is owned by Extiverse (Hyn) and is in no way affiliated with Flarum, the Flarum Foundation or the Flarum Core team. Do not republish or sell this tool.
Thanks
The excellent efforts of @Wadera to provide an upgrade script by bashing π scraping Extiverse made me remember I had a work in progress on my machine.