Skip to content

Dynamo Installers (Obsoleted)

Aaron (Qilong) edited this page Mar 22, 2019 · 1 revision

This page is obsoleted because our team no longer deliver installer as public build

Dynamo Installers:

From Dynamo 1.0 release onwards, dynamo uses two different MSIs DynamoCore.msi and DynamoRevit.msi to install Dynamo for Revit. The two MSI installers are wrapped inside the DynamoRevit.exe installer built using inno setup. The exe installer also includes other pre-requisites such as Iron-python, Direct3d etc. The DynamoCore.msi includes only core libraries as required by any Dynamo based product such as Dynamo for Revit or Dynamo Studio.

DynamoCore MSI folder structure:

From Dynamo 2.0 release onwards, The default location(root folder) for Dynamo Core installation is C:\Program Files\Dynamo\Dynamo Core\x\ where x is the major version of the release.

  • The root folder contains DynamoCore.dll and other core libraries.
  • en-Us: Contains localized resources for English language. Other such folders are as de-DE, fr-FR etc. to contain localized resources for the specific languages respectively.
  • nodes: Contains UI node libraries.
  • extensions: Contains the extension definitions for Dynamo. The definition XML file defines the path of the corresponding extension library.
  • viewextension: Contains the view extension definitions for Dynamo. The definition xml file defines the path of corresponding view extension library.
  • libg_222: Contains geometry library specific binaries for ASM version 222 as required by Revit 2017. There are other similar libg_xxx folders to support geometry other versions of Revit.
  • libg_locale: Contains localized resources as libg.po file.
  • UI: Contains UI theme related assets.

DynamoRevit MSI folder structure:

The default location(root folder) for Dynamo Core installation is C:\Program Files\Dynamo\Dynamo Revit\x\, where x is the major version of the release.

  • The root folder contains DynamoAddInGenerater.exe, DynamoInstallDetective.dll, RevitAddInUtility.dll and DynamoSandbox.exe libraries. Some of these libraries are used for discovery of Revit and Dynamo core installation and to update the addin file appropriately.
  • Revit_2017: Contains binaries built for Revit 2017. This folder contains binaries such as DynamoRevitDS.dll, DynamoRevitVersionSelector.dll, RevitNodes.dll etc. DynamoRevitDS.dll is the main entry point for Dynamo application on Revit. This folder also contains nodes and language specific folders to contain the UI nodes and localized resources respectively. There are other similar Revit_20xx folders to support Dynamo for other versions of Revit.
  • This installer also contains Dynamo Samples and Gallery specific files installed at C:\ProgramData\Dynamo\Dynamo Revit\x where x is the major version of the release.

Deployment:

The EXE installer can be downloaded from http://dynamobuilds.com/. Users can double click the installer for guided installation. You can also install it silently by using command line option /VERYSILENT as follows.

DynamoInstall1.2.1.exe /VERYSILENT

Note: Dynamo installation requires administrative privilege and it is installed per-machine basis and it requires an update to HKLM registry.

How to build installers?

Required Frameworks

WIX Toolset

Environment Variables

The following environment variables are all set to defaults in Install.props. But, you can inject them into the environment when running on the CI. This will allow you to configure the path for things like the sign tools and the harvest directory.

  • DYNAMO_BASE_PATH - This is the path to the Dynamo repository on your machine.
  • DYNAMO_HARVEST_PATH - This is a folder where the installation files will be staged prior to building the installer. Wix's Heat tool is used to "harvest" the installation files from this directory.
  • DYNAMO_MIGRATION_NODES_PATH - This is a path to the directory which contains the common custom nodes used for migrations.
  • DYNAMO_SAMPLES_PATH - This is a path to the samples to be included with the installer.
  • DYNAMO_GALLERY_PATH - This is a path to the getting started gallery assets to be included with the installer.

The DynamoCore msi installer is created using the WIX Toolset. The .msi installer project is a separate solution so that all developers need not have the WIX toolset installed if they are not interested in generating an installer. But, the .wxproj representing the installer is a proper Visual Studio project and can be edited as such by opening the src\Install.sln solution and editing the DynamoInstall project.

Build Order

  1. Dynamo.All.sln - Master (Build in Release to get assets Dynamo Core)
  2. Install.sln (Build in Release to generate the msi project)

Prebuild

The project includes a prebuild step which gets the version info from DynamoCore.dll and sets the version parameters, also harvests the appropriate files and auto-generates .wxs file for different modules such as Release-autogen.wxs

Install Location

The .msi installer installs Dynamo by default at following location
C:\Program Files\Dynamo\Dynamo Core\2\.

Dynamo Revit installer

DynamoRevit.msi is built from installer project at DynamoForRevit repo. This repo contains some internal assets as required by Autodesk Install Framework. This repo also contains the inno-setup script to create DynamoRevit.exe installer which provides a bootstrap for DynamoCore.msi and DynamoRevit.msi installers.

CAUTION: The DynamoCore.msi or DynamoRevit.msi installers are only for the purpose of installing Dynamo and its associated content. They do not install pre-requisites like Iron Python.

Releases

Roadmap

How To

Dynamo Internals

Contributing

Python3 Upgrade Work

Libraries

FAQs

API and Dynamo Nodes

Clone this wiki locally