summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorignatiusm <ignatius.menzies@gmail.com>2026-03-11 19:34:50 +1300
committerEfraim Flashner <efraim@flashner.co.il>2026-03-19 12:30:33 +0200
commitc10be9949cc6d27adce3d3bd03fbd985778e2731 (patch)
treef8e4eb6eef49ab8a4ce2d8cc8c26c3e4be0e5425 /gnu
parent0b94b8ad63ff8cc6a1d4d4ca9b6a390d65bbb773 (diff)
gnu: Add evil-helix.
* gnu/packages/text-editors.scm (evil-helix): New variable. Change-Id: Ia8fc30e0478c74a27a1b614d36c3b3ad6a1cf9c6 Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/rust-crates.scm309
-rw-r--r--gnu/packages/text-editors.scm53
2 files changed, 362 insertions, 0 deletions
diff --git a/gnu/packages/rust-crates.scm b/gnu/packages/rust-crates.scm
index ff992f18da0..465888b41c5 100644
--- a/gnu/packages/rust-crates.scm
+++ b/gnu/packages/rust-crates.scm
@@ -44072,6 +44072,315 @@
rust-zerotrie-0.2.2
rust-zerovec-0.11.2
rust-zerovec-derive-0.11.1))
+ (evil-helix =>
+ (list rust-addr2line-0.22.0
+ rust-adler-1.0.2
+ rust-adler2-2.0.0
+ rust-ahash-0.8.12
+ rust-aho-corasick-1.1.3
+ rust-allocator-api2-0.2.18
+ rust-android-tzdata-0.1.1
+ rust-android-system-properties-0.1.5
+ rust-anyhow-1.0.98
+ rust-arc-swap-1.7.1
+ rust-autocfg-1.3.0
+ rust-backtrace-0.3.73
+ rust-bitflags-2.9.1
+ rust-block-buffer-0.10.4
+ rust-bstr-1.12.0
+ rust-bumpalo-3.16.0
+ rust-byteorder-1.5.0
+ rust-bytes-1.7.1
+ rust-cassowary-0.3.0
+ rust-cc-1.2.29
+ rust-cfg-if-1.0.0
+ rust-chardetng-0.1.17
+ rust-chrono-0.4.41
+ rust-clipboard-win-5.4.0
+ rust-clru-0.6.2
+ rust-content-inspector-0.2.4
+ rust-core-foundation-sys-0.8.7
+ rust-cpufeatures-0.2.17
+ rust-crc32fast-1.4.2
+ rust-crossbeam-deque-0.8.5
+ rust-crossbeam-epoch-0.9.18
+ rust-crossbeam-utils-0.8.20
+ rust-crossterm-0.28.1
+ rust-crossterm-winapi-0.9.1
+ rust-crypto-common-0.1.6
+ rust-dashmap-6.1.0
+ rust-digest-0.10.7
+ rust-displaydoc-0.2.5
+ rust-dunce-1.0.5
+ rust-either-1.13.0
+ rust-encoding-rs-0.8.35
+ rust-encoding-rs-io-0.1.7
+ rust-env-home-0.1.0
+ rust-equivalent-1.0.1
+ rust-errno-0.3.10
+ rust-error-code-3.2.0
+ rust-etcetera-0.10.0
+ rust-faster-hex-0.10.0
+ rust-fastrand-2.1.1
+ rust-fern-0.7.1
+ rust-filedescriptor-0.8.2
+ rust-filetime-0.2.25
+ rust-flate2-1.1.1
+ rust-fnv-1.0.7
+ rust-foldhash-0.1.5
+ rust-form-urlencoded-1.2.1
+ rust-futures-core-0.3.31
+ rust-futures-executor-0.3.31
+ rust-futures-task-0.3.31
+ rust-futures-util-0.3.31
+ rust-generic-array-0.14.7
+ rust-getrandom-0.2.15
+ rust-getrandom-0.3.1
+ rust-gimli-0.29.0
+ rust-gix-0.72.1
+ rust-gix-actor-0.35.1
+ rust-gix-attributes-0.26.0
+ rust-gix-bitmap-0.2.14
+ rust-gix-chunk-0.4.11
+ rust-gix-command-0.6.0
+ rust-gix-commitgraph-0.28.0
+ rust-gix-config-0.45.1
+ rust-gix-config-value-0.15.0
+ rust-gix-date-0.10.1
+ rust-gix-diff-0.52.1
+ rust-gix-dir-0.14.1
+ rust-gix-discover-0.40.1
+ rust-gix-features-0.42.1
+ rust-gix-filter-0.19.1
+ rust-gix-fs-0.15.0
+ rust-gix-glob-0.20.0
+ rust-gix-hash-0.18.0
+ rust-gix-hashtable-0.8.1
+ rust-gix-ignore-0.15.0
+ rust-gix-index-0.40.0
+ rust-gix-lock-17.1.0
+ rust-gix-object-0.49.1
+ rust-gix-odb-0.69.1
+ rust-gix-pack-0.59.1
+ rust-gix-packetline-0.19.0
+ rust-gix-packetline-blocking-0.19.0
+ rust-gix-path-0.10.17
+ rust-gix-pathspec-0.11.0
+ rust-gix-protocol-0.50.1
+ rust-gix-quote-0.6.0
+ rust-gix-ref-0.52.1
+ rust-gix-refspec-0.30.1
+ rust-gix-revision-0.34.1
+ rust-gix-revwalk-0.20.1
+ rust-gix-sec-0.11.0
+ rust-gix-shallow-0.4.0
+ rust-gix-status-0.19.1
+ rust-gix-submodule-0.19.1
+ rust-gix-tempfile-17.1.0
+ rust-gix-trace-0.1.12
+ rust-gix-transport-0.47.0
+ rust-gix-traverse-0.46.1
+ rust-gix-url-0.31.0
+ rust-gix-utils-0.3.0
+ rust-gix-validate-0.10.0
+ rust-gix-worktree-0.41.0
+ rust-globset-0.4.16
+ rust-grep-matcher-0.1.7
+ rust-grep-regex-0.1.13
+ rust-grep-searcher-0.1.14
+ rust-hash32-0.3.1
+ rust-hashbrown-0.14.5
+ rust-hashbrown-0.15.4
+ rust-heapless-0.8.0
+ rust-hermit-abi-0.3.9
+ rust-home-0.5.9
+ rust-iana-time-zone-0.1.60
+ rust-iana-time-zone-haiku-0.1.2
+ rust-icu-collections-1.5.0
+ rust-icu-locid-1.5.0
+ rust-icu-locid-transform-1.5.0
+ rust-icu-locid-transform-data-1.5.0
+ rust-icu-normalizer-1.5.0
+ rust-icu-normalizer-data-1.5.0
+ rust-icu-properties-1.5.1
+ rust-icu-properties-data-1.5.0
+ rust-icu-provider-1.5.0
+ rust-icu-provider-macros-1.5.0
+ rust-idna-1.0.3
+ rust-idna-adapter-1.2.0
+ rust-ignore-0.4.23
+ rust-imara-diff-0.1.8
+ rust-imara-diff-0.2.0
+ rust-indexmap-2.10.0
+ rust-indoc-2.0.6
+ rust-io-uring-0.7.8
+ rust-is-docker-0.2.0
+ rust-is-wsl-0.4.0
+ rust-itoa-1.0.11
+ rust-jiff-0.2.10
+ rust-jiff-static-0.2.10
+ rust-jiff-tzdb-0.1.4
+ rust-jiff-tzdb-platform-0.1.3
+ rust-js-sys-0.3.70
+ rust-kstring-2.0.2
+ rust-libc-0.2.174
+ rust-libloading-0.8.7
+ rust-libredox-0.1.3
+ rust-libz-rs-sys-0.5.0
+ rust-linux-raw-sys-0.4.14
+ rust-linux-raw-sys-0.9.2
+ rust-litemap-0.7.3
+ rust-lock-api-0.4.13
+ rust-log-0.4.27
+ rust-maybe-async-0.2.10
+ rust-memchr-2.7.4
+ rust-memmap2-0.9.4
+ rust-miniz-oxide-0.7.4
+ rust-miniz-oxide-0.8.7
+ rust-mio-1.0.2
+ rust-nucleo-0.5.0
+ rust-nucleo-matcher-0.3.1
+ rust-num-traits-0.2.19
+ rust-num-cpus-1.16.0
+ rust-object-0.36.4
+ rust-once-cell-1.21.3
+ rust-open-5.3.2
+ rust-parking-lot-0.12.4
+ rust-parking-lot-core-0.9.11
+ rust-pathdiff-0.2.1
+ rust-percent-encoding-2.3.1
+ rust-pin-project-lite-0.2.14
+ rust-pin-utils-0.1.0
+ rust-portable-atomic-1.11.0
+ rust-portable-atomic-util-0.2.4
+ rust-proc-macro2-1.0.95
+ rust-prodash-29.0.2
+ rust-pulldown-cmark-0.13.0
+ rust-quickcheck-1.0.3
+ rust-quote-1.0.40
+ rust-rand-0.8.5
+ rust-rand-core-0.6.4
+ rust-rayon-1.10.0
+ rust-rayon-core-1.12.1
+ rust-redox-syscall-0.5.3
+ rust-regex-1.11.1
+ rust-regex-automata-0.4.9
+ rust-regex-cursor-0.1.5
+ rust-regex-syntax-0.8.5
+ rust-ropey-1.6.1
+ rust-rustc-demangle-0.1.24
+ rust-rustix-0.38.44
+ rust-rustix-1.0.7
+ rust-ryu-1.0.18
+ rust-same-file-1.0.6
+ rust-scopeguard-1.2.0
+ rust-serde-1.0.219
+ rust-serde-derive-1.0.219
+ rust-serde-json-1.0.140
+ rust-serde-spanned-0.6.9
+ rust-sha1-0.10.6
+ rust-sha1-checked-0.10.0
+ rust-shell-words-1.1.0
+ rust-shlex-1.3.0
+ rust-signal-hook-0.3.18
+ rust-signal-hook-mio-0.2.4
+ rust-signal-hook-registry-1.4.2
+ rust-signal-hook-tokio-0.3.1
+ rust-slab-0.4.9
+ rust-slotmap-1.0.7
+ rust-smallvec-1.15.1
+ rust-smartstring-1.0.1
+ rust-smawk-0.3.2
+ rust-socket2-0.5.7
+ rust-stable-deref-trait-1.2.0
+ rust-static-assertions-1.1.0
+ rust-str-indices-0.4.3
+ rust-syn-2.0.101
+ rust-synstructure-0.13.1
+ rust-tempfile-3.20.0
+ rust-termini-1.0.0
+ rust-textwrap-0.16.2
+ rust-thiserror-1.0.69
+ rust-thiserror-2.0.12
+ rust-thiserror-impl-1.0.69
+ rust-thiserror-impl-2.0.12
+ rust-threadpool-1.8.1
+ rust-tinystr-0.7.6
+ rust-tinyvec-1.8.0
+ rust-tinyvec-macros-0.1.1
+ rust-tokio-1.46.1
+ rust-tokio-macros-2.5.0
+ rust-tokio-stream-0.1.17
+ rust-toml-0.8.23
+ rust-toml-datetime-0.6.11
+ rust-toml-edit-0.22.27
+ rust-toml-write-0.1.2
+ rust-tree-house-0.3.0
+ rust-tree-house-bindings-0.2.1
+ rust-typenum-1.18.0
+ rust-unicase-2.7.0
+ rust-unicode-bom-2.0.3
+ rust-unicode-general-category-1.0.0
+ rust-unicode-ident-1.0.12
+ rust-unicode-linebreak-0.1.5
+ rust-unicode-normalization-0.1.23
+ rust-unicode-segmentation-1.12.0
+ rust-unicode-width-0.1.12
+ rust-unicode-width-0.2.0
+ rust-url-2.5.4
+ rust-utf16-iter-1.0.5
+ rust-utf8-iter-1.0.4
+ rust-version-check-0.9.5
+ rust-walkdir-2.5.0
+ rust-wasi-0.11.0+wasi-snapshot-preview1
+ rust-wasi-0.13.3+wasi-0.2.2
+ rust-wasm-bindgen-0.2.93
+ rust-wasm-bindgen-backend-0.2.93
+ rust-wasm-bindgen-macro-0.2.93
+ rust-wasm-bindgen-macro-support-0.2.93
+ rust-wasm-bindgen-shared-0.2.93
+ rust-which-8.0.0
+ rust-winapi-0.3.9
+ rust-winapi-i686-pc-windows-gnu-0.4.0
+ rust-winapi-util-0.1.9
+ rust-winapi-x86-64-pc-windows-gnu-0.4.0
+ rust-windows-core-0.52.0
+ rust-windows-link-0.1.0
+ rust-windows-sys-0.52.0
+ rust-windows-sys-0.59.0
+ rust-windows-sys-0.60.2
+ rust-windows-targets-0.52.6
+ rust-windows-targets-0.53.2
+ rust-windows-aarch64-gnullvm-0.52.6
+ rust-windows-aarch64-gnullvm-0.53.0
+ rust-windows-aarch64-msvc-0.52.6
+ rust-windows-aarch64-msvc-0.53.0
+ rust-windows-i686-gnu-0.52.6
+ rust-windows-i686-gnu-0.53.0
+ rust-windows-i686-gnullvm-0.52.6
+ rust-windows-i686-gnullvm-0.53.0
+ rust-windows-i686-msvc-0.52.6
+ rust-windows-i686-msvc-0.53.0
+ rust-windows-x86-64-gnu-0.52.6
+ rust-windows-x86-64-gnu-0.53.0
+ rust-windows-x86-64-gnullvm-0.52.6
+ rust-windows-x86-64-gnullvm-0.53.0
+ rust-windows-x86-64-msvc-0.52.6
+ rust-windows-x86-64-msvc-0.53.0
+ rust-winnow-0.7.10
+ rust-winsafe-0.0.19
+ rust-wit-bindgen-rt-0.33.0
+ rust-write16-1.0.0
+ rust-writeable-0.5.5
+ rust-yoke-0.7.4
+ rust-yoke-derive-0.7.4
+ rust-zerocopy-0.8.25
+ rust-zerocopy-derive-0.8.25
+ rust-zerofrom-0.1.4
+ rust-zerofrom-derive-0.1.4
+ rust-zerovec-0.10.4
+ rust-zerovec-derive-0.10.3
+ rust-zlib-rs-0.5.0))
(evremap =>
(list rust-aho-corasick-1.1.3
rust-anstream-0.6.18
diff --git a/gnu/packages/text-editors.scm b/gnu/packages/text-editors.scm
index cca61a8f280..723671e7c8f 100644
--- a/gnu/packages/text-editors.scm
+++ b/gnu/packages/text-editors.scm
@@ -42,6 +42,7 @@
;;; Copyright © 2025 Andrew Wong <wongandj@icloud.com>
;;; Copyright © 2025 Junker <dk@junkeria.club>
;;; Copyright © 2025 benjamin wil <hey@benjaminwil.info>
+;;; Copyright © 2026 Ignatius Menzies <ignatius.menzies@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -700,6 +701,58 @@ syntax highlighting, tabbed interface, and customizable settings.")
(description "A Kakoune / Neovim inspired editor, written in Rust.")
(license (list license:mpl2.0))))
+(define-public evil-helix
+ (package
+ (name "evil-helix")
+ (version "20250915")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/usagi-flow/evil-helix")
+ (commit (string-append "release-" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "117mg4mwib3v57wi8aiyqhlx9dqbmsns218pgxq1dmajjd6qljpa"))))
+ (build-system cargo-build-system)
+ (arguments
+ (list
+ #:install-source? #f
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'disable-grammar-build
+ (lambda _
+ (setenv "HELIX_DISABLE_AUTO_GRAMMAR_BUILD" "1")))
+ (replace 'install
+ (lambda _
+ (let* ((bin (string-append #$output "/bin"))
+ (hx (string-append bin "/hx"))
+ (share (string-append #$output "/share/helix"))
+ (runtime (string-append share "/runtime"))
+ (applications (string-append share "/applications")))
+ (install-file "target/release/hx" bin)
+ (install-file "contrib/Helix.desktop" applications)
+ (copy-recursively "runtime" runtime)
+ (wrap-program hx
+ `("HELIX_RUNTIME" prefix
+ (,runtime)))))))))
+ (inputs (cons bash-minimal (cargo-inputs 'evil-helix)))
+ (home-page "https://github.com/usagi-flow/evil-helix")
+ (synopsis "Bringing the Helix editor to the evil side")
+ (description "A soft fork of Helix which introduces keybindings and other
+features to make it more comfortable for Vim users. Changes include:
+@itemize
+@item Vim keybindings
+@item Adjusted behaviours and defaults for Visual line mode
+@item Basic Vim modeline support
+@item Support for colored/rainbow indentation guides
+@item Minimalistic window separator
+@end itemize
+Moreover, evil-helix introduces the @code{editor.evil} option, which is true by
+default. It can be set to false to completely deactivate evil-helix behavior
+without having to use a different build.")
+ (license (list license:mpl2.0))))
+
(define-public joe
(package
(name "joe")