Commit graph

68 commits

Author SHA1 Message Date
Dzmitry Malyshau
9ad1862f2f
Enable Blade on MacOS via "macos-blade" feature (#7669)
Depends on https://github.com/zed-industries/font-kit/pull/2 and
https://github.com/kvark/blade/pull/77

This change enables Blade to be also used on MacOS. It will also make it
easier to use it on Windows.

What works: most of the things. Zed loads as fast and appears equally
responsive to the current renderer.
<img width="306" alt="Screenshot 2024-02-11 at 12 09 15 AM"
src="https://github.com/zed-industries/zed/assets/107301/66d82f45-5ea2-4e2b-86c6-5b3ed333c827">

Things missing:
- [x] video streaming. ~~Requires a bit of plumbing on both Blade and
Zed sides, but all fairly straightforward.~~
  -  verified with a local setup
- [x] resize. ~~Not sure where exactly to hook up the reaction on the
window size change. Once we know where, the fix is one line.~~
- [ ] fine-tune CA Layer
- this isn't a blocker for merging the PR, but it would be a blocker if
we wanted to switch to the new path by default
- [ ] rebase on latest, get the dependency merged (need review/merge of
https://github.com/zed-industries/font-kit/pull/2!)

Update: I implemented resize support as well as "surface" rendering on
the Blade path (which will be useful on Linux/Windows later on). I
haven't tested the latter though - not sure how to get something
streaming. Would appreciate some help! I don't think this should be a
blocker to this PR, anyway.

The only little piece that's missing for the Blade on MacOS path to be
full-featured is fine-tuning the CALayer configuration. Zed does a lot
of careful logic in configuring the layer, such as switching the
"present with transaction" on/off intermittently, which Blade path
doesn't have yet.

Release Notes:
- N/A

---------

Co-authored-by: Mikayla <mikayla@zed.dev>
2024-02-16 13:39:40 -08:00
Antonio Scandurra
c6626627c2
Remove existing gzip files before compressing dSYMs (#7818)
This should fix the build.

Release Notes:

- N/A
2024-02-15 11:32:08 +01:00
Antonio Scandurra
db86f4006e
Staple notarization ticket to .dmg and .app bundle (#7775)
This should eliminate a pretty significant (multiple seconds) slowdown
that new users (or users after restarting their OS) have been
experiencing.

Previously, we would just notarize the application, which meant that
every user of the application had to perform an integrity check against
Apple's servers to ensure the app wasn't malicious.

With this commit, we are now using `xcrun stapler staple`, which
attaches the notarization ticket to both the app bundle as well as the
DMG. This should prevent users from needing to reach out to Apple's
notarization service in order to verify the app's integrity.

You can confirm the quarantine status of the application by running `ls
-l@` in `Terminal.app`:

    ls -l@ /Applications/Zed.app/Contents/MacOS/zed

Release Notes:

- Improved startup time when opening Zed for the first time or after
restarting the operating system.

Co-authored-by: Thorsten <thorsten@zed.dev>
Co-authored-by: bennetbo <bennetbo@gmx.de>
Co-authored-by: Martin Palma <m@palma.bz>
Co-authored-by: evrsen <146845123+evrsen@users.noreply.github.com>
2024-02-15 06:47:12 +01:00
Conrad Irwin
181f556269
Fewer nightlys (#7784)
Remove an extraneous /nightly/ from our dSYM paths

Release Notes:

- N/A
2024-02-14 11:40:02 -07:00
Conrad Irwin
7a6d01e113
debug symbol upload (#7783)
This will let it become slowly eaasier to debug crashes

Release Notes:

- N/A
2024-02-14 10:55:37 -07:00
Valentine Briese
0fb6b32bc3
Correct typo in bundle script comment (#7682)
Release Notes:

- N/A
2024-02-12 10:30:38 +02:00
Conrad Irwin
91c699aeaa
Revert "Debug build (#7176)" (#7577)
This reverts commit aaba98d8ec.

Release Notes:

- N/A
2024-02-08 20:04:55 -07:00
Conrad Irwin
aaba98d8ec
Debug build (#7176)
Release Notes:

- N/A
2024-01-31 19:22:58 -07:00
Mikayla
9ce7ef8949
Remove the last of the major todos 2024-01-09 16:14:54 -08:00
Max Brunsfeld
7986ee18cd Rename zed2 -> zed
Co-authored-by: Mikayla <mikayla@zed.dev>
2024-01-03 10:14:19 -08:00
Max Brunsfeld
c571273ab4 Allow bundling in debug mode with both architectures
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-11-20 11:00:12 -08:00
Mikayla
acbad4c7b7
WIP 2023-11-20 10:34:22 -08:00
Mikayla Maki
073405018e
Revert changes 2023-11-18 16:37:34 -08:00
Mikayla Maki
b758d1b871
Update bundle 2023-11-18 13:06:23 -08:00
Mikayla Maki
fd8ebb4f17
Update bundle 2023-11-18 11:50:54 -08:00
Mikayla
ede7656f02
please work 2023-11-18 10:46:35 -08:00
Mikayla
eb2e9a59b7
Fix bundling again 2023-11-17 18:27:11 -08:00
Mikayla
16f420528d
Remove CLI from zed2 (for now) 2023-11-17 18:09:42 -08:00
Mikayla
70d0421b3c
Fix bundle script 2023-11-17 17:44:41 -08:00
Piotr Osiewicz
9582a6f317
chore: Run multitarget build in script/bundle (#3241)
Ignore this PR for now.

This has a chance to speed up a build in case where e.g. we're
single-threaded in aarch64 build; at that point the x86_64 codegen can
take place. Also, MIR can probably be shared between the two
architectures, further reducing build time.

Release Notes:
- N/A
2023-11-07 17:00:36 +01:00
Conrad Irwin
4d88a326e1 Tidy up a bit better 2023-11-06 10:37:35 -07:00
Conrad Irwin
f730982e7b Use notarytool to bundle 2023-11-06 09:38:09 -07:00
Piotr Osiewicz
ee28cc5deb chore: Run multitarget build in script/bundle
This has a chance to speed up a build in case where e.g. we're single-threaded in aarch64 build; at that point the x86_64 codegen can take place. Also, MIR can probably be shared between the two architectures, further reducing build time.
2023-11-06 17:21:34 +01:00
Conrad Irwin
30e7978dcf Try more signing 2023-10-26 18:27:33 +02:00
Conrad Irwin
c12f0d2697 Provisioning profiles for stable and preview 2023-10-16 20:38:10 -06:00
Conrad Irwin
f6d0934b5d deep considered harmful 2023-10-11 15:17:46 -06:00
Conrad Irwin
7c867b6e54 New entitlements:
* Universal links
* Shared keychain group (to make development easier)
2023-10-11 09:36:12 -06:00
Conrad Irwin
5dbda70235 Fix ./script/bundle to allow passing key 2023-10-09 08:59:25 -06:00
Mikayla
31062d424f
make bundle script incremental when using debug or local builds 2023-10-05 16:56:44 -07:00
Conrad Irwin
b258ee5f77
Fix ./script/bundle -l 2023-10-05 14:55:39 -07:00
Nathan Sobo
a1d2ae3095 Add -l option to build script
When you pass -l, we build for the local architecture only and copy the
resulting app bundle to /Applications. You can provide a bundle name as
an optional argument.
2023-08-28 13:32:30 -06:00
Mikayla Maki
b481e383ce
Update bundle 2023-06-14 17:37:47 -07:00
Mikayla Maki
493e489c51
Add entitlements file to bundle step 2023-06-14 17:34:48 -07:00
Mikayla Maki
8ad7eb7598
Switch to using new version of cargo bundle with more capabilities 2023-06-13 18:01:51 -07:00
Nathan Sobo
0d0f6b5a05 Update EULA 2023-04-05 08:18:51 -06:00
Nathan Sobo
818a514110 Add terms of use to DMG in the bundle script
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2023-03-13 15:47:59 -06:00
Mikayla Maki
cf4e719484 Fixes a race condition in the restart implementation
Fixes open_urls racing workspace initialization and causing a double-open (community#927)
Adds a -d flag to the bundle script to compile in debug mode

Co-Authored-by: Max <max@zed.dev>
2023-02-21 15:28:16 -08:00
Julia
4d73d4b1b9 Insert macOS file association metadata during bundle process 2023-01-24 17:07:02 -05:00
Joseph Lyons
7608875625 Remove extraneous newline 2022-12-10 09:56:42 -05:00
Joseph Lyons
dcf11ac7e5 Add symlink to applications directory in dmg 2022-12-10 09:48:40 -05:00
Max Brunsfeld
df708465d1 Ensure only the just-built app bundle is included in the DMG 2022-10-26 21:06:06 -07:00
Max Brunsfeld
6410fdc474 Clear out bundle directory before creating a new app bundle 2022-10-26 17:49:03 -07:00
Max Brunsfeld
23d7209f82 Handle different app names in bundle script 2022-10-26 16:19:19 -07:00
Max Brunsfeld
0f1b0a4a78 Use a separate icon for preview releases 2022-10-26 16:19:19 -07:00
Nathan Sobo
0ef62fc334 Preserve symlinks in WebRTC.framework to avoid bundle signing failure 2022-10-20 14:37:04 -06:00
Antonio Scandurra
de24b4b4e8 Bump minimum macOS version to 10.15.7
This solves an issue with loading Swift libraries when running the
x86_64 binary.

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-10-20 18:01:41 +02:00
Antonio Scandurra
629d3d473c Copy WebRTC into Zed.app/Contents/Frameworks when bundling the app 2022-10-20 15:38:54 +02:00
Antonio Scandurra
9da7fd22f7 Set MACOSX_DEPLOYMENT_TARGET when running script/bundle
This ensures that every library and binary we build doesn't assume
that it's going to run on the same machine that created it.

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-09-21 17:18:39 +02:00
Isaac Clayton
41918101ed Add wasm32-wasi to CI workflow 2022-07-11 18:29:27 +02:00
Max Brunsfeld
184a454f6f Update bundle script to include fat CLI binary 2022-04-20 17:27:33 +02:00