instructions.configure=\
addRepository(type:0,location:https${#58}//download.eclipse.org/eclipse/updates/4.22,name:The Eclipse Project Updates);\
addRepository(type:1,location:https${#58}//download.eclipse.org/eclipse/updates/4.22,name:The Eclipse Project Updates);\
addRepository(type:0,location:https${#58}//download.eclipse.org/releases/2021-12,name:2021-12);\
addRepository(type:1,location:https${#58}//download.eclipse.org/releases/2021-12,name:2021-12);\
  mkdir(path:${installFolder}/dropins);
requires.1.namespace=org.eclipse.equinox.p2.iu
requires.1.name=toolingorg.eclipse.sdk.configuration.macosx
requires.1.filter=(osgi.os=macosx)
requires.1.range=[1.0.0,1.0.0]
requires.1.greedy=true

requires.2.namespace=org.eclipse.equinox.p2.iu
requires.2.name=toolingorg.eclipse.sdk.configuration
requires.2.filter=(!(osgi.os=macosx))
requires.2.range=[1.0.0,1.0.0]
requires.2.greedy=true

units.1.id=toolingorg.eclipse.sdk.configuration.macosx
units.1.version=1.0.0
units.1.provides.1.namespace=org.eclipse.equinox.p2.iu
units.1.provides.1.name=toolingorg.eclipse.sdk.configuration.macosx
units.1.provides.1.version=1.0.0
units.1.filter=(osgi.os=macosx)
units.1.touchpoint.id=org.eclipse.equinox.p2.osgi
units.1.touchpoint.version=1.0.0
units.1.instructions.configure=setProgramProperty(propName:osgi.instance.area.default,propValue:@user.home/Documents/workspace);
units.1.instructions.unconfigure=setProgramProperty(propName:osgi.instance.area.default,propValue:);

units.2.id=toolingorg.eclipse.sdk.configuration
units.2.version=1.0.0
units.2.provides.1.namespace=org.eclipse.equinox.p2.iu
units.2.provides.1.name=toolingorg.eclipse.sdk.configuration
units.2.provides.1.version=1.0.0
units.2.filter=(!(osgi.os=macosx))
units.2.touchpoint.id=org.eclipse.equinox.p2.osgi
units.2.touchpoint.version=1.0.0
units.2.instructions.configure=setProgramProperty(propName:osgi.instance.area.default,propValue:@user.home/workspace);
units.2.instructions.unconfigure=setProgramProperty(propName:osgi.instance.area.default,propValue:);

# Restrict range so we are not an automatic update for 3.x.
update.id= org.eclipse.sdk.ide
update.range = [4.0,$version$)
update.severity = 0
update.description = An update for 4.x generation Eclipse SDK.

# Set the product property type
properties.0.name = org.eclipse.equinox.p2.type.product
properties.0.value = true

properties.1.name = org.eclipse.equinox.p2.description
properties.1.value = 4.22 Release of the Eclipse SDK.

properties.2.name = org.eclipse.equinox.p2.provider
properties.2.value = Eclipse.org

