fix: create the settings and keymaps to unblock file watching

Amin Yahyaabadi created

Change summary

crates/fs/src/fs.rs | 2 --
script/linux        | 9 ++++++++-
2 files changed, 8 insertions(+), 3 deletions(-)

Detailed changes

crates/fs/src/fs.rs 🔗

@@ -301,8 +301,6 @@ impl Fs for RealFs {
             .configure(Config::default().with_poll_interval(latency))
             .unwrap();
 
-        //TODO: unblock this
-        #[cfg(not(target_os = "linux"))]
         watcher
             .watch(path, notify::RecursiveMode::Recursive)
             .unwrap();

script/linux 🔗

@@ -1,8 +1,15 @@
-#!/usr/bin/env bash
+#!/usr/bin/bash -e
 
 # if not on Linux, do nothing
 [[ $(uname) == "Linux" ]] || exit 0
 
+# Copy settings and keymap to the user's home directory if they don't exist
+mkdir -p "$HOME/.config/zed"
+test -f "$HOME/.config/zed/settings.json" ||
+  cp -uL ./assets/settings/initial_user_settings.json "$HOME/.config/zed/settings.json"
+test -f "$HOME/.config/zed/keymap.json" ||
+  cp -uL ./assets/keymaps/default.json "$HOME/.config/zed/keymap.json"
+
 # if sudo is not installed, define an empty alias
 maysudo=$(command -v sudo || true)
 export maysudo