Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
67 changes: 57 additions & 10 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,7 @@ nsh-js = { path = "third-party/nsh/crates/nsh-js" }
nsh-platform-tui = { path = "third-party/nsh/crates/nsh-platform-tui" }
nsh-platform-gpui = { path = "third-party/nsh/crates/gpui/nsh-platform-gpui", default-features = false, features = ["js"] }
nsh-gpui-terminal = { path = "third-party/nsh/crates/gpui/nsh-gpui-terminal" }
nsh-platform-macos = { path = "third-party/nsh/crates/nsh-platform-macos" }
nsh-bundler = { path = "third-party/nsh/crates/nsh-bundler", default-features = false }
nsh-base = { path = "third-party/nsh/crates/nsh-base" }
maka-ui-build = { path = "tools/ui-build" }
Expand Down
5 changes: 3 additions & 2 deletions products/maka/cli/DEPENDENCIES.rust.tsv
Original file line number Diff line number Diff line change
Expand Up @@ -693,6 +693,7 @@ nsh-js@0.3.0 X
nsh-macros@0.3.0 X
nsh-package@0.3.0 X
nsh-platform-gpui@0.3.0 X
nsh-platform-macos@0.3.0 X
nsh-platform-tui@0.3.0 X
ntapi@0.4.3 X X
nu-ansi-term@0.50.3 X
Expand Down Expand Up @@ -723,6 +724,8 @@ objc2-core-video@0.3.2 X X X
objc2-encode@4.1.0 X
objc2-foundation@0.2.2 X
objc2-foundation@0.3.2 X
objc2-image-io@0.3.2 X X X
objc2-io-kit@0.3.2 X X X
objc2-metal@0.3.2 X X X
objc2-quartz-core@0.2.2 X
objc2-quartz-core@0.3.2 X X X
Expand Down Expand Up @@ -1232,7 +1235,6 @@ windows-collections@0.3.2 X X
windows-core@0.57.0 X X
windows-core@0.58.0 X X
windows-core@0.59.0 X X
windows-core@0.61.2 X X
windows-core@0.62.2 X X
windows-future@0.3.2 X X
windows-implement@0.57.0 X X
Expand All @@ -1253,7 +1255,6 @@ windows-result@0.3.4 X X
windows-result@0.4.1 X X
windows-strings@0.1.0 X X
windows-strings@0.3.1 X X
windows-strings@0.4.2 X X
windows-strings@0.5.1 X X
windows-sys@0.48.0 X X
windows-sys@0.59.0 X X
Expand Down
3 changes: 3 additions & 0 deletions products/maka/cli/THIRD_PARTY_NOTICES.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7755,6 +7755,8 @@ objc2-core-text@0.3.2 (Zlib OR Apache-2.0 OR MIT)
objc2-core-video@0.3.2 (Zlib OR Apache-2.0 OR MIT)
objc2-encode@4.1.0 (MIT); authors declared by package: Mads Marquart <mads@marquart.dk>
objc2-foundation@0.3.2 (MIT)
objc2-image-io@0.3.2 (Zlib OR Apache-2.0 OR MIT)
objc2-io-kit@0.3.2 (Zlib OR Apache-2.0 OR MIT)
objc2-io-surface@0.3.2 (Zlib OR Apache-2.0 OR MIT)
objc2-metal@0.3.2 (Zlib OR Apache-2.0 OR MIT)
objc2-quartz-core@0.3.2 (Zlib OR Apache-2.0 OR MIT)
Expand Down Expand Up @@ -27284,6 +27286,7 @@ nsh-gpui-terminal@0.3.0 (Apache-2.0)
nsh-macros@0.3.0 (Apache-2.0)
nsh-package@0.3.0 (Apache-2.0)
nsh-platform-gpui@0.3.0 (Apache-2.0)
nsh-platform-macos@0.3.0 (Apache-2.0)
nsh-platform-tui@0.3.0 (Apache-2.0)

https://raw.githubusercontent.com/M4n5ter/nsh/de176695240d550f2b303643b8019146c7989e7f/LICENSE-APACHE
Expand Down
38 changes: 20 additions & 18 deletions products/maka/cli/notices.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"inputs": {
"Cargo.lock": "0c4df4b7fdb6ab8ab15ee24e083bb1cab4f41f74daa9445ef5416b204ed81401",
"Cargo.toml": "0ac2ccacded4494795f64c9fb00ab70eee642fddc059293beae570c6aa2eb531",
"Cargo.lock": "ca5a7b90dfd8670beabdcd13809e1f19fd2835b3d4b4e001701c77e3a80618c2",
"Cargo.toml": "daf18767edc88e0f704553cf594f8fd222fbf8edab5118ade55a208b05d532d1",
"package-lock.json": "863e20d94f46507befd14d7abe94982bb110dff3efaa13b9d1c3b60333f8d64a",
"package.json": "a513ba49c73a1cd6d8060d9a4f2edb47f5286469553cf3b3f4959b9ceb64fa58",
"packages/plugin-sdk/src/composer-view.ts": "67a3873beb21778ddbba561f949ebe840c6af33fa0cdb3f3a9da8f6fb4cb03d3",
Expand Down Expand Up @@ -120,7 +120,7 @@
"products/maka/cli/build/main.rs": "446a3f9fb976bdf8ee1f0f21f2a5dfce0c0854b32f1a1c0294143cb654171e7f",
"products/maka/cli/build/product.rs": "0ff203a6c9b04f97ee75a3ac55af384865fe3e74d5c169d5a022a9de8527584d",
"products/maka/client/Cargo.toml": "33a6ff74d79ce70081336cad1f552f7705d0bf10ad82c341f3c0739332c0503c",
"products/maka/desktop-shell/Cargo.toml": "d8c2fb2206dc4c4afddea1f38e0cd067f09008147f6cd56bf86726395b96ea86",
"products/maka/desktop-shell/Cargo.toml": "ef2a796c49d8fa974c776965f5f7d6580f3758bd4b519e4394492b25199cb61b",
"products/maka/native/Cargo.toml": "f174300d1f9cb5a8c683e2c83514092be65556abfff12757b6b315cc06490cca",
"products/maka/terminal-shell/Cargo.toml": "7735e5db9dedb2560f5a13e53ee085611f48a7145ed179b22df982ab44831841",
"products/maka/workbench/Cargo.toml": "3328f5e00d8748bf27142eacb92780354af10160b807f20513d0fc1690a6caec",
Expand Down Expand Up @@ -534,7 +534,7 @@
"third-party/nsh/Cargo.toml": "25b8c6dc87977b07a422fd87d2640a2c250fd6aae6b533d0b4a6c28f2a8e82fb",
"third-party/nsh/LICENSE-APACHE": "ec75427ad955e3c740f22e7dc3f6db6fc5b2cc1d9135c2af91cece8dd47a2d38",
"third-party/nsh/README.md": "7e96dcaff053bd42b852ac90e14c2d2deed5e607630f5697284106de14c386d1",
"third-party/nsh/SOURCE.md": "8f9b622108c3b1539ad5977ddbc832d0788b3731388a5b82a2c97e5b46be2dc5",
"third-party/nsh/SOURCE.md": "75b39aa8662963da027f9dcee960a5a4e8b77503f79158c1cd51350a1fcdd310",
"third-party/nsh/crates/gpui/Cargo.lock": "1e0ae16130bfdf52e9234af20588d39be0c66988eb6b1c584ff1e12c64005da9",
"third-party/nsh/crates/gpui/Cargo.toml": "2cbea9fb1d709fa1ac007133bad9c099658c0d062040e517e5d9111ba3acc4bc",
"third-party/nsh/crates/gpui/nsh-gpui-host/Cargo.toml": "f36b982a17b38bd1d91760a2d8d9db06b42db949c227878cef294a5ff2100844",
Expand Down Expand Up @@ -925,7 +925,7 @@
"third-party/nsh/crates/nsh-cli/src/templates/tsconfig/5.json": "5d6ee953f0366848a5cbe9fe9d0a6b31637d14e8dfb20761e7730c9228753b1a",
"third-party/nsh/crates/nsh-cli/src/test.rs": "46b59fb772a08b1aea6aa46a94a1468f4dfe1231352a7cbbd611d22b6a64dfe0",
"third-party/nsh/crates/nsh-cli/src/test_android.rs": "6f3ca5c6caf8e46d48fa7d3046e82a9d1d5f50efd1a6a68a08f3c0472295c48c",
"third-party/nsh/crates/nsh-cli/src/test_host.rs": "8ca3cc5d23d12ba63db4edc5293d92244b5e50a37c904d7815fc06e9df731661",
"third-party/nsh/crates/nsh-cli/src/test_host.rs": "a9a8260ffaf68f7516489c3024d4d476e578a7f782549c26202e9d4f91fdb3a8",
"third-party/nsh/crates/nsh-cli/src/test_ios.rs": "001f75d6f862a31d2352e09c51317f100ae6ddab8d983761315c25760b258f01",
"third-party/nsh/crates/nsh-cli/src/test_web.rs": "b657afd25fd7f33f734cd8ac597bb580a0f341a0453828b1d73f3b71b74436bd",
"third-party/nsh/crates/nsh-cli/src/tui.rs": "edadbdd4996dce76cf87b4e8eb4e4101fa6ed338f2ebb7f0725a6c61d2bde6c0",
Expand Down Expand Up @@ -1456,21 +1456,21 @@
"third-party/nsh/crates/nsh-platform-macos/src/access.rs": "0fa206973750b436c7914cad19916134b348a60fca3af65b7c90ebb91bd42797",
"third-party/nsh/crates/nsh-platform-macos/src/agent.rs": "d2527ce30edd77608a23d049dfce4f80b2c6f3aa7c52ad4b1403350c71cc0247",
"third-party/nsh/crates/nsh-platform-macos/src/animation.rs": "65ed3bb971317aa92202e694ea8e18f1a3f74ffae52d60a98723309f4ab12667",
"third-party/nsh/crates/nsh-platform-macos/src/app.rs": "764f146a6468c50df0297cbdc4bb54154ceb1025f62c85883682e45b4eed7fe2",
"third-party/nsh/crates/nsh-platform-macos/src/app.rs": "c0d6795f7e81ec5f9de0710c8e6d7ba8accb615c8f8ea04791998675e4ffc042",
"third-party/nsh/crates/nsh-platform-macos/src/blur.rs": "04af7f839f5e5a9d7005638c836b748c2364c804e45174a22d8c8a1e3d7945d1",
"third-party/nsh/crates/nsh-platform-macos/src/canvas.rs": "c0f370a815107bc32dcb46e1742facca8f46fac9a9bc8afcf1e107a1da03a6c1",
"third-party/nsh/crates/nsh-platform-macos/src/chrome.rs": "023617fa18c1ea5c35251b05ced485de0dc2b557034a7ff1394a5ae2394c1199",
"third-party/nsh/crates/nsh-platform-macos/src/chrome.rs": "cbc9790b5877da6462306f564b2d849fa3d9e3d19f63b65ad9e7fc213d120951",
"third-party/nsh/crates/nsh-platform-macos/src/decor.rs": "95a22e8678aac2088228842efded6a423c5c3acb449a6f91bd5f2cf995f41435",
"third-party/nsh/crates/nsh-platform-macos/src/dev.rs": "bd49bc875c1dad5eebe111881590ac8c56b73e7b14ae01a403f5df0cbbeff125",
"third-party/nsh/crates/nsh-platform-macos/src/file_drop.rs": "8cba8f09ee79b5902baa8c1b8b1a7f24d48604ba1eee477421656bffdfd65834",
"third-party/nsh/crates/nsh-platform-macos/src/file_requests.rs": "4da6f58c2a04186eab19d508aaa89863d2ffd1719b8016a5e0648cf82cd4b45b",
"third-party/nsh/crates/nsh-platform-macos/src/file_requests.rs": "b8fad6bf511f9375785f71ad030701d45eec44ea8437a10977c97c1de7a8e4fe",
"third-party/nsh/crates/nsh-platform-macos/src/fps.rs": "1649120d0596c374e5db01ffc309cc6e9bba8da53568c87e6920656e079a0949",
"third-party/nsh/crates/nsh-platform-macos/src/gpu.rs": "46e103515db651c57316c351d7345dbc812f513c28d5d0e0489aaf2d8c59d599",
"third-party/nsh/crates/nsh-platform-macos/src/image.rs": "ace61273d7f24e350cc3208afe8aebe472f2576927035dd711a34ce6c9ebcbeb",
"third-party/nsh/crates/nsh-platform-macos/src/input.rs": "7c083907d08135478d16768b7a2e51a152f198f65b7dffeac62a52cd2cd6c84c",
"third-party/nsh/crates/nsh-platform-macos/src/keymap.rs": "3084b3d0ee332607b2993c9b525f089ea5e73bf0b5f5903938001066e73f4b75",
"third-party/nsh/crates/nsh-platform-macos/src/lib.rs": "98b697238d9b0a20448d3956bc4688365c3570f392bb26aeea08e170cca547e3",
"third-party/nsh/crates/nsh-platform-macos/src/mount.rs": "16bf70de75889bfee722eba15f4dfebc725c857be22c8090d767f295cf90922e",
"third-party/nsh/crates/nsh-platform-macos/src/image.rs": "86383ab7fe14c816b170d24fd5af1b4c725d41f2449ec35493b5c250ec5338a0",
"third-party/nsh/crates/nsh-platform-macos/src/input.rs": "cce4450d2765c368dca4f0822f29621d4e764c5adf492089565e78c3e5dfde82",
"third-party/nsh/crates/nsh-platform-macos/src/keymap.rs": "927d899967b30232c9e8264d31687f33e4ce22f71361839db4a9132a6572d058",
"third-party/nsh/crates/nsh-platform-macos/src/lib.rs": "927295694b6964a2c0f800b2d5e711e230f9308c956e1bc7599ae03a4c642c1c",
"third-party/nsh/crates/nsh-platform-macos/src/mount.rs": "2f9c1854836bf58059c427a0754c6338173f0c8359e3cf8f93af98ebf20990ac",
"third-party/nsh/crates/nsh-platform-macos/src/native.rs": "e0354fb81b2a7070bf209f52248599535fcaf437d8408e96eaa5e8be8a0eef61",
"third-party/nsh/crates/nsh-platform-macos/src/navigation.rs": "4b65ec9a5441c4288899d9bc1b2c10052e7589bd798337a938d99d97ead44fd6",
"third-party/nsh/crates/nsh-platform-macos/src/net.rs": "289365dc5d62b09d9a2da14fc1bcc041cf37f6fed409db24916be830ac850760",
Expand All @@ -1479,14 +1479,16 @@
"third-party/nsh/crates/nsh-platform-macos/src/scroll.rs": "1e0c30b571c234602515f61ee94aa23f87eae6e8375d8116d19cd04cd3e4705d",
"third-party/nsh/crates/nsh-platform-macos/src/selectable_view.rs": "24d90dc7db5837229c05c4613a2d6c72b5b9b6a4c53086a852dde4f78adf94cf",
"third-party/nsh/crates/nsh-platform-macos/src/shader.rs": "3b2834691ac20a8ae52b121da0d4aba4223b105216a0fa73ef193231d278e5bc",
"third-party/nsh/crates/nsh-platform-macos/src/surface.rs": "2cfe5ed536054a3d4c2fa877b8b1ad2635273b7b5e11f87284bd8533436e0eef",
"third-party/nsh/crates/nsh-platform-macos/src/surface.rs": "27e0818c21b2c6f0a5b4f9aa6cec6b9105f36dfaec8645d5174f5a7374042ca0",
"third-party/nsh/crates/nsh-platform-macos/src/synth.rs": "29e120eadacb6b62c6de7b66d8a0c6a99d7ed67cb20ca448cc1945f174a28de7",
"third-party/nsh/crates/nsh-platform-macos/src/system.rs": "b4cd0bc584ed2bee195c576847ce6d6cf82af2ebf81f7e774af8288d37f7d1be",
"third-party/nsh/crates/nsh-platform-macos/src/text.rs": "2ba04a35f42520710afd6a42177174a1ae948892c3b9ab27692813a6fea6bee1",
"third-party/nsh/crates/nsh-platform-macos/src/text_input.rs": "a2be21623992b9a4eeea8034139d465bca8258a948269ae7f332f8f400dce4b6",
"third-party/nsh/crates/nsh-platform-macos/src/text_input.rs": "0662dcff7db4dcd15de293c6a9daf07031d7444c365ab4f5193e7b77d16c1f64",
"third-party/nsh/crates/nsh-platform-macos/src/transition.rs": "4cebee36844c69fe9cf6b2787b86f36d0c719e7c8d7e4c95391b9137ce10d248",
"third-party/nsh/crates/nsh-platform-macos/src/view.rs": "983dbbdeedc79259a90180679f0a218ed241a5ce19c6bed79bf1c0151b9de7d1",
"third-party/nsh/crates/nsh-platform-macos/src/view.rs": "a495109fcef50ec0cc09b07dd51953506cec3e2db33b4d3f5efc87656307dca2",
"third-party/nsh/crates/nsh-platform-macos/src/visual.rs": "6c32d3f286ed8f7fcd0daf45f269f54403e70b773e62ff4c87830575402e6c62",
"third-party/nsh/crates/nsh-platform-macos/tests/keymap/app.tsx": "e188531afe4eb97d85e88916b8d2916af0dd74037bc2198deb6a059195d3fdfe",
"third-party/nsh/crates/nsh-platform-macos/tests/keymap/phases.test.tsx": "6edf6559fcb0d6ac93786dc283ec6e1db3b61bf2b6d6e4ed7a430abafc657fd8",
"third-party/nsh/crates/nsh-platform-tui/Cargo.toml": "8757c1cfc5b97419ea8ac3d7502493c123cace9fe61d5998ebd7f7d6d9926e11",
"third-party/nsh/crates/nsh-platform-tui/src/app.rs": "fca461bf66e704bbe825088f9b713739f626b30686d487f334253bb6dff82deb",
"third-party/nsh/crates/nsh-platform-tui/src/canvas.rs": "f03e24bb5963be16d17d80215f1d54a3e2350a5a75bb1391c945ead828736ad2",
Expand Down Expand Up @@ -1751,7 +1753,7 @@
"third-party/nsh/docs/dev/js-modules.md": "57504b18df9432fdc0ae2c88ba557a5fcc9a0fa16af7610cdf63ba7bcb994082",
"third-party/nsh/docs/dev/layerfs.md": "df9b16b2f5f1e61f9693f63b61438a51461d05b535a0046d50ac9ba1ade12b8b",
"third-party/nsh/docs/dev/linux.md": "f9406e66244845c6d1c50234992eb3f069f1c710f8d541f60e60d726d85b646f",
"third-party/nsh/docs/dev/macos.md": "117f5b3f86a8643e9bb56af509d00ef9d2fc31045aef74bc5439f4179f2a6d47",
"third-party/nsh/docs/dev/macos.md": "a4328836d68e1b1c80c83677257541618ea4315fe888a63b20b204e6ac92d3a8",
"third-party/nsh/docs/dev/native-pipeline.md": "f322511ef8a96a6b612a3872fa744cd00dec3f24d1f1ee53c93fc644f2388535",
"third-party/nsh/docs/dev/performance.md": "4078d42276c742df0922ec7c97802654bff6b697513d3fc1c3c6ce6ebceb5fd4",
"third-party/nsh/docs/dev/pitfalls.md": "239b4eb4d6be5543b15eff1cdda63216a8bfc26b2737e8f962d043dba602a602",
Expand Down Expand Up @@ -2930,5 +2932,5 @@
"tools/ui-build/src/lib.rs": "a47a8b18ae4056eb408601bbdcc9b88f971bf62437b3f1e39a64cfb194f19af4",
"tools/ui-build/src/main.rs": "9dc0ce6be54d8ed5cf6f40d151fde718822b65a3c36eca7c2b0008d5d9fd5426"
},
"sha256": "c082bc45f0eba2fe583fa31536a7596f84d303715ca9e3c015d49b1c4d4bf91b"
"sha256": "b63e66c871a0e660df55ffa5610b0f941f87c85809ab0f24b5739244602bf184"
}
3 changes: 3 additions & 0 deletions products/maka/desktop-shell/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -39,3 +39,6 @@ embed-resource = "3.0"
# Shaders compile at run time, so building needs no Metal Toolchain (macOS).
nsh-platform-gpui = { workspace = true, features = ["runtime-shaders"] }
gpui_platform = { package = "gpui-fast-platform", version = "0.1.10", default-features = false, features = ["font-kit", "wayland", "x11"] }

[target.'cfg(target_os = "macos")'.dependencies]
nsh-platform-macos.workspace = true
2 changes: 2 additions & 0 deletions products/maka/desktop-shell/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,3 +51,5 @@ Closing the window, the quit menu item and the quit key all close the window; th
The window opens on the display, at the position and size, and in the full-screen or maximized state it had when it last closed, as recorded in `clients/desktop-window.json` in the Root. If that display is gone it opens centered on the main display; if too little of its top edge would be on the display to grab, it opens centered there.

If the Host stops while the window is open (it crashed, or was retired over its clients), the shell notices within a few seconds, connects to the Root's next Host, starting one through the launcher as `maka desktop` does, and loads the workbench again in the same window. The workbench starts over, as when the desktop opens; a turn the stopped Host was running shows as stopped. Until a Host is reached the window keeps the last workbench, whose actions fail, and the shell retries with growing pauses of up to 30 seconds. It reconnects only while the Root it opened is still at its path: a moved or deleted Root is not initialized afresh.

On macOS, a non-empty `MAKA_APPKIT` runs the workbench on NSH's AppKit backend instead of GPUI. This backend is experimental and not the default. It saves the window's frame in the application's defaults rather than in `clients/desktop-window.json`, without the full-screen state. If the Host stops, the window keeps the last workbench and does not reconnect. It refuses plugin changes that need a UI reload, and it posts no system notifications.
Loading
Loading