Update Issues - And Workarounds!
Quote from franko553 on January 6, 2019, 12:27 amNow that production units are shipping I pulled out my Maker Edition to see if the software environment had matured any...
It has been a few months so I started with an update and am encountering two different issues when trying to update my Oboo.
The first issue I hit is a certificate issue.
The Oboo reaches out to api.getoboo.com to inquire about the availability of an update and the ssl cert on that site expired last week, causing wget to block the request.
I was able to bypass this by editing the update script.
In file /etc/cron.week/firmware_update.sh I changed line 13 from:
DATA=`wget -qO- https://api.getoboo.com/v1/firmware/update?mac=$MAC`
to
DATA=`wget -qO- https://api.getoboo.com/v1/firmware/update?mac=$MAC --no-check-certificate`
This allowed the update to proceed, but is obviously not a good long term solution.
The next issue I encountered is a set of file conflicts between packages oboo-clock-scripts and oboo-clock-provisioning-scripts.
Installing oboo-clock-scripts (0.0.7-9) to root...
Downloading http://repo.getoboo.com/oboo-clock/packages/oboo-clock-scripts_0.0.7-9_mipsel_24kc.ipk
Collected errors:
* check_data_file_clashes: Package oboo-clock-scripts wants to install file /www/cgi-bin/ver
But that file is already provided by package * oboo-clock-provisioning-scripts
* check_data_file_clashes: Package oboo-clock-scripts wants to install file /www/cgi-bin/wifi-scan
But that file is already provided by package * oboo-clock-provisioning-scripts
* check_data_file_clashes: Package oboo-clock-scripts wants to install file /www/cgi-bin/wifi-setup
But that file is already provided by package * oboo-clock-provisioning-scripts
* opkg_install_cmd: Cannot install package oboo-clock-scripts.
I got this error when running the full update script as well as when trying to update oboo-clock-scripts manually.
As a result, I was missing the config options, the http assets, and other important things.
It turned out that oboo-clock-provisioning-scripts seems to be old (it is at least no longer available in the repos).
I stumbled across the fix by accident, attempting to update the package...
root@Oboo-Clock-5448:/# opkg install --force-reinstall oboo-clock-provisioning-scripts
Removing package oboo-clock-provisioning-scripts from root...
Installing oboo-clock-provisioning-scripts (0.2.1-2) to root...
Collected errors:
* opkg_download_pkg: Package oboo-clock-provisioning-scripts is not available from any configured src.
* opkg_install_pkg: Failed to download oboo-clock-provisioning-scripts. Perhaps you need to run 'opkg update'?
* opkg_install_cmd: Cannot install package oboo-clock-provisioning-scripts.
The force option cause the package to just be removed. An opkg remove command would probably have worked as well.
Once oboo-clock-provisioning-scripts was gone, oboo-clock-scripts updated successfully:
root@Oboo-Clock-5448:/# opkg install --force-reinstall oboo-clock-scripts
No packages removed.
Installing oboo-clock-scripts (0.0.7-9) to root...
Downloading http://repo.getoboo.com/oboo-clock/packages/oboo-clock-scripts_0.0.7-9_mipsel_24kc.ipk
Configuring oboo-clock-scripts.
Hopefully this helps anyone else who has trouble updating.
Onion, please fix the cert error and include in your updates cleaning up any old packages that are no longer needed.
Now that production units are shipping I pulled out my Maker Edition to see if the software environment had matured any...
It has been a few months so I started with an update and am encountering two different issues when trying to update my Oboo.
The first issue I hit is a certificate issue.
The Oboo reaches out to api.getoboo.com to inquire about the availability of an update and the ssl cert on that site expired last week, causing wget to block the request.
I was able to bypass this by editing the update script.
In file /etc/cron.week/firmware_update.sh I changed line 13 from:
DATA=`wget -qO- https://api.getoboo.com/v1/firmware/update?mac=$MAC`
to
DATA=`wget -qO- https://api.getoboo.com/v1/firmware/update?mac=$MAC --no-check-certificate`
This allowed the update to proceed, but is obviously not a good long term solution.
The next issue I encountered is a set of file conflicts between packages oboo-clock-scripts and oboo-clock-provisioning-scripts.
Installing oboo-clock-scripts (0.0.7-9) to root...
Downloading http://repo.getoboo.com/oboo-clock/packages/oboo-clock-scripts_0.0.7-9_mipsel_24kc.ipk
Collected errors:
* check_data_file_clashes: Package oboo-clock-scripts wants to install file /www/cgi-bin/ver
But that file is already provided by package * oboo-clock-provisioning-scripts
* check_data_file_clashes: Package oboo-clock-scripts wants to install file /www/cgi-bin/wifi-scan
But that file is already provided by package * oboo-clock-provisioning-scripts
* check_data_file_clashes: Package oboo-clock-scripts wants to install file /www/cgi-bin/wifi-setup
But that file is already provided by package * oboo-clock-provisioning-scripts
* opkg_install_cmd: Cannot install package oboo-clock-scripts.
I got this error when running the full update script as well as when trying to update oboo-clock-scripts manually.
As a result, I was missing the config options, the http assets, and other important things.
It turned out that oboo-clock-provisioning-scripts seems to be old (it is at least no longer available in the repos).
I stumbled across the fix by accident, attempting to update the package...
root@Oboo-Clock-5448:/# opkg install --force-reinstall oboo-clock-provisioning-scripts
Removing package oboo-clock-provisioning-scripts from root...
Installing oboo-clock-provisioning-scripts (0.2.1-2) to root...
Collected errors:
* opkg_download_pkg: Package oboo-clock-provisioning-scripts is not available from any configured src.
* opkg_install_pkg: Failed to download oboo-clock-provisioning-scripts. Perhaps you need to run 'opkg update'?
* opkg_install_cmd: Cannot install package oboo-clock-provisioning-scripts.
The force option cause the package to just be removed. An opkg remove command would probably have worked as well.
Once oboo-clock-provisioning-scripts was gone, oboo-clock-scripts updated successfully:
root@Oboo-Clock-5448:/# opkg install --force-reinstall oboo-clock-scripts
No packages removed.
Installing oboo-clock-scripts (0.0.7-9) to root...
Downloading http://repo.getoboo.com/oboo-clock/packages/oboo-clock-scripts_0.0.7-9_mipsel_24kc.ipk
Configuring oboo-clock-scripts.
Hopefully this helps anyone else who has trouble updating.
Onion, please fix the cert error and include in your updates cleaning up any old packages that are no longer needed.
Quote from franko553 on January 6, 2019, 3:46 pmI now have a new update issue... this time without a workaround.
I just tried to do another full update and it returned the following error:
root@Oboo-Clock-5448:~# sh /etc/cron.week/firmware_update.sh
update available
Downloading http://repo.onion.io/omega2/packages/core/Packages.gz
Updated list of available packages in /var/opkg-lists/omega2_core
Downloading http://repo.onion.io/omega2/packages/core/Packages.sig
Signature check passed.
Downloading http://repo.onion.io/omega2/packages/base/Packages.gz
Updated list of available packages in /var/opkg-lists/omega2_base
Downloading http://repo.onion.io/omega2/packages/base/Packages.sig
Signature check passed.
Downloading http://repo.onion.io/omega2/packages/packages/Packages.gz
Updated list of available packages in /var/opkg-lists/omega2_packages
Downloading http://repo.onion.io/omega2/packages/packages/Packages.sig
Signature check passed.
Downloading http://repo.onion.io/omega2/packages/onion/Packages.gz
Updated list of available packages in /var/opkg-lists/omega2_onion
Downloading http://repo.onion.io/omega2/packages/onion/Packages.sig
Signature check passed.
Downloading http://repo.getoboo.com/oboo-clock/packages/Packages.gz
Updated list of available packages in /var/opkg-lists/oboo_clock
Downloading http://repo.getoboo.com/oboo-clock/packages/Packages.sig
Signature check passed.
Upgrading oboo-clock-base on root from 0.0.5-1 to 0.0.7-9...
Downloading http://repo.getoboo.com/oboo-clock/packages/oboo-clock-base_0.0.7-9_mipsel_24kc.ipk
Installing oboo-cron (0.0.7-9) to root...
Downloading http://repo.getoboo.com/oboo-clock/packages/oboo-cron_0.0.7-9_mipsel_24kc.ipk
oboo-clock-fw-manager was autoinstalled and is now orphaned, removing.
Removing package oboo-clock-fw-manager from root...
Configuring oboo-cron.
Collected errors:
* check_data_file_clashes: Package oboo-clock-base wants to install file /www/index.html
But that file is already provided by package * base-www
Unknown package 'oboo-clock-fw-manager'.
Installing oboo-clock-provisioning-scripts (0.2.1-2) to root...
Collected errors:
* opkg_download_pkg: Package oboo-clock-provisioning-scripts is not available from any configured src.
* opkg_install_pkg: Failed to download oboo-clock-provisioning-scripts. Perhaps you need to run 'opkg update'?
It removed package oboo-clock-fw-manager...
I thought that may be an old package that was no longer needed, so it did not trouble me too much, but I quickly found out that it must have included all of the firmware update assets because now I no longer have a /etc/cron.week/firmware_update.sh
Is there a new firmware update method that does not use that file?
If this was a bug with the update, how do I now get that file back?
I now have a new update issue... this time without a workaround.
I just tried to do another full update and it returned the following error:
root@Oboo-Clock-5448:~# sh /etc/cron.week/firmware_update.sh
update available
Downloading http://repo.onion.io/omega2/packages/core/Packages.gz
Updated list of available packages in /var/opkg-lists/omega2_core
Downloading http://repo.onion.io/omega2/packages/core/Packages.sig
Signature check passed.
Downloading http://repo.onion.io/omega2/packages/base/Packages.gz
Updated list of available packages in /var/opkg-lists/omega2_base
Downloading http://repo.onion.io/omega2/packages/base/Packages.sig
Signature check passed.
Downloading http://repo.onion.io/omega2/packages/packages/Packages.gz
Updated list of available packages in /var/opkg-lists/omega2_packages
Downloading http://repo.onion.io/omega2/packages/packages/Packages.sig
Signature check passed.
Downloading http://repo.onion.io/omega2/packages/onion/Packages.gz
Updated list of available packages in /var/opkg-lists/omega2_onion
Downloading http://repo.onion.io/omega2/packages/onion/Packages.sig
Signature check passed.
Downloading http://repo.getoboo.com/oboo-clock/packages/Packages.gz
Updated list of available packages in /var/opkg-lists/oboo_clock
Downloading http://repo.getoboo.com/oboo-clock/packages/Packages.sig
Signature check passed.
Upgrading oboo-clock-base on root from 0.0.5-1 to 0.0.7-9...
Downloading http://repo.getoboo.com/oboo-clock/packages/oboo-clock-base_0.0.7-9_mipsel_24kc.ipk
Installing oboo-cron (0.0.7-9) to root...
Downloading http://repo.getoboo.com/oboo-clock/packages/oboo-cron_0.0.7-9_mipsel_24kc.ipk
oboo-clock-fw-manager was autoinstalled and is now orphaned, removing.
Removing package oboo-clock-fw-manager from root...
Configuring oboo-cron.
Collected errors:
* check_data_file_clashes: Package oboo-clock-base wants to install file /www/index.html
But that file is already provided by package * base-www
Unknown package 'oboo-clock-fw-manager'.
Installing oboo-clock-provisioning-scripts (0.2.1-2) to root...
Collected errors:
* opkg_download_pkg: Package oboo-clock-provisioning-scripts is not available from any configured src.
* opkg_install_pkg: Failed to download oboo-clock-provisioning-scripts. Perhaps you need to run 'opkg update'?
It removed package oboo-clock-fw-manager...
I thought that may be an old package that was no longer needed, so it did not trouble me too much, but I quickly found out that it must have included all of the firmware update assets because now I no longer have a /etc/cron.week/firmware_update.sh
Is there a new firmware update method that does not use that file?
If this was a bug with the update, how do I now get that file back?
Quote from ckruetze on January 7, 2019, 4:11 pmHi,
not sure if there is any official help. It looks like very little official communication in here in recent weeks.
How about this, does this help:
cat /etc/cron.week/firmware_update.sh #!/bin/sh # include the json sh library . /usr/share/libubox/jshn.sh json_init PACKAGE_NAME="oboo-clock-base" MAC=`cat /sys/class/net/ra0/address` PACKAGE_VER=`opkg info $PACKAGE_NAME | grep Version | sed -e 's/^Version:\s//g'` MODEL=`ubus call system board | grep model | sed -e 's/:"(.*?)"/\1/p'` DATA=`wget -qO- https://api.getoboo.com/v1/firmware/update?mac=$MAC --no-check-certificate` # Parse JSON content json_load "$DATA" json_get_var update_available update_available json_get_var mac mac json_get_var package_version package_version doUpdate () { opkg update opkg upgrade $PACKAGE_NAME sh /usr/share/oboo/oboo-sw-upgrade.sh } if [ $update_available ] && [ "$PACKAGE_VER" != "$package_version" ]; then echo "update available" doUpdate else echo "no update available" fi;
Hi,
not sure if there is any official help. It looks like very little official communication in here in recent weeks.
How about this, does this help:
cat /etc/cron.week/firmware_update.sh #!/bin/sh # include the json sh library . /usr/share/libubox/jshn.sh json_init PACKAGE_NAME="oboo-clock-base" MAC=`cat /sys/class/net/ra0/address` PACKAGE_VER=`opkg info $PACKAGE_NAME | grep Version | sed -e 's/^Version:\s//g'` MODEL=`ubus call system board | grep model | sed -e 's/:"(.*?)"/\1/p'` DATA=`wget -qO- https://api.getoboo.com/v1/firmware/update?mac=$MAC --no-check-certificate` # Parse JSON content json_load "$DATA" json_get_var update_available update_available json_get_var mac mac json_get_var package_version package_version doUpdate () { opkg update opkg upgrade $PACKAGE_NAME sh /usr/share/oboo/oboo-sw-upgrade.sh } if [ $update_available ] && [ "$PACKAGE_VER" != "$package_version" ]; then echo "update available" doUpdate else echo "no update available" fi;
Quote from franko553 on January 12, 2019, 6:53 pmThanks ckruetze!
That was exactly what I needed.
I had to run it a few times, but I think I am finally up to date.
"Up to date" brought no actual improvements that I've seen yet, but that is a separate matter.
Thanks ckruetze!
That was exactly what I needed.
I had to run it a few times, but I think I am finally up to date.
"Up to date" brought no actual improvements that I've seen yet, but that is a separate matter.