summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid2022-10-10 17:23:36 +0000
committerGitHub2022-10-10 17:23:36 +0000
commit7af7dadd17a45a22633cad2325ca3cf9ac815ca7 (patch)
treea0e8d66c7b0bc4ca451bf839e82643ab32ee9d62
parent530f9e3c5395c559e66f7b9df30552950369e42b (diff)
Add instructions for gnome desktop support using the `.desktop` file (#4165)
-rw-r--r--README.md27
-rw-r--r--book/src/install.md34
2 files changed, 47 insertions, 14 deletions
diff --git a/README.md b/README.md
index ff0699c6..1e12ef2d 100644
--- a/README.md
+++ b/README.md
@@ -48,11 +48,11 @@ tree-sitter grammars may be manually fetched and built with `hx --grammar fetch`
Helix also needs its runtime files so make sure to copy/symlink the `runtime/` directory into the
config directory (for example `~/.config/helix/runtime` on Linux/macOS, or `%AppData%/helix/runtime` on Windows).
-| OS | Command |
-| -------------------- | -------------------------------------------- |
-| Windows (cmd.exe) | `xcopy /e /i runtime %AppData%\helix\runtime` |
-| Windows (PowerShell) | `xcopy /e /i runtime $Env:AppData\helix\runtime` |
-| Linux/macOS | `ln -s $PWD/runtime ~/.config/helix/runtime` |
+| OS | Command |
+| -------------------- | ------------------------------------------------ |
+| Windows (cmd.exe) | `xcopy /e /i runtime %AppData%\helix\runtime` |
+| Windows (PowerShell) | `xcopy /e /i runtime $Env:AppData\helix\runtime` |
+| Linux/macOS | `ln -s $PWD/runtime ~/.config/helix/runtime` |
This location can be overridden via the `HELIX_RUNTIME` environment variable.
@@ -68,6 +68,23 @@ for a language.
[![Packaging status](https://repology.org/badge/vertical-allrepos/helix.svg)](https://repology.org/project/helix/versions)
+## Adding Helix to your desktop environment
+
+If installing from source, to use Helix in desktop environments that supports [XDG desktop menu](https://specifications.freedesktop.org/menu-spec/menu-spec-latest.html), including Gnome and KDE, copy the provided `.desktop` file to the correct folder:
+
+```bash
+cp contrib/Helix.desktop ~/.local/share/applications
+```
+
+To use another terminal than the default, you will need to modify the `.desktop` file. For example, to use `kitty`:
+
+```bash
+sed -i "s|Exec=hx %F|Exec=kitty hx %F|g" ~/.local/share/applications/Helix.desktop
+sed -i "s|Terminal=true|Terminal=false|g" ~/.local/share/applications/Helix.desktop
+```
+
+Please note: there is no icon for Helix yet, so the system default will be used.
+
## MacOS
Helix can be installed on MacOS through homebrew:
diff --git a/book/src/install.md b/book/src/install.md
index d7a51ac2..136e12c9 100644
--- a/book/src/install.md
+++ b/book/src/install.md
@@ -60,24 +60,40 @@ cargo install --path helix-term
This will install the `hx` binary to `$HOME/.cargo/bin`.
-Helix also needs it's runtime files so make sure to copy/symlink the `runtime/` directory into the
+Helix also needs its runtime files so make sure to copy/symlink the `runtime/` directory into the
config directory (for example `~/.config/helix/runtime` on Linux/macOS). This location can be overridden
via the `HELIX_RUNTIME` environment variable.
-| OS | command |
-|-------------------|-----------|
-|windows(cmd.exe) |`xcopy /e /i runtime %AppData%/helix/runtime` |
-|windows(powershell)|`xcopy /e /i runtime $Env:AppData\helix\runtime` |
-|linux/macos |`ln -s $PWD/runtime ~/.config/helix/runtime`|
+| OS | command |
+| ------------------- | ------------------------------------------------ |
+| windows(cmd.exe) | `xcopy /e /i runtime %AppData%/helix/runtime` |
+| windows(powershell) | `xcopy /e /i runtime $Env:AppData\helix\runtime` |
+| linux/macos | `ln -s $PWD/runtime ~/.config/helix/runtime` |
-## Finishing up the installation
+To use Helix in desktop environments that supports [XDG desktop menu](https://specifications.freedesktop.org/menu-spec/menu-spec-latest.html), including Gnome and KDE, copy the provided `.desktop` file to the correct folder:
+
+```bash
+cp contrib/Helix.desktop ~/.local/share/applications
+```
+
+To use another terminal than the default, you will need to modify the `.desktop` file. For example, to use `kitty`:
+
+```bash
+sed -i "s|Exec=hx %F|Exec=kitty hx %F|g" ~/.local/share/applications/Helix.desktop
+sed -i "s|Terminal=true|Terminal=false|g" ~/.local/share/applications/Helix.desktop
+```
+
+Please note: there is no icon for Helix yet, so the system default will be used.
+
+## Finishing up the installation
+
+To make sure everything is set up as expected you should finally run the helix healthcheck via
-To make sure everything is set up as expected you should finally run the helix healthcheck via
```
hx --health
```
-For more information on the information displayed in the healthcheck results refer to [Healthcheck](https://github.com/helix-editor/helix/wiki/Healthcheck).
+For more information on the information displayed in the health check results refer to [Healthcheck](https://github.com/helix-editor/helix/wiki/Healthcheck).
### Building tree-sitter grammars