summaryrefslogtreecommitdiff
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
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>
-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 @@
44072 rust-zerotrie-0.2.2 44072 rust-zerotrie-0.2.2
44073 rust-zerovec-0.11.2 44073 rust-zerovec-0.11.2
44074 rust-zerovec-derive-0.11.1)) 44074 rust-zerovec-derive-0.11.1))
44075 (evil-helix =>
44076 (list rust-addr2line-0.22.0
44077 rust-adler-1.0.2
44078 rust-adler2-2.0.0
44079 rust-ahash-0.8.12
44080 rust-aho-corasick-1.1.3
44081 rust-allocator-api2-0.2.18
44082 rust-android-tzdata-0.1.1
44083 rust-android-system-properties-0.1.5
44084 rust-anyhow-1.0.98
44085 rust-arc-swap-1.7.1
44086 rust-autocfg-1.3.0
44087 rust-backtrace-0.3.73
44088 rust-bitflags-2.9.1
44089 rust-block-buffer-0.10.4
44090 rust-bstr-1.12.0
44091 rust-bumpalo-3.16.0
44092 rust-byteorder-1.5.0
44093 rust-bytes-1.7.1
44094 rust-cassowary-0.3.0
44095 rust-cc-1.2.29
44096 rust-cfg-if-1.0.0
44097 rust-chardetng-0.1.17
44098 rust-chrono-0.4.41
44099 rust-clipboard-win-5.4.0
44100 rust-clru-0.6.2
44101 rust-content-inspector-0.2.4
44102 rust-core-foundation-sys-0.8.7
44103 rust-cpufeatures-0.2.17
44104 rust-crc32fast-1.4.2
44105 rust-crossbeam-deque-0.8.5
44106 rust-crossbeam-epoch-0.9.18
44107 rust-crossbeam-utils-0.8.20
44108 rust-crossterm-0.28.1
44109 rust-crossterm-winapi-0.9.1
44110 rust-crypto-common-0.1.6
44111 rust-dashmap-6.1.0
44112 rust-digest-0.10.7
44113 rust-displaydoc-0.2.5
44114 rust-dunce-1.0.5
44115 rust-either-1.13.0
44116 rust-encoding-rs-0.8.35
44117 rust-encoding-rs-io-0.1.7
44118 rust-env-home-0.1.0
44119 rust-equivalent-1.0.1
44120 rust-errno-0.3.10
44121 rust-error-code-3.2.0
44122 rust-etcetera-0.10.0
44123 rust-faster-hex-0.10.0
44124 rust-fastrand-2.1.1
44125 rust-fern-0.7.1
44126 rust-filedescriptor-0.8.2
44127 rust-filetime-0.2.25
44128 rust-flate2-1.1.1
44129 rust-fnv-1.0.7
44130 rust-foldhash-0.1.5
44131 rust-form-urlencoded-1.2.1
44132 rust-futures-core-0.3.31
44133 rust-futures-executor-0.3.31
44134 rust-futures-task-0.3.31
44135 rust-futures-util-0.3.31
44136 rust-generic-array-0.14.7
44137 rust-getrandom-0.2.15
44138 rust-getrandom-0.3.1
44139 rust-gimli-0.29.0
44140 rust-gix-0.72.1
44141 rust-gix-actor-0.35.1
44142 rust-gix-attributes-0.26.0
44143 rust-gix-bitmap-0.2.14
44144 rust-gix-chunk-0.4.11
44145 rust-gix-command-0.6.0
44146 rust-gix-commitgraph-0.28.0
44147 rust-gix-config-0.45.1
44148 rust-gix-config-value-0.15.0
44149 rust-gix-date-0.10.1
44150 rust-gix-diff-0.52.1
44151 rust-gix-dir-0.14.1
44152 rust-gix-discover-0.40.1
44153 rust-gix-features-0.42.1
44154 rust-gix-filter-0.19.1
44155 rust-gix-fs-0.15.0
44156 rust-gix-glob-0.20.0
44157 rust-gix-hash-0.18.0
44158 rust-gix-hashtable-0.8.1
44159 rust-gix-ignore-0.15.0
44160 rust-gix-index-0.40.0
44161 rust-gix-lock-17.1.0
44162 rust-gix-object-0.49.1
44163 rust-gix-odb-0.69.1
44164 rust-gix-pack-0.59.1
44165 rust-gix-packetline-0.19.0
44166 rust-gix-packetline-blocking-0.19.0
44167 rust-gix-path-0.10.17
44168 rust-gix-pathspec-0.11.0
44169 rust-gix-protocol-0.50.1
44170 rust-gix-quote-0.6.0
44171 rust-gix-ref-0.52.1
44172 rust-gix-refspec-0.30.1
44173 rust-gix-revision-0.34.1
44174 rust-gix-revwalk-0.20.1
44175 rust-gix-sec-0.11.0
44176 rust-gix-shallow-0.4.0
44177 rust-gix-status-0.19.1
44178 rust-gix-submodule-0.19.1
44179 rust-gix-tempfile-17.1.0
44180 rust-gix-trace-0.1.12
44181 rust-gix-transport-0.47.0
44182 rust-gix-traverse-0.46.1
44183 rust-gix-url-0.31.0
44184 rust-gix-utils-0.3.0
44185 rust-gix-validate-0.10.0
44186 rust-gix-worktree-0.41.0
44187 rust-globset-0.4.16
44188 rust-grep-matcher-0.1.7
44189 rust-grep-regex-0.1.13
44190 rust-grep-searcher-0.1.14
44191 rust-hash32-0.3.1
44192 rust-hashbrown-0.14.5
44193 rust-hashbrown-0.15.4
44194 rust-heapless-0.8.0
44195 rust-hermit-abi-0.3.9
44196 rust-home-0.5.9
44197 rust-iana-time-zone-0.1.60
44198 rust-iana-time-zone-haiku-0.1.2
44199 rust-icu-collections-1.5.0
44200 rust-icu-locid-1.5.0
44201 rust-icu-locid-transform-1.5.0
44202 rust-icu-locid-transform-data-1.5.0
44203 rust-icu-normalizer-1.5.0
44204 rust-icu-normalizer-data-1.5.0
44205 rust-icu-properties-1.5.1
44206 rust-icu-properties-data-1.5.0
44207 rust-icu-provider-1.5.0
44208 rust-icu-provider-macros-1.5.0
44209 rust-idna-1.0.3
44210 rust-idna-adapter-1.2.0
44211 rust-ignore-0.4.23
44212 rust-imara-diff-0.1.8
44213 rust-imara-diff-0.2.0
44214 rust-indexmap-2.10.0
44215 rust-indoc-2.0.6
44216 rust-io-uring-0.7.8
44217 rust-is-docker-0.2.0
44218 rust-is-wsl-0.4.0
44219 rust-itoa-1.0.11
44220 rust-jiff-0.2.10
44221 rust-jiff-static-0.2.10
44222 rust-jiff-tzdb-0.1.4
44223 rust-jiff-tzdb-platform-0.1.3
44224 rust-js-sys-0.3.70
44225 rust-kstring-2.0.2
44226 rust-libc-0.2.174
44227 rust-libloading-0.8.7
44228 rust-libredox-0.1.3
44229 rust-libz-rs-sys-0.5.0
44230 rust-linux-raw-sys-0.4.14
44231 rust-linux-raw-sys-0.9.2
44232 rust-litemap-0.7.3
44233 rust-lock-api-0.4.13
44234 rust-log-0.4.27
44235 rust-maybe-async-0.2.10
44236 rust-memchr-2.7.4
44237 rust-memmap2-0.9.4
44238 rust-miniz-oxide-0.7.4
44239 rust-miniz-oxide-0.8.7
44240 rust-mio-1.0.2
44241 rust-nucleo-0.5.0
44242 rust-nucleo-matcher-0.3.1
44243 rust-num-traits-0.2.19
44244 rust-num-cpus-1.16.0
44245 rust-object-0.36.4
44246 rust-once-cell-1.21.3
44247 rust-open-5.3.2
44248 rust-parking-lot-0.12.4
44249 rust-parking-lot-core-0.9.11
44250 rust-pathdiff-0.2.1
44251 rust-percent-encoding-2.3.1
44252 rust-pin-project-lite-0.2.14
44253 rust-pin-utils-0.1.0
44254 rust-portable-atomic-1.11.0
44255 rust-portable-atomic-util-0.2.4
44256 rust-proc-macro2-1.0.95
44257 rust-prodash-29.0.2
44258 rust-pulldown-cmark-0.13.0
44259 rust-quickcheck-1.0.3
44260 rust-quote-1.0.40
44261 rust-rand-0.8.5
44262 rust-rand-core-0.6.4
44263 rust-rayon-1.10.0
44264 rust-rayon-core-1.12.1
44265 rust-redox-syscall-0.5.3
44266 rust-regex-1.11.1
44267 rust-regex-automata-0.4.9
44268 rust-regex-cursor-0.1.5
44269 rust-regex-syntax-0.8.5
44270 rust-ropey-1.6.1
44271 rust-rustc-demangle-0.1.24
44272 rust-rustix-0.38.44
44273 rust-rustix-1.0.7
44274 rust-ryu-1.0.18
44275 rust-same-file-1.0.6
44276 rust-scopeguard-1.2.0
44277 rust-serde-1.0.219
44278 rust-serde-derive-1.0.219
44279 rust-serde-json-1.0.140
44280 rust-serde-spanned-0.6.9
44281 rust-sha1-0.10.6
44282 rust-sha1-checked-0.10.0
44283 rust-shell-words-1.1.0
44284 rust-shlex-1.3.0
44285 rust-signal-hook-0.3.18
44286 rust-signal-hook-mio-0.2.4
44287 rust-signal-hook-registry-1.4.2
44288 rust-signal-hook-tokio-0.3.1
44289 rust-slab-0.4.9
44290 rust-slotmap-1.0.7
44291 rust-smallvec-1.15.1
44292 rust-smartstring-1.0.1
44293 rust-smawk-0.3.2
44294 rust-socket2-0.5.7
44295 rust-stable-deref-trait-1.2.0
44296 rust-static-assertions-1.1.0
44297 rust-str-indices-0.4.3
44298 rust-syn-2.0.101
44299 rust-synstructure-0.13.1
44300 rust-tempfile-3.20.0
44301 rust-termini-1.0.0
44302 rust-textwrap-0.16.2
44303 rust-thiserror-1.0.69
44304 rust-thiserror-2.0.12
44305 rust-thiserror-impl-1.0.69
44306 rust-thiserror-impl-2.0.12
44307 rust-threadpool-1.8.1
44308 rust-tinystr-0.7.6
44309 rust-tinyvec-1.8.0
44310 rust-tinyvec-macros-0.1.1
44311 rust-tokio-1.46.1
44312 rust-tokio-macros-2.5.0
44313 rust-tokio-stream-0.1.17
44314 rust-toml-0.8.23
44315 rust-toml-datetime-0.6.11
44316 rust-toml-edit-0.22.27
44317 rust-toml-write-0.1.2
44318 rust-tree-house-0.3.0
44319 rust-tree-house-bindings-0.2.1
44320 rust-typenum-1.18.0
44321 rust-unicase-2.7.0
44322 rust-unicode-bom-2.0.3
44323 rust-unicode-general-category-1.0.0
44324 rust-unicode-ident-1.0.12
44325 rust-unicode-linebreak-0.1.5
44326 rust-unicode-normalization-0.1.23
44327 rust-unicode-segmentation-1.12.0
44328 rust-unicode-width-0.1.12
44329 rust-unicode-width-0.2.0
44330 rust-url-2.5.4
44331 rust-utf16-iter-1.0.5
44332 rust-utf8-iter-1.0.4
44333 rust-version-check-0.9.5
44334 rust-walkdir-2.5.0
44335 rust-wasi-0.11.0+wasi-snapshot-preview1
44336 rust-wasi-0.13.3+wasi-0.2.2
44337 rust-wasm-bindgen-0.2.93
44338 rust-wasm-bindgen-backend-0.2.93
44339 rust-wasm-bindgen-macro-0.2.93
44340 rust-wasm-bindgen-macro-support-0.2.93
44341 rust-wasm-bindgen-shared-0.2.93
44342 rust-which-8.0.0
44343 rust-winapi-0.3.9
44344 rust-winapi-i686-pc-windows-gnu-0.4.0
44345 rust-winapi-util-0.1.9
44346 rust-winapi-x86-64-pc-windows-gnu-0.4.0
44347 rust-windows-core-0.52.0
44348 rust-windows-link-0.1.0
44349 rust-windows-sys-0.52.0
44350 rust-windows-sys-0.59.0
44351 rust-windows-sys-0.60.2
44352 rust-windows-targets-0.52.6
44353 rust-windows-targets-0.53.2
44354 rust-windows-aarch64-gnullvm-0.52.6
44355 rust-windows-aarch64-gnullvm-0.53.0
44356 rust-windows-aarch64-msvc-0.52.6
44357 rust-windows-aarch64-msvc-0.53.0
44358 rust-windows-i686-gnu-0.52.6
44359 rust-windows-i686-gnu-0.53.0
44360 rust-windows-i686-gnullvm-0.52.6
44361 rust-windows-i686-gnullvm-0.53.0
44362 rust-windows-i686-msvc-0.52.6
44363 rust-windows-i686-msvc-0.53.0
44364 rust-windows-x86-64-gnu-0.52.6
44365 rust-windows-x86-64-gnu-0.53.0
44366 rust-windows-x86-64-gnullvm-0.52.6
44367 rust-windows-x86-64-gnullvm-0.53.0
44368 rust-windows-x86-64-msvc-0.52.6
44369 rust-windows-x86-64-msvc-0.53.0
44370 rust-winnow-0.7.10
44371 rust-winsafe-0.0.19
44372 rust-wit-bindgen-rt-0.33.0
44373 rust-write16-1.0.0
44374 rust-writeable-0.5.5
44375 rust-yoke-0.7.4
44376 rust-yoke-derive-0.7.4
44377 rust-zerocopy-0.8.25
44378 rust-zerocopy-derive-0.8.25
44379 rust-zerofrom-0.1.4
44380 rust-zerofrom-derive-0.1.4
44381 rust-zerovec-0.10.4
44382 rust-zerovec-derive-0.10.3
44383 rust-zlib-rs-0.5.0))
44075 (evremap => 44384 (evremap =>
44076 (list rust-aho-corasick-1.1.3 44385 (list rust-aho-corasick-1.1.3
44077 rust-anstream-0.6.18 44386 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 @@
42;;; Copyright © 2025 Andrew Wong <wongandj@icloud.com> 42;;; Copyright © 2025 Andrew Wong <wongandj@icloud.com>
43;;; Copyright © 2025 Junker <dk@junkeria.club> 43;;; Copyright © 2025 Junker <dk@junkeria.club>
44;;; Copyright © 2025 benjamin wil <hey@benjaminwil.info> 44;;; Copyright © 2025 benjamin wil <hey@benjaminwil.info>
45;;; Copyright © 2026 Ignatius Menzies <ignatius.menzies@gmail.com>
45;;; 46;;;
46;;; This file is part of GNU Guix. 47;;; This file is part of GNU Guix.
47;;; 48;;;
@@ -700,6 +701,58 @@ syntax highlighting, tabbed interface, and customizable settings.")
700 (description "A Kakoune / Neovim inspired editor, written in Rust.") 701 (description "A Kakoune / Neovim inspired editor, written in Rust.")
701 (license (list license:mpl2.0)))) 702 (license (list license:mpl2.0))))
702 703
704(define-public evil-helix
705 (package
706 (name "evil-helix")
707 (version "20250915")
708 (source
709 (origin
710 (method git-fetch)
711 (uri (git-reference
712 (url "https://github.com/usagi-flow/evil-helix")
713 (commit (string-append "release-" version))))
714 (file-name (git-file-name name version))
715 (sha256
716 (base32 "117mg4mwib3v57wi8aiyqhlx9dqbmsns218pgxq1dmajjd6qljpa"))))
717 (build-system cargo-build-system)
718 (arguments
719 (list
720 #:install-source? #f
721 #:phases
722 #~(modify-phases %standard-phases
723 (add-after 'unpack 'disable-grammar-build
724 (lambda _
725 (setenv "HELIX_DISABLE_AUTO_GRAMMAR_BUILD" "1")))
726 (replace 'install
727 (lambda _
728 (let* ((bin (string-append #$output "/bin"))
729 (hx (string-append bin "/hx"))
730 (share (string-append #$output "/share/helix"))
731 (runtime (string-append share "/runtime"))
732 (applications (string-append share "/applications")))
733 (install-file "target/release/hx" bin)
734 (install-file "contrib/Helix.desktop" applications)
735 (copy-recursively "runtime" runtime)
736 (wrap-program hx
737 `("HELIX_RUNTIME" prefix
738 (,runtime)))))))))
739 (inputs (cons bash-minimal (cargo-inputs 'evil-helix)))
740 (home-page "https://github.com/usagi-flow/evil-helix")
741 (synopsis "Bringing the Helix editor to the evil side")
742 (description "A soft fork of Helix which introduces keybindings and other
743features to make it more comfortable for Vim users. Changes include:
744@itemize
745@item Vim keybindings
746@item Adjusted behaviours and defaults for Visual line mode
747@item Basic Vim modeline support
748@item Support for colored/rainbow indentation guides
749@item Minimalistic window separator
750@end itemize
751Moreover, evil-helix introduces the @code{editor.evil} option, which is true by
752default. It can be set to false to completely deactivate evil-helix behavior
753without having to use a different build.")
754 (license (list license:mpl2.0))))
755
703(define-public joe 756(define-public joe
704 (package 757 (package
705 (name "joe") 758 (name "joe")