Skip to content

Commit da84e09

Browse files
committed
U property to enable/disable hardeded codesign
1 parent 85316b2 commit da84e09

File tree

2 files changed

+17
-5
lines changed

2 files changed

+17
-5
lines changed

src/main/java/io/github/fvarrui/javapackager/model/MacConfig.java

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ public class MacConfig implements Serializable {
3535
private File entitlements;
3636
private boolean codesignApp = true;
3737
private InfoPlist infoPlist = new InfoPlist();
38+
private boolean hardenedCodesign = true;
3839

3940
public File getIcnsFile() {
4041
return icnsFile;
@@ -212,6 +213,14 @@ public void setInfoPlist(InfoPlist infoPlist) {
212213
this.infoPlist = infoPlist;
213214
}
214215

216+
public void setHardenedCodesign(boolean hardenedCodesign) {
217+
this.hardenedCodesign = hardenedCodesign;
218+
}
219+
220+
public boolean isHardenedCodesign() {
221+
return hardenedCodesign;
222+
}
223+
215224
@Override
216225
public String toString() {
217226
return "MacConfig [icnsFile=" + icnsFile + ", backgroundImage=" + backgroundImage + ", windowWidth="
@@ -220,7 +229,8 @@ public String toString() {
220229
+ ", appsLinkIconX=" + appsLinkIconX + ", appsLinkIconY=" + appsLinkIconY + ", volumeIcon=" + volumeIcon
221230
+ ", volumeName=" + volumeName + ", generateDmg=" + generateDmg + ", generatePkg=" + generatePkg
222231
+ ", relocateJar=" + relocateJar + ", appId=" + appId + ", developerId=" + developerId
223-
+ ", entitlements=" + entitlements + ", codesignApp=" + codesignApp + ", infoPlist=" + infoPlist + "]";
232+
+ ", entitlements=" + entitlements + ", codesignApp=" + codesignApp + ", infoPlist=" + infoPlist
233+
+ ", hardenedCodesign=" + hardenedCodesign + "]";
224234
}
225235

226236
/**

src/main/java/io/github/fvarrui/javapackager/packagers/MacPackager.java

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -156,10 +156,12 @@ private void codesign(String developerId, File entitlements, File appFile)
156156
throws IOException, CommandLineException {
157157

158158
List<String> flags = new ArrayList<>();
159-
if (VersionUtils.compareVersions("10.13.6", SystemUtils.OS_VERSION) >= 0) {
160-
flags.add("runtime"); // enable hardened runtime if Mac OS version >= 10.13.6
161-
} else {
162-
Logger.warn("Mac OS version detected: " + SystemUtils.OS_VERSION + " ... hardened runtime disabled!");
159+
if (macConfig.isHardenedCodesign()) {
160+
if (VersionUtils.compareVersions("10.13.6", SystemUtils.OS_VERSION) >= 0) {
161+
flags.add("runtime"); // enable hardened runtime if Mac OS version >= 10.13.6
162+
} else {
163+
Logger.warn("Mac OS version detected: " + SystemUtils.OS_VERSION + " ... hardened runtime disabled!");
164+
}
163165
}
164166

165167
List<Object> codesignArgs = new ArrayList<>();

0 commit comments

Comments
 (0)