{"id":15059029,"url":"https://github.com/bp7968h/helix-rust-fedora","last_synced_at":"2026-01-02T06:12:08.409Z","repository":{"id":255273281,"uuid":"849073140","full_name":"bp7968h/helix-rust-fedora","owner":"bp7968h","description":"Configuration and setup guide for Helix text editor with Rust on Fedora 40. Includes installation steps, configuration files, and tips for optimizing your development environment.","archived":false,"fork":false,"pushed_at":"2024-08-30T22:53:20.000Z","size":13,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-21T04:28:26.625Z","etag":null,"topics":["clippy","configuration","development","fedora","helix","ide","linux","rust","rust-analyzer","rustfmt","setup"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bp7968h.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-08-28T23:37:18.000Z","updated_at":"2024-08-30T22:53:24.000Z","dependencies_parsed_at":"2025-01-21T04:38:01.238Z","dependency_job_id":null,"html_url":"https://github.com/bp7968h/helix-rust-fedora","commit_stats":null,"previous_names":["bp7968h/helix-rust-fedora"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bp7968h%2Fhelix-rust-fedora","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bp7968h%2Fhelix-rust-fedora/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bp7968h%2Fhelix-rust-fedora/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bp7968h%2Fhelix-rust-fedora/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bp7968h","download_url":"https://codeload.github.com/bp7968h/helix-rust-fedora/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243558478,"owners_count":20310574,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["clippy","configuration","development","fedora","helix","ide","linux","rust","rust-analyzer","rustfmt","setup"],"created_at":"2024-09-24T22:35:45.963Z","updated_at":"2026-01-02T06:12:08.383Z","avatar_url":"https://github.com/bp7968h.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Helix Configuration for Rust on Fedora 40\nI have an old laptop and need a lightweight IDE for development. Helix, along with its LSP, is powerful and lightweight (well, rust-analyzer is not, but it still consumes less RAM). It took a bit of time to set up Helix for Rust on Fedora (Linux) and understand the what and how. This repository collects my findings on installing and setting up the Helix text editor for Rust language on Fedora Workstation 40 (can work for most linux distro).\n\n## Helix Installation\nI am using Fedora workstation 40, however Helix is available for all of the OS and distros. Fortunately, it's available to be installed using package manager as well. Refer to the [installtion guide according to os/distro](https://docs.helix-editor.com/package-managers.html)\n1. **Install Helix using Package Manager**\n```bash\nsudo dnf install helix -y\n```  \nThis installs the Helix editor on your system, you can launch Helix using the following command from terminal, or this is available to be launched using app.\n```bash\nhx\nhx \u003cfilename/directory\u003e\n```\nIf you use just `hx`, then you can use the `:open filename` to open that file. This should be visible on the bottom left. The bottom view with all information such as filename, mode, file-type is called *status line*.\n\n2. **Edit Helix Look and Feel**\n\nIf you want to change the look and feel of the helix editor, you now need to add configuration file. When you opened helix for the first time, it initializes `.config/helix` directory on your home directory `~/.`\n  - Create helix config file.\n```bash\ncd ~/.config/helix\nhx config.toml\n```\n  - Add required look and feel.\n\n\u003eNote: You can check theme name from within Helix in runtime use `:theme \u003cthemename\u003e`, in normal mode. Helix gives you auto suggestion for those.\n\nSimply, this config file is used to configure the helix editor, like themes, line numbers, what should appear where etc. For this you can refer to the [`config.toml`](https://github.com/bp7968h/helix-rust-fedora/blob/main/config.toml) given in this repository which can be used as a building block, and you can find more [about each field in this documentation](https://docs.helix-editor.com/configuration.html) \n\n\u003eNow, as Helix editor is working in desired state, now we can configure helix to make our life easier while working with Rust. To check the health and configuration of Rust language support  we can use the following command: In fact, you can use any other language here `hx --health` for all the languages.\n```bash\nhx --health rust\n```\n## Rust Installation\nIf you haven't installed rust then you can install rust following the below process, if you have already got rust then, you also need some toolchain such as:\n  * `rust-analyzer` : Language server for rust, provides feature like code completion, goto definition, and inline documentation.\n  * `clippy` : Clippy is a linter for Rust that helps catch common mistakes and improve code quality.\n  * `rustfmt` : Rustfmt automatically formats your Rust code according to style guidelines.\n1. **Install Rust using Script**\n```bash\ncurl --proto '=https' --tlsv1.2 https://sh.rustup.rs -sSf | sh\n```\nAfter installation you can install additional tools like rust-analyzer, clippy, rustfmt, cargo. These might be already installed with the above script, check using:\n```bash\nrustup component list | grep installed\n```\nIf rust-analyzer (language server), clippy (linter), rustfmt (format code) is not installed then install using the below command:\n```bash\nrustup component add rust-analyzer clippy rustfmt\n```\n\n2. **Setup Helix for Rust**\n\nNow, that you have rust and helix, it's time to configure helix with rust language server, linting and format capabilities. For this, we need `languages.toml` in the `.config/helix` directory.\n  - Create language config file\n```bash\ncd ~/.config/helix\nhx languages.toml\n```\n  - Add required configuration to the files\n\nThis configuration contains settings for language servers and language-specific settings. For this you can refer to the [`languages.toml`](https://github.com/bp7968h/helix-rust-fedora/blob/main/languages.toml) given in this repository which can be used as a building block, and you can find more [about each field in this documentation](https://docs.helix-editor.com/languages.html). Also some of the settings come from rust-analyzer, [check it out here](https://rust-analyzer.github.io/manual.html).\n  - Add debugging capabalities\n\nNow you also need debugging capabilities, for this you need to add `lldb-dap` which is the default debug adapter protocol for rust in helix. Use the below command which installs lldb with this comes lldb-dap.\n```bash\nsudo dnf install lldb\n```\n\nNow when you look into the health of rust using `hx --health rust`, everything should be in place as shown below:\n```bash\nhx --health rust\nConfigured language servers:\n  ✓ rust-analyzer: ~/.cargo/bin/rust-analyzer\nConfigured debug adapter: lldb-dap\nBinary for debug adapter: /usr/bin/lldb-dap\nConfigured formatter: rustfmt\nBinary for formatter: ~/.cargo/bin/rustfmt\nHighlight queries: ✓\nTextobject queries: ✓\nIndent queries: ✓\n```\n\nYou are all set to work on your next big project using helix and rust. \nHappy coding!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbp7968h%2Fhelix-rust-fedora","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbp7968h%2Fhelix-rust-fedora","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbp7968h%2Fhelix-rust-fedora/lists"}