Failed 0.15 beta installation

If you have a specific technical inquiry, construct your post with the following:

Summary

Attempted to install 0.15.-beta0 in order to test correction of issue with video content on MacOS Safari and iOS devices. Installation hung at 60% and never finished.

Following a reboot, tried again and got the following error:

E: dpkg was interrupted, you must manually run ‘sudo dpkg --configure -a’ to correct the problem.

Then:

sudo dpkg --configure -a
Setting up kolibri (0.15.0-0ubuntu1) …
Creating new user
adduser: Only one or two names allowed.
Traceback (last called is first):
kolibri_configure() in /var/lib/dpkg/info/kolibri.postinst:1
main() in /var/lib/dpkg/info/kolibri.postinst:460
dpkg: error processing package kolibri (–configure):
installed kolibri package post-installation script subprocess returned error exit status 1
Errors were encountered while processing:
kolibri

Technical details

  • Kolibri version: upgrading from 0.15 to 0.15.1-beta0
  • Operating system: Raspian Buster
  • via SSH connection

Thank you for posting this in a separate thread from your original, @cjackson; it may be helpful to others!

How did you initially install 0.15 on the Raspberry Pi? Did you use the RPi image? Or something else?

I installed 0.15 via the downloaded deb file and then via the apt install command on RPi OS. I have installed the RPi image twice before (including most recently with the 0.15 version of Kolibri), but ran into problems with that which unfortunately I did not document. I will try to do that in a different thread. So, in the end, I went back to a full RPi OS install, then added Kolibri from the deb file.

BTW, I have to admit I know enough of Linux (which is very small) to be a danger to myself! I’m learning gradually.

Thanks for the additional information. I’ll likely have to reproduce this myself to determine how to proceed exactly.

Did you perhaps stop Kolibri prior to your attempt at installing the beta? I’m wondering if that could be an issue.

Here are some ideas to try:

  1. First, stop kolibri by running kolibri stop
  2. Run kolibri --version:
    a) If the version is 0.15.0, try reinstalling the .deb with Kolibri stopped
    b) If the version is 0.15.1, try running kolibri manage migrate and kolibri start afterwards
  3. Check if you can access Kolibri if those succeed

Please share the output of performing these commands if you run into more issues

Regards,
Blaine

Thanks for the additional questions. I had not run ‘kolibri stop’ but ran ‘sudo service kolibri stop’ since Kolibri is running as a service that loads automatically.

Previously, when the upgrade failed, I was able to get Kolibri 0.15 running again.

Today, as per your instructions, I first checked the current version that was installed, which was 0.15. I then ran ‘kolibri stop’ as well as stopping the service. Then I did the install. Per the user feedback on screen, it never completed. However, I then tried to restart the Kolibri service and checked the version which reported it to be 0.15b1.

I then checked and Kolibri is running and the videos now load on iOS and Mac OS Safari!

So, it seems the issue is somehow that the install routine never indicates that it has successfully completed.

Finally, you’ll notice the last command in the terminal history is ‘kolibri status’ which indicated ‘unclean shutdown.’ Not sure why that is since Kolibri is running.

Here’s the terminal history of what happened:

:~ $ kolibri --version
kolibri, version 0.15.0
pi@madina-kolibri:~ $ kolibri stop
INFO     Option DEBUG in section [Server] being overridden by environment variable KOLIBRI_DEBUG
INFO     Option DEBUG_LOG_DATABASE in section [Server] being overridden by environment variable KOLIBRI_DEBUG_LOG_DATABASE
INFO     Kolibri server has successfully been stopped.
pi@madina-kolibri:~ $ sudo service kolibri stop
pi@madina-kolibri:~ $ sudo service kolibri status
● kolibri.service - LSB: kolibri daemon, an offline education platform
     Loaded: loaded (/etc/init.d/kolibri; enabled; vendor preset: enabled)
     Active: inactive (dead) since Sat 2022-02-12 09:00:56 WAT; 6s ago
    Process: 5197 ExecStop=/etc/init.d/kolibri stop (code=exited, status=0/SUCCESS)
        CPU: 3h 9min 7.395s

Feb 11 11:06:54 madina-kolibri runuser[718]: pam_unix(runuser:session): session closed for user kolibri
Feb 11 11:06:54 madina-kolibri systemd[1]: Started LSB: kolibri daemon, an offline education platform.
Feb 12 09:00:50 madina-kolibri systemd[1]: Stopping LSB: kolibri daemon, an offline education platform...
Feb 12 09:00:50 madina-kolibri runuser[5212]: pam_unix(runuser:session): session opened for user kolibri(uid=116) by (uid=0)
Feb 12 09:00:54 madina-kolibri kolibri[5215]: INFO     Option DEBUG in section [Server] being overridden by environment variable K>
Feb 12 09:00:54 madina-kolibri kolibri[5215]: INFO     Option DEBUG_LOG_DATABASE in section [Server] being overridden by environme>
Feb 12 09:00:56 madina-kolibri kolibri[5215]: INFO     Kolibri server has successfully been stopped.
Feb 12 09:00:56 madina-kolibri systemd[1]: kolibri.service: Succeeded.
Feb 12 09:00:56 madina-kolibri systemd[1]: Stopped LSB: kolibri daemon, an offline education platform.
Feb 12 09:00:56 madina-kolibri systemd[1]: kolibri.service: Consumed 3h 9min 7.395s CPU time.

pi@madina-kolibri:~ $ sudo service kolibri status
Warning: The unit file, source configuration file or drop-ins of kolibri.service changed on disk. Run 'systemctl daemon-reload' to>
● kolibri.service - LSB: kolibri daemon, an offline education platform
     Loaded: loaded (/etc/init.d/kolibri; enabled; vendor preset: enabled)
     Active: inactive (dead) since Sat 2022-02-12 09:00:56 WAT; 7min ago
    Process: 5197 ExecStop=/etc/init.d/kolibri stop (code=exited, status=0/SUCCESS)
        CPU: 3h 9min 7.395s

Feb 11 11:06:54 madina-kolibri runuser[718]: pam_unix(runuser:session): session closed for user kolibri
Feb 11 11:06:54 madina-kolibri systemd[1]: Started LSB: kolibri daemon, an offline education platform.
Feb 12 09:00:50 madina-kolibri systemd[1]: Stopping LSB: kolibri daemon, an offline education platform...
Feb 12 09:00:50 madina-kolibri runuser[5212]: pam_unix(runuser:session): session opened for user kolibri(uid=116) by (uid=0)
Feb 12 09:00:54 madina-kolibri kolibri[5215]: INFO     Option DEBUG in section [Server] being overridden by environment variable K>
Feb 12 09:00:54 madina-kolibri kolibri[5215]: INFO     Option DEBUG_LOG_DATABASE in section [Server] being overridden by environme>
Feb 12 09:00:56 madina-kolibri kolibri[5215]: INFO     Kolibri server has successfully been stopped.
Feb 12 09:00:56 madina-kolibri systemd[1]: kolibri.service: Succeeded.
Feb 12 09:00:56 madina-kolibri systemd[1]: Stopped LSB: kolibri daemon, an offline education platform.
Feb 12 09:00:56 madina-kolibri systemd[1]: kolibri.service: Consumed 3h 9min 7.395s CPU time.

pi@madina-kolibri:~ $ sudo systemctl daemon-reload kolibri
Too many arguments.
pi@madina-kolibri:~ $ sudo systemctl daemon-reload
pi@madina-kolibri:~ $ sudo service kolibri status
● kolibri.service - LSB: kolibri daemon, an offline education platform
     Loaded: loaded (/etc/init.d/kolibri; enabled; vendor preset: enabled)
     Active: inactive (dead) since Sat 2022-02-12 09:00:56 WAT; 9min ago
        CPU: 3h 9min 7.395s

Feb 11 11:06:54 madina-kolibri runuser[718]: pam_unix(runuser:session): session closed for user kolibri
Feb 11 11:06:54 madina-kolibri systemd[1]: Started LSB: kolibri daemon, an offline education platform.
Feb 12 09:00:50 madina-kolibri systemd[1]: Stopping LSB: kolibri daemon, an offline education platform...
Feb 12 09:00:50 madina-kolibri runuser[5212]: pam_unix(runuser:session): session opened for user kolibri(uid=116) by (uid=0)
Feb 12 09:00:54 madina-kolibri kolibri[5215]: INFO     Option DEBUG in section [Server] being overridden by environment variable KOLIBRI_>
Feb 12 09:00:54 madina-kolibri kolibri[5215]: INFO     Option DEBUG_LOG_DATABASE in section [Server] being overridden by environment vari>
Feb 12 09:00:56 madina-kolibri kolibri[5215]: INFO     Kolibri server has successfully been stopped.
Feb 12 09:00:56 madina-kolibri systemd[1]: kolibri.service: Succeeded.
Feb 12 09:00:56 madina-kolibri systemd[1]: Stopped LSB: kolibri daemon, an offline education platform.
Feb 12 09:00:56 madina-kolibri systemd[1]: kolibri.service: Consumed 3h 9min 7.395s CPU time.

pi@madina-kolibri:~ $ sudo service kolibri start
pi@madina-kolibri:~ $ sudo service kolibri status
● kolibri.service - LSB: kolibri daemon, an offline education platform
     Loaded: loaded (/etc/init.d/kolibri; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2022-02-12 09:10:36 WAT; 52s ago
    Process: 5496 ExecStart=/etc/init.d/kolibri start (code=exited, status=0/SUCCESS)
      Tasks: 130 (limit: 4915)
        CPU: 20.787s
     CGroup: /system.slice/kolibri.service
             └─5519 /usr/bin/python3 /bin/kolibri start

Feb 12 09:10:34 madina-kolibri kolibri[5509]: INFO     kolibri.plugins.perseus_viewer successfully updated
Feb 12 09:10:34 madina-kolibri kolibri[5509]: INFO     Importing 'tasks' module from django apps
Feb 12 09:10:34 madina-kolibri kolibri[5509]: INFO     Kolibri running on: http://127.0.0.1:8080/
Feb 12 09:10:34 madina-kolibri kolibri[5509]: INFO     Kolibri running on: http://10.0.2.109:8080/
Feb 12 09:10:34 madina-kolibri kolibri[5509]: INFO     Kolibri running on: http://10.10.10.10:8080/
Feb 12 09:10:34 madina-kolibri kolibri[5509]: INFO     Starting Kolibri 0.15.1b0
Feb 12 09:10:35 madina-kolibri kolibri[5509]: INFO     Bus state: ENTER
Feb 12 09:10:35 madina-kolibri kolibri[5509]: INFO     Running Kolibri as background process
Feb 12 09:10:35 madina-kolibri kolibri[5509]: INFO     Going to background mode, logging to /var/kolibri/.kolibri/logs/kolibri.txt
Feb 12 09:10:36 madina-kolibri systemd[1]: Started LSB: kolibri daemon, an offline education platform.
pi@madina-kolibri:~ $ kolibri --version
kolibri, version 0.15.1b0
pi@madina-kolibri:~ $ kolibri status
Unclean shutdown (7)
pi@madina-kolibri:~ $

hi @cjackson so it seems the installationi is working but the installer said it was not correct, right?
Before installing 0.15 did you already have a previous version of kolibri installed or a kolibri previous user installation with a database that required being upgrade to 0.15?
In RPi with SD disks I have seen sometimes the installer timing out while doing the migration of the database in the first start, but working correctly after it, so I’d like to confirm if that might have been the reason of your issue
Thanks
José

@blaine @jredrejo : Yes, the installation worked, but the installer seems to fail in some way, or not complete. I just did a clean install on a clean system, starting first with 0.15, then upgrading to 0.15b1. It worked, but hung at the 60% mark and never reported finishing.

With this clean install, I get the following error when running apt update & apt upgrade. This error doesn’t go away after a restart. It also continues to show errors while I’m installing other components of the system. Whenever apt install is run, it returns this error.

I’m working on a French system, so the info below is in French. I believe, though you’ll be able to see the error:

sudo apt upgrade
Lecture des listes de paquets… Fait
Construction de l’arbre des dépendances… Fait
Lecture des informations d’état… Fait
Calcul de la mise à jour… Fait
Le paquet suivant a été installé automatiquement et n’est plus nécessaire :
libfuse2
Veuillez utiliser « sudo apt autoremove » pour le supprimer.
0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.
1 partiellement installés ou enlevés.
Après cette opération, 0 o d’espace disque supplémentaires seront utilisés.
Souhaitez-vous continuer ? [O/n] o
Paramétrage de kolibri (0.15.1b0-0ubuntu1) …
Creating new user
adduser : Un ou deux noms maximum.
Traceback (last called is first):
kolibri_configure() in /var/lib/dpkg/info/kolibri.postinst:1
main() in /var/lib/dpkg/info/kolibri.postinst:460
dpkg: erreur de traitement du paquet kolibri (–configure) :
installed kolibri package post-installation script subprocess returned error ex
it status 1
Des erreurs ont été rencontrées pendant l’exécution :
kolibri
E: Sub-process /usr/bin/dpkg returned an error code (1)

Thanks @cjackson , in order to try to reproduce this problem, can you provide this details:

  • Are you using the sd card or an external usb drive
  • What version of Raspberry are you using?

Thanks!

External USB drive.
RaspiOS Bullseye ARM64 for this French installation.
RaspiOS Bullseye ARM32 for the original installation on a different RPi about which this thread was started.

Both installations have resulted in the same issue.

Wanted to add another bit of info I experienced today.

I had to do another clean install. RPiOS ARM64 and then decided to just go direct to install the beta1 version of Kolibri. It worked, though the installer did not present the question of whether I wanted to have Kolibri start as a service as is normally the case. There had not been a Kolibri installation on this computer at all.

After the installation completed, I ran ‘systemctl service status kolibri’ and it was running. Then loaded the interface from a web browser and all was working correctly.

So, with that, it seems the issue is somehow related to installing the beta over an existing 0.15 installation.

@blaine : I assume the newly released 0.15.1 version includes the fix that was in the beta1 version. Is there a recommended way for me to upgrade the Kolibri installations I have that are running the beta version?

@cjackson Yes the 0.15.1 release contains all of the fixes the beta had. I haven’t gotten around to trying to reproduce your issue. The recommended installation process should match how you upgraded to the beta, but I realize that didn’t work the first time. If you’re willing to try again, I’d say give it a shot and I have some notes below.

I looked briefly at the Debian installer code and I noticed something that could potentially cause a failure if upgrading using dpkg -i. If that’s what you used initially, I’d recommend (always) using apt install /path/to/kolibri.deb

@blaine @jredrejo : I attempted to install this release over top the beta version this AM using apt install as explained. I first shut down Kolibri with ‘sudo systemctl stop kolibri’ and verified that it was not running. The installer presented the prompt as to whether I want Kolibri to run at startup/as a system service. Then it moved to 60% and stopped progressing. There is no evidence of disk activity.

So, I force closed that Terminal session, opened a new one, checked Kolibri status. It was not running. After running ‘sudo systemctl daemon-reload’, Kolibri then started and is working fine. No loss of content as far as I can tell.

Here’s the system details:

Version: 0.15.1
OS: Linux-5.10.92-v8±aarch64-with-glibc2.31
Python: 3.9.2
Installer: deb kolibri - 0.15.1-0ubuntu1
Server: Cheroot/unknown
Database: /var/kolibri/.kolibri/db.sqlite3
Free disk space: 742 GB
Server time: Thu Feb 24 2022 09:14:16 GMT+0100 (WAT)
Server timezone: Africa/Lagos
Device ID: 2f417008767fe16b31a917786bd8fa95

Below is the script from Terminal:

pi@kolibri-madina : ~ $ cd ~/Downloads
pi@kolibri-madina : ~/Downloads $ ls
kiwix-tools_linux-armhf-3.2.0-1.tar.gz kolibri_0.15.1-0ubuntu1_all.deb remoteit-4.13.6.arm64.rpi.deb
pi@kolibri-madina : ~/Downloads $ sudo apt install ~/Downloads/kolibri_0.15.1-0ubuntu1_all.deb
Reading package lists… Done
Building dependency tree… Done
Reading state information… Done
Note, selecting ‘kolibri’ instead of ‘/home/pi/Downloads/kolibri_0.15.1-0ubuntu1_all.deb’
The following package was automatically installed and is no longer required:
libfuse2
Use ‘sudo apt autoremove’ to remove it.
The following packages will be DOWNGRADED:
kolibri
0 upgraded, 0 newly installed, 1 downgraded, 0 to remove and 0 not upgraded.
Need to get 0 B/58.0 MB of archives.
After this operation, 5,120 B of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 /home/pi/Downloads/kolibri_0.15.1-0ubuntu1_all.deb kolibri all 0.15.1-0ubuntu1 [58.0 MB]
Preconfiguring packages …
dpkg: warning: downgrading kolibri from 0.15.1b0-0ubuntu1 to 0.15.1-0ubuntu1
(Reading database … 104167 files and directories currently installed.)
Preparing to unpack …/kolibri_0.15.1-0ubuntu1_all.deb …
Unpacking kolibri (0.15.1-0ubuntu1) over (0.15.1b0-0ubuntu1) …
Setting up kolibri (0.15.1-0ubuntu1) …

Progress: [ 60%] [############################################################################…]

Following this, I opened a new Terminal session and checked Kolibri status. This is what came back:

Warning: The unit file, source configuration file or drop-ins of kolibri.service changed on disk. Run ‘systemctl daemon-reload’ to reload units.
● kolibri.service - LSB: kolibri daemon, an offline education platform
Loaded: loaded (/etc/init.d/kolibri; enabled; vendor preset: enabled)
Active: inactive (dead) since Thu 2022-02-24 08:56:27 WAT; 12min ago
Process: 16454 ExecStop=/etc/init.d/kolibri stop (code=exited, status=0/SUCCESS)
CPU: 17h 12min 38.483s

Feb 24 08:56:12 kolibri-madina systemd[1]: Stopping LSB: kolibri daemon, an offline education platform…
Feb 24 08:56:12 kolibri-madina runuser[16466]: pam_unix(runuser:session): session opened for user kolibri(uid=116) by (uid=0)
Feb 24 08:56:13 kolibri-madina kolibri[16467]: INFO: No C extensions are available for this platform
Feb 24 08:56:17 kolibri-madina kolibri[16467]: INFO Option DEBUG in section [Server] being overridden by environment variable KOLIBRI_DEBUG
Feb 24 08:56:17 kolibri-madina kolibri[16467]: INFO Option DEBUG_LOG_DATABASE in section [Server] being overridden by environment variable KOLI>
Feb 24 08:56:27 kolibri-madina kolibri[16467]: INFO Kolibri server has successfully been stopped.
Feb 24 08:56:27 kolibri-madina runuser[16466]: pam_unix(runuser:session): session closed for user kolibri
Feb 24 08:56:27 kolibri-madina systemd[1]: kolibri.service: Succeeded.
Feb 24 08:56:27 kolibri-madina systemd[1]: Stopped LSB: kolibri daemon, an offline education platform.
Feb 24 08:56:27 kolibri-madina systemd[1]: kolibri.service: Consumed 17h 12min 38.483s CPU time.

pi@kolibri-madina:~ $ sudo systemctl start kolibri
Warning: The unit file, source configuration file or drop-ins of kolibri.service changed on disk. Run ‘systemctl daemon-reload’ to reload units.
^C
pi@kolibri-madina:~ $ sudo systemctl daemon-reload
pi@kolibri-madina:~ $ sudo systemctl start kolibri
pi@kolibri-madina:~ $ sudo systemctl status kolibri
● kolibri.service - LSB: kolibri daemon, an offline education platform
Loaded: loaded (/etc/init.d/kolibri; enabled; vendor preset: enabled)
Active: active (running) since Thu 2022-02-24 09:10:43 WAT; 5s ago
Process: 16633 ExecStart=/etc/init.d/kolibri start (code=exited, status=0/SUCCESS)
Tasks: 130 (limit: 4164)
CPU: 20.627s
CGroup: /system.slice/kolibri.service
└─16672 /usr/bin/python3 /bin/kolibri start

Feb 24 09:10:41 kolibri-madina kolibri[16646]: INFO Importing ‘tasks’ module from django apps
Feb 24 09:10:42 kolibri-madina kolibri[16646]: INFO Kolibri running on: http://127.0.0.1:8080/
Feb 24 09:10:42 kolibri-madina kolibri[16646]: INFO Kolibri running on: http://10.0.2.109:8080/
Feb 24 09:10:42 kolibri-madina kolibri[16646]: INFO Kolibri running on: http://10.10.10.1:8080/
Feb 24 09:10:42 kolibri-madina kolibri[16646]: INFO Starting Kolibri 0.15.1
Feb 24 09:10:42 kolibri-madina kolibri[16646]: INFO Bus state: ENTER
Feb 24 09:10:42 kolibri-madina kolibri[16646]: INFO Running Kolibri as background process
Feb 24 09:10:42 kolibri-madina kolibri[16646]: INFO Going to background mode, logging to /var/kolibri/.kolibri/logs/kolibri.txt
Feb 24 09:10:43 kolibri-madina runuser[16645]: pam_unix(runuser:session): session closed for user kolibri
lines 1-18

@blaine @jredrejo

Wanted to add this additional info. Since the installation described above, I wanted to install an additional piece of software. The results are shown below. Not sure how to clear this.

E: dpkg was interrupted, you must manually run ‘sudo dpkg --configure -a’ to correct the problem.
pi@kolibri-madina : ~/Downloads $ sudo dpkg --configure -a
Setting up kolibri (0.15.1-0ubuntu1) …
Creating new user
adduser: Only one or two names allowed.
Traceback (last called is first):
kolibri_configure() in /var/lib/dpkg/info/kolibri.postinst:1
main() in /var/lib/dpkg/info/kolibri.postinst:460
dpkg: error processing package kolibri (–configure):
installed kolibri package post-installation script subprocess returned error exit status 1
Errors were encountered while processing:
kolibri

Hello @cjackson
I haven’t been able to reproduce the problem you have in the same conditions. Honestly, looking at the logs I have no idea of what might be happening to you. Being a Raspberry it could even be a problem in the SD card because the last tracebacks you sent say that an user can’t be created.
So far I have tried it in a Raspberry PI 4 using the RaspiOS Bullseye ARM32. The 64 bits version is very new and I haven’t tested it yet. But I haven’t had any issue and this RPi is running 24/7 in my network.

Are you using an older model, maybe a Raspberry 3B? and are you installing it on a SD card or on an USB disk?

Also, just for curiosity, if you are doing it in a new installation, have you tried to use the image for RPI that we created? It should provide you a quick experience with everything installed and setup, including some tweaks to the services to extract as much juice as possible in this device.

The image and the instructions are available at Download Kolibri | Learning Equality

@jredrejo
Thanks for your efforts. I’m using an RPi 400, no SD card. It’s running on an external SSD.

I don’t understand the error about adding a different user because I am not doing that. Kolibri is installed under the default Pi user. I’m logged in as Pi. I use sudo apt install… to do the installation. So it is a strange problem for sure.

I have tried the prepackaged image with my previous install on an RPi 3B+. It developed some problems that I couldn’t sort out. I then tried with one of the new RPi 400s and has the same problem, though I didn’t post about it. With that, I went to the Raspbian Lite version. From a user standpoint, the RPi could not reboot without manual intervention and would end up in emergency mode. A colleague who knows a lot more about Linux than me couldn’t figure it out, so I ended up wiping the device and starting over.

When I get a chance, I’ll do another install with the RPi image and see if it generates the same issue and let you know.

The more I read about your problems the more I think it’s something related to your disks setup. It would be good if you can test it with just a SD card inserted, without the external SSD disk. I have never tested the image installation with an external disk plugged. After doing the instalation in the SD card, the system can be moved to the external disk if you prefer it.
We have tested the image and the deb packages in different setups (different people from different countries and using a variety of languages) and we haven’t seen this behaviour. I’d love to find a solution to be with you, even virtually, when doing the installation to find out where the problem can be.
Any more details you can provide are welcome , maybe they give us a hint.

@jredrejo

Thanks for your input. I will try a fresh install of the image tonight, first to an SD card, then copied over to the SD. The reason I use an external SSD is that these units will go to places far away from where I am without internet. I fear the SD card failing and losing all the data, etc. I think the external SSD will be more reliable in the long term, as well as faster.

Yes, your choice is the right one, no doubt. Always use the external disk after installing. I’ve seen too many corrupted SD cards to trust them.
It’s just that the installers are made to begin from the SD card and that’s how they’ve been tested.

@jredrejo sorry I need to ask this. Is there a built-in easy way to clone the SD card to an SSD with the Kolibri image? I have installed it on the SD card and want to move it to the SSD. RPiOS has an app to clone an SD card. I don’t know how to do it with the CLI and my online research shows it to be a multi-step process with the need of a number of downloads.