Page MenuHomePhabricator

build: don't compress macOS DMG
ClosedPublic

Authored by PiRK on May 29 2023, 08:21.

Details

Reviewers
Fabien
Group Reviewers
Restricted Project
Commits
rABC3b3fb90b2426: build: don't compress macOS DMG
Summary

Skip compressing the macOS DMG, and drop related build steps and dependencies. Uncompressed the DMG increases from ~16mb to ~30mb, which compared to other software a user may download, (Firefox 125mb, VLC 52mb, Open Office 176mb), is still relatively small.Note that if / when we build with LTO enabled for releases, this size will shrink back down significantly again.

native_libdmg-hfsplus is not maintained, and I doubt the DMG creation feature will ever be fixed. If at some point xorrisofs supports compressing dmgs, we could enable that.

This is a backport of core#24031

This is one step needed to make the MacOS build work with the current guix script.

Test Plan

gitian-osx

HOSTS="x86_64-apple-darwin" contrib/guix/guix-build
This still fails with an exotic clang related error ld: unrecognised emulation mode: acosx_version_min, but it no longer fails with a cannot find lz error.

Event Timeline

Tail of the build log:

 * [new tag]             phabricator/diff/40255 -> phabricator/diff/40255
 * [new tag]             phabricator/diff/40274 -> phabricator/diff/40274
 * [new tag]             phabricator/diff/40276 -> phabricator/diff/40276
 * [new tag]             phabricator/diff/40278 -> phabricator/diff/40278
 * [new tag]             phabricator/diff/40279 -> phabricator/diff/40279
 * [new tag]             phabricator/diff/40285 -> phabricator/diff/40285
 * [new tag]             phabricator/diff/40286 -> phabricator/diff/40286
 * [new tag]             phabricator/diff/40310 -> phabricator/diff/40310
 * [new tag]             phabricator/diff/40335 -> phabricator/diff/40335
 * [new tag]             phabricator/diff/40339 -> phabricator/diff/40339
 * [new tag]             phabricator/diff/40365 -> phabricator/diff/40365
 * [new tag]             phabricator/diff/40366 -> phabricator/diff/40366
 * [new tag]             phabricator/diff/40367 -> phabricator/diff/40367
 * [new tag]             phabricator/diff/40368 -> phabricator/diff/40368
 * [new tag]             phabricator/diff/40373 -> phabricator/diff/40373
 * [new tag]             phabricator/diff/40379 -> phabricator/diff/40379
 * [new tag]             phabricator/diff/40380 -> phabricator/diff/40380
 * [new tag]             phabricator/diff/40381 -> phabricator/diff/40381
 * [new tag]             phabricator/diff/40400 -> phabricator/diff/40400
 * [new tag]             phabricator/diff/40401 -> phabricator/diff/40401
 * [new tag]             phabricator/diff/40402 -> phabricator/diff/40402
 * [new tag]             phabricator/diff/40404 -> phabricator/diff/40404
 * [new tag]             phabricator/diff/40406 -> phabricator/diff/40406
 * [new tag]             phabricator/diff/40409 -> phabricator/diff/40409
 * [new tag]             phabricator/diff/40428 -> phabricator/diff/40428
 * [new tag]             phabricator/diff/40429 -> phabricator/diff/40429
 * [new tag]             phabricator/diff/40430 -> phabricator/diff/40430
 * [new tag]             phabricator/diff/40431 -> phabricator/diff/40431
 * [new tag]             phabricator/diff/40432 -> phabricator/diff/40432
 * [new tag]             phabricator/diff/40436 -> phabricator/diff/40436
 * [new tag]             phabricator/diff/40441 -> phabricator/diff/40441
 * [new tag]             phabricator/diff/40450 -> phabricator/diff/40450
 * [new tag]             phabricator/diff/40463 -> phabricator/diff/40463
 * [new tag]             phabricator/diff/40469 -> phabricator/diff/40469
 * [new tag]             phabricator/diff/40476 -> phabricator/diff/40476
 * [new tag]             phabricator/diff/8992  -> phabricator/diff/8992
 * [new tag]             phabricator/diff/8993  -> phabricator/diff/8993
 * [new branch]          master                 -> master
--- Building for bullseye amd64 ---
Stopping target if it is up
Error response from daemon: No such container: gitian-target
Error: No such container: gitian-target
Making a new image copy
Starting target
Checking if target is up.
Preparing build environment
Updating apt-get repository (log in var/install.log)
Installing additional packages (log in var/install.log)
Upgrading system, may take a while (log in var/install.log)
Creating package manifest
Creating build script (var/build-script)
Running build script (log in var/build.log)
./bin/gbuild:23:in `system!': failed to run on-target setarch x86_64 bash -x < var/build-script > var/build.log 2>&1 (RuntimeError)
	from ./bin/gbuild:185:in `build_one_configuration'
	from ./bin/gbuild:339:in `block (2 levels) in <main>'
	from ./bin/gbuild:334:in `each'
	from ./bin/gbuild:334:in `block in <main>'
	from ./bin/gbuild:332:in `each'
	from ./bin/gbuild:332:in `<main>'
Build gitian-osx failed with exit code 1

fix output name for dmg command (-uncompressed was a temp name)

Tail of the build log:

 * [new tag]             phabricator/diff/40326 -> phabricator/diff/40326
 * [new tag]             phabricator/diff/40327 -> phabricator/diff/40327
 * [new tag]             phabricator/diff/40330 -> phabricator/diff/40330
 * [new tag]             phabricator/diff/40334 -> phabricator/diff/40334
 * [new tag]             phabricator/diff/40339 -> phabricator/diff/40339
 * [new tag]             phabricator/diff/40340 -> phabricator/diff/40340
 * [new tag]             phabricator/diff/40341 -> phabricator/diff/40341
 * [new tag]             phabricator/diff/40365 -> phabricator/diff/40365
 * [new tag]             phabricator/diff/40366 -> phabricator/diff/40366
 * [new tag]             phabricator/diff/40373 -> phabricator/diff/40373
 * [new tag]             phabricator/diff/40375 -> phabricator/diff/40375
 * [new tag]             phabricator/diff/40379 -> phabricator/diff/40379
 * [new tag]             phabricator/diff/40380 -> phabricator/diff/40380
 * [new tag]             phabricator/diff/40385 -> phabricator/diff/40385
 * [new tag]             phabricator/diff/40389 -> phabricator/diff/40389
 * [new tag]             phabricator/diff/40400 -> phabricator/diff/40400
 * [new tag]             phabricator/diff/40401 -> phabricator/diff/40401
 * [new tag]             phabricator/diff/40402 -> phabricator/diff/40402
 * [new tag]             phabricator/diff/40404 -> phabricator/diff/40404
 * [new tag]             phabricator/diff/40406 -> phabricator/diff/40406
 * [new tag]             phabricator/diff/40408 -> phabricator/diff/40408
 * [new tag]             phabricator/diff/40409 -> phabricator/diff/40409
 * [new tag]             phabricator/diff/40420 -> phabricator/diff/40420
 * [new tag]             phabricator/diff/40429 -> phabricator/diff/40429
 * [new tag]             phabricator/diff/40431 -> phabricator/diff/40431
 * [new tag]             phabricator/diff/40432 -> phabricator/diff/40432
 * [new tag]             phabricator/diff/40441 -> phabricator/diff/40441
 * [new tag]             phabricator/diff/40450 -> phabricator/diff/40450
 * [new tag]             phabricator/diff/40461 -> phabricator/diff/40461
 * [new tag]             phabricator/diff/40463 -> phabricator/diff/40463
 * [new tag]             phabricator/diff/40467 -> phabricator/diff/40467
 * [new tag]             phabricator/diff/40468 -> phabricator/diff/40468
 * [new tag]             phabricator/diff/40469 -> phabricator/diff/40469
 * [new tag]             phabricator/diff/40476 -> phabricator/diff/40476
 * [new tag]             phabricator/diff/40477 -> phabricator/diff/40477
 * [new tag]             phabricator/diff/8992  -> phabricator/diff/8992
 * [new tag]             phabricator/diff/8993  -> phabricator/diff/8993
 * [new branch]          master                 -> master
--- Building for bullseye amd64 ---
Stopping target if it is up
Error response from daemon: No such container: gitian-target
Error: No such container: gitian-target
Making a new image copy
Starting target
Checking if target is up.
Preparing build environment
Updating apt-get repository (log in var/install.log)
Installing additional packages (log in var/install.log)
Upgrading system, may take a while (log in var/install.log)
Creating package manifest
Creating build script (var/build-script)
Running build script (log in var/build.log)
./bin/gbuild:23:in `system!': failed to run on-target setarch x86_64 bash -x < var/build-script > var/build.log 2>&1 (RuntimeError)
	from ./bin/gbuild:185:in `build_one_configuration'
	from ./bin/gbuild:339:in `block (2 levels) in <main>'
	from ./bin/gbuild:334:in `each'
	from ./bin/gbuild:334:in `block in <main>'
	from ./bin/gbuild:332:in `each'
	from ./bin/gbuild:332:in `<main>'
Build gitian-osx failed with exit code 1

update gitian-osx-signer.yml

Tail of the build log:

 * [new tag]             phabricator/diff/40229 -> phabricator/diff/40229
 * [new tag]             phabricator/diff/40233 -> phabricator/diff/40233
 * [new tag]             phabricator/diff/40247 -> phabricator/diff/40247
 * [new tag]             phabricator/diff/40254 -> phabricator/diff/40254
 * [new tag]             phabricator/diff/40263 -> phabricator/diff/40263
 * [new tag]             phabricator/diff/40266 -> phabricator/diff/40266
 * [new tag]             phabricator/diff/40267 -> phabricator/diff/40267
 * [new tag]             phabricator/diff/40285 -> phabricator/diff/40285
 * [new tag]             phabricator/diff/40286 -> phabricator/diff/40286
 * [new tag]             phabricator/diff/40290 -> phabricator/diff/40290
 * [new tag]             phabricator/diff/40292 -> phabricator/diff/40292
 * [new tag]             phabricator/diff/40293 -> phabricator/diff/40293
 * [new tag]             phabricator/diff/40326 -> phabricator/diff/40326
 * [new tag]             phabricator/diff/40327 -> phabricator/diff/40327
 * [new tag]             phabricator/diff/40339 -> phabricator/diff/40339
 * [new tag]             phabricator/diff/40341 -> phabricator/diff/40341
 * [new tag]             phabricator/diff/40373 -> phabricator/diff/40373
 * [new tag]             phabricator/diff/40377 -> phabricator/diff/40377
 * [new tag]             phabricator/diff/40379 -> phabricator/diff/40379
 * [new tag]             phabricator/diff/40380 -> phabricator/diff/40380
 * [new tag]             phabricator/diff/40385 -> phabricator/diff/40385
 * [new tag]             phabricator/diff/40400 -> phabricator/diff/40400
 * [new tag]             phabricator/diff/40401 -> phabricator/diff/40401
 * [new tag]             phabricator/diff/40402 -> phabricator/diff/40402
 * [new tag]             phabricator/diff/40404 -> phabricator/diff/40404
 * [new tag]             phabricator/diff/40406 -> phabricator/diff/40406
 * [new tag]             phabricator/diff/40409 -> phabricator/diff/40409
 * [new tag]             phabricator/diff/40429 -> phabricator/diff/40429
 * [new tag]             phabricator/diff/40433 -> phabricator/diff/40433
 * [new tag]             phabricator/diff/40441 -> phabricator/diff/40441
 * [new tag]             phabricator/diff/40450 -> phabricator/diff/40450
 * [new tag]             phabricator/diff/40461 -> phabricator/diff/40461
 * [new tag]             phabricator/diff/40469 -> phabricator/diff/40469
 * [new tag]             phabricator/diff/40477 -> phabricator/diff/40477
 * [new tag]             phabricator/diff/40478 -> phabricator/diff/40478
 * [new tag]             phabricator/diff/8992  -> phabricator/diff/8992
 * [new tag]             phabricator/diff/8993  -> phabricator/diff/8993
 * [new branch]          master                 -> master
--- Building for bullseye amd64 ---
Stopping target if it is up
Error response from daemon: No such container: gitian-target
Error: No such container: gitian-target
Making a new image copy
Starting target
Checking if target is up.
Preparing build environment
Updating apt-get repository (log in var/install.log)
Installing additional packages (log in var/install.log)
Upgrading system, may take a while (log in var/install.log)
Creating package manifest
Creating build script (var/build-script)
Running build script (log in var/build.log)
./bin/gbuild:23:in `system!': failed to run on-target setarch x86_64 bash -x < var/build-script > var/build.log 2>&1 (RuntimeError)
	from ./bin/gbuild:185:in `build_one_configuration'
	from ./bin/gbuild:339:in `block (2 levels) in <main>'
	from ./bin/gbuild:334:in `each'
	from ./bin/gbuild:334:in `block in <main>'
	from ./bin/gbuild:332:in `each'
	from ./bin/gbuild:332:in `<main>'
Build gitian-osx failed with exit code 1

remove more instances of dmg in gitian-osx.yml

PiRK published this revision for review.May 29 2023, 18:32
This revision is now accepted and ready to land.May 29 2023, 19:02
This revision was automatically updated to reflect the committed changes.