···81818282# Dev
8383Can be built with nix `nix build` or open a nix shell with `nix develop`
8484-For non-nix the project is currently not setup to build with dune or opam. Sorry, I'll get there one day.
8484+Can also be built directly with Dune package management via `dune build`.
+57-22
dune-project
···11-(lang dune 3.12)
11+(lang dune 3.20)
2233(name jj_tui)
4455+; Keep opam metadata generated from the same dependency source that Dune pkg
66+; consumes, so Nix, opam, and plain Dune builds all describe the same project.
57(generate_opam_files true)
6879(source
88- (github username/reponame))
1010+ (github faldor20/jj_tui))
9111010-(authors "Author Name")
1212+(authors "Eli Dowling")
11131212-(maintainers "Maintainer Name")
1414+(maintainers "eli.jambu@gmail.com")
13151414-(license LICENSE)
1616+(license MIT)
1717+1818+(documentation "https://github.com/faldor20/jj_tui")
15191616-(documentation https://url/to/documentation)
2020+; The repo vendors patched forks of these libraries. Pin them so Dune package
2121+; management resolves the same sources the build already uses locally.
2222+(pin
2323+ (url "./forks/notty")
2424+ (package
2525+ (name notty)
2626+ (version "0.3.0")))
2727+2828+(pin
2929+ (url "./forks/lwd")
3030+ (package
3131+ (name lwd)
3232+ (version "0.1.0"))
3333+ (package
3434+ (name lwd_picos)
3535+ (version "0.1.0")))
3636+3737+(pin
3838+ (url "./forks/nottui")
3939+ (package
4040+ (name nottui)
4141+ (version "dev"))
4242+ (package
4343+ (name nottui_picos)
4444+ (version "dev")))
17451846(pin
1947 (url "git+https://github.com/faldor20/ppx_record_updater.git")
···22502351(package
2452 (name jj_tui)
2525- (synopsis "A short synopsis")
2626- (description "A longer description")
5353+ (synopsis "Terminal UI for the Jujutsu version control system")
5454+ (description "A terminal UI for Jujutsu built in OCaml with Notty and Nottui.")
2755 (depends
5656+ (ocaml (>= "5.1"))
5757+ angstrom
5858+ base
5959+ bigstringaf
6060+ logs
6161+ logs-ppx
2862 lwd
2963 lwd_picos
3030- ocaml
3131- dune
3232- stdio
6464+ notty
3365 nottui
3434- base
3535- angstrom
6666+ nottui_picos
6767+ ppx_deriving
6868+ ppx_deriving_yaml
6969+ ppx_deriving_yojson
3670 ppx_expect
3771 ppx_jane
3838- (picos_std
3939- (= 0.5.0))
4040- (picos_io
4141- (= 0.5.0))
4242- ;;for notty
7272+ ppx_record_updater
7373+ re
7474+ signal
7575+ spawn
7676+ stdio
4377 uutf
7878+ yaml
4479 yojson
4545- ppx_record_updater)
8080+ (picos_std (= "0.6.0"))
8181+ (picos_io (= "0.6.0"))
8282+ (picos_mux (= "0.6.0")))
4683 (tags
4747- (topics "to describe" your project)))
4848-4949-; See the complete stanza docs at https://dune.readthedocs.io/en/stable/dune-files.html#dune-project
8484+ (topics "terminal" "tui" "jujutsu" "jj" "vcs")))
+6
dune-workspace
···11+(lang dune 3.20)
22+33+; Enable Dune package management for this workspace. The project-level pins in
44+; dune-project point at the vendored forks so plain `dune build` can resolve the
55+; same package set that the Nix build uses.
66+(pkg enabled)