mirror of
https://codeberg.org/armin/wavetable.git
synced 2026-09-01 05:50:46 +02:00
Switch to .pkg/.exe/.deb installers with Azure Trusted Signing
Replaces the zip-based ci/build.sh flow with installer outputs (Inno Setup on Windows, productbuild on macOS, cpack DEB on Linux) signed via Microsoft Trusted Signing on Windows and Apple Developer ID on macOS. Plugin code: factory wavetables and presets now ship as files via the installer rather than embedded BinaryData. PluginProcessor implements getProgramDirectory/getFactoryProgramDirectories so gin scans factory content from systemResourceRoot. First-run migration copies any presets from the legacy com.socalabs/Wavetable/programs path into the new user dir under Library/Audio/Presets/SocaLabs/Wavetable. Bumps gin submodule to match Identity for getFactoryProgramDirectories support.
This commit is contained in:
parent
7a62457617
commit
130e626ea6
21 changed files with 879 additions and 262 deletions
51
.github/workflows/build.yaml
vendored
51
.github/workflows/build.yaml
vendored
|
|
@ -3,7 +3,7 @@ on:
|
|||
push:
|
||||
branches:
|
||||
- '**'
|
||||
|
||||
|
||||
concurrency:
|
||||
group: build-${{ github.ref || github.run_id }}
|
||||
|
||||
|
|
@ -11,33 +11,58 @@ jobs:
|
|||
build:
|
||||
name: Build
|
||||
runs-on: ${{ matrix.os }}
|
||||
timeout-minutes: 30
|
||||
timeout-minutes: 60
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- name: Windows
|
||||
os: [windows-latest]
|
||||
os: windows-latest
|
||||
- name: Linux
|
||||
os: [ubuntu-latest]
|
||||
os: ubuntu-latest
|
||||
- name: macOS
|
||||
os: [macos-latest]
|
||||
os: macos-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: recursive
|
||||
- name: "Run script"
|
||||
|
||||
- name: Install Linux dependencies
|
||||
if: matrix.name == 'Linux'
|
||||
run: |
|
||||
./ci/build.sh
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y --no-install-recommends \
|
||||
ninja-build clang g++ \
|
||||
libasound2-dev libjack-jackd2-dev ladspa-sdk libcurl4-openssl-dev \
|
||||
libfreetype-dev libfontconfig1-dev \
|
||||
libx11-dev libxcomposite-dev libxcursor-dev libxext-dev \
|
||||
libxinerama-dev libxrandr-dev libxrender-dev \
|
||||
libwebkit2gtk-4.1-dev libglu1-mesa-dev mesa-common-dev
|
||||
shell: bash
|
||||
|
||||
- name: Install Inno Setup (Windows)
|
||||
if: matrix.name == 'Windows'
|
||||
run: choco install innosetup --no-progress -y
|
||||
shell: bash
|
||||
|
||||
- name: Build installer
|
||||
run: ./Installer/build.sh
|
||||
shell: bash
|
||||
env:
|
||||
# macOS signing / notarization
|
||||
APPLICATION: ${{ secrets.APPLICATION }}
|
||||
INSTALLER: ${{ secrets.INSTALLER }}
|
||||
APPLE_PASS: ${{ secrets.APPLE_PASS }}
|
||||
APPLE_USER: ${{ secrets.APPLE_USER }}
|
||||
APIKEY: ${{ secrets.APIKEY }}
|
||||
INSTALLER: ${{ secrets.INSTALLER }}
|
||||
APPLE_USER: ${{ secrets.APPLE_USER }}
|
||||
APPLE_PASS: ${{ secrets.APPLE_PASS }}
|
||||
# Windows Trusted Signing (Azure)
|
||||
AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }}
|
||||
AZURE_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }}
|
||||
AZURE_CLIENT_SECRET: ${{ secrets.AZURE_CLIENT_SECRET }}
|
||||
|
||||
- name: Upload Artifact
|
||||
uses: actions/upload-artifact@v4
|
||||
if: always()
|
||||
with:
|
||||
name: Binaries ${{ matrix.name }}
|
||||
path: ci/bin/*.zip
|
||||
retention-days: 30
|
||||
path: bin/*
|
||||
retention-days: 30
|
||||
|
|
|
|||
57
.github/workflows/release.yaml
vendored
57
.github/workflows/release.yaml
vendored
|
|
@ -8,45 +8,58 @@ jobs:
|
|||
build:
|
||||
name: Build
|
||||
runs-on: ${{ matrix.os }}
|
||||
timeout-minutes: 30
|
||||
timeout-minutes: 60
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- name: Windows
|
||||
os: [windows-latest]
|
||||
os: windows-latest
|
||||
- name: Linux
|
||||
os: [ubuntu-latest]
|
||||
os: ubuntu-latest
|
||||
- name: macOS
|
||||
os: [macos-latest]
|
||||
os: macos-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: recursive
|
||||
- name: "Build"
|
||||
|
||||
- name: Install Linux dependencies
|
||||
if: matrix.name == 'Linux'
|
||||
run: |
|
||||
./ci/build.sh
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y --no-install-recommends \
|
||||
ninja-build clang g++ \
|
||||
libasound2-dev libjack-jackd2-dev ladspa-sdk libcurl4-openssl-dev \
|
||||
libfreetype-dev libfontconfig1-dev \
|
||||
libx11-dev libxcomposite-dev libxcursor-dev libxext-dev \
|
||||
libxinerama-dev libxrandr-dev libxrender-dev \
|
||||
libwebkit2gtk-4.1-dev libglu1-mesa-dev mesa-common-dev
|
||||
shell: bash
|
||||
|
||||
- name: Install Inno Setup (Windows)
|
||||
if: matrix.name == 'Windows'
|
||||
run: choco install innosetup --no-progress -y
|
||||
shell: bash
|
||||
|
||||
- name: Build installer
|
||||
run: ./Installer/build.sh
|
||||
shell: bash
|
||||
env:
|
||||
APPLICATION: ${{ secrets.APPLICATION }}
|
||||
INSTALLER: ${{ secrets.INSTALLER }}
|
||||
APPLE_PASS: ${{ secrets.APPLE_PASS }}
|
||||
APPLE_USER: ${{ secrets.APPLE_USER }}
|
||||
APIKEY: ${{ secrets.APIKEY }}
|
||||
- name: "Upload"
|
||||
run: |
|
||||
./ci/upload.sh
|
||||
shell: bash
|
||||
env:
|
||||
APPLICATION: ${{ secrets.APPLICATION }}
|
||||
INSTALLER: ${{ secrets.INSTALLER }}
|
||||
APPLE_PASS: ${{ secrets.APPLE_PASS }}
|
||||
APPLE_USER: ${{ secrets.APPLE_USER }}
|
||||
APIKEY: ${{ secrets.APIKEY }}
|
||||
INSTALLER: ${{ secrets.INSTALLER }}
|
||||
APPLE_USER: ${{ secrets.APPLE_USER }}
|
||||
APPLE_PASS: ${{ secrets.APPLE_PASS }}
|
||||
AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }}
|
||||
AZURE_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }}
|
||||
AZURE_CLIENT_SECRET: ${{ secrets.AZURE_CLIENT_SECRET }}
|
||||
|
||||
- name: Upload Artifact
|
||||
uses: actions/upload-artifact@v4
|
||||
if: always()
|
||||
with:
|
||||
name: Binaries ${{ matrix.name }}
|
||||
path: ci/bin/*.zip
|
||||
path: bin/*
|
||||
retention-days: 30
|
||||
|
||||
release:
|
||||
|
|
@ -54,7 +67,6 @@ jobs:
|
|||
needs: build
|
||||
runs-on: ubuntu-latest
|
||||
timeout-minutes: 30
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Download Artifacts
|
||||
|
|
@ -64,3 +76,4 @@ jobs:
|
|||
shell: bash
|
||||
env:
|
||||
GH_TOKEN: ${{ secrets.ACCESS_TOKEN }}
|
||||
APIKEY: ${{ secrets.APIKEY }}
|
||||
|
|
|
|||
4
.gitignore
vendored
4
.gitignore
vendored
|
|
@ -33,6 +33,8 @@
|
|||
xcuserdata
|
||||
Builds
|
||||
JuceLibraryCode
|
||||
ci/bin
|
||||
bin
|
||||
Installer/macOS/bin
|
||||
Installer/win/bin
|
||||
.DS_Store
|
||||
.claude
|
||||
|
|
@ -13,7 +13,10 @@ set (PLUGIN_CODE Wave)
|
|||
set (CMAKE_POLICY_DEFAULT_CMP0077 NEW)
|
||||
set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>")
|
||||
set (CMAKE_SUPPRESS_REGENERATION true)
|
||||
set (CMAKE_SKIP_INSTALL_RULES YES)
|
||||
# Skip install rules everywhere except Linux, where CPack/DEB needs them.
|
||||
if (NOT (UNIX AND NOT APPLE))
|
||||
set (CMAKE_SKIP_INSTALL_RULES YES)
|
||||
endif()
|
||||
set (CMAKE_POSITION_INDEPENDENT_CODE ON)
|
||||
set_property (GLOBAL PROPERTY DEBUG_CONFIGURATIONS "Debug")
|
||||
|
||||
|
|
@ -96,9 +99,7 @@ set_property (TARGET melatonin_inspector APPEND PROPERTY LABELS melatonin)
|
|||
set_property (DIRECTORY APPEND PROPERTY LABELS Assets)
|
||||
|
||||
file (GLOB_RECURSE binary_files CONFIGURE_DEPENDS
|
||||
"./plugin/Resources/layout.json"
|
||||
"./plugin/Resources/WavetablesFLAC/*.wt2048"
|
||||
"./plugin/Resources/Presets/*.xml")
|
||||
"./plugin/Resources/layout.json")
|
||||
|
||||
juce_add_binary_data (${PLUGIN_NAME}_Assets SOURCES ${binary_files})
|
||||
|
||||
|
|
@ -242,10 +243,57 @@ if(UNIX AND NOT APPLE)
|
|||
endif()
|
||||
|
||||
|
||||
if(WIN32)
|
||||
set (dest "Program Files")
|
||||
else()
|
||||
set (dest "Applications")
|
||||
endif()
|
||||
#
|
||||
# Install + CPack (Linux only — macOS uses pkgbuild/productbuild, Windows uses Inno Setup)
|
||||
#
|
||||
if (UNIX AND NOT APPLE)
|
||||
set (_artefact_dir "${CMAKE_BINARY_DIR}/${PLUGIN_NAME}_artefacts/$<CONFIG>")
|
||||
|
||||
install (TARGETS ${PLUGIN_NAME} DESTINATION "${dest}")
|
||||
install (FILES "${_artefact_dir}/VST/lib${PLUGIN_NAME}.so"
|
||||
DESTINATION lib/vst
|
||||
RENAME "${PLUGIN_NAME}.so"
|
||||
COMPONENT VST)
|
||||
|
||||
install (DIRECTORY "${_artefact_dir}/VST3/${PLUGIN_NAME}.vst3"
|
||||
DESTINATION lib/vst3
|
||||
COMPONENT VST3
|
||||
USE_SOURCE_PERMISSIONS)
|
||||
|
||||
install (DIRECTORY "${_artefact_dir}/LV2/${PLUGIN_NAME}.lv2"
|
||||
DESTINATION lib/lv2
|
||||
COMPONENT LV2
|
||||
USE_SOURCE_PERMISSIONS)
|
||||
|
||||
install (FILES "${_artefact_dir}/CLAP/${PLUGIN_NAME}.clap"
|
||||
DESTINATION lib/clap
|
||||
COMPONENT CLAP)
|
||||
|
||||
install (DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/plugin/Resources/Presets/"
|
||||
DESTINATION share/SocaLabs/${PLUGIN_NAME}/Presets
|
||||
COMPONENT Resources
|
||||
FILES_MATCHING PATTERN "*.xml")
|
||||
|
||||
install (DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/plugin/Resources/WavetablesFLAC/"
|
||||
DESTINATION share/SocaLabs/${PLUGIN_NAME}/Wavetables
|
||||
COMPONENT Resources
|
||||
FILES_MATCHING PATTERN "*.wt2048")
|
||||
|
||||
set (CPACK_PACKAGE_NAME "wavetable")
|
||||
set (CPACK_PACKAGE_VERSION "${PLUGIN_VERSION}")
|
||||
set (CPACK_PACKAGE_VENDOR "SocaLabs")
|
||||
set (CPACK_PACKAGE_HOMEPAGE_URL "https://socalabs.com/")
|
||||
set (CPACK_PACKAGE_DESCRIPTION_SUMMARY "Wavetable synthesizer plugin")
|
||||
set (CPACK_PACKAGE_CONTACT "support@socalabs.com")
|
||||
set (CPACK_PACKAGING_INSTALL_PREFIX "/usr")
|
||||
set (CPACK_GENERATOR "DEB")
|
||||
set (CPACK_DEB_COMPONENT_INSTALL OFF)
|
||||
set (CPACK_COMPONENTS_ALL VST VST3 LV2 CLAP Resources)
|
||||
set (CPACK_COMPONENTS_GROUPING ALL_COMPONENTS_IN_ONE)
|
||||
set (CPACK_DEBIAN_PACKAGE_MAINTAINER "Roland Rabien <support@socalabs.com>")
|
||||
set (CPACK_DEBIAN_PACKAGE_SECTION "sound")
|
||||
set (CPACK_DEBIAN_PACKAGE_PRIORITY "optional")
|
||||
set (CPACK_DEBIAN_PACKAGE_SHLIBDEPS ON)
|
||||
set (CPACK_DEBIAN_FILE_NAME "Wavetable.deb")
|
||||
|
||||
include (CPack)
|
||||
endif()
|
||||
|
|
|
|||
127
Installer/EULA.rtf
Normal file
127
Installer/EULA.rtf
Normal file
|
|
@ -0,0 +1,127 @@
|
|||
{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang4105\deflangfe4105{\fonttbl{\f0\fswiss\fprq2\fcharset0 Calibri Light;}}
|
||||
{\colortbl ;\red82\green82\blue82;\red0\green0\blue0;}
|
||||
{\*\listtable
|
||||
{\list\listhybrid
|
||||
{\listlevel\levelnfc0\leveljc0\levelstartat1{\leveltext\'02\'00.;}{\levelnumbers\'01;}\jclisttab\tx720}
|
||||
{\listlevel\levelnfc4\leveljc0\levelstartat1{\leveltext\'02\'01.;}{\levelnumbers\'01;}\jclisttab\tx720}\listid1 }}
|
||||
{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}}
|
||||
{\*\generator Riched20 10.0.18362}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1
|
||||
\pard\widctlpar\expndtw-10\kerning28\f0\fs56 End-User Licence Agreement\par
|
||||
|
||||
\pard\widctlpar\sa720\qj\cf1\expndtw0\kerning0\fs21\line READ THE FOLLOWING LICENCE AGREEMENT CAREFULLY! IT CONTAINS VERY IMPORTANT INFORMATION ABOUT YOUR RIGHTS AND OBLIGATIONS, AS WELL AS LIMITATIONS AND EXCLUSIONS THAT MAY APPLY TO YOU. THIS DOCUMENT CONTAINS A DISPUTE RESOLUTION CLAUSE. BY CLICKING ON THE "ACCEPT" BUTTON, YOU ARE CONSENTING TO BE BOUND BY AND ARE BECOMING A PARTY TO THIS AGREEMENT. IF YOU DO NOT AGREE TO ALL OF THE TERMS OF THIS AGREEMENT, CLICK THE "DO NOT ACCEPT" BUTTON OR LEAVE THE WEBSITE.\par
|
||||
|
||||
\pard\widctlpar\sa120\qj\cf2\b\fs33 1. Definitions\par
|
||||
|
||||
\pard
|
||||
{\pntext\f0 1.\tab}{\*\pn\pnlvlbody\pnf0\pnindent720\pnstart1\pndec{\pntxta.}}
|
||||
\widctlpar\fi-360\li360\qj\cf1\b0\fs21 "We", "Our" and "Us" means SocaLabs.\par
|
||||
{\pntext\f0 2.\tab}"You" and "Your" means the person or entity who is being licenced to use the Licenced Software.\par
|
||||
{\pntext\f0 3.\tab}"Agreement" means this Software Licence Agreement between Us and You;\par
|
||||
{\pntext\f0 4.\tab}"Licenced Materials" means the Licenced Software and the Licenced Library;\par
|
||||
{\pntext\f0 5.\tab}"Licenced Software" means certain commercial software products being provided to You under this Agreement, including executable program modules thereof, as well as related documentation, and computer readable media;\par
|
||||
{\pntext\f0 6.\tab}"Sub-Licenced Software" means certain third party owned software components being provided under this Agreement that are required to properly enable or operate the Licenced Software; and\par
|
||||
{\pntext\f0 7.\tab}"Licenced Library" means any audio waveforms, such as melodies, music, instrument recordings, or other audible information, provided by Us for use with the Licenced Software.\par
|
||||
|
||||
\pard\widctlpar\li360\qj\par
|
||||
\par
|
||||
|
||||
\pard\widctlpar\sa120\qj\cf2\b\fs33 2. Software Licence, Rights and Restrictions\par
|
||||
|
||||
\pard
|
||||
{\listtext\f0 1.\tab}\jclisttab\tx720\ls1\widctlpar\fi-360\li360\qj\cf1\b0\fs21 Subject to the provisions contained in this Agreement, We hereby grant to You a personal, revocable, non-exclusive licence (the "Licence") to access, read, use and download one copy of the Licenced Materials solely for the purposes provided under paragraph 3. This is not a transfer of title.\par
|
||||
{\listtext\f0 2.\tab}Under the Licence you may not and shall not, without Our express written authorization:\par
|
||||
|
||||
\pard
|
||||
{\listtext\f0 a.\tab}\jclisttab\tx720\ls1\ilvl1\widctlpar\fi-360\li1080\qj own title, or transfer title to the Licenced Materials to another party;\par
|
||||
{\listtext\f0 b.\tab}transfer the Licence;\par
|
||||
{\listtext\f0 c.\tab}remove any copyright or other proprietary notations from the Licenced Materials;\par
|
||||
{\listtext\f0 d.\tab}distribute, or sublicense or otherwise provide copies of or access to the Licenced Materials to any third party;\par
|
||||
{\listtext\f0 e.\tab}pledge, hypothecate, alienate or otherwise encumber the Licenced Materials to any third party;\par
|
||||
{\listtext\f0 f.\tab}create derivative works of, reverse engineer, decompile, disassemble, adapt, translate, transmit, arrange, modify, copy, bundle, sell, sublicense, export, merge, transfer, adapt, loan, rent, lease, assign, share, outsource, host, publish, make available to any person or otherwise use, either directly or indirectly, the Licenced Materials;\par
|
||||
{\listtext\f0 g.\tab}permit, allow or do anything that would infringe or otherwise prejudice the proprietary rights of Us or Our licensors;\par
|
||||
{\listtext\f0 h.\tab}circumvent, remove, alter or otherwise impair any technological protection measures, digital rights management information, or other copy-protection mechanisms used in or by the Licenced Materials; or\par
|
||||
{\listtext\f0 i.\tab}include, use, re-sample, mix, process, isolate or embed any content from the Licenced Library in any virtual instrument, audio sampling system, audio playback system or library of any kind, other than those provided or authorized by Us.\par
|
||||
|
||||
\pard
|
||||
{\listtext\f0 3.\tab}\jclisttab\tx720\ls1\widctlpar\fi-360\li360\qj We are not obligated to provide any authorization referred to in paragraph 2(2), We reserve the right to charge a fee for the grant of such authorization, and We may cancel such authorization at Our sole and unfettered discretion by providing notice to You of such cancellation.\par
|
||||
{\listtext\f0 4.\tab}The restrictions set out in this Agreement, including the restrictions listed at paragraph 2(2), shall not apply to the limited extent the restrictions are prohibited by applicable law.\par
|
||||
{\listtext\f0 5.\tab}We will have the right to inspect and enforce the restrictions and covenants contained in this Agreement at Your sole expense, and You hereby agree to promptly notify Us of any known violations of such restrictions.\par
|
||||
{\listtext\f0 6.\tab}You agree to protect the Licenced Materials from unauthorized use, reproduction, distribution or publication in electronic or physical form.\par
|
||||
{\listtext\f0 7.\tab}Upon execution of this Agreement, We will:\par
|
||||
|
||||
\pard
|
||||
{\listtext\f0 a.\tab}\jclisttab\tx720\ls1\ilvl1\widctlpar\fi-360\li1080\qj permit You to download a copy of the Licenced Materials for Your use under this Agreement; and\par
|
||||
{\listtext\f0 b.\tab}permit You to download updates to the Licenced Software as We consider needed. We are not obligated to provide updates for the Licenced Software.\par
|
||||
|
||||
\pard\widctlpar\li1080\qj\par
|
||||
\par
|
||||
|
||||
\pard\widctlpar\sa120\qj\cf2\b\fs33 3. Usage Conditions\par
|
||||
|
||||
\pard
|
||||
{\pntext\f0 1.\tab}{\*\pn\pnlvlbody\pnf0\pnindent720\pnstart1\pndec{\pntxta.}}
|
||||
\widctlpar\fi-360\li360\qj\cf1\b0\fs21 You are authorized to use the Licenced Materials only for personal use. Your personal use may be commercial.\par
|
||||
{\pntext\f0 2.\tab}You may not rent out to others equipment on which the Licenced Software is installed or by which the Licenced Library is accessible without obtaining a written rental licence from Us that expressly authorizes such use. We reserve the right to charge a fee for a rental licence.\par
|
||||
{\pntext\f0 3.\tab}You may install the Licenced Software on as many devices as required for Your personal use provided such devices are used only by You.\par
|
||||
|
||||
\pard\widctlpar\qj\par
|
||||
|
||||
\pard\widctlpar\li360\qj\par
|
||||
|
||||
\pard\widctlpar\sa120\qj\cf2\b\fs33 4. Ownership and Intellectual Property Rights\par
|
||||
|
||||
\pard
|
||||
{\pntext\f0 1.\tab}{\*\pn\pnlvlbody\pnf0\pnindent720\pnstart1\pndec{\pntxta.}}
|
||||
\widctlpar\fi-360\li360\qj\cf1\b0\fs21 All copyright in the Licenced Software, including any documentation, media, packaging and illustrations, but excluding the Sublicensed Software, is owned by Us. You do not acquire title to any copyright in the Licenced Materials or Sublicensed Software under this Agreement.\par
|
||||
{\pntext\f0 2.\tab}Certain logos, product names and trade-marks owned by Us or by third parties may be contained within the Licenced Materials or in documentation, media, packaging and illustrations relating to the Licensed Software. You do not acquire title to any such logos, product names or trade-marks under this Agreement.\par
|
||||
|
||||
\pard\widctlpar\li360\qj\par
|
||||
\par
|
||||
|
||||
\pard\widctlpar\sa120\qj\cf2\b\fs33 5. Termination\par
|
||||
|
||||
\pard
|
||||
{\pntext\f0 1.\tab}{\*\pn\pnlvlbody\pnf0\pnindent720\pnstart1\pndec{\pntxta.}}
|
||||
\widctlpar\fi-360\li360\qj\cf1\b0\fs21 This Agreement is effective until terminated by Us, with or without cause, in Our sole and unfettered discretion. We may terminate this Agreement without notice to You if You fail to comply with any of its terms. Any such termination by Us shall be in addition to and without prejudice to such rights and remedies as may be available to Us, including injunction and other equitable remedies.\par
|
||||
{\pntext\f0 2.\tab}The disclaimers, limitations on liability, ownership, termination, interpretation, Your warranty and the indemnity provisions of this Agreement shall survive the termination or expiry of this Agreement.\par
|
||||
{\pntext\f0 3.\tab}This Agreement will automatically terminate if You violate or assist in the violation of any of the restrictions of paragraph 2(2).\par
|
||||
{\pntext\f0 4.\tab}On the termination of this Agreement, you must destroy any copies of the Licenced Materials in your possession whether in electronic or printed format.\par
|
||||
|
||||
\pard\widctlpar\li360\qj\par
|
||||
\par
|
||||
|
||||
\pard\widctlpar\sa120\qj\cf2\b\fs33 6. Indemnification\par
|
||||
|
||||
\pard\widctlpar\sa720\qj\cf1\b0\fs21 You agree to indemnify, defend and hold Us and Our partners, lawyers, staff, affiliates, successors and assigns (collectively, \ldblquote Affiliated Parties\rdblquote ) harmless from any liability, loss, claim and expense, including reasonable legal fees, related to Your violation of this Agreement or use of the Licenced Materials.\par
|
||||
|
||||
\pard\widctlpar\sa120\qj\cf2\b\fs33 7. Disclaimer and Limitation of Liability\par
|
||||
|
||||
\pard
|
||||
{\pntext\f0 1.\tab}{\*\pn\pnlvlbody\pnf0\pnindent720\pnstart1\pndec{\pntxta.}}
|
||||
\widctlpar\fi-360\li360\qj\cf1\b0\fs21 THE LICENCED MATERIALS ARE PROVIDED "AS IS", "AS AVAILABLE" AND ALL WARRANTIES, EXPRESS OR IMPLIED, ARE DISCLAIMED (INCLUDING BUT NOT LIMITED TO THE DISCLAIMER OF ANY IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE). THE LICENCED MATERIALS MAY CONTAIN BUGS, ERRORS, PROBLEMS OR OTHER LIMITATIONS. WE AND OUR AFFILIATED PARTIES HAVE NO LIABILITY WHATSOEVER FOR YOUR USE OF ANY OF THE MATERIALS. IN PARTICULAR, BUT NOT AS A LIMITATION THEREOF, WE AND THE AFFILIATED PARTIES ARE NOT LIABLE FOR ANY INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES (INCLUDING DAMAGES FOR LOSS OF BUSINESS, LOSS OF PROFITS, LITIGATION OR THE LIKE), WHETHER BASED ON BREACH OF CONTRACT, BREACH OF WARRANTY, TORT (INCLUDING NEGLIGENCE), PRODUCT LIABILITY OR OTHERWISE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. THE NEGATION OF DAMAGES SET FORTH ABOVE ARE FUNDAMENTAL ELEMENTS OF THE BASIS OF THE BARGAIN BETWEEN YOU AND US. THE LICENCED MATERIALS WOULD NOT BE PROVIDED WITHOUT SUCH LIMITATIONS.\par
|
||||
{\pntext\f0 2.\tab}All responsibility or liability for any damages caused by the Licenced Materials, including, without limitation, damages caused by computer viruses or other malicious code contained within the Licenced Software is disclaimed.\par
|
||||
|
||||
\pard\widctlpar\li360\qj\par
|
||||
\par
|
||||
|
||||
\pard\widctlpar\sa120\qj\cf2\b\fs33 8. Use of Information\par
|
||||
|
||||
\pard\widctlpar\sa720\qj\cf1\b0\fs21 We reserve the right, and You authorize Us, to the use and assignment of all information regarding Your use of the Licenced Materials and all information provided by You in any manner consistent with Our Privacy Policy.\par
|
||||
|
||||
\pard\widctlpar\sa120\qj\cf2\b\fs33 9. Miscellaneous\par
|
||||
|
||||
\pard
|
||||
{\pntext\f0 1.\tab}{\*\pn\pnlvlbody\pnf0\pnindent720\pnstart1\pndec{\pntxta.}}
|
||||
\widctlpar\fi-360\li360\qj\cf1\b0\fs21 This Agreement shall be treated as though it were executed and performed in the province of British Columbia, Canada, and shall be governed by and construed in accordance with the laws of the province of British Columbia (without regard to conflict of law principles).\par
|
||||
{\pntext\f0 2.\tab}Any of Your causes of action with respect to the Licenced Materials must be instituted within six (6) months after the cause of action arose or be forever waived and barred. All actions shall be subject to the limitations set forth in paragraph 7 of this Agreement.\par
|
||||
{\pntext\f0 3.\tab}The language in this Agreement shall be interpreted as to its fair meaning and not construed strictly for or against either party. The division of this Agreement into sections and the insertion of headings are for convenience of reference only and shall not affect the construction or interpretation of this Agreement.\par
|
||||
{\pntext\f0 4.\tab}All legal proceedings arising out of or in connection with this Agreement shall be brought solely in Vancouver, British Columbia. You expressly submit to the exclusive jurisdiction of said courts and consent to extra-territorial service of process.\par
|
||||
{\pntext\f0 5.\tab}Should any part of this Agreement be held invalid or unenforceable, that portion shall be construed consistent with applicable law and the remaining portions shall remain in full force and effect.\par
|
||||
{\pntext\f0 6.\tab}Failure of Us to enforce any provision of this Agreement shall not be deemed a waiver of such provision nor of the right to enforce such provision.\par
|
||||
{\pntext\f0 7.\tab}You agree to review this Agreement prior to downloading, copying, installing or using the Licenced Materials. This Agreement may be amended by Us from time to time without specific advance notice to You. The latest Agreement will be provided with updates to the Licenced Software, and You should review the Agreement prior to using the Licenced Materials.\par
|
||||
{\pntext\f0 8.\tab}This Agreement, as modified from time to time as described above, and including the policies incorporated by reference, constitutes the entire and only agreement between You and Us and supersedes all prior or contemporaneous agreements, representations, warranties and understandings with respect to the Licenced Materials.\par
|
||||
{\pntext\f0 9.\tab}To the extent that anything in or associated with the Licenced Materials is in conflict or inconsistent with this Agreement, this Agreement shall take precedence.\par
|
||||
|
||||
\pard\widctlpar\sa160\sl252\slmult1\cf0\fs22\par
|
||||
}
|
||||
| ||||