Build rust-analyzer on FreeBSD.
The official FreeBSD package rust-analyzer crashes. I suspect this is because its built for rust stable which conflicts with the rust-nightly I have installed.
This commit is contained in:
parent
74fb8a3969
commit
ad7fca700d
@ -2,10 +2,28 @@
|
|||||||
(require 'util-tree-sitter)
|
(require 'util-tree-sitter)
|
||||||
|
|
||||||
(defun locate-rust-analyzer ()
|
(defun locate-rust-analyzer ()
|
||||||
|
"Find rust-analyzer."
|
||||||
|
(let ((rust-analyzer-paths (list (locate-rust-analyzer-rustup) (locate-rust-analyzer-ansible-built))))
|
||||||
|
(let ((first-non-nill-path (seq-find (lambda (elt) elt) rust-analyzer-paths)))
|
||||||
|
first-non-nill-path
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
(defun locate-rust-analyzer-rustup ()
|
||||||
"Find rust-analyzer through rustup."
|
"Find rust-analyzer through rustup."
|
||||||
(run-command-in-directory nil "rustup" "which" "rust-analyzer")
|
(run-command-in-directory nil "rustup" "which" "rust-analyzer")
|
||||||
)
|
)
|
||||||
|
|
||||||
|
(defun locate-rust-analyzer-ansible-built ()
|
||||||
|
"Find rust-analyzer where the ansible playbook built it."
|
||||||
|
(let ((rust-analyzer-path "/opt/rust-analyzer/target/release/rust-analyzer"))
|
||||||
|
(when (file-exists-p rust-analyzer-path)
|
||||||
|
rust-analyzer-path
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
(use-package rust-mode
|
(use-package rust-mode
|
||||||
:mode "\\.rs\\'"
|
:mode "\\.rs\\'"
|
||||||
:hook (
|
:hook (
|
||||||
|
@ -2,5 +2,28 @@
|
|||||||
package:
|
package:
|
||||||
name:
|
name:
|
||||||
- rust-nightly
|
- rust-nightly
|
||||||
- rust-analyzer
|
|
||||||
state: present
|
state: present
|
||||||
|
|
||||||
|
- name: Create directories
|
||||||
|
file:
|
||||||
|
name: "{{ item }}"
|
||||||
|
state: directory
|
||||||
|
mode: 0755
|
||||||
|
owner: root
|
||||||
|
group: wheel
|
||||||
|
loop:
|
||||||
|
- "/opt/rust-analyzer"
|
||||||
|
|
||||||
|
- name: Clone rust-analyzer Source
|
||||||
|
git:
|
||||||
|
repo: "https://github.com/rust-lang/rust-analyzer.git"
|
||||||
|
dest: /opt/rust-analyzer
|
||||||
|
version: "2023-05-01"
|
||||||
|
force: true
|
||||||
|
diff: false
|
||||||
|
|
||||||
|
- name: Build rust-analyzer
|
||||||
|
command: "cargo build --release"
|
||||||
|
args:
|
||||||
|
creates: "/opt/rust-analyzer/target/release/rust-analyzer"
|
||||||
|
chdir: /opt/rust-analyzer
|
||||||
|
Loading…
x
Reference in New Issue
Block a user