diff options
| author | Jonathan "Geenz" Goodman <geenz@lindenlab.com> | 2026-04-07 19:12:59 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-04-07 19:12:59 -0400 |
| commit | 5c500ccf407f0b5a0b253b98dd4bd3f33f643aba (patch) | |
| tree | f4948905ec8f90190e6ea05353d0c57cf5fd93eb /indra/newview/llvelopack.h | |
| parent | 18db816ef7552785ffa26d6d0397efbb341a999f (diff) | |
Release/26.1.1 (#5530)
* Integrate Velopack installer and update framework
* Add Velopack update support for macOS and VVM integration
* Update Velopack version and dependencies
* Improve Velopack packaging for macOS
* #5346 Uninstall older non-velopack viewer (#5363)
* #5335 Fix silent uninstall asking about registry
* #5346 Uninstall older non-velopack viewer
* Use runtime viewer exe name, handle Velopack URL
* Velopack download failure diagnostic (#5520)
* Velopack download failure diagnostic
* Fix up velopack downloading updates. Handle updates internally then hand them off to velopack. (#5524)
* More velopack changes. Should download updates properly now.
* Don't include NSI files
* Restore optional updates, refine viewer restart behavior. (#5527)
* Add support for optional updates.
* Don't restart the viewer after the update unless it was optional.
* Setup UpdaterServiceSetting with velopack properly.
* Refine the restart behavior a bit - readd the old "the viewer must update" UX.
* If the update is still downloading, close should just reopen the downloading dialog.
---------
Co-authored-by: Jonathan "Geenz" Goodman <geenz@lindenlab.com>
* Remove SLVersionChecker from the viewer with velopack. (#5528)
* Remove SLVersionChecker updater integration
* Ensure that the portable install has the correct version number.
* Don't produce shortcuts with VPK - we do this with our post install.
* Bump viewer version from 26.1.0 to 26.1.1
* Potential fix for uninstaller not being functional.
* Fix for UpdaterServiceSetting being ignored.
* Filter for release channel when generating shortcuts.
* Add some more logging for icons on Windows builds.
* More VPK logging.
* Move velopack packaging in CI to the sign and package step.
* Enable velopack downgrade and skip older updates
* Move the version required checking into velopack's checks.
* Potential fix for downgrade prompts.
* Make sure our macOS flow mirrors Windows.
* Make sure to use the dev version of the mac sign and package.
* p#553 Only one of two uninstallers displayed
* #5346 Don't force user to shutdown velopack build for NSIS uninstall
* #5346 Ignore option for the uninstall dialog
* #5346 Fix early exit crash
* #5346 Properly reset version flag.
* Add some autodetect logic on macOS.
* p#564 Clear legacy links
* p#553 Handle uninstall records
* p#549 Permit testing release notes on a test build
* p#564 Remake nsis to velopack update flow
* p#564 Remake nsis to velopack update flow #2
* p#564 Fix incorrect value type
* p#553 Clear velopack's own registry entry in favor of a custom one
* #5346 Resolve duplicated window class name
* Bump to 2.1.0 of sign and package.
---------
Co-authored-by: Andrey Kleshchev <117672381+akleshchev@users.noreply.github.com>
Diffstat (limited to 'indra/newview/llvelopack.h')
| -rw-r--r-- | indra/newview/llvelopack.h | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/indra/newview/llvelopack.h b/indra/newview/llvelopack.h new file mode 100644 index 0000000000..d04d0db7dc --- /dev/null +++ b/indra/newview/llvelopack.h @@ -0,0 +1,59 @@ +/** + * @file llvelopack.h + * @brief Velopack installer and update framework integration + * + * $LicenseInfo:firstyear=2025&license=viewerlgpl$ + * Second Life Viewer Source Code + * Copyright (C) 2025, Linden Research, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License only. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA + * $/LicenseInfo$ + */ + +#ifndef LL_LLVELOPACK_H +#define LL_LLVELOPACK_H + +#if LL_VELOPACK + +#include <string> +#include <functional> + +bool velopack_initialize(); +void velopack_check_for_updates(const std::string& required_version, const std::string& relnotes_url); +std::string velopack_get_current_version(); +bool velopack_is_update_pending(); +bool velopack_is_required_update_in_progress(); +std::string velopack_get_required_update_version(); +bool velopack_should_restart_after_update(); +void velopack_request_restart_after_update(); +void velopack_apply_pending_update(bool restart = true); +void velopack_set_update_url(const std::string& url); +void velopack_set_progress_callback(std::function<void(int)> callback); +void velopack_cleanup(); + +#if LL_WINDOWS +void clear_nsis_links(); +bool get_nsis_version( + int& nsis_major, + int& nsis_minor, + int& nsis_patch, + uint64_t& nsis_build); +#endif + +#endif // LL_VELOPACK +#endif +// EOF |
