diff --git a/crates/zed/BundleDocumentTypes.plist b/crates/zed/BundleDocumentTypes.plist
new file mode 100644
index 0000000000..459169afc8
--- /dev/null
+++ b/crates/zed/BundleDocumentTypes.plist
@@ -0,0 +1,62 @@
+CFBundleDocumentTypes
+
+
+ CFBundleTypeIconFile
+ Document
+ CFBundleTypeRole
+ Editor
+ LSHandlerRank
+ Default
+ LSItemContentTypes
+
+ public.text
+ public.plain-text
+ public.utf8-plain-text
+
+
+
+ CFBundleTypeIconFile
+ Document
+ CFBundleTypeName
+ Zed Text Document
+ CFBundleTypeRole
+ Editor
+ CFBundleTypeOSTypes
+
+ ****
+
+ LSHandlerRank
+ Default
+ CFBundleTypeExtensions
+
+ Gemfile
+ c
+ c++
+ cc
+ cpp
+ css
+ erb
+ ex
+ exs
+ go
+ h
+ h++
+ hh
+ hpp
+ html
+ js
+ json
+ jsx
+ md
+ py
+ rb
+ rkt
+ rs
+ scm
+ toml
+ ts
+ tsx
+ txt
+
+
+
diff --git a/script/bundle b/script/bundle
index 94efbdf0af..6fe93ed66c 100755
--- a/script/bundle
+++ b/script/bundle
@@ -22,7 +22,7 @@ cargo build --release --package cli --target x86_64-apple-darwin
echo "Creating application bundle"
pushd crates/zed
-channel=$(cat RELEASE_CHANNEL)
+channel=$(/{while(getline line<\"./crates/zed/BundleDocumentTypes.plist\"){print line}}1" \
+ "${app_path}/Contents/WithoutDocumentTypes.plist" \
+ > "${app_path}/Contents/Info.plist"
+rm "${app_path}/Contents/WithoutDocumentTypes.plist"
+
if [[ -n $MACOS_CERTIFICATE && -n $MACOS_CERTIFICATE_PASSWORD && -n $APPLE_NOTARIZATION_USERNAME && -n $APPLE_NOTARIZATION_PASSWORD ]]; then
echo "Signing bundle with Apple-issued certificate"
security create-keychain -p "$MACOS_CERTIFICATE_PASSWORD" zed.keychain || echo ""