mirror of
https://github.com/zen-browser/surfer.git
synced 2025-07-07 17:05:33 +02:00
bump version to 1.9.12 and simplify macOS release naming and update URL handling
Some checks are pending
CI / general (push) Waiting to run
Some checks are pending
CI / general (push) Waiting to run
This commit is contained in:
parent
89b2c3927a
commit
e91d11b419
4 changed files with 92 additions and 120 deletions
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "@zen-browser/surfer",
|
||||
"version": "1.9.10",
|
||||
"version": "1.9.12",
|
||||
"description": "Simplifying building firefox forks!",
|
||||
"main": "index.js",
|
||||
"bin": {
|
||||
|
|
|
@ -36,118 +36,107 @@ export const surferPackage = async () => {
|
|||
|
||||
// The engine directory must have been downloaded for this to be valid
|
||||
// TODO: Make this a reusable function that can be used by everything
|
||||
if (!existsSync(ENGINE_DIR)) {
|
||||
log.error(
|
||||
`Unable to locate any source directories.\nRun |${bin_name} download| to generate the source directory.`
|
||||
)
|
||||
}
|
||||
|
||||
if (!existsSync(machPath)) {
|
||||
log.error(`Cannot locate the 'mach' binary within ${ENGINE_DIR}`)
|
||||
}
|
||||
|
||||
const arguments_ = ['package']
|
||||
|
||||
log.info(
|
||||
`Packaging \`${config.binaryName}\` with args ${JSON.stringify(
|
||||
arguments_.slice(1, 0)
|
||||
)}...`
|
||||
)
|
||||
|
||||
const currentCWD = process.cwd()
|
||||
|
||||
if (!process.env.SURFER_SIGNING_MODE) {
|
||||
await dispatch(machPath, arguments_, ENGINE_DIR, true)
|
||||
|
||||
// Merge language packs
|
||||
for (const locale of await getLocales()) {
|
||||
const arguments_ = ['build', `merge-${locale}`]
|
||||
|
||||
log.info(
|
||||
`Packaging \`${config.binaryName}\` with args ${JSON.stringify(
|
||||
arguments_.slice(1, 0)
|
||||
)}...`
|
||||
)
|
||||
|
||||
await dispatch(machPath, arguments_, ENGINE_DIR, true)
|
||||
}
|
||||
|
||||
log.info('Copying language packs')
|
||||
|
||||
await dispatch(
|
||||
machPath,
|
||||
['package-multi-locale', '--locales', ...(await getLocales())],
|
||||
ENGINE_DIR,
|
||||
true
|
||||
)
|
||||
}
|
||||
|
||||
log.info('Copying results up')
|
||||
|
||||
log.debug("Creating the dist directory if it doesn't exist")
|
||||
if (!existsSync(DIST_DIR)) await mkdir(DIST_DIR, { recursive: true })
|
||||
|
||||
log.debug('Indexing files to copy')
|
||||
const filesInMozillaDistrobution = await readdir(join(OBJ_DIR, 'dist'), {
|
||||
withFileTypes: true,
|
||||
})
|
||||
const files = filesInMozillaDistrobution
|
||||
.filter((entry) => entry.isFile())
|
||||
.map((entry) => entry.name)
|
||||
|
||||
for (const file of files) {
|
||||
const destinationFile = join(DIST_DIR, file)
|
||||
log.debug(`Copying ${file}`)
|
||||
if (existsSync(destinationFile)) await unlink(destinationFile)
|
||||
await copyFile(join(OBJ_DIR, 'dist', file), destinationFile)
|
||||
}
|
||||
|
||||
// Windows has some special dist files that are available within the dist
|
||||
// directory.
|
||||
if ((process as any).surferPlatform == 'win32') {
|
||||
const installerDistributionDirectory = join(
|
||||
OBJ_DIR,
|
||||
'dist',
|
||||
'install',
|
||||
'sea'
|
||||
)
|
||||
|
||||
if (!existsSync(installerDistributionDirectory)) {
|
||||
if (!process.env.JUST_MAR) {
|
||||
if (!existsSync(ENGINE_DIR)) {
|
||||
log.error(
|
||||
`Could not find windows installer files located at '${installerDistributionDirectory}'`
|
||||
`Unable to locate any source directories.\nRun |${bin_name} download| to generate the source directory.`
|
||||
)
|
||||
}
|
||||
|
||||
const installerDistributionDirectoryContents = await readdir(
|
||||
installerDistributionDirectory,
|
||||
{ withFileTypes: true }
|
||||
if (!existsSync(machPath)) {
|
||||
log.error(`Cannot locate the 'mach' binary within ${ENGINE_DIR}`)
|
||||
}
|
||||
|
||||
const arguments_ = ['package']
|
||||
|
||||
log.info(
|
||||
`Packaging \`${config.binaryName}\` with args ${JSON.stringify(
|
||||
arguments_.slice(1, 0)
|
||||
)}...`
|
||||
)
|
||||
const windowsInstallerFiles = installerDistributionDirectoryContents
|
||||
|
||||
const currentCWD = process.cwd()
|
||||
|
||||
if (!process.env.SURFER_SIGNING_MODE) {
|
||||
await dispatch(machPath, arguments_, ENGINE_DIR, true)
|
||||
|
||||
log.info('Copying language packs')
|
||||
|
||||
await dispatch(
|
||||
machPath,
|
||||
['package-multi-locale', '--locales', ...(await getLocales())],
|
||||
ENGINE_DIR,
|
||||
true
|
||||
)
|
||||
}
|
||||
|
||||
log.info('Copying results up')
|
||||
|
||||
log.debug("Creating the dist directory if it doesn't exist")
|
||||
if (!existsSync(DIST_DIR)) await mkdir(DIST_DIR, { recursive: true })
|
||||
|
||||
log.debug('Indexing files to copy')
|
||||
const filesInMozillaDistrobution = await readdir(join(OBJ_DIR, 'dist'), {
|
||||
withFileTypes: true,
|
||||
})
|
||||
const files = filesInMozillaDistrobution
|
||||
.filter((entry) => entry.isFile())
|
||||
.map((entry) => entry.name)
|
||||
|
||||
for (const file of windowsInstallerFiles) {
|
||||
let newFileName = file
|
||||
for (const file of files) {
|
||||
const destinationFile = join(DIST_DIR, file)
|
||||
log.debug(`Copying ${file}`)
|
||||
if (existsSync(destinationFile)) await unlink(destinationFile)
|
||||
await copyFile(join(OBJ_DIR, 'dist', file), destinationFile)
|
||||
}
|
||||
|
||||
// There are some special cases that I want to reformat the name for
|
||||
if (file.includes('.installer.exe')) {
|
||||
newFileName = `${config.binaryName}.installer.exe`
|
||||
}
|
||||
if (file.includes('.installer-stub.exe')) {
|
||||
newFileName = `${config.binaryName}.installer.pretty.exe`
|
||||
log.warning(
|
||||
`The installer ${newFileName} requires that your binaries are available from the internet and everything is correctly configured. I recommend you ship '${config.binaryName}.installer.exe' if you have not set this up correctly yet`
|
||||
// Windows has some special dist files that are available within the dist
|
||||
// directory.
|
||||
if ((process as any).surferPlatform == 'win32') {
|
||||
const installerDistributionDirectory = join(
|
||||
OBJ_DIR,
|
||||
'dist',
|
||||
'install',
|
||||
'sea'
|
||||
)
|
||||
|
||||
if (!existsSync(installerDistributionDirectory)) {
|
||||
log.error(
|
||||
`Could not find windows installer files located at '${installerDistributionDirectory}'`
|
||||
)
|
||||
}
|
||||
|
||||
// Actually copy
|
||||
const destinationFile = join(DIST_DIR, newFileName)
|
||||
log.debug(`Copying ${file}`)
|
||||
if (existsSync(destinationFile)) await unlink(destinationFile)
|
||||
await copyFile(
|
||||
join(installerDistributionDirectory, file),
|
||||
destinationFile
|
||||
const installerDistributionDirectoryContents = await readdir(
|
||||
installerDistributionDirectory,
|
||||
{ withFileTypes: true }
|
||||
)
|
||||
const windowsInstallerFiles = installerDistributionDirectoryContents
|
||||
.filter((entry) => entry.isFile())
|
||||
.map((entry) => entry.name)
|
||||
|
||||
for (const file of windowsInstallerFiles) {
|
||||
let newFileName = file
|
||||
|
||||
// There are some special cases that I want to reformat the name for
|
||||
if (file.includes('.installer.exe')) {
|
||||
newFileName = `${config.binaryName}.installer.exe`
|
||||
}
|
||||
if (file.includes('.installer-stub.exe')) {
|
||||
newFileName = `${config.binaryName}.installer.pretty.exe`
|
||||
log.warning(
|
||||
`The installer ${newFileName} requires that your binaries are available from the internet and everything is correctly configured. I recommend you ship '${config.binaryName}.installer.exe' if you have not set this up correctly yet`
|
||||
)
|
||||
}
|
||||
|
||||
// Actually copy
|
||||
const destinationFile = join(DIST_DIR, newFileName)
|
||||
log.debug(`Copying ${file}`)
|
||||
if (existsSync(destinationFile)) await unlink(destinationFile)
|
||||
await copyFile(
|
||||
join(installerDistributionDirectory, file),
|
||||
destinationFile
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -422,13 +422,7 @@ pref("devtools.selfxss.count", 5);
|
|||
}
|
||||
|
||||
function setUpdateURLs() {
|
||||
let suffix = '';
|
||||
if ((process as any).surferPlatform == 'darwin') {
|
||||
if (compatMode == 'x86_64') {
|
||||
suffix = '-generic';
|
||||
}
|
||||
}
|
||||
const baseURL = `URL=https://@MOZ_APPUPDATE_HOST@/updates/browser/%BUILD_TARGET%/%CHANNEL%${suffix}/update.xml`
|
||||
const baseURL = `URL=https://@MOZ_APPUPDATE_HOST@/updates/browser/%BUILD_TARGET%/%CHANNEL%/update.xml`
|
||||
const appIni = join(ENGINE_DIR, 'build', 'application.ini.in')
|
||||
const appIniContents = readFileSync(appIni).toString()
|
||||
const updatedAppIni = appIniContents.replace(/URL=.*update.xml/g, baseURL)
|
||||
|
|
|
@ -59,12 +59,7 @@ function getReleaseMarName(releaseInfo: ReleaseInfo): string | undefined {
|
|||
}
|
||||
}
|
||||
if ((process as any).surferPlatform == 'darwin') {
|
||||
if (compatMode == 'x86_64') {
|
||||
releaseMarName = 'macos-x86_64.mar'
|
||||
}
|
||||
else if (compatMode == 'aarch64') {
|
||||
releaseMarName = 'macos-aarch64.mar'
|
||||
}
|
||||
releaseMarName = 'macos.mar' // universal binary
|
||||
}
|
||||
if ((process as any).surferPlatform == 'linux') {
|
||||
if (compatMode == 'x86_64') {
|
||||
|
@ -115,18 +110,12 @@ async function writeUpdateFileToDisk(
|
|||
}
|
||||
}
|
||||
) {
|
||||
let suffix = '';
|
||||
if ((process as any).surferPlatform == 'darwin') {
|
||||
if (compatMode == 'x86_64') {
|
||||
suffix = '-generic';
|
||||
}
|
||||
}
|
||||
const xmlPath = join(
|
||||
DIST_DIR,
|
||||
'update',
|
||||
'browser',
|
||||
target,
|
||||
channel + suffix,
|
||||
channel,
|
||||
'update.xml'
|
||||
)
|
||||
const document = create(updateObject)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue