shells.scm 88 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329
  1. ;;; GNU Guix --- Functional package management for GNU
  2. ;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
  3. ;;; Copyright © 2014, 2015 David Thompson <davet@gnu.org>
  4. ;;; Copyright © 2014 Kevin Lemonnier <lemonnierk@ulrar.net>
  5. ;;; Copyright © 2015 Jeff Mickey <j@codemac.net>
  6. ;;; Copyright © 2016–2021 Tobias Geerinckx-Rice <me@tobias.gr>
  7. ;;; Copyright © 2016 Stefan Reichör <stefan@xsteve.at>
  8. ;;; Copyright © 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
  9. ;;; Copyright © 2017, 2018 Nikita <nikita@n0.is>
  10. ;;; Copyright © 2017, 2018 Leo Famulari <leo@famulari.name>
  11. ;;; Copyright © 2017, 2021 Arun Isaac <arunisaac@systemreboot.net>
  12. ;;; Copyright © 2019 Meiyo Peng <meiyo.peng@gmail.com>
  13. ;;; Copyright © 2019 Timothy Sample <samplet@ngyro.com>
  14. ;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
  15. ;;; Copyright © 2019, 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
  16. ;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
  17. ;;; Copyright © 2020 Ryan Prior <rprior@protonmail.com>
  18. ;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
  19. ;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
  20. ;;; Copyright © 2021 Nicolas Goaziou <mail@nicolasgoaziou.fr>
  21. ;;; Copyright © 2021 Felix Gruber <felgru@posteo.net>
  22. ;;;
  23. ;;; This file is part of GNU Guix.
  24. ;;;
  25. ;;; GNU Guix is free software; you can redistribute it and/or modify it
  26. ;;; under the terms of the GNU General Public License as published by
  27. ;;; the Free Software Foundation; either version 3 of the License, or (at
  28. ;;; your option) any later version.
  29. ;;;
  30. ;;; GNU Guix is distributed in the hope that it will be useful, but
  31. ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
  32. ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  33. ;;; GNU General Public License for more details.
  34. ;;;
  35. ;;; You should have received a copy of the GNU General Public License
  36. ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
  37. (define-module (gnu packages shells)
  38. #:use-module (gnu packages)
  39. #:use-module (gnu packages autotools)
  40. #:use-module (gnu packages base)
  41. #:use-module (gnu packages bash)
  42. #:use-module (gnu packages bison)
  43. #:use-module (gnu packages compression)
  44. #:use-module (gnu packages crates-graphics)
  45. #:use-module (gnu packages crates-io)
  46. #:use-module (gnu packages curl)
  47. #:use-module (gnu packages documentation)
  48. #:use-module (gnu packages groff)
  49. #:use-module (gnu packages guile)
  50. #:use-module (gnu packages libbsd)
  51. #:use-module (gnu packages libedit)
  52. #:use-module (gnu packages linux)
  53. #:use-module (gnu packages ncurses)
  54. #:use-module (gnu packages pcre)
  55. #:use-module (gnu packages perl)
  56. #:use-module (gnu packages pkg-config)
  57. #:use-module (gnu packages python)
  58. #:use-module (gnu packages python-xyz)
  59. #:use-module (gnu packages readline)
  60. #:use-module (gnu packages rust)
  61. #:use-module (gnu packages rust-apps)
  62. #:use-module (gnu packages scheme)
  63. #:use-module (gnu packages tls)
  64. #:use-module (gnu packages version-control)
  65. #:use-module (gnu packages xorg)
  66. #:use-module (guix build-system cargo)
  67. #:use-module (guix build-system cmake)
  68. #:use-module (guix build-system gnu)
  69. #:use-module (guix build-system meson)
  70. #:use-module (guix build-system python)
  71. #:use-module (guix build-system trivial)
  72. #:use-module (guix download)
  73. #:use-module (guix git-download)
  74. #:use-module ((guix licenses) #:prefix license:)
  75. #:use-module (guix packages)
  76. #:use-module (guix utils))
  77. (define-public dash
  78. (package
  79. (name "dash")
  80. (version "0.5.11.5")
  81. (source
  82. (origin
  83. (method url-fetch)
  84. (uri (string-append "http://gondor.apana.org.au/~herbert/dash/files/"
  85. "dash-" version ".tar.gz"))
  86. (sha256
  87. (base32 "1g93w4lpn3jfwn2gaq17a1lxdig11x0j7gr9byc3fy8zi4882xyv"))
  88. (modules '((guix build utils)))
  89. (snippet
  90. '(begin
  91. ;; The man page hails from BSD, where (d)ash is the default shell.
  92. ;; This isn't the case on Guix or indeed most other GNU systems.
  93. (substitute* "src/dash.1"
  94. (("the standard command interpreter for the system")
  95. "a command interpreter based on the original Bourne shell"))
  96. #t))))
  97. (build-system gnu-build-system)
  98. (inputs
  99. `(("libedit" ,libedit)))
  100. (arguments
  101. '(#:configure-flags '("--with-libedit")))
  102. (home-page "http://gondor.apana.org.au/~herbert/dash")
  103. (synopsis "POSIX-compliant shell optimised for size")
  104. (description
  105. "dash is a POSIX-compliant @command{/bin/sh} implementation that aims to be
  106. as small as possible, often without sacrificing speed. It is faster than the
  107. GNU Bourne-Again Shell (@command{bash}) at most scripted tasks. dash is a
  108. direct descendant of NetBSD's Almquist Shell (@command{ash}).")
  109. (license (list license:bsd-3
  110. license:gpl2+)))) ; mksignames.c
  111. (define-public fish
  112. (package
  113. (name "fish")
  114. (version "3.2.2")
  115. (source
  116. (origin
  117. (method url-fetch)
  118. (uri (string-append "https://github.com/fish-shell/fish-shell/"
  119. "releases/download/" version "/"
  120. "fish-" version ".tar.xz"))
  121. (sha256
  122. (base32 "02a0dgz5cy4iv3ysvl5kzzd4ji8pxqv93zd45041plcki0ddli2r"))
  123. (modules '((guix build utils)))
  124. (snippet
  125. '(begin
  126. ;; Remove bundled software.
  127. (delete-file-recursively "pcre2")))))
  128. (build-system cmake-build-system)
  129. (inputs
  130. `(("fish-foreign-env" ,fish-foreign-env)
  131. ("ncurses" ,ncurses)
  132. ("pcre2" ,pcre2) ; don't use the bundled PCRE2
  133. ("python" ,python))) ; for fish_config and manpage completions
  134. (native-inputs
  135. `(("doxygen" ,doxygen)
  136. ("groff" ,groff) ; for 'fish --help'
  137. ("procps" ,procps))) ; for the test suite
  138. (arguments
  139. '(#:phases
  140. (modify-phases %standard-phases
  141. (add-after 'unpack 'set-env
  142. (lambda _
  143. ;; some tests write to $HOME
  144. (setenv "HOME" (getcwd))
  145. #t))
  146. (add-after 'unpack 'patch-tests
  147. (lambda* (#:key inputs #:allow-other-keys)
  148. (let ((coreutils (assoc-ref inputs "coreutils"))
  149. (bash (assoc-ref inputs "bash")))
  150. ;; This test fails.
  151. (delete-file "tests/checks/pipeline-pgroup.fish")
  152. ;; This one tries to open a terminal & can't simply be deleted.
  153. (substitute* "cmake/Tests.cmake"
  154. ((".* interactive\\.fish.*") ""))
  155. ;; This one needs to chdir successfully.
  156. (substitute* "tests/checks/vars_as_commands.fish"
  157. (("/usr/bin") "/tmp"))
  158. ;; These contain absolute path references.
  159. (substitute* "src/fish_tests.cpp"
  160. (("/bin/echo" echo) (string-append coreutils echo))
  161. (("/bin/ca" ca) (string-append coreutils ca))
  162. (("\"(/bin/c)\"" _ c) (string-append "\"" coreutils c "\""))
  163. (("/bin/ls_not_a_path" ls-not-a-path)
  164. (string-append coreutils ls-not-a-path))
  165. (("/bin/ls" ls) (string-append coreutils ls))
  166. (("(/bin/)\"" _ bin) (string-append coreutils bin "\""))
  167. (("/bin -" bin) (string-append coreutils bin))
  168. (((string-append
  169. "do_test\\(is_potential_path\\("
  170. "L\"/usr\", wds, vars, PATH_REQUIRE_DIR\\)\\);"))
  171. "")
  172. ;; Not all mentions of /usr... need to exist, but these do.
  173. (("\"/usr(|/lib)\"" _ subdirectory)
  174. (string-append "\"/tmp" subdirectory "\"")))
  175. (substitute*
  176. (append (find-files "tests" ".*\\.(in|out|err)$")
  177. (find-files "tests/checks" ".*\\.fish"))
  178. (("/bin/pwd" pwd) (string-append coreutils pwd))
  179. (("/bin/echo" echo) (string-append coreutils echo))
  180. (("/bin/sh" sh) (string-append bash sh))
  181. (("/bin/ls" ls) (string-append coreutils ls)))
  182. (substitute* (find-files "tests" ".*\\.(in|out|err)$")
  183. (("/usr/bin") (string-append coreutils "/bin")))
  184. #t)))
  185. ;; Source /etc/fish/config.fish from $__fish_sysconf_dir/config.fish.
  186. (add-after 'patch-tests 'patch-fish-config
  187. (lambda _
  188. (let ((port (open-file "etc/config.fish" "a")))
  189. (display (string-append
  190. "\n\n"
  191. "# Patched by Guix.\n"
  192. "# Source /etc/fish/config.fish.\n"
  193. "if test -f /etc/fish/config.fish\n"
  194. " source /etc/fish/config.fish\n"
  195. "end\n")
  196. port)
  197. (close-port port))
  198. #t))
  199. ;; Embed absolute paths.
  200. (add-before 'install 'embed-absolute-paths
  201. (lambda _
  202. (substitute* "share/functions/__fish_print_help.fish"
  203. (("nroff") (which "nroff")))
  204. #t))
  205. ;; Enable completions, functions and configurations in user's and
  206. ;; system's guix profiles by adding them to __extra_* variables.
  207. (add-before 'install 'patch-fish-extra-paths
  208. (lambda _
  209. (let ((port (open-file "share/__fish_build_paths.fish" "a")))
  210. (display
  211. (string-append
  212. "\n\n"
  213. "# Patched by Guix.\n"
  214. "# Enable completions, functions and configurations in user's"
  215. " and system's guix profiles by adding them to __extra_*"
  216. " variables.\n"
  217. "set -l __guix_profile_paths ~/.guix-profile"
  218. " /run/current-system/profile\n"
  219. "set __extra_completionsdir"
  220. " $__guix_profile_paths\"/etc/fish/completions\""
  221. " $__guix_profile_paths\"/share/fish/vendor_completions.d\""
  222. " $__extra_completionsdir\n"
  223. "set __extra_functionsdir"
  224. " $__guix_profile_paths\"/etc/fish/functions\""
  225. " $__guix_profile_paths\"/share/fish/vendor_functions.d\""
  226. " $__extra_functionsdir\n"
  227. "set __extra_confdir"
  228. " $__guix_profile_paths\"/etc/fish/conf.d\""
  229. " $__guix_profile_paths\"/share/fish/vendor_conf.d\""
  230. " $__extra_confdir\n")
  231. port)
  232. (close-port port))
  233. #t))
  234. ;; Use fish-foreign-env to source /etc/profile.
  235. (add-before 'install 'source-etc-profile
  236. (lambda* (#:key inputs #:allow-other-keys)
  237. (let ((port (open-file "share/__fish_build_paths.fish" "a")))
  238. (display
  239. (string-append
  240. "\n\n"
  241. "# Patched by Guix.\n"
  242. "# Use fish-foreign-env to source /etc/profile.\n"
  243. "if status is-login\n"
  244. " set fish_function_path "
  245. (assoc-ref inputs "fish-foreign-env") "/share/fish/functions"
  246. " $__fish_datadir/functions\n"
  247. " fenv source /etc/profile\n"
  248. " set -e fish_function_path\n"
  249. "end\n")
  250. port)
  251. (close-port port))
  252. #t)))))
  253. (synopsis "The friendly interactive shell")
  254. (description
  255. "Fish (friendly interactive shell) is a shell focused on interactive use,
  256. discoverability, and friendliness. Fish has very user-friendly and powerful
  257. tab-completion, including descriptions of every completion, completion of
  258. strings with wildcards, and many completions for specific commands. It also
  259. has extensive and discoverable help. A special @command{help} command gives
  260. access to all the fish documentation in your web browser. Other features
  261. include smart terminal handling based on terminfo, an easy to search history,
  262. and syntax highlighting.")
  263. (home-page "https://fishshell.com/")
  264. (license license:gpl2)))
  265. (define-public fish-foreign-env
  266. (package
  267. (name "fish-foreign-env")
  268. (version "0.20190116")
  269. (source
  270. (origin
  271. (method git-fetch)
  272. (uri (git-reference
  273. (url "https://github.com/oh-my-fish/plugin-foreign-env")
  274. (commit "dddd9213272a0ab848d474d0cbde12ad034e65bc")))
  275. (file-name (git-file-name name version))
  276. (sha256
  277. (base32 "00xqlyl3lffc5l0viin1nyp819wf81fncqyz87jx8ljjdhilmgbs"))))
  278. (build-system trivial-build-system)
  279. (arguments
  280. '(#:modules ((guix build utils))
  281. #:builder
  282. (begin
  283. (use-modules (guix build utils))
  284. (let* ((source (assoc-ref %build-inputs "source"))
  285. (out (assoc-ref %outputs "out"))
  286. (func-path (string-append out "/share/fish/functions")))
  287. (mkdir-p func-path)
  288. (copy-recursively (string-append source "/functions")
  289. func-path)
  290. ;; Embed absolute paths.
  291. (substitute* `(,(string-append func-path "/fenv.fish")
  292. ,(string-append func-path "/fenv.apply.fish")
  293. ,(string-append func-path "/fenv.main.fish"))
  294. (("bash")
  295. (string-append (assoc-ref %build-inputs "bash") "/bin/bash"))
  296. (("sed")
  297. (string-append (assoc-ref %build-inputs "sed") "/bin/sed"))
  298. ((" tr ")
  299. (string-append " " (assoc-ref %build-inputs "coreutils")
  300. "/bin/tr ")))))))
  301. (inputs
  302. `(("bash" ,bash)
  303. ("coreutils" ,coreutils)
  304. ("sed" ,sed)))
  305. (home-page "https://github.com/oh-my-fish/plugin-foreign-env")
  306. (synopsis "Foreign environment interface for fish shell")
  307. (description "@code{fish-foreign-env} wraps bash script execution in a way
  308. that environment variables that are exported or modified get imported back
  309. into fish.")
  310. (license license:expat)))
  311. (define-public rc
  312. (package
  313. (name "rc")
  314. (version "1.7.4")
  315. (source (origin
  316. (method git-fetch)
  317. (uri (git-reference
  318. (url "https://github.com/rakitzis/rc")
  319. (commit (string-append "v" version))))
  320. (sha256
  321. (base32
  322. "0vj1h4pcg13vxsiydmmk87dr2sra9h4gwx0c4q6fjsiw4in78rrd"))
  323. (file-name (git-file-name name version))))
  324. (build-system gnu-build-system)
  325. (arguments
  326. `(#:configure-flags
  327. '("--with-edit=gnu")
  328. #:phases
  329. (modify-phases %standard-phases
  330. (add-before 'bootstrap 'patch-trip.rc
  331. (lambda _
  332. (substitute* "trip.rc"
  333. (("/bin/pwd") (which "pwd"))
  334. (("/bin/sh") (which "sh"))
  335. (("/bin/rm") (which "rm"))
  336. (("/bin\\)") (string-append (dirname (which "rm")) ")")))
  337. #t)))))
  338. (inputs `(("readline" ,readline)
  339. ("perl" ,perl)))
  340. (native-inputs `(("autoconf" ,autoconf)
  341. ("automake" ,automake)
  342. ("libtool" ,libtool)
  343. ("pkg-config" ,pkg-config)))
  344. (synopsis "Alternative implementation of the rc shell by Byron Rakitzis")
  345. (description
  346. "This is a reimplementation by Byron Rakitzis of the Plan 9 shell. It
  347. has a small feature set similar to a traditional Bourne shell.")
  348. (home-page "https://github.com/rakitzis/rc")
  349. (license license:zlib)))
  350. (define-public es
  351. (package
  352. (name "es")
  353. (version "0.9.1")
  354. (source
  355. (origin
  356. (method url-fetch)
  357. (uri (string-append "https://github.com/wryun/es-shell/releases/"
  358. "download/v" version "/es-" version ".tar.gz"))
  359. (sha256
  360. (base32
  361. "1fplzxc6lncz2lv2fyr2ig23rgg5j96rm2bbl1rs28mik771zd5h"))
  362. (file-name (string-append name "-" version ".tar.gz"))))
  363. (build-system gnu-build-system)
  364. (arguments
  365. `(#:test-target "test"
  366. #:phases
  367. (modify-phases %standard-phases
  368. (add-before 'configure 're-enter-rootdir
  369. ;; The tarball has no folder.
  370. (lambda _
  371. (chdir ".."))))))
  372. (inputs
  373. `(("readline" ,readline)))
  374. (native-inputs
  375. `(("bison" ,bison)))
  376. (synopsis "Extensible shell with higher-order functions")
  377. (description
  378. "Es is an extensible shell. The language was derived from the Plan 9
  379. shell, rc, and was influenced by functional programming languages, such as
  380. Scheme, and the Tcl embeddable programming language. This implementation is
  381. derived from Byron Rakitzis's public domain implementation of rc, and was
  382. written by Paul Haahr and Byron Rakitzis.")
  383. (home-page "https://wryun.github.io/es-shell/")
  384. (license license:public-domain)))
  385. (define-public tcsh
  386. (package
  387. (name "tcsh")
  388. (version "6.22.03")
  389. (source (origin
  390. (method url-fetch)
  391. ;; Old tarballs are moved to old/.
  392. (uri (list (string-append "ftp://ftp.astron.com/pub/tcsh/"
  393. "tcsh-" version ".tar.gz")
  394. (string-append "ftp://ftp.astron.com/pub/tcsh/"
  395. "old/tcsh-" version ".tar.gz")))
  396. (sha256
  397. (base32
  398. "1dv24bsp6faayinvwds092ylk9sb6894rl9ddm87y31a7mjzsb5y"))
  399. (patches (search-patches "tcsh-fix-autotest.patch"))
  400. (patch-flags '("-p0"))))
  401. (build-system gnu-build-system)
  402. (native-inputs
  403. `(("autoconf" ,autoconf)
  404. ("perl" ,perl)))
  405. (inputs
  406. `(("ncurses" ,ncurses)))
  407. (arguments
  408. `(#:phases
  409. (modify-phases %standard-phases
  410. ,@(if (%current-target-system)
  411. '((add-before 'configure 'set-cross-cc
  412. (lambda _
  413. (substitute* "configure"
  414. (("CC_FOR_GETHOST=\"cc\"")
  415. "CC_FOR_GETHOST=\"gcc\""))
  416. #t)))
  417. '())
  418. (add-before 'check 'patch-test-scripts
  419. (lambda _
  420. ;; Take care of pwd
  421. (substitute* '("tests/commands.at" "tests/variables.at")
  422. (("/bin/pwd") (which "pwd")))
  423. (substitute* "Makefile"
  424. ;; Likewise for /usr/bin/env.
  425. (("/usr/bin/env") "env")
  426. ;; Don't reset the environment (PATH, etc).
  427. (("\\$\\(ENVCMD\\) -") "$(ENVCMD)"))
  428. ;; This test does not expect the home directory from
  429. ;; /etc/passwd to be '/'.
  430. (substitute* "tests/subst.at"
  431. (("\\$\\(id -un\\)/foo")
  432. "$(id -un)//foo"))
  433. ;; The .at files create shell scripts without shebangs. Erk.
  434. (substitute* "tests/commands.at"
  435. (("./output.sh") "/bin/sh output.sh"))
  436. (substitute* "tests/syntax.at"
  437. (("; other_script.csh") "; /bin/sh other_script.csh"))
  438. ;; Now, let's generate the test suite and patch it
  439. (invoke "make" "tests/testsuite")
  440. ;; This file is ISO-8859-1 encoded.
  441. (with-fluids ((%default-port-encoding #f))
  442. (substitute* "tests/testsuite"
  443. (("/bin/sh") (which "sh"))))
  444. #t))
  445. (add-after 'install 'post-install
  446. (lambda* (#:key inputs outputs #:allow-other-keys)
  447. (let* ((out (assoc-ref %outputs "out"))
  448. (bin (string-append out "/bin")))
  449. (with-directory-excursion bin
  450. (symlink "tcsh" "csh"))
  451. #t))))))
  452. (home-page "https://www.tcsh.org/")
  453. (synopsis "Unix shell based on csh")
  454. (description
  455. "Tcsh is an enhanced, but completely compatible version of the Berkeley
  456. UNIX C shell (csh). It is a command language interpreter usable both as an
  457. interactive login shell and a shell script command processor. It includes a
  458. command-line editor, programmable word completion, spelling correction, a
  459. history mechanism, job control and a C-like syntax.")
  460. (license license:bsd-4)))
  461. (define-public zsh
  462. (package
  463. (name "zsh")
  464. (version "5.8")
  465. (source (origin
  466. (method url-fetch)
  467. (uri (list (string-append
  468. "https://www.zsh.org/pub/zsh-" version
  469. ".tar.xz")
  470. (string-append
  471. "https://www.zsh.org/pub/old/zsh-" version
  472. ".tar.xz")))
  473. (sha256
  474. (base32
  475. "09yyaadq738zlrnlh1hd3ycj1mv3q5hh4xl1ank70mjnqm6bbi6w"))))
  476. (build-system gnu-build-system)
  477. (arguments `(#:configure-flags
  478. `("--with-tcsetpgrp"
  479. "--enable-pcre"
  480. "--enable-maildir-support"
  481. ;; share/zsh/site-functions isn't populated
  482. "--disable-site-fndir"
  483. ,(string-append
  484. "--enable-additional-fpath="
  485. "/usr/local/share/zsh/site-functions," ; for foreign OS
  486. "/run/current-system/profile/share/zsh/site-functions"))
  487. #:phases
  488. (modify-phases %standard-phases
  489. (add-before 'configure 'fix-sh
  490. (lambda _
  491. ;; Some of the files are ISO-8859-1 encoded.
  492. (with-fluids ((%default-port-encoding #f))
  493. (substitute*
  494. '("configure"
  495. "configure.ac"
  496. "Src/exec.c"
  497. "Src/mkmakemod.sh"
  498. "Config/installfns.sh"
  499. "Config/defs.mk.in"
  500. "Test/E01options.ztst"
  501. "Test/A05execution.ztst"
  502. "Test/A01grammar.ztst"
  503. "Test/A06assign.ztst"
  504. "Test/B02typeset.ztst"
  505. "Completion/Unix/Command/_init_d"
  506. "Util/preconfig")
  507. (("/bin/sh") (which "sh"))))))
  508. (add-before 'check 'patch-test
  509. (lambda _
  510. ;; In Zsh, `command -p` searches a predefined set of
  511. ;; paths that don't exist in the build environment. See
  512. ;; the assignment of 'path' in Src/init.c'
  513. (substitute* "Test/A01grammar.ztst"
  514. (("command -pv") "command -v")
  515. (("command -p") "command ")
  516. (("'command' -p") "'command' "))
  517. #t)))))
  518. (native-inputs `(("autoconf" ,autoconf)))
  519. (inputs `(("ncurses" ,ncurses)
  520. ("pcre" ,pcre)
  521. ("perl" ,perl)))
  522. (synopsis "Powerful shell for interactive use and scripting")
  523. (description "The Z shell (zsh) is a Unix shell that can be used
  524. as an interactive login shell and as a powerful command interpreter
  525. for shell scripting. Zsh can be thought of as an extended Bourne shell
  526. with a large number of improvements, including some features of bash,
  527. ksh, and tcsh.")
  528. (home-page "https://www.zsh.org/")
  529. ;; The whole thing is under an MIT/X11-style license, but there's one
  530. ;; command, 'Completion/Unix/Command/_darcs', which is under GPLv2+.
  531. (license license:gpl2+)))
  532. (define-public xonsh
  533. (package
  534. (name "xonsh")
  535. (version "0.9.27")
  536. (source
  537. (origin
  538. (method url-fetch)
  539. (uri (pypi-uri "xonsh" version))
  540. (sha256
  541. (base32 "1maz7yvb5py91n699yqsna81x2i25mvrqkrcn7h7870nxd87ral2"))
  542. (modules '((guix build utils)))
  543. (snippet
  544. `(begin
  545. ;; Delete bundled PLY.
  546. (delete-file-recursively "xonsh/ply")
  547. (substitute* "setup.py"
  548. (("\"xonsh\\.ply\\.ply\",") ""))
  549. ;; Use our properly packaged PLY instead.
  550. (substitute* (list "setup.py"
  551. "tests/test_lexer.py"
  552. "xonsh/__amalgam__.py"
  553. "xonsh/lexer.py"
  554. "xonsh/parsers/base.py"
  555. "xonsh/xonfig.py")
  556. (("from xonsh\\.ply\\.(.*) import" _ module)
  557. (format #f "from ~a import" module))
  558. (("from xonsh\\.ply import") "import"))
  559. #t))))
  560. (build-system python-build-system)
  561. (arguments
  562. '(;; TODO Try running run the test suite.
  563. ;; See 'requirements-tests.txt' in the source distribution for more
  564. ;; information.
  565. #:tests? #f))
  566. (inputs
  567. `(("python-ply" ,python-ply)))
  568. (home-page "https://xon.sh/")
  569. (synopsis "Python-ish shell")
  570. (description
  571. "Xonsh is a Python-ish, BASHwards-looking shell language and command
  572. prompt. The language is a superset of Python 3.4+ with additional shell
  573. primitives that you are used to from Bash and IPython. It works on all major
  574. systems including Linux, Mac OSX, and Windows. Xonsh is meant for the daily
  575. use of experts and novices alike.")
  576. (license license:bsd-2)))
  577. (define-public scsh
  578. (let ((commit "114432435e4eadd54334df6b37fcae505079b49f")
  579. (revision "1"))
  580. (package
  581. (name "scsh")
  582. (version (string-append "0.0.0-" revision "." (string-take commit 7)))
  583. (source
  584. (origin
  585. (method git-fetch)
  586. (uri (git-reference
  587. (url "https://github.com/scheme/scsh")
  588. (commit commit)))
  589. (file-name (string-append name "-" version "-checkout"))
  590. (sha256
  591. (base32
  592. "1ghk08akiz7hff1pndi8rmgamgcrn2mv9asbss9l79d3c2iaav3q"))))
  593. (build-system gnu-build-system)
  594. (arguments
  595. `(#:test-target "test"
  596. #:phases
  597. (modify-phases %standard-phases
  598. (add-before 'configure 'replace-rx
  599. (lambda* (#:key inputs #:allow-other-keys)
  600. (let* ((rx (assoc-ref inputs "scheme48-rx"))
  601. (rxpath (string-append rx "/share/scheme48-"
  602. ,(package-version scheme48)
  603. "/rx")))
  604. (delete-file-recursively "rx")
  605. (symlink rxpath "rx"))
  606. #t)))))
  607. (inputs
  608. `(("scheme48" ,scheme48)
  609. ("scheme48-rx" ,scheme48-rx)))
  610. (native-inputs
  611. `(("autoconf" ,autoconf)
  612. ("automake" ,automake)))
  613. (home-page "https://github.com/scheme/scsh")
  614. (synopsis "Unix shell embedded in Scheme")
  615. (description
  616. "Scsh is a Unix shell embedded in Scheme. Scsh has two main
  617. components: a process notation for running programs and setting up pipelines
  618. and redirections, and a complete syscall library for low-level access to the
  619. operating system.")
  620. (license license:bsd-3))))
  621. (define-public linenoise
  622. (let ((commit "2105ce445821381cf1bca87b6d386d4ea88ee20d")
  623. (revision "1"))
  624. (package
  625. (name "linenoise")
  626. (version (string-append "1.0-" revision "." (string-take commit 7)))
  627. (source
  628. (origin
  629. (method git-fetch)
  630. (uri (git-reference
  631. (url "https://github.com/antirez/linenoise")
  632. (commit commit)))
  633. (file-name (string-append name "-" version "-checkout"))
  634. (sha256
  635. (base32
  636. "1z16qwix8z6a40fskdgxsibkqgdrp4q6ncp4n6hnv4r9iihy2d8r"))))
  637. (build-system gnu-build-system)
  638. (arguments
  639. `(#:tests? #f ; no tests are included
  640. #:make-flags
  641. (list ,(string-append "CC=" (cc-for-target)))
  642. #:phases
  643. (modify-phases %standard-phases
  644. (delete 'configure)
  645. (replace 'install
  646. (lambda* (#:key outputs #:allow-other-keys)
  647. ;; At the moment there is no 'make install' in upstream.
  648. (let* ((out (assoc-ref outputs "out")))
  649. (install-file "linenoise.h"
  650. (string-append out "/include/linenoise"))
  651. (install-file "linenoise.c"
  652. (string-append out "/include/linenoise"))
  653. #t))))))
  654. (home-page "https://github.com/antirez/linenoise")
  655. (synopsis "Minimal zero-config readline replacement")
  656. (description
  657. "Linenoise is a minimal, zero-config, readline replacement.
  658. Its features include:
  659. @enumerate
  660. @item Single and multi line editing mode with the usual key bindings
  661. @item History handling
  662. @item Completion
  663. @item Hints (suggestions at the right of the prompt as you type)
  664. @item A subset of VT100 escapes, ANSI.SYS compatible
  665. @end enumerate\n")
  666. (license license:bsd-2))))
  667. (define-public s-shell
  668. (let ((commit "da2e5c20c0c5f477ec3426dc2584889a789b1659")
  669. (revision "2"))
  670. (package
  671. (name "s-shell")
  672. (version (git-version "0.0.0" revision commit))
  673. (source
  674. (origin
  675. (method git-fetch)
  676. (uri (git-reference
  677. (url "https://github.com/rain-1/s")
  678. (commit commit)))
  679. (file-name (string-append name "-" version "-checkout"))
  680. (sha256
  681. (base32
  682. "0qiny71ww5nhzy4mnc8652hn0mlxyb67h333gbdxp4j4qxsi13q4"))))
  683. (build-system gnu-build-system)
  684. (inputs
  685. `(("linenoise" ,linenoise)))
  686. (arguments
  687. `(#:tests? #f
  688. #:make-flags (list "CC=gcc"
  689. (string-append "PREFIX="
  690. (assoc-ref %outputs "out")))
  691. #:phases
  692. (modify-phases %standard-phases
  693. (add-after 'unpack 'install-directory-fix
  694. (lambda* (#:key outputs #:allow-other-keys)
  695. (let* ((out (assoc-ref outputs "out"))
  696. (bin (string-append out "/bin")))
  697. (substitute* "Makefile"
  698. (("out") bin))
  699. #t)))
  700. (add-after 'install 'manpage
  701. (lambda* (#:key outputs #:allow-other-keys)
  702. (install-file "s.1" (string-append (assoc-ref outputs "out")
  703. "/share/man/man1"))))
  704. (replace 'configure
  705. (lambda* (#:key inputs outputs #:allow-other-keys)
  706. ;; At this point linenoise is meant to be included,
  707. ;; so we have to really copy it into the working directory
  708. ;; of s.
  709. (let* ((linenoise (assoc-ref inputs "linenoise"))
  710. (noisepath (string-append linenoise "/include/linenoise"))
  711. (out (assoc-ref outputs "out")))
  712. (copy-recursively noisepath "linenoise")
  713. (substitute* "s.c"
  714. (("/bin/s") (string-append out "/bin/s")))
  715. #t))))))
  716. (home-page "https://github.com/rain-1/s")
  717. (synopsis "Extremely minimal shell with the simplest syntax possible")
  718. (description
  719. "S is a new shell that aims to be extremely simple. It does not
  720. implement the POSIX shell standard.
  721. There are no globs or \"splatting\" where a variable $FOO turns into multiple
  722. command line arguments. One token stays one token forever.
  723. This is a \"no surprises\" straightforward approach.
  724. There are no redirection operators > in the shell language, they are added as
  725. extra programs. > is just another unix command, < is essentially cat(1).
  726. A @code{andglob} program is also provided along with s.")
  727. (license license:bsd-3))))
  728. (define-public oksh
  729. (package
  730. (name "oksh")
  731. (version "0.5.9")
  732. (source
  733. (origin
  734. (method url-fetch)
  735. (uri (string-append "https://connochaetos.org/oksh/oksh-"
  736. version ".tar.gz"))
  737. (sha256
  738. (base32
  739. "0ln9yf6pxngsviqszv8klnnvn8vcpplvj1njdn8xr2y8frkbw8r3"))))
  740. (build-system gnu-build-system)
  741. (arguments
  742. `(; The test files are not part of the distributed tarball.
  743. #:tests? #f))
  744. (home-page "https://connochaetos.org/oksh")
  745. (synopsis "Port of OpenBSD Korn Shell")
  746. (description
  747. "Oksh is a port of the OpenBSD Korn Shell.
  748. The OpenBSD Korn Shell is a cleaned up and enhanced ksh.")
  749. (license license:gpl3+)))
  750. (define-public loksh
  751. (package
  752. (name "loksh")
  753. (version "6.9")
  754. (source
  755. (origin
  756. (method git-fetch)
  757. (uri (git-reference
  758. (url "https://github.com/dimkr/loksh")
  759. (commit version)
  760. ;; Include the ‘lolibc’ submodule, a static compatibility library
  761. ;; created for and currently used only by loksh.
  762. (recursive? #t)))
  763. (file-name (git-file-name name version))
  764. (sha256
  765. (base32 "0x33plxqhh5202hgqidgccz5hpg8d2q71ylgnm437g60mfi9z0px"))))
  766. (build-system meson-build-system)
  767. (inputs
  768. `(("ncurses" ,ncurses)))
  769. (native-inputs
  770. `(("pkg-config" ,pkg-config)))
  771. (arguments
  772. `(#:tests? #f)) ; no tests included
  773. (home-page "https://github.com/dimkr/loksh")
  774. (synopsis "Korn Shell from OpenBSD")
  775. (description
  776. "loksh is a Linux port of OpenBSD's @command{ksh}. It is a small,
  777. interactive POSIX shell targeted at resource-constrained systems.")
  778. ;; The file 'LEGAL' says it is the public domain, and the 2
  779. ;; exceptions which are listed are not included in this port.
  780. (license license:public-domain)))
  781. (define-public mksh
  782. (package
  783. (name "mksh")
  784. (version "58")
  785. (source
  786. (origin
  787. (method url-fetch)
  788. (uri (string-append "https://www.mirbsd.org/MirOS/dist/mir/mksh/mksh-R"
  789. version ".tgz"))
  790. (sha256
  791. (base32 "1337zjvzh14yncg9igdry904a3ns52l8rnm1kcq262w7f5xyp2v0"))))
  792. (build-system gnu-build-system)
  793. (arguments
  794. `(#:tests? #f ; tests require access to /dev/tty
  795. #:phases
  796. (modify-phases %standard-phases
  797. (delete 'configure)
  798. (replace 'build
  799. (lambda _
  800. (setenv "CC" "gcc")
  801. (invoke (which "sh") "Build.sh")))
  802. (replace 'install
  803. (lambda* (#:key outputs #:allow-other-keys)
  804. (let* ((out (assoc-ref outputs "out"))
  805. (bin (string-append out "/bin"))
  806. (man (string-append out "/share/man/man1")))
  807. (install-file "mksh" bin)
  808. (with-directory-excursion bin
  809. (symlink "mksh" "ksh"))
  810. (install-file "mksh.1" man)
  811. #t))))))
  812. (home-page "https://www.mirbsd.org/mksh.htm")
  813. (synopsis "Korn Shell from MirBSD")
  814. (description "mksh is an actively developed free implementation of the
  815. Korn Shell programming language and a successor to the Public Domain Korn
  816. Shell (pdksh).")
  817. (license (list license:miros
  818. license:isc)))) ; strlcpy.c
  819. (define-public oil
  820. (package
  821. (name "oil")
  822. (version "0.9.0")
  823. (source
  824. (origin
  825. (method url-fetch)
  826. (uri (string-append "https://www.oilshell.org/download/oil-"
  827. version ".tar.gz"))
  828. (sha256
  829. (base32 "0jm9bmjhdpa30i16glssp735f4yqijl1zkmyywifkpxis4kwmqkg"))))
  830. (build-system gnu-build-system)
  831. (arguments
  832. `(#:strip-binaries? #f ; strip breaks the binary
  833. #:phases
  834. (modify-phases %standard-phases
  835. (replace 'configure
  836. (lambda* (#:key outputs #:allow-other-keys)
  837. (let ((out (assoc-ref outputs "out")))
  838. (setenv "CC" ,(cc-for-target))
  839. (substitute* "configure"
  840. ((" cc ") " $CC "))
  841. (invoke "./configure" (string-append "--prefix=" out)
  842. "--with-readline"))))
  843. (replace 'check
  844. ;; The tests are not distributed in the tarballs but upstream
  845. ;; recommends running this smoke test.
  846. ;; https://github.com/oilshell/oil/blob/release/0.8.0/INSTALL.txt#L38-L48
  847. (lambda* (#:key tests? #:allow-other-keys)
  848. (when tests?
  849. (let* ((oil "_bin/oil.ovm"))
  850. (invoke/quiet oil "osh" "-c" "echo hi")
  851. (invoke/quiet oil "osh" "-n" "configure"))))))))
  852. (inputs
  853. `(("readline" ,readline)))
  854. (home-page "https://www.oilshell.org")
  855. (synopsis "Programming language and Bash-compatible Unix shell")
  856. (description "Oil is a programming language with automatic translation for
  857. Bash. It includes osh, a Unix/POSIX shell that runs unmodified Bash
  858. scripts.")
  859. (license (list license:psfl ; tarball includes python2.7
  860. license:asl2.0))))
  861. (define-public oil-shell
  862. (deprecated-package "oil-shell" oil))
  863. (define-public gash
  864. (package
  865. (name "gash")
  866. (version "0.2.0")
  867. (source
  868. (origin (method url-fetch)
  869. (uri (string-append "mirror://savannah/gash/gash-"
  870. version ".tar.gz"))
  871. (sha256
  872. (base32
  873. "13m0yz5h9nj3x40mr6wr5xcpq1lscndfwcicw3skrz801025hhgf"))
  874. (modules '((guix build utils)))
  875. (snippet
  876. '(begin
  877. ;; Allow builds with Guile 3.0.
  878. (substitute* "configure"
  879. (("search=\"2\\.2 2\\.0\"")
  880. "search=\"3.0 2.2 2.0\""))
  881. #t))))
  882. (build-system gnu-build-system)
  883. (native-inputs
  884. `(("pkg-config" ,pkg-config)))
  885. (inputs
  886. `(("guile" ,guile-3.0)))
  887. (arguments
  888. '(#:make-flags '("XFAIL_TESTS=tests/redirects.org")))
  889. (home-page "https://savannah.nongnu.org/projects/gash/")
  890. (synopsis "POSIX-compatible shell written in Guile Scheme")
  891. (description "Gash is a POSIX-compatible shell written in Guile
  892. Scheme. It provides both the shell interface, as well as a Guile
  893. library for parsing shell scripts. Gash is designed to bootstrap Bash
  894. as part of the Guix bootstrap process.")
  895. (license license:gpl3+)))
  896. (define-public gash-utils
  897. (package
  898. (name "gash-utils")
  899. (version "0.1.0")
  900. (source (origin
  901. (method url-fetch)
  902. (uri (string-append "mirror://savannah/gash/gash-utils-"
  903. version ".tar.gz"))
  904. (sha256
  905. (base32
  906. "0ib2p52qmbac5n0s5bys4fiwim461ps546976l1n7pwbs0avh7fk"))
  907. (patches (search-patches "gash-utils-ls-test.patch"))
  908. (modules '((guix build utils)))
  909. (snippet
  910. '(begin
  911. ;; Allow builds with Guile 3.0.
  912. (substitute* "configure"
  913. (("search=\"2\\.2 2\\.0\"")
  914. "search=\"3.0 2.2 2.0\""))
  915. #t))))
  916. (build-system gnu-build-system)
  917. (native-inputs
  918. `(("pkg-config" ,pkg-config)))
  919. (inputs
  920. `(("guile" ,guile-3.0)
  921. ("gash" ,gash)))
  922. (home-page "https://savannah.nongnu.org/projects/gash/")
  923. (synopsis "Core POSIX utilities written in Guile Scheme")
  924. (description "Gash-Utils provides Scheme implementations of many
  925. common POSIX utilities (there are about 40 of them, ranging in
  926. complexity from @command{false} to @command{awk}). The utilities are
  927. designed to be capable of bootstrapping their standard GNU counterparts.
  928. Underpinning these utilities are many Scheme interfaces for manipulating
  929. files and text.")
  930. (license license:gpl3+)))
  931. (define-public nushell
  932. (package
  933. (name "nushell")
  934. (version "0.36.0")
  935. (source
  936. (origin
  937. (method git-fetch)
  938. (uri (git-reference
  939. (url "https://github.com/nushell/nushell")
  940. (commit version)))
  941. (file-name (git-file-name name version))
  942. (sha256
  943. (base32 "1db521jrs0yxwmvkkl8wssa8qyi0m62n69l7xxl2gpyz1v8nvw76"))))
  944. (build-system cargo-build-system)
  945. (arguments
  946. `(#:rust ,rust-1.52
  947. #:tests? #false ;missing files
  948. #:features '("extra")
  949. #:cargo-inputs
  950. (("rust-ctrlc" ,rust-ctrlc-3)
  951. ("rust-futures" ,rust-futures-0.3)
  952. ("rust-itertools" ,rust-itertools-0.10)
  953. ("rust-mp4" ,rust-mp4-0.8)
  954. ("rust-nu-cli" ,rust-nu-cli-0.36)
  955. ("rust-nu-command" ,rust-nu-command-0.36)
  956. ("rust-nu-completion" ,rust-nu-completion-0.36)
  957. ("rust-nu-data" ,rust-nu-data-0.36)
  958. ("rust-nu-engine" ,rust-nu-engine-0.36)
  959. ("rust-nu-errors" ,rust-nu-errors-0.36)
  960. ("rust-nu-parser" ,rust-nu-parser-0.36)
  961. ("rust-nu-path" ,rust-nu-path-0.36)
  962. ("rust-nu-plugin" ,rust-nu-plugin-0.36)
  963. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  964. ("rust-nu-source" ,rust-nu-source-0.36)
  965. ("rust-nu-value-ext" ,rust-nu-value-ext-0.36)
  966. ("rust-nu-plugin-binaryview"
  967. ,rust-nu-plugin-binaryview-0.36)
  968. ("rust-nu-plugin-chart"
  969. ,rust-nu-plugin-chart-0.36)
  970. ("rust-nu-plugin-fetch"
  971. ,rust-nu-plugin-fetch-0.36)
  972. ("rust-nu-plugin-from-bson"
  973. ,rust-nu-plugin-from-bson-0.36)
  974. ("rust-nu-plugin-from-sqlite"
  975. ,rust-nu-plugin-from-sqlite-0.36)
  976. ("rust-nu-plugin-inc" ,rust-nu-plugin-inc-0.36)
  977. ("rust-nu-plugin-match"
  978. ,rust-nu-plugin-match-0.36)
  979. ("rust-nu-plugin-post" ,rust-nu-plugin-post-0.36)
  980. ("rust-nu-plugin-ps" ,rust-nu-plugin-ps-0.36)
  981. ("rust-nu-plugin-query-json"
  982. ,rust-nu-plugin-query-json-0.36)
  983. ("rust-nu-plugin-s3" ,rust-nu-plugin-s3-0.36)
  984. ("rust-nu-plugin-selector"
  985. ,rust-nu-plugin-selector-0.36)
  986. ("rust-nu-plugin-start"
  987. ,rust-nu-plugin-start-0.36)
  988. ("rust-nu-plugin-sys" ,rust-nu-plugin-sys-0.36)
  989. ("rust-nu-plugin-textview"
  990. ,rust-nu-plugin-textview-0.36)
  991. ("rust-nu-plugin-to-bson"
  992. ,rust-nu-plugin-to-bson-0.36)
  993. ("rust-nu-plugin-to-sqlite"
  994. ,rust-nu-plugin-to-sqlite-0.36)
  995. ("rust-nu-plugin-tree" ,rust-nu-plugin-tree-0.36)
  996. ("rust-nu-plugin-xpath"
  997. ,rust-nu-plugin-xpath-0.36))
  998. #:cargo-development-inputs
  999. (("rust-dunce" ,rust-dunce-1)
  1000. ("rust-hamcrest2" ,rust-hamcrest2-0.3)
  1001. ("rust-nu-test-support"
  1002. ,rust-nu-test-support-0.36)
  1003. ("rust-rstest" ,rust-rstest-0.10)
  1004. ("rust-serial-test" ,rust-serial-test-0.5))))
  1005. (native-inputs
  1006. `(("pkg-config" ,pkg-config)
  1007. ("python" ,python)))
  1008. (inputs
  1009. `(("curl" ,curl)
  1010. ("libgit2" ,libgit2)
  1011. ("libx11" ,libx11)
  1012. ("libxcb" ,libxcb)
  1013. ("openssl" ,openssl)
  1014. ("zlib" ,zlib)))
  1015. (home-page "https://www.nushell.sh")
  1016. (synopsis "Shell that understands the structure of the data")
  1017. (description
  1018. "Nu draws inspiration from projects like PowerShell, functional
  1019. programming languages, and modern CLI tools. Rather than thinking of files
  1020. and services as raw streams of text, Nu looks at each input as something with
  1021. structure. For example, when you list the contents of a directory, what you
  1022. get back is a table of rows, where each row represents an item in that
  1023. directory. These values can be piped through a series of steps, in a series
  1024. of commands called a ``pipeline''.")
  1025. (license license:expat)))
  1026. (define-public rust-nu-ansi-term-0.36
  1027. (package
  1028. (name "rust-nu-ansi-term")
  1029. (version "0.36.0")
  1030. (source
  1031. (origin
  1032. (method url-fetch)
  1033. (uri (crate-uri "nu-ansi-term" version))
  1034. (file-name (string-append name "-" version ".tar.gz"))
  1035. (sha256
  1036. (base32 "0p68s0djx4xr93vn7lh8774srazjw4dxsi3px8c8mbv0a4ixg5wr"))))
  1037. (build-system cargo-build-system)
  1038. (arguments
  1039. `(#:skip-build? #t
  1040. #:cargo-inputs
  1041. (("rust-itertools" ,rust-itertools-0.10)
  1042. ("rust-overload" ,rust-overload-0.1)
  1043. ("rust-serde" ,rust-serde-1)
  1044. ("rust-winapi" ,rust-winapi-0.3))))
  1045. (home-page "https://www.nushell.sh")
  1046. (synopsis "Library for ANSI terminal colors and styles (bold, underline)")
  1047. (description
  1048. "This package is a library for ANSI terminal colors and styles (bold,
  1049. underline).")
  1050. (license license:expat)))
  1051. (define-public rust-nu-cli-0.36
  1052. (package
  1053. (name "rust-nu-cli")
  1054. (version "0.36.0")
  1055. (source
  1056. (origin
  1057. (method url-fetch)
  1058. (uri (crate-uri "nu-cli" version))
  1059. (file-name (string-append name "-" version ".tar.gz"))
  1060. (sha256
  1061. (base32 "1zb6x6knn1hrpkyryniq73vkrgg9arqnxy50klm8963dnq49082v"))))
  1062. (build-system cargo-build-system)
  1063. (arguments
  1064. `(#:skip-build? #t
  1065. #:cargo-inputs
  1066. (("rust-ctrlc" ,rust-ctrlc-3)
  1067. ("rust-indexmap" ,rust-indexmap-1)
  1068. ("rust-lazy-static" ,rust-lazy-static-1)
  1069. ("rust-log" ,rust-log-0.4)
  1070. ("rust-nu-ansi-term" ,rust-nu-ansi-term-0.36)
  1071. ("rust-nu-command" ,rust-nu-command-0.36)
  1072. ("rust-nu-completion" ,rust-nu-completion-0.36)
  1073. ("rust-nu-data" ,rust-nu-data-0.36)
  1074. ("rust-nu-engine" ,rust-nu-engine-0.36)
  1075. ("rust-nu-errors" ,rust-nu-errors-0.36)
  1076. ("rust-nu-parser" ,rust-nu-parser-0.36)
  1077. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  1078. ("rust-nu-source" ,rust-nu-source-0.36)
  1079. ("rust-nu-stream" ,rust-nu-stream-0.36)
  1080. ("rust-pretty-env-logger"
  1081. ,rust-pretty-env-logger-0.4)
  1082. ("rust-rustyline" ,rust-rustyline-9)
  1083. ("rust-serde" ,rust-serde-1)
  1084. ("rust-serde-yaml" ,rust-serde-yaml-0.8)
  1085. ("rust-shadow-rs" ,rust-shadow-rs-0.6)
  1086. ("rust-shadow-rs" ,rust-shadow-rs-0.6)
  1087. ("rust-strip-ansi-escapes"
  1088. ,rust-strip-ansi-escapes-0.1))))
  1089. (home-page "https://www.nushell.sh")
  1090. (synopsis "CLI for nushell")
  1091. (description "CLI for nushell")
  1092. (license license:expat)))
  1093. (define-public rust-nu-command-0.36
  1094. (package
  1095. (name "rust-nu-command")
  1096. (version "0.36.0")
  1097. (source
  1098. (origin
  1099. (method url-fetch)
  1100. (uri (crate-uri "nu-command" version))
  1101. (file-name (string-append name "-" version ".tar.gz"))
  1102. (sha256
  1103. (base32 "0690iw3wn0jas04471dyvsqswbwxpab2qp2r3r5ma0za98s4p3ry"))))
  1104. (build-system cargo-build-system)
  1105. (arguments
  1106. `(#:skip-build? #t
  1107. #:cargo-inputs
  1108. (("rust-arboard" ,rust-arboard-1)
  1109. ("rust-base64" ,rust-base64-0.13)
  1110. ("rust-bigdecimal-rs" ,rust-bigdecimal-rs-0.2)
  1111. ("rust-byte-unit" ,rust-byte-unit-4)
  1112. ("rust-bytes" ,rust-bytes-1)
  1113. ("rust-calamine" ,rust-calamine-0.18)
  1114. ("rust-chrono" ,rust-chrono-0.4)
  1115. ("rust-chrono-tz" ,rust-chrono-tz-0.5)
  1116. ("rust-codespan-reporting"
  1117. ,rust-codespan-reporting-0.11)
  1118. ("rust-crossterm" ,rust-crossterm-0.19)
  1119. ("rust-csv" ,rust-csv-1)
  1120. ("rust-ctrlc" ,rust-ctrlc-3)
  1121. ("rust-derive-new" ,rust-derive-new-0.5)
  1122. ("rust-digest" ,rust-digest-0.9)
  1123. ("rust-directories-next"
  1124. ,rust-directories-next-2)
  1125. ("rust-dirs-next" ,rust-dirs-next-2)
  1126. ("rust-dtparse" ,rust-dtparse-1)
  1127. ("rust-dunce" ,rust-dunce-1)
  1128. ("rust-eml-parser" ,rust-eml-parser-0.1)
  1129. ("rust-encoding-rs" ,rust-encoding-rs-0.8)
  1130. ("rust-filesize" ,rust-filesize-0.2)
  1131. ("rust-fs-extra" ,rust-fs-extra-1)
  1132. ("rust-futures" ,rust-futures-0.3)
  1133. ("rust-getset" ,rust-getset-0.1)
  1134. ("rust-glob" ,rust-glob-0.3)
  1135. ("rust-htmlescape" ,rust-htmlescape-0.3)
  1136. ("rust-ical" ,rust-ical-0.7)
  1137. ("rust-indexmap" ,rust-indexmap-1)
  1138. ("rust-inflector" ,rust-inflector-0.11)
  1139. ("rust-itertools" ,rust-itertools-0.10)
  1140. ("rust-lazy-static" ,rust-lazy-static-1)
  1141. ("rust-log" ,rust-log-0.4)
  1142. ("rust-md-5" ,rust-md-5-0.9)
  1143. ("rust-meval" ,rust-meval-0.2)
  1144. ("rust-minus" ,rust-minus-3)
  1145. ("rust-nu-ansi-term" ,rust-nu-ansi-term-0.36)
  1146. ("rust-nu-data" ,rust-nu-data-0.36)
  1147. ("rust-nu-engine" ,rust-nu-engine-0.36)
  1148. ("rust-nu-errors" ,rust-nu-errors-0.36)
  1149. ("rust-nu-json" ,rust-nu-json-0.36)
  1150. ("rust-nu-parser" ,rust-nu-parser-0.36)
  1151. ("rust-nu-path" ,rust-nu-path-0.36)
  1152. ("rust-nu-plugin" ,rust-nu-plugin-0.36)
  1153. ("rust-nu-pretty-hex" ,rust-nu-pretty-hex-0.36)
  1154. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  1155. ("rust-nu-serde" ,rust-nu-serde-0.36)
  1156. ("rust-nu-source" ,rust-nu-source-0.36)
  1157. ("rust-nu-stream" ,rust-nu-stream-0.36)
  1158. ("rust-nu-table" ,rust-nu-table-0.36)
  1159. ("rust-nu-test-support"
  1160. ,rust-nu-test-support-0.36)
  1161. ("rust-nu-value-ext" ,rust-nu-value-ext-0.36)
  1162. ("rust-num-bigint" ,rust-num-bigint-0.3)
  1163. ("rust-num-format" ,rust-num-format-0.4)
  1164. ("rust-num-traits" ,rust-num-traits-0.2)
  1165. ("rust-parking-lot" ,rust-parking-lot-0.11)
  1166. ("rust-pin-utils" ,rust-pin-utils-0.1)
  1167. ("rust-polars" ,rust-polars-0.15)
  1168. ("rust-query-interface"
  1169. ,rust-query-interface-0.3)
  1170. ("rust-quick-xml" ,rust-quick-xml-0.22)
  1171. ("rust-quickcheck-macros"
  1172. ,rust-quickcheck-macros-1)
  1173. ("rust-rand" ,rust-rand-0.8)
  1174. ("rust-rayon" ,rust-rayon-1)
  1175. ("rust-regex" ,rust-regex-1)
  1176. ("rust-roxmltree" ,rust-roxmltree-0.14)
  1177. ("rust-rusqlite" ,rust-rusqlite-0.25)
  1178. ("rust-rust-embed" ,rust-rust-embed-5)
  1179. ("rust-rustyline" ,rust-rustyline-9)
  1180. ("rust-serde" ,rust-serde-1)
  1181. ("rust-serde-bytes" ,rust-serde-bytes-0.11)
  1182. ("rust-serde-ini" ,rust-serde-ini-0.2)
  1183. ("rust-serde-json" ,rust-serde-json-1)
  1184. ("rust-serde-urlencoded"
  1185. ,rust-serde-urlencoded-0.7)
  1186. ("rust-serde-yaml" ,rust-serde-yaml-0.8)
  1187. ("rust-sha2" ,rust-sha2-0.9)
  1188. ("rust-shadow-rs" ,rust-shadow-rs-0.6)
  1189. ("rust-strip-ansi-escapes"
  1190. ,rust-strip-ansi-escapes-0.1)
  1191. ("rust-sxd-document" ,rust-sxd-document-0.3)
  1192. ("rust-sxd-xpath" ,rust-sxd-xpath-0.4)
  1193. ("rust-tempfile" ,rust-tempfile-3)
  1194. ("rust-term" ,rust-term-0.7)
  1195. ("rust-term-size" ,rust-term-size-0.3)
  1196. ("rust-termcolor" ,rust-termcolor-1)
  1197. ("rust-thiserror" ,rust-thiserror-1)
  1198. ("rust-titlecase" ,rust-titlecase-1)
  1199. ("rust-toml" ,rust-toml-0.5)
  1200. ("rust-trash" ,rust-trash-1)
  1201. ("rust-umask" ,rust-umask-1)
  1202. ("rust-unicode-segmentation"
  1203. ,rust-unicode-segmentation-1)
  1204. ("rust-url" ,rust-url-2)
  1205. ("rust-users" ,rust-users-0.11)
  1206. ("rust-uuid" ,rust-uuid-0.8)
  1207. ("rust-which" ,rust-which-4)
  1208. ("rust-zip" ,rust-zip-0.5))))
  1209. (home-page "https://www.nushell.sh")
  1210. (synopsis "CLI for nushell")
  1211. (description "CLI for nushell")
  1212. (license license:expat)))
  1213. (define-public rust-nu-completion-0.36
  1214. (package
  1215. (name "rust-nu-completion")
  1216. (version "0.36.0")
  1217. (source
  1218. (origin
  1219. (method url-fetch)
  1220. (uri (crate-uri "nu-completion" version))
  1221. (file-name
  1222. (string-append name "-" version ".tar.gz"))
  1223. (sha256
  1224. (base32
  1225. "1kmn80cwpi8dd25vxm4r7ap35igfy4mqax20z31c51qwj2a8r6cx"))))
  1226. (build-system cargo-build-system)
  1227. (arguments
  1228. `(#:skip-build? #t
  1229. #:cargo-inputs
  1230. (("rust-dirs-next" ,rust-dirs-next-2)
  1231. ("rust-indexmap" ,rust-indexmap-1)
  1232. ("rust-is-executable" ,rust-is-executable-1)
  1233. ("rust-nu-data" ,rust-nu-data-0.36)
  1234. ("rust-nu-engine" ,rust-nu-engine-0.36)
  1235. ("rust-nu-errors" ,rust-nu-errors-0.36)
  1236. ("rust-nu-parser" ,rust-nu-parser-0.36)
  1237. ("rust-nu-path" ,rust-nu-path-0.36)
  1238. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  1239. ("rust-nu-source" ,rust-nu-source-0.36)
  1240. ("rust-nu-test-support"
  1241. ,rust-nu-test-support-0.36))))
  1242. (home-page "https://www.nushell.sh")
  1243. (synopsis "Completions for nushell")
  1244. (description "Completions for nushell")
  1245. (license license:expat)))
  1246. (define-public rust-nu-data-0.36
  1247. (package
  1248. (name "rust-nu-data")
  1249. (version "0.36.0")
  1250. (source
  1251. (origin
  1252. (method url-fetch)
  1253. (uri (crate-uri "nu-data" version))
  1254. (file-name (string-append name "-" version ".tar.gz"))
  1255. (sha256
  1256. (base32 "02m4zyrgaxkpvvbknqang9cqbzqmbp8bvmvisxp5yijwadzjr66y"))))
  1257. (build-system cargo-build-system)
  1258. (arguments
  1259. `(#:skip-build? #t
  1260. #:cargo-inputs
  1261. (("rust-bigdecimal-rs" ,rust-bigdecimal-rs-0.2)
  1262. ("rust-byte-unit" ,rust-byte-unit-4)
  1263. ("rust-chrono" ,rust-chrono-0.4)
  1264. ("rust-common-path" ,rust-common-path-1)
  1265. ("rust-derive-new" ,rust-derive-new-0.5)
  1266. ("rust-directories-next"
  1267. ,rust-directories-next-2)
  1268. ("rust-dirs-next" ,rust-dirs-next-2)
  1269. ("rust-getset" ,rust-getset-0.1)
  1270. ("rust-indexmap" ,rust-indexmap-1)
  1271. ("rust-log" ,rust-log-0.4)
  1272. ("rust-nu-ansi-term" ,rust-nu-ansi-term-0.36)
  1273. ("rust-nu-errors" ,rust-nu-errors-0.36)
  1274. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  1275. ("rust-nu-source" ,rust-nu-source-0.36)
  1276. ("rust-nu-table" ,rust-nu-table-0.36)
  1277. ("rust-nu-test-support"
  1278. ,rust-nu-test-support-0.36)
  1279. ("rust-nu-value-ext" ,rust-nu-value-ext-0.36)
  1280. ("rust-num-bigint" ,rust-num-bigint-0.3)
  1281. ("rust-num-format" ,rust-num-format-0.4)
  1282. ("rust-num-traits" ,rust-num-traits-0.2)
  1283. ("rust-query-interface"
  1284. ,rust-query-interface-0.3)
  1285. ("rust-serde" ,rust-serde-1)
  1286. ("rust-sha2" ,rust-sha2-0.9)
  1287. ("rust-sys-locale" ,rust-sys-locale-0.1)
  1288. ("rust-toml" ,rust-toml-0.5)
  1289. ("rust-users" ,rust-users-0.11))))
  1290. (home-page "https://www.nushell.sh")
  1291. (synopsis "CLI for nushell")
  1292. (description "CLI for nushell")
  1293. (license license:expat)))
  1294. (define-public rust-nu-engine-0.36
  1295. (package
  1296. (name "rust-nu-engine")
  1297. (version "0.36.0")
  1298. (source
  1299. (origin
  1300. (method url-fetch)
  1301. (uri (crate-uri "nu-engine" version))
  1302. (file-name (string-append name "-" version ".tar.gz"))
  1303. (sha256
  1304. (base32 "03nngv2pcn10ydc1wq3chvd31rzgh4j7jrvkgmgps4ml1avn6yfr"))))
  1305. (build-system cargo-build-system)
  1306. (arguments
  1307. `(#:skip-build? #t
  1308. #:cargo-inputs
  1309. (("rust-ansi-term" ,rust-ansi-term-0.12)
  1310. ("rust-async-recursion"
  1311. ,rust-async-recursion-0.3)
  1312. ("rust-async-trait" ,rust-async-trait-0.1)
  1313. ("rust-bigdecimal-rs" ,rust-bigdecimal-rs-0.2)
  1314. ("rust-bytes" ,rust-bytes-0.5)
  1315. ("rust-chrono" ,rust-chrono-0.4)
  1316. ("rust-codespan-reporting"
  1317. ,rust-codespan-reporting-0.11)
  1318. ("rust-derive-new" ,rust-derive-new-0.5)
  1319. ("rust-dirs-next" ,rust-dirs-next-2)
  1320. ("rust-dunce" ,rust-dunce-1)
  1321. ("rust-dyn-clone" ,rust-dyn-clone-1)
  1322. ("rust-encoding-rs" ,rust-encoding-rs-0.8)
  1323. ("rust-filesize" ,rust-filesize-0.2)
  1324. ("rust-fs-extra" ,rust-fs-extra-1)
  1325. ("rust-futures" ,rust-futures-0.3)
  1326. ("rust-futures-util" ,rust-futures-util-0.3)
  1327. ("rust-futures-codec" ,rust-futures-codec-0.4)
  1328. ("rust-getset" ,rust-getset-0.1)
  1329. ("rust-glob" ,rust-glob-0.3)
  1330. ("rust-indexmap" ,rust-indexmap-1)
  1331. ("rust-itertools" ,rust-itertools-0.10)
  1332. ("rust-lazy-static" ,rust-lazy-static-1)
  1333. ("rust-log" ,rust-log-0.4)
  1334. ("rust-nu-ansi-term" ,rust-nu-ansi-term-0.36)
  1335. ("rust-nu-data" ,rust-nu-data-0.36)
  1336. ("rust-nu-errors" ,rust-nu-errors-0.36)
  1337. ("rust-nu-parser" ,rust-nu-parser-0.36)
  1338. ("rust-nu-path" ,rust-nu-path-0.36)
  1339. ("rust-nu-plugin" ,rust-nu-plugin-0.36)
  1340. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  1341. ("rust-nu-source" ,rust-nu-source-0.36)
  1342. ("rust-nu-stream" ,rust-nu-stream-0.36)
  1343. ("rust-nu-test-support"
  1344. ,rust-nu-test-support-0.36)
  1345. ("rust-nu-value-ext" ,rust-nu-value-ext-0.36)
  1346. ("rust-num-bigint" ,rust-num-bigint-0.3)
  1347. ("rust-num-format" ,rust-num-format-0.4)
  1348. ("rust-num-traits" ,rust-num-traits-0.2)
  1349. ("rust-parking-lot" ,rust-parking-lot-0.11)
  1350. ("rust-rayon" ,rust-rayon-1)
  1351. ("rust-serde" ,rust-serde-1)
  1352. ("rust-serde-json" ,rust-serde-json-1)
  1353. ("rust-tempfile" ,rust-tempfile-3)
  1354. ("rust-term-size" ,rust-term-size-0.3)
  1355. ("rust-termcolor" ,rust-termcolor-1)
  1356. ("rust-trash" ,rust-trash-1)
  1357. ("rust-umask" ,rust-umask-1)
  1358. ("rust-users" ,rust-users-0.11)
  1359. ("rust-which" ,rust-which-4))))
  1360. (home-page "https://www.nushell.sh")
  1361. (synopsis "Core commands for nushell")
  1362. (description "Core commands for nushell")
  1363. (license license:expat)))
  1364. (define-public rust-nu-errors-0.36
  1365. (package
  1366. (name "rust-nu-errors")
  1367. (version "0.36.0")
  1368. (source
  1369. (origin
  1370. (method url-fetch)
  1371. (uri (crate-uri "nu-errors" version))
  1372. (file-name (string-append name "-" version ".tar.gz"))
  1373. (sha256
  1374. (base32 "0k5xpfl9igz99sf4czhc9zrgkzfza915a9isvkm0kda2zyy1fnwf"))))
  1375. (build-system cargo-build-system)
  1376. (arguments
  1377. `(#:skip-build? #t
  1378. #:cargo-inputs
  1379. (("rust-bigdecimal-rs" ,rust-bigdecimal-rs-0.2)
  1380. ("rust-codespan-reporting"
  1381. ,rust-codespan-reporting-0.11)
  1382. ("rust-derive-new" ,rust-derive-new-0.5)
  1383. ("rust-getset" ,rust-getset-0.1)
  1384. ("rust-glob" ,rust-glob-0.3)
  1385. ("rust-nu-ansi-term" ,rust-nu-ansi-term-0.36)
  1386. ("rust-nu-source" ,rust-nu-source-0.36)
  1387. ("rust-num-bigint" ,rust-num-bigint-0.3)
  1388. ("rust-num-traits" ,rust-num-traits-0.2)
  1389. ("rust-serde" ,rust-serde-1)
  1390. ("rust-serde-json" ,rust-serde-json-1)
  1391. ("rust-serde-yaml" ,rust-serde-yaml-0.8)
  1392. ("rust-toml" ,rust-toml-0.5))))
  1393. (home-page "https://www.nushell.sh")
  1394. (synopsis "Core error subsystem for Nushell")
  1395. (description "Core error subsystem for Nushell")
  1396. (license license:expat)))
  1397. (define-public rust-nu-json-0.36
  1398. (package
  1399. (name "rust-nu-json")
  1400. (version "0.36.0")
  1401. (source
  1402. (origin
  1403. (method url-fetch)
  1404. (uri (crate-uri "nu-json" version))
  1405. (file-name (string-append name "-" version ".tar.gz"))
  1406. (sha256
  1407. (base32 "145h7npb8j24x7a8mggqbvafssc0qmfh53azvp88a3svv4n5q16x"))))
  1408. (build-system cargo-build-system)
  1409. (arguments
  1410. `(#:skip-build? #t
  1411. #:cargo-inputs
  1412. (("rust-lazy-static" ,rust-lazy-static-1)
  1413. ("rust-linked-hash-map"
  1414. ,rust-linked-hash-map-0.5)
  1415. ("rust-num-traits" ,rust-num-traits-0.2)
  1416. ("rust-regex" ,rust-regex-1)
  1417. ("rust-serde" ,rust-serde-1))))
  1418. (home-page "https://www.nushell.sh")
  1419. (synopsis "Fork of @code{serde-hjson}")
  1420. (description "This package is a fork of @code{serde-hjson}.")
  1421. (license license:expat)))
  1422. (define-public rust-nu-parser-0.36
  1423. (package
  1424. (name "rust-nu-parser")
  1425. (version "0.36.0")
  1426. (source
  1427. (origin
  1428. (method url-fetch)
  1429. (uri (crate-uri "nu-parser" version))
  1430. (file-name (string-append name "-" version ".tar.gz"))
  1431. (sha256
  1432. (base32 "1i3wyvpvv7xsdjlvl7c6hpic4dcsqbvvfppdb8z298wkk8v65hd4"))))
  1433. (build-system cargo-build-system)
  1434. (arguments
  1435. `(#:skip-build? #t
  1436. #:cargo-inputs
  1437. (("rust-bigdecimal-rs" ,rust-bigdecimal-rs-0.2)
  1438. ("rust-codespan-reporting"
  1439. ,rust-codespan-reporting-0.11)
  1440. ("rust-derive-new" ,rust-derive-new-0.5)
  1441. ("rust-derive-is-enum-variant"
  1442. ,rust-derive-is-enum-variant-0.1)
  1443. ("rust-dunce" ,rust-dunce-1)
  1444. ("rust-indexmap" ,rust-indexmap-1)
  1445. ("rust-itertools" ,rust-itertools-0.10)
  1446. ("rust-log" ,rust-log-0.4)
  1447. ("rust-nu-errors" ,rust-nu-errors-0.36)
  1448. ("rust-nu-path" ,rust-nu-path-0.36)
  1449. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  1450. ("rust-nu-source" ,rust-nu-source-0.36)
  1451. ("rust-nu-test-support"
  1452. ,rust-nu-test-support-0.36)
  1453. ("rust-num-bigint" ,rust-num-bigint-0.3)
  1454. ("rust-num-traits" ,rust-num-traits-0.2)
  1455. ("rust-serde" ,rust-serde-1)
  1456. ("rust-smart-default" ,rust-smart-default-0.6))))
  1457. (home-page "https://www.nushell.sh")
  1458. (synopsis "Nushell parser")
  1459. (description "Nushell parser")
  1460. (license license:expat)))
  1461. (define-public rust-nu-path-0.36
  1462. (package
  1463. (name "rust-nu-path")
  1464. (version "0.36.0")
  1465. (source
  1466. (origin
  1467. (method url-fetch)
  1468. (uri (crate-uri "nu-path" version))
  1469. (file-name (string-append name "-" version ".tar.gz"))
  1470. (sha256
  1471. (base32 "1pjx76zblqmpllkv3p6hrf5my85xf9jwds0v067a9d3nfpm2c46g"))))
  1472. (build-system cargo-build-system)
  1473. (arguments
  1474. `(#:skip-build? #t
  1475. #:cargo-inputs
  1476. (("rust-dirs-next" ,rust-dirs-next-2)
  1477. ("rust-dunce" ,rust-dunce-1))))
  1478. (home-page "https://www.nushell.sh")
  1479. (synopsis "Nushell parser")
  1480. (description "Nushell parser")
  1481. (license license:expat)))
  1482. (define-public rust-nu-plugin-0.36
  1483. (package
  1484. (name "rust-nu-plugin")
  1485. (version "0.36.0")
  1486. (source
  1487. (origin
  1488. (method url-fetch)
  1489. (uri (crate-uri "nu-plugin" version))
  1490. (file-name
  1491. (string-append name "-" version ".tar.gz"))
  1492. (sha256
  1493. (base32 "08qll1q26igfjkp6xc2gd6rkpw379x828wan4xsh1dmaspikvqh9"))))
  1494. (build-system cargo-build-system)
  1495. (arguments
  1496. `(#:skip-build? #t
  1497. #:cargo-inputs
  1498. (("rust-bigdecimal-rs" ,rust-bigdecimal-rs-0.2)
  1499. ("rust-indexmap" ,rust-indexmap-1)
  1500. ("rust-nu-errors" ,rust-nu-errors-0.36)
  1501. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  1502. ("rust-nu-source" ,rust-nu-source-0.36)
  1503. ("rust-nu-test-support"
  1504. ,rust-nu-test-support-0.36)
  1505. ("rust-nu-value-ext" ,rust-nu-value-ext-0.36)
  1506. ("rust-num-bigint" ,rust-num-bigint-0.3)
  1507. ("rust-serde" ,rust-serde-1)
  1508. ("rust-serde-json" ,rust-serde-json-1))))
  1509. (home-page "https://www.nushell.sh")
  1510. (synopsis "Nushell Plugin")
  1511. (description "Nushell Plugin")
  1512. (license license:expat)))
  1513. (define-public rust-nu-plugin-binaryview-0.36
  1514. (package
  1515. (name "rust-nu-plugin-binaryview")
  1516. (version "0.36.0")
  1517. (source
  1518. (origin
  1519. (method url-fetch)
  1520. (uri (crate-uri "nu_plugin_binaryview" version))
  1521. (file-name (string-append name "-" version ".tar.gz"))
  1522. (sha256
  1523. (base32 "1ma52kw575bq5552x6pz5dzfwj1n33c1z27p9md0iw1zl1zc79zm"))))
  1524. (build-system cargo-build-system)
  1525. (arguments
  1526. `(#:skip-build? #t
  1527. #:cargo-inputs
  1528. (("rust-crossterm" ,rust-crossterm-0.19)
  1529. ("rust-image" ,rust-image-0.22)
  1530. ("rust-neso" ,rust-neso-0.5)
  1531. ("rust-nu-ansi-term" ,rust-nu-ansi-term-0.36)
  1532. ("rust-nu-errors" ,rust-nu-errors-0.36)
  1533. ("rust-nu-plugin" ,rust-nu-plugin-0.36)
  1534. ("rust-nu-pretty-hex" ,rust-nu-pretty-hex-0.36)
  1535. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  1536. ("rust-nu-source" ,rust-nu-source-0.36)
  1537. ("rust-rawkey" ,rust-rawkey-0.1))))
  1538. (home-page "https://www.nushell.sh")
  1539. (synopsis "Binary viewer plugin for Nushell")
  1540. (description
  1541. "This package provides a binary viewer plugin for Nushell.")
  1542. (license license:expat)))
  1543. (define-public rust-nu-plugin-chart-0.36
  1544. (package
  1545. (name "rust-nu-plugin-chart")
  1546. (version "0.36.0")
  1547. (source
  1548. (origin
  1549. (method url-fetch)
  1550. (uri (crate-uri "nu_plugin_chart" version))
  1551. (file-name (string-append name "-" version ".tar.gz"))
  1552. (sha256
  1553. (base32 "0m8mvvnxipzxyigzfzb0xp4d8zb71lbxrs62k8jqkrb79j82rlfr"))))
  1554. (build-system cargo-build-system)
  1555. (arguments
  1556. `(#:skip-build? #t
  1557. #:cargo-inputs
  1558. (("rust-crossterm" ,rust-crossterm-0.19)
  1559. ("rust-nu-data" ,rust-nu-data-0.36)
  1560. ("rust-nu-errors" ,rust-nu-errors-0.36)
  1561. ("rust-nu-plugin" ,rust-nu-plugin-0.36)
  1562. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  1563. ("rust-nu-source" ,rust-nu-source-0.36)
  1564. ("rust-nu-value-ext" ,rust-nu-value-ext-0.36)
  1565. ("rust-tui" ,rust-tui-0.15))))
  1566. (home-page "https://www.nushell.sh")
  1567. (synopsis "Plugin to display charts")
  1568. (description
  1569. "This package provides a plugin to display charts in Nushell.")
  1570. (license license:expat)))
  1571. (define-public rust-nu-plugin-fetch-0.36
  1572. (package
  1573. (name "rust-nu-plugin-fetch")
  1574. (version "0.36.0")
  1575. (source
  1576. (origin
  1577. (method url-fetch)
  1578. (uri (crate-uri "nu_plugin_fetch" version))
  1579. (file-name (string-append name "-" version ".tar.gz"))
  1580. (sha256
  1581. (base32 "1zi86kcsj7ys103w9q9f59p7nmjpssbdrkmj6dh60n2nbwcc9i49"))))
  1582. (build-system cargo-build-system)
  1583. (arguments
  1584. `(#:skip-build? #t
  1585. #:cargo-inputs
  1586. (("rust-base64" ,rust-base64-0.13)
  1587. ("rust-futures" ,rust-futures-0.3)
  1588. ("rust-mime" ,rust-mime-0.3)
  1589. ("rust-nu-errors" ,rust-nu-errors-0.36)
  1590. ("rust-nu-plugin" ,rust-nu-plugin-0.36)
  1591. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  1592. ("rust-nu-source" ,rust-nu-source-0.36)
  1593. ("rust-surf" ,rust-surf-2)
  1594. ("rust-url" ,rust-url-2))))
  1595. (home-page "https://www.nushell.sh")
  1596. (synopsis "URL fetch plugin for Nushell")
  1597. (description "This package provides a URL fetch plugin for Nushell.")
  1598. (license license:expat)))
  1599. (define-public rust-nu-plugin-from-bson-0.36
  1600. (package
  1601. (name "rust-nu-plugin-from-bson")
  1602. (version "0.36.0")
  1603. (source
  1604. (origin
  1605. (method url-fetch)
  1606. (uri (crate-uri "nu_plugin_from_bson" version))
  1607. (file-name (string-append name "-" version ".tar.gz"))
  1608. (sha256
  1609. (base32 "08pk0hcpkyg5i6z6k7bknwrn490sj9i7wn3cxpj53mxyb0lvjs06"))))
  1610. (build-system cargo-build-system)
  1611. (arguments
  1612. `(#:skip-build? #t
  1613. #:cargo-inputs
  1614. (("rust-bigdecimal-rs" ,rust-bigdecimal-rs-0.2)
  1615. ("rust-bson" ,rust-bson-0.14)
  1616. ("rust-nu-errors" ,rust-nu-errors-0.36)
  1617. ("rust-nu-plugin" ,rust-nu-plugin-0.36)
  1618. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  1619. ("rust-nu-source" ,rust-nu-source-0.36)
  1620. ("rust-nu-value-ext" ,rust-nu-value-ext-0.36)
  1621. ("rust-num-traits" ,rust-num-traits-0.2))))
  1622. (home-page "https://www.nushell.sh")
  1623. (synopsis "Converter plugin to the bson format for Nushell")
  1624. (description
  1625. "This package provides a converter plugin to the bson format for
  1626. Nushell.")
  1627. (license license:expat)))
  1628. (define-public rust-nu-plugin-from-sqlite-0.36
  1629. (package
  1630. (name "rust-nu-plugin-from-sqlite")
  1631. (version "0.36.0")
  1632. (source
  1633. (origin
  1634. (method url-fetch)
  1635. (uri (crate-uri "nu_plugin_from_sqlite" version))
  1636. (file-name (string-append name "-" version ".tar.gz"))
  1637. (sha256
  1638. (base32 "1asbwimvj5fk9vafq67rfr13pg3sw53f97a56snspnlgx31v5zwn"))))
  1639. (build-system cargo-build-system)
  1640. (arguments
  1641. `(#:skip-build? #t
  1642. #:cargo-inputs
  1643. (("rust-bigdecimal-rs" ,rust-bigdecimal-rs-0.2)
  1644. ("rust-nu-errors" ,rust-nu-errors-0.36)
  1645. ("rust-nu-plugin" ,rust-nu-plugin-0.36)
  1646. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  1647. ("rust-nu-source" ,rust-nu-source-0.36)
  1648. ("rust-nu-value-ext" ,rust-nu-value-ext-0.36)
  1649. ("rust-num-traits" ,rust-num-traits-0.2)
  1650. ("rust-rusqlite" ,rust-rusqlite-0.25)
  1651. ("rust-tempfile" ,rust-tempfile-3))))
  1652. (home-page "https://www.nushell.sh")
  1653. (synopsis "Converter plugin to the bson format for Nushell")
  1654. (description
  1655. "This package provides a converter plugin to the bson format for
  1656. Nushell.")
  1657. (license license:expat)))
  1658. (define-public rust-nu-plugin-inc-0.36
  1659. (package
  1660. (name "rust-nu-plugin-inc")
  1661. (version "0.36.0")
  1662. (source
  1663. (origin
  1664. (method url-fetch)
  1665. (uri (crate-uri "nu_plugin_inc" version))
  1666. (file-name (string-append name "-" version ".tar.gz"))
  1667. (sha256
  1668. (base32 "1vrvrdyhb9rvrbdaq25b1b9ibpwr52hz3p60kl3xn0zs437vqhzs"))))
  1669. (build-system cargo-build-system)
  1670. (arguments
  1671. `(#:skip-build? #t
  1672. #:cargo-inputs
  1673. (("rust-nu-errors" ,rust-nu-errors-0.36)
  1674. ("rust-nu-plugin" ,rust-nu-plugin-0.36)
  1675. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  1676. ("rust-nu-source" ,rust-nu-source-0.36)
  1677. ("rust-nu-test-support"
  1678. ,rust-nu-test-support-0.36)
  1679. ("rust-nu-value-ext" ,rust-nu-value-ext-0.36)
  1680. ("rust-semver" ,rust-semver-0.11))))
  1681. (home-page "https://www.nushell.sh")
  1682. (synopsis "Version incrementer plugin for Nushell")
  1683. (description
  1684. "This package provides a version incrementer plugin for
  1685. Nushell.")
  1686. (license license:expat)))
  1687. (define-public rust-nu-plugin-match-0.36
  1688. (package
  1689. (name "rust-nu-plugin-match")
  1690. (version "0.36.0")
  1691. (source
  1692. (origin
  1693. (method url-fetch)
  1694. (uri (crate-uri "nu_plugin_match" version))
  1695. (file-name (string-append name "-" version ".tar.gz"))
  1696. (sha256
  1697. (base32 "1lvmg155kriqgddhnmx2b7c2qsfsv75hdlb3wnrwlg8yqbl5kl9a"))))
  1698. (build-system cargo-build-system)
  1699. (arguments
  1700. `(#:skip-build? #t
  1701. #:cargo-inputs
  1702. (("rust-nu-errors" ,rust-nu-errors-0.36)
  1703. ("rust-nu-plugin" ,rust-nu-plugin-0.36)
  1704. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  1705. ("rust-nu-source" ,rust-nu-source-0.36)
  1706. ("rust-regex" ,rust-regex-1))))
  1707. (home-page "https://www.nushell.sh")
  1708. (synopsis "Regex match plugin for Nushell")
  1709. (description
  1710. "This package provides a regex match plugin for Nushell.")
  1711. (license license:expat)))
  1712. (define-public rust-nu-plugin-post-0.36
  1713. (package
  1714. (name "rust-nu-plugin-post")
  1715. (version "0.36.0")
  1716. (source
  1717. (origin
  1718. (method url-fetch)
  1719. (uri (crate-uri "nu_plugin_post" version))
  1720. (file-name (string-append name "-" version ".tar.gz"))
  1721. (sha256
  1722. (base32 "0f1nh4227a5if3sg9214nqkd0ry6x79xvz2pgwqnbcwmps98nc26"))))
  1723. (build-system cargo-build-system)
  1724. (arguments
  1725. `(#:skip-build? #t
  1726. #:cargo-inputs
  1727. (("rust-base64" ,rust-base64-0.13)
  1728. ("rust-futures" ,rust-futures-0.3)
  1729. ("rust-mime" ,rust-mime-0.3)
  1730. ("rust-nu-errors" ,rust-nu-errors-0.36)
  1731. ("rust-nu-plugin" ,rust-nu-plugin-0.36)
  1732. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  1733. ("rust-nu-source" ,rust-nu-source-0.36)
  1734. ("rust-num-traits" ,rust-num-traits-0.2)
  1735. ("rust-serde-json" ,rust-serde-json-1)
  1736. ("rust-surf" ,rust-surf-2)
  1737. ("rust-url" ,rust-url-2))))
  1738. (home-page "https://www.nushell.sh")
  1739. (synopsis "HTTP POST plugin for Nushell")
  1740. (description "This package is an HTTP POST plugin for Nushell.")
  1741. (license license:expat)))
  1742. (define-public rust-nu-plugin-ps-0.36
  1743. (package
  1744. (name "rust-nu-plugin-ps")
  1745. (version "0.36.0")
  1746. (source
  1747. (origin
  1748. (method url-fetch)
  1749. (uri (crate-uri "nu_plugin_ps" version))
  1750. (file-name (string-append name "-" version ".tar.gz"))
  1751. (sha256
  1752. (base32 "1hw6adsvsl1hpxyw06r0g9x1n14nkfin44ckxpr5605wbv89yrbx"))))
  1753. (build-system cargo-build-system)
  1754. (arguments
  1755. `(#:skip-build? #t
  1756. #:cargo-inputs
  1757. (("rust-futures" ,rust-futures-0.3)
  1758. ("rust-futures-timer" ,rust-futures-timer-3)
  1759. ("rust-nu-errors" ,rust-nu-errors-0.36)
  1760. ("rust-nu-plugin" ,rust-nu-plugin-0.36)
  1761. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  1762. ("rust-nu-source" ,rust-nu-source-0.36)
  1763. ("rust-num-bigint" ,rust-num-bigint-0.3)
  1764. ("rust-sysinfo" ,rust-sysinfo-0.16))))
  1765. (home-page "https://www.nushell.sh")
  1766. (synopsis "Process list plugin for Nushell")
  1767. (description
  1768. "This package provides a process list plugin for Nushell.")
  1769. (license license:expat)))
  1770. (define-public rust-nu-plugin-query-json-0.36
  1771. (package
  1772. (name "rust-nu-plugin-query-json")
  1773. (version "0.36.0")
  1774. (source
  1775. (origin
  1776. (method url-fetch)
  1777. (uri (crate-uri "nu_plugin_query_json" version))
  1778. (file-name (string-append name "-" version ".tar.gz"))
  1779. (sha256
  1780. (base32 "0ij135vx94gyaypryn24imgkq6r68j66d2nfymg98acn85ynv31q"))))
  1781. (build-system cargo-build-system)
  1782. (arguments
  1783. `(#:skip-build? #t
  1784. #:cargo-inputs
  1785. (("rust-gjson" ,rust-gjson-0.7)
  1786. ("rust-nu-errors" ,rust-nu-errors-0.36)
  1787. ("rust-nu-plugin" ,rust-nu-plugin-0.36)
  1788. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  1789. ("rust-nu-source" ,rust-nu-source-0.36))))
  1790. (home-page "https://www.nushell.sh")
  1791. (synopsis "Query JSON files with Gjson")
  1792. (description "query json files with gjson")
  1793. (license license:expat)))
  1794. (define-public rust-nu-plugin-s3-0.36
  1795. (package
  1796. (name "rust-nu-plugin-s3")
  1797. (version "0.36.0")
  1798. (source
  1799. (origin
  1800. (method url-fetch)
  1801. (uri (crate-uri "nu_plugin_s3" version))
  1802. (file-name (string-append name "-" version ".tar.gz"))
  1803. (sha256
  1804. (base32 "0yl1jkmr88ri22fzi78q5wqwv9j6589k0rsqydv5711dllkdgcp5"))))
  1805. (build-system cargo-build-system)
  1806. (arguments
  1807. `(#:skip-build? #t
  1808. #:cargo-inputs
  1809. (("rust-futures" ,rust-futures-0.3)
  1810. ("rust-nu-errors" ,rust-nu-errors-0.36)
  1811. ("rust-nu-plugin" ,rust-nu-plugin-0.36)
  1812. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  1813. ("rust-nu-source" ,rust-nu-source-0.36)
  1814. ("rust-s3handler" ,rust-s3handler-0.7))))
  1815. (home-page "https://www.nushell.sh")
  1816. (synopsis "S3 plugin for Nushell")
  1817. (description "This package is an S3 plugin for Nushell.")
  1818. (license license:expat)))
  1819. (define-public rust-nu-plugin-selector-0.36
  1820. (package
  1821. (name "rust-nu-plugin-selector")
  1822. (version "0.36.0")
  1823. (source
  1824. (origin
  1825. (method url-fetch)
  1826. (uri (crate-uri "nu_plugin_selector" version))
  1827. (file-name (string-append name "-" version ".tar.gz"))
  1828. (sha256
  1829. (base32 "02sx6mdwgnaixfrkglin2l5svly1mn58swp0c9zqvhqyp0k8f09r"))))
  1830. (build-system cargo-build-system)
  1831. (arguments
  1832. `(#:skip-build? #t
  1833. #:cargo-inputs
  1834. (("rust-nipper" ,rust-nipper-0.1)
  1835. ("rust-nu-errors" ,rust-nu-errors-0.36)
  1836. ("rust-nu-plugin" ,rust-nu-plugin-0.36)
  1837. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  1838. ("rust-nu-source" ,rust-nu-source-0.36))))
  1839. (home-page "https://www.nushell.sh")
  1840. (synopsis "Web scraping using CSS selector")
  1841. (description
  1842. "This package provides web scraping using CSS selector.")
  1843. (license license:expat)))
  1844. (define-public rust-nu-plugin-start-0.36
  1845. (package
  1846. (name "rust-nu-plugin-start")
  1847. (version "0.36.0")
  1848. (source
  1849. (origin
  1850. (method url-fetch)
  1851. (uri (crate-uri "nu_plugin_start" version))
  1852. (file-name (string-append name "-" version ".tar.gz"))
  1853. (sha256
  1854. (base32 "0qk32snivd4r4jbmbmvx457qfvb2cycsl8l2bnghashh0x6jyc8b"))))
  1855. (build-system cargo-build-system)
  1856. (arguments
  1857. `(#:skip-build? #t
  1858. #:cargo-inputs
  1859. (("rust-glob" ,rust-glob-0.3)
  1860. ("rust-nu-errors" ,rust-nu-errors-0.36)
  1861. ("rust-nu-errors" ,rust-nu-errors-0.36)
  1862. ("rust-nu-plugin" ,rust-nu-plugin-0.36)
  1863. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  1864. ("rust-nu-source" ,rust-nu-source-0.36)
  1865. ("rust-nu-source" ,rust-nu-source-0.36)
  1866. ("rust-open" ,rust-open-1)
  1867. ("rust-url" ,rust-url-2)
  1868. ("rust-webbrowser" ,rust-webbrowser-0.5))))
  1869. (home-page "https://www.nushell.sh")
  1870. (synopsis "Plugin to open files/URLs directly from Nushell")
  1871. (description
  1872. "This package provides a plugin to open files/URLs directly from
  1873. Nushell.")
  1874. (license license:expat)))
  1875. (define-public rust-nu-plugin-sys-0.36
  1876. (package
  1877. (name "rust-nu-plugin-sys")
  1878. (version "0.36.0")
  1879. (source
  1880. (origin
  1881. (method url-fetch)
  1882. (uri (crate-uri "nu_plugin_sys" version))
  1883. (file-name
  1884. (string-append name "-" version ".tar.gz"))
  1885. (sha256
  1886. (base32 "07jsg3a8s5aa9ykvfama7i3pkz947md7ryfvffpbrd66r0szxrag"))))
  1887. (build-system cargo-build-system)
  1888. (arguments
  1889. `(#:skip-build? #t
  1890. #:cargo-inputs
  1891. (("rust-futures" ,rust-futures-0.3)
  1892. ("rust-futures-util" ,rust-futures-util-0.3)
  1893. ("rust-nu-errors" ,rust-nu-errors-0.36)
  1894. ("rust-nu-plugin" ,rust-nu-plugin-0.36)
  1895. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  1896. ("rust-nu-source" ,rust-nu-source-0.36)
  1897. ("rust-num-bigint" ,rust-num-bigint-0.3)
  1898. ("rust-sysinfo" ,rust-sysinfo-0.18))))
  1899. (home-page "https://www.nushell.sh")
  1900. (synopsis "System info plugin for Nushell")
  1901. (description "This package provides a system info plugin for Nushell.")
  1902. (license license:expat)))
  1903. (define-public rust-nu-plugin-textview-0.36
  1904. (package
  1905. (name "rust-nu-plugin-textview")
  1906. (version "0.36.0")
  1907. (source
  1908. (origin
  1909. (method url-fetch)
  1910. (uri (crate-uri "nu_plugin_textview" version))
  1911. (file-name (string-append name "-" version ".tar.gz"))
  1912. (sha256
  1913. (base32 "0bz6khgjvr8qbybg8hd8m26w5xd3g3xk9m2xpjmmgw5a5mvfdrck"))))
  1914. (build-system cargo-build-system)
  1915. (arguments
  1916. `(#:skip-build? #t
  1917. #:cargo-inputs
  1918. (("bat" ,bat)
  1919. ("rust-nu-ansi-term" ,rust-nu-ansi-term-0.36)
  1920. ("rust-nu-data" ,rust-nu-data-0.36)
  1921. ("rust-nu-errors" ,rust-nu-errors-0.36)
  1922. ("rust-nu-plugin" ,rust-nu-plugin-0.36)
  1923. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  1924. ("rust-nu-source" ,rust-nu-source-0.36)
  1925. ("rust-term-size" ,rust-term-size-0.3)
  1926. ("rust-url" ,rust-url-2))))
  1927. (home-page "https://www.nushell.sh")
  1928. (synopsis "Text viewer plugin for Nushell")
  1929. (description "This package provides a text viewer plugin for
  1930. Nushell.")
  1931. (license license:expat)))
  1932. (define-public rust-nu-plugin-to-bson-0.36
  1933. (package
  1934. (name "rust-nu-plugin-to-bson")
  1935. (version "0.36.0")
  1936. (source
  1937. (origin
  1938. (method url-fetch)
  1939. (uri (crate-uri "nu_plugin_to_bson" version))
  1940. (file-name (string-append name "-" version ".tar.gz"))
  1941. (sha256
  1942. (base32 "1kardsbic0wv8704m81cnbzlhs6qrb93130x30wfs89z400xfn43"))))
  1943. (build-system cargo-build-system)
  1944. (arguments
  1945. `(#:skip-build? #t
  1946. #:cargo-inputs
  1947. (("rust-bson" ,rust-bson-0.14)
  1948. ("rust-nu-errors" ,rust-nu-errors-0.36)
  1949. ("rust-nu-plugin" ,rust-nu-plugin-0.36)
  1950. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  1951. ("rust-nu-source" ,rust-nu-source-0.36)
  1952. ("rust-nu-value-ext" ,rust-nu-value-ext-0.36)
  1953. ("rust-num-traits" ,rust-num-traits-0.2))))
  1954. (home-page "https://www.nushell.sh")
  1955. (synopsis "Converter plugin to the bson format for Nushell")
  1956. (description
  1957. "This package provides a converter plugin to the bson format for
  1958. Nushell.")
  1959. (license license:expat)))
  1960. (define-public rust-nu-plugin-to-sqlite-0.36
  1961. (package
  1962. (name "rust-nu-plugin-to-sqlite")
  1963. (version "0.36.0")
  1964. (source
  1965. (origin
  1966. (method url-fetch)
  1967. (uri (crate-uri "nu_plugin_to_sqlite" version))
  1968. (file-name (string-append name "-" version ".tar.gz"))
  1969. (sha256
  1970. (base32 "193prp16msshw3n2nfmlckphhkm7bzwrc3qza2g7s4mnyh7d88x5"))))
  1971. (build-system cargo-build-system)
  1972. (arguments
  1973. `(#:skip-build? #t
  1974. #:cargo-inputs
  1975. (("rust-hex" ,rust-hex-0.4)
  1976. ("rust-nu-errors" ,rust-nu-errors-0.36)
  1977. ("rust-nu-plugin" ,rust-nu-plugin-0.36)
  1978. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  1979. ("rust-nu-source" ,rust-nu-source-0.36)
  1980. ("rust-nu-value-ext" ,rust-nu-value-ext-0.36)
  1981. ("rust-num-traits" ,rust-num-traits-0.2)
  1982. ("rust-rusqlite" ,rust-rusqlite-0.25)
  1983. ("rust-tempfile" ,rust-tempfile-3))))
  1984. (home-page "https://www.nushell.sh")
  1985. (synopsis "Converter plugin to the bson format for Nushell")
  1986. (description
  1987. "This package provides a converter plugin to the bson format for
  1988. Nushell.")
  1989. (license license:expat)))
  1990. (define-public rust-nu-plugin-tree-0.36
  1991. (package
  1992. (name "rust-nu-plugin-tree")
  1993. (version "0.36.0")
  1994. (source
  1995. (origin
  1996. (method url-fetch)
  1997. (uri (crate-uri "nu_plugin_tree" version))
  1998. (file-name (string-append name "-" version ".tar.gz"))
  1999. (sha256
  2000. (base32 "0vz8ncglzhq4nvbr3xi9zv3nqpgyf8vyxjnhjd9kjy91d0inj869"))))
  2001. (build-system cargo-build-system)
  2002. (arguments
  2003. `(#:skip-build? #t
  2004. #:cargo-inputs
  2005. (("rust-derive-new" ,rust-derive-new-0.5)
  2006. ("rust-nu-errors" ,rust-nu-errors-0.36)
  2007. ("rust-nu-plugin" ,rust-nu-plugin-0.36)
  2008. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  2009. ("rust-nu-source" ,rust-nu-source-0.36)
  2010. ("rust-ptree" ,rust-ptree-0.3))))
  2011. (home-page "https://www.nushell.sh")
  2012. (synopsis "Tree viewer plugin for Nushell")
  2013. (description "This package provides a tree viewer plugin for
  2014. Nushell.")
  2015. (license license:expat)))
  2016. (define-public rust-nu-plugin-xpath-0.36
  2017. (package
  2018. (name "rust-nu-plugin-xpath")
  2019. (version "0.36.0")
  2020. (source
  2021. (origin
  2022. (method url-fetch)
  2023. (uri (crate-uri "nu_plugin_xpath" version))
  2024. (file-name (string-append name "-" version ".tar.gz"))
  2025. (sha256
  2026. (base32 "19dqw28y5qfpd8a432qkjjf1hmjh7ghsyr1dpb7jr8b0dv68h4lb"))))
  2027. (build-system cargo-build-system)
  2028. (arguments
  2029. `(#:skip-build? #t
  2030. #:cargo-inputs
  2031. (("rust-bigdecimal-rs" ,rust-bigdecimal-rs-0.2)
  2032. ("rust-indexmap" ,rust-indexmap-1)
  2033. ("rust-nu-errors" ,rust-nu-errors-0.36)
  2034. ("rust-nu-plugin" ,rust-nu-plugin-0.36)
  2035. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  2036. ("rust-nu-source" ,rust-nu-source-0.36)
  2037. ("rust-sxd-document" ,rust-sxd-document-0.3)
  2038. ("rust-sxd-xpath" ,rust-sxd-xpath-0.4))))
  2039. (home-page "https://www.nushell.sh")
  2040. (synopsis "Traverses XML")
  2041. (description "Traverses XML")
  2042. (license license:expat)))
  2043. (define-public rust-nu-pretty-hex-0.36
  2044. (package
  2045. (name "rust-nu-pretty-hex")
  2046. (version "0.36.0")
  2047. (source
  2048. (origin
  2049. (method url-fetch)
  2050. (uri (crate-uri "nu-pretty-hex" version))
  2051. (file-name (string-append name "-" version ".tar.gz"))
  2052. (sha256
  2053. (base32 "1d4qvry8xknlsqr1dmqjsfwz3l2avxwwa5jg9p3rrbwcqxppvsq1"))))
  2054. (build-system cargo-build-system)
  2055. (arguments
  2056. `(#:skip-build? #t
  2057. #:cargo-inputs
  2058. (("rust-heapless" ,rust-heapless-0.6)
  2059. ("rust-nu-ansi-term" ,rust-nu-ansi-term-0.36)
  2060. ("rust-rand" ,rust-rand-0.8))))
  2061. (home-page "https://www.nushell.sh")
  2062. (synopsis "Pretty hex dump of bytes slice in the common style")
  2063. (description
  2064. "This crate provides pretty hex dump of bytes slice in the common
  2065. style.")
  2066. (license license:expat)))
  2067. (define-public rust-nu-protocol-0.36
  2068. (package
  2069. (name "rust-nu-protocol")
  2070. (version "0.36.0")
  2071. (source
  2072. (origin
  2073. (method url-fetch)
  2074. (uri (crate-uri "nu-protocol" version))
  2075. (file-name (string-append name "-" version ".tar.gz"))
  2076. (sha256
  2077. (base32 "1r50ybwipk63ryq6zjkjym2dph84y7x26bmn679p9vcglys7rhn7"))))
  2078. (build-system cargo-build-system)
  2079. (arguments
  2080. `(#:skip-build? #t
  2081. #:cargo-inputs
  2082. (("rust-bigdecimal-rs" ,rust-bigdecimal-rs-0.2)
  2083. ("rust-byte-unit" ,rust-byte-unit-4)
  2084. ("rust-chrono" ,rust-chrono-0.4)
  2085. ("rust-chrono-humanize"
  2086. ,rust-chrono-humanize-0.2)
  2087. ("rust-derive-new" ,rust-derive-new-0.5)
  2088. ("rust-getset" ,rust-getset-0.1)
  2089. ("rust-indexmap" ,rust-indexmap-1)
  2090. ("rust-log" ,rust-log-0.4)
  2091. ("rust-nu-errors" ,rust-nu-errors-0.36)
  2092. ("rust-nu-source" ,rust-nu-source-0.36)
  2093. ("rust-num-bigint" ,rust-num-bigint-0.3)
  2094. ("rust-num-integer" ,rust-num-integer-0.1)
  2095. ("rust-num-traits" ,rust-num-traits-0.2)
  2096. ("rust-polars" ,rust-polars-0.15)
  2097. ("rust-serde" ,rust-serde-1)
  2098. ("rust-serde-bytes" ,rust-serde-bytes-0.11)
  2099. ("rust-serde-json" ,rust-serde-json-1)
  2100. ("rust-serde-yaml" ,rust-serde-yaml-0.8)
  2101. ("rust-toml" ,rust-toml-0.5))))
  2102. (home-page "https://www.nushell.sh")
  2103. (synopsis "Core values and protocols for Nushell")
  2104. (description "Core values and protocols for Nushell")
  2105. (license license:expat)))
  2106. (define-public rust-nu-serde-0.36
  2107. (package
  2108. (name "rust-nu-serde")
  2109. (version "0.36.0")
  2110. (source
  2111. (origin
  2112. (method url-fetch)
  2113. (uri (crate-uri "nu-serde" version))
  2114. (file-name (string-append name "-" version ".tar.gz"))
  2115. (sha256
  2116. (base32 "1271qkyphjd3w5as0kwkdzmhcv0fx5j2nak07mm476qf63naprhz"))))
  2117. (build-system cargo-build-system)
  2118. (arguments
  2119. `(#:skip-build? #t
  2120. #:cargo-inputs
  2121. (("rust-bigdecimal-rs" ,rust-bigdecimal-rs-0.2)
  2122. ("rust-insta" ,rust-insta-1)
  2123. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  2124. ("rust-nu-source" ,rust-nu-source-0.36)
  2125. ("rust-serde" ,rust-serde-1)
  2126. ("rust-thiserror" ,rust-thiserror-1))))
  2127. (home-page "https://www.nushell.sh")
  2128. (synopsis "Turn any value into a @code{nu-protocol::Value} with Serde")
  2129. (description
  2130. "This crate turns any value into a @code{nu-protocol::Value} with
  2131. Serde.")
  2132. (license license:expat)))
  2133. (define-public rust-nu-source-0.36
  2134. (package
  2135. (name "rust-nu-source")
  2136. (version "0.36.0")
  2137. (source
  2138. (origin
  2139. (method url-fetch)
  2140. (uri (crate-uri "nu-source" version))
  2141. (file-name (string-append name "-" version ".tar.gz"))
  2142. (sha256
  2143. (base32 "0vs05k2ld5big5byf083wnb2i0pvz0lpmgp34vmw8x5ca4aw4hij"))))
  2144. (build-system cargo-build-system)
  2145. (arguments
  2146. `(#:skip-build? #t
  2147. #:cargo-inputs
  2148. (("rust-derive-new" ,rust-derive-new-0.5)
  2149. ("rust-getset" ,rust-getset-0.1)
  2150. ("rust-pretty" ,rust-pretty-0.5)
  2151. ("rust-serde" ,rust-serde-1)
  2152. ("rust-termcolor" ,rust-termcolor-1))))
  2153. (home-page "https://www.nushell.sh")
  2154. (synopsis "Source string characterizer for Nushell")
  2155. (description
  2156. "This package provides a source string characterizer for
  2157. Nushell.")
  2158. (license license:expat)))
  2159. (define-public rust-nu-stream-0.36
  2160. (package
  2161. (name "rust-nu-stream")
  2162. (version "0.36.0")
  2163. (source
  2164. (origin
  2165. (method url-fetch)
  2166. (uri (crate-uri "nu-stream" version))
  2167. (file-name (string-append name "-" version ".tar.gz"))
  2168. (sha256
  2169. (base32 "0siqhyxdbl9zpyxkdlysrd1369lrvikp72awx7pii5dzvgv2aaaj"))))
  2170. (build-system cargo-build-system)
  2171. (arguments
  2172. `(#:skip-build? #t
  2173. #:cargo-inputs
  2174. (("rust-futures" ,rust-futures-0.3)
  2175. ("rust-nu-errors" ,rust-nu-errors-0.36)
  2176. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  2177. ("rust-nu-source" ,rust-nu-source-0.36))))
  2178. (home-page "https://www.nushell.sh")
  2179. (synopsis "Nushell stream")
  2180. (description "This package provides Nushell stream.")
  2181. (license license:expat)))
  2182. (define-public rust-nu-table-0.36
  2183. (package
  2184. (name "rust-nu-table")
  2185. (version "0.36.0")
  2186. (source
  2187. (origin
  2188. (method url-fetch)
  2189. (uri (crate-uri "nu-table" version))
  2190. (file-name (string-append name "-" version ".tar.gz"))
  2191. (sha256
  2192. (base32 "1akxq806gix38b6663ijs02ma0zbzq9yvyvr39bgjyikyqahwkpw"))))
  2193. (build-system cargo-build-system)
  2194. (arguments
  2195. `(#:skip-build? #t
  2196. #:cargo-inputs
  2197. (("rust-nu-ansi-term" ,rust-nu-ansi-term-0.36)
  2198. ("rust-regex" ,rust-regex-1)
  2199. ("rust-unicode-width" ,rust-unicode-width-0.1))))
  2200. (home-page "https://www.nushell.sh")
  2201. (synopsis "Nushell table printing")
  2202. (description "Nushell table printing")
  2203. (license license:expat)))
  2204. (define-public rust-nu-test-support-0.36
  2205. (package
  2206. (name "rust-nu-test-support")
  2207. (version "0.36.0")
  2208. (source
  2209. (origin
  2210. (method url-fetch)
  2211. (uri (crate-uri "nu-test-support" version))
  2212. (file-name (string-append name "-" version ".tar.gz"))
  2213. (sha256
  2214. (base32 "0ip2fm8r26s5y0qbfn8r7yhacg82aa998kyic70y60j9kmnwk4q1"))))
  2215. (build-system cargo-build-system)
  2216. (arguments
  2217. `(#:skip-build? #t
  2218. #:cargo-inputs
  2219. (("rust-bigdecimal-rs" ,rust-bigdecimal-rs-0.2)
  2220. ("rust-chrono" ,rust-chrono-0.4)
  2221. ("rust-dunce" ,rust-dunce-1)
  2222. ("rust-getset" ,rust-getset-0.1)
  2223. ("rust-glob" ,rust-glob-0.3)
  2224. ("rust-hamcrest2" ,rust-hamcrest2-0.3)
  2225. ("rust-indexmap" ,rust-indexmap-1)
  2226. ("rust-nu-errors" ,rust-nu-errors-0.36)
  2227. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  2228. ("rust-nu-source" ,rust-nu-source-0.36)
  2229. ("rust-nu-value-ext" ,rust-nu-value-ext-0.36)
  2230. ("rust-num-bigint" ,rust-num-bigint-0.3)
  2231. ("rust-tempfile" ,rust-tempfile-3))))
  2232. (home-page "https://www.nushell.sh")
  2233. (synopsis "Support for writing Nushell tests")
  2234. (description "This package provides support for writing Nushell
  2235. tests.")
  2236. (license license:expat)))
  2237. (define-public rust-nu-value-ext-0.36
  2238. (package
  2239. (name "rust-nu-value-ext")
  2240. (version "0.36.0")
  2241. (source
  2242. (origin
  2243. (method url-fetch)
  2244. (uri (crate-uri "nu-value-ext" version))
  2245. (file-name
  2246. (string-append name "-" version ".tar.gz"))
  2247. (sha256
  2248. (base32 "1cd09378h4lfb58s0dl87mgiwldfk60h9z1a0vi4v7k10v9xhsis"))))
  2249. (build-system cargo-build-system)
  2250. (arguments
  2251. `(#:skip-build? #t
  2252. #:cargo-inputs
  2253. (("rust-indexmap" ,rust-indexmap-1)
  2254. ("rust-itertools" ,rust-itertools-0.10)
  2255. ("rust-nu-errors" ,rust-nu-errors-0.36)
  2256. ("rust-nu-protocol" ,rust-nu-protocol-0.36)
  2257. ("rust-nu-source" ,rust-nu-source-0.36)
  2258. ("rust-num-traits" ,rust-num-traits-0.2))))
  2259. (home-page "https://www.nushell.sh")
  2260. (synopsis "@code{Extension} traits for values in Nushell")
  2261. (description
  2262. "This package provides @code{Extension} traits for values in
  2263. Nushell.")
  2264. (license license:expat)))