mirror of
https://github.com/bitwarden/desktop.git
synced 2024-11-28 12:35:40 +01:00
support signing app at end
This commit is contained in:
parent
427c9def58
commit
c87499e406
21
gulpfile.js
21
gulpfile.js
@ -69,18 +69,19 @@ function pkgMas(cb) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function signMas(cb) {
|
function signMas(cb) {
|
||||||
return signSafariExt(cb, 'mas');
|
return signApp(cb, 'mas');
|
||||||
}
|
}
|
||||||
|
|
||||||
function signMac(cb) {
|
function signMac(cb) {
|
||||||
return signSafariExt(cb, 'mac');
|
return signApp(cb, 'mac');
|
||||||
}
|
}
|
||||||
|
|
||||||
function signSafariExt(cb, dir) {
|
function signApp(cb, dir) {
|
||||||
const appPath = paths.dist + dir + '/Bitwarden.app';
|
const appPath = paths.dist + dir + '/Bitwarden.app';
|
||||||
const safariAppexPath = appPath + '/Contents/PlugIns/safari.appex';
|
const safariAppexPath = appPath + '/Contents/PlugIns/safari.appex';
|
||||||
const safariAppexFrameworkPath = safariAppexPath + '/Contents/Frameworks/';
|
const safariAppexFrameworkPath = safariAppexPath + '/Contents/Frameworks/';
|
||||||
const safariEntitlementsPath = paths.resources + 'safari.entitlements';
|
const safariEntitlementsPath = paths.resources + 'safari.entitlements';
|
||||||
|
const appEntitlementsPath = paths.resources + 'entitlements.' + dir + '.plist';
|
||||||
|
|
||||||
const libs = fs.readdirSync(safariAppexFrameworkPath).filter((p) => p.endsWith('.dylib'))
|
const libs = fs.readdirSync(safariAppexFrameworkPath).filter((p) => p.endsWith('.dylib'))
|
||||||
.map((p) => safariAppexFrameworkPath + p);
|
.map((p) => safariAppexFrameworkPath + p);
|
||||||
@ -91,8 +92,7 @@ function signSafariExt(cb, dir) {
|
|||||||
'--force',
|
'--force',
|
||||||
'--sign',
|
'--sign',
|
||||||
'3rd Party Mac Developer Application: 8bit Solutions LLC',
|
'3rd Party Mac Developer Application: 8bit Solutions LLC',
|
||||||
'--entitlements',
|
'--entitlements'
|
||||||
safariEntitlementsPath
|
|
||||||
] :
|
] :
|
||||||
[
|
[
|
||||||
'--verbose',
|
'--verbose',
|
||||||
@ -101,17 +101,20 @@ function signSafariExt(cb, dir) {
|
|||||||
'runtime',
|
'runtime',
|
||||||
'--sign',
|
'--sign',
|
||||||
'Developer ID Application: 8bit Solutions LLC',
|
'Developer ID Application: 8bit Solutions LLC',
|
||||||
'--entitlements',
|
'--entitlements'
|
||||||
safariEntitlementsPath
|
|
||||||
];
|
];
|
||||||
libs.forEach((i) => {
|
libs.forEach((i) => {
|
||||||
const proc = child.spawn('codesign', args.concat([i]));
|
const proc = child.spawn('codesign', args.concat([safariEntitlementsPath, i]));
|
||||||
stdOutProc(proc);
|
stdOutProc(proc);
|
||||||
libPromises.push(new Promise((resolve) => proc.on('close', resolve)));
|
libPromises.push(new Promise((resolve) => proc.on('close', resolve)));
|
||||||
libPromises.push(new Promise((resolve) => setTimeout(() => resolve(), 10000)));
|
libPromises.push(new Promise((resolve) => setTimeout(() => resolve(), 10000)));
|
||||||
});
|
});
|
||||||
return Promise.all(libPromises).then(() => {
|
return Promise.all(libPromises).then(() => {
|
||||||
const proc = child.spawn('codesign', args.concat([safariAppexPath]));
|
const proc = child.spawn('codesign', args.concat([safariEntitlementsPath, safariAppexPath]));
|
||||||
|
stdOutProc(proc);
|
||||||
|
return new Promise((resolve) => proc.on('close', resolve));
|
||||||
|
}).then(() => {
|
||||||
|
const proc = child.spawn('codesign', args.concat([appEntitlementsPath, appPath]));
|
||||||
stdOutProc(proc);
|
stdOutProc(proc);
|
||||||
return new Promise((resolve) => proc.on('close', resolve));
|
return new Promise((resolve) => proc.on('close', resolve));
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
|
Loading…
Reference in New Issue
Block a user