diff --git a/CHANGELOG.md b/CHANGELOG.md index 7af7cd36..c75b328a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,11 +1,18 @@ # Changelog +## [2.6.2] - 2024-10-06 +### Added + - Added Rtkbase gnss reverse proxy service in the diagnostic view. #421 +### Fixed + - Remove firstboot service on Raspberry Pi image >= 2.5 which was causing services to stay stopped after a reboot. #436 + - Reboot autorefresh timeout is now 90s. #426 + ## [2.6.1] - 2024-08-26 ### Changed - More tests before installing prebuilt RTKLib cli tools. ### Fixed - Build rtklib if previous installed release is not working. #418 - - Insert new release into settings.conf before restarting services. #411 + - Insert new release number into settings.conf before restarting services. #411 - Custom web_port setting was not used. #419 - Cellular modem: nmcli connection was not updated after a switch to public ip address. diff --git a/settings.conf.default b/settings.conf.default index b50e2e45..e806217a 100644 --- a/settings.conf.default +++ b/settings.conf.default @@ -2,7 +2,7 @@ [general] # Version -version=2.6.1 +version=2.6.2 # Rtkbase upgrade mandatory "checkpoint" checkpoint_version=2.7.0 # User who runs str2str_file service diff --git a/tools/rtkbase_update.sh b/tools/rtkbase_update.sh index 4dcc46ed..47c48cb7 100755 --- a/tools/rtkbase_update.sh +++ b/tools/rtkbase_update.sh @@ -207,6 +207,24 @@ upd_2.6.0() { then "${destination_directory}"/tools/install.sh --user "${standard_user}" --rtklib fi + upd_2.6.1 "$@" +} + +upd_2.6.1() { + #Remove firstboot service from the Raspberry 2.5 and 2.6 images + #This service should have been removed after the first boot, but + # wasn't and was stopping various RTKBase services at each boot. + if [[ -f /etc/os-release ]] + then + source /etc/os-release + fi + + if [[ $ID == debian ]] && systemctl list-units firstboot.service + then + systemctl disable --now firstboot.service + rm /lib/systemd/system/firstboot.service + systemctl daemon-reload + fi } #check if we can apply the update diff --git a/web_app/server.py b/web_app/server.py index 4c822aa2..bb39670d 100755 --- a/web_app/server.py +++ b/web_app/server.py @@ -102,9 +102,10 @@ {"service_unit" : "str2str_rtcm_svr.service", "name" : "rtcm_svr"}, {'service_unit' : 'str2str_rtcm_serial.service', "name" : "rtcm_serial"}, {"service_unit" : "str2str_file.service", "name" : "file"}, - {'service_unit' : 'rtkbase_archive.timer', "name" : "archive_timer"}, + {'service_unit' : 'rtkbase_archive.timer', "name" : "archive_timer"}, {'service_unit' : 'rtkbase_archive.service', "name" : "archive_service"}, {'service_unit' : 'rtkbase_raw2nmea.service', "name" : "raw2nmea"}, + {'service_unit' : 'rtkbase_gnss_web_proxy.service', "name": "RTKBase Reverse Proxy for Gnss receiver Web Server"} ] #Delay before rtkrcv will stop if no user is on status.html page @@ -840,8 +841,8 @@ def getServicesStatus(emit_pingback=True): """ #print("Getting services status") - try: - for service in services_list: + for service in services_list: + try: #print("unit qui déconne : ", service["name"]) service["active"] = service["unit"].isActive() service["status"] = service["unit"].status() @@ -853,11 +854,11 @@ def getServicesStatus(emit_pingback=True): else: service["state_ok"] = None - except Exception as e: - #print("Error getting service info for: {} - {}".format(service['name'], e)) - #TODO manage better the error with rtkbase_archive.service. See https://github.com/Stefal/rtkbase/issues/162 - #and try to remove this "pass" without any notification (bad practive) - pass + except Exception as e: + print("Error getting service info for: {} - {}".format(service['name'], e)) + #TODO manage better the error with rtkbase_archive.service. See https://github.com/Stefal/rtkbase/issues/162 + #and try to remove this "pass" without any notification (bad practive) + pass services_status = [] for service in services_list: diff --git a/web_app/static/settings.js b/web_app/static/settings.js index c63e6e30..9f480063 100644 --- a/web_app/static/settings.js +++ b/web_app/static/settings.js @@ -714,7 +714,7 @@ $(document).ready(function () { $(this).prop("disabled", true); $("#reboot-cancel-button").prop("disabled", true); socket.emit("reboot device"); - reboot_countdown(60, 0); + reboot_countdown(90, 0); }) function reboot_countdown(remaining, count) {