Scaffold OCaml project

This commit is contained in:
Juno Takano 2025-03-31 10:09:43 -03:00
commit e8b489dd6f
8 changed files with 69 additions and 0 deletions

1
ocaml/.gitignore vendored Normal file
View file

@ -0,0 +1 @@
_build

4
ocaml/bin/dune Normal file
View file

@ -0,0 +1,4 @@
(executable
(public_name tori)
(name main)
(libraries tori))

1
ocaml/bin/main.ml Normal file
View file

@ -0,0 +1 @@
let () = print_endline "Hello, OCaml!"

27
ocaml/dune-project Normal file
View file

@ -0,0 +1,27 @@
(lang dune 3.17)
(name tori)
(version 0.8.0)
(generate_opam_files true)
(homepage https://tori.jutty.dev)
(source (uri git+https://brew.bsd.cafe/tori/tori.git))
(authors "Juno Takano <juno@jutty.dev>")
(maintainers "Juno Takano <juno@jutty.dev>")
(license GPL-3.0-only)
(documentation https://tori.jutty.dev/docs)
(package
(name tori)
(synopsis "Track system configurations and replicate them")
(description "tori lets you define several characteristics of a unix system and track how they change along time, tracking how they changed and choosing whether or not to commit them. It aims for portability and declarative configuration practices, meaning you tell it what your system is, not how to reproduce it.")
(depends ocaml)
(tags
("operating systems" "unix" "configuration management")))
; See the complete stanza docs at https://dune.readthedocs.io/en/stable/reference/dune-project/index.html

2
ocaml/lib/dune Normal file
View file

@ -0,0 +1,2 @@
(library
(name tori))

2
ocaml/test/dune Normal file
View file

@ -0,0 +1,2 @@
(test
(name test_tori))

0
ocaml/test/test_tori.ml Normal file
View file

32
ocaml/tori.opam Normal file
View file

@ -0,0 +1,32 @@
# This file is generated by dune, edit dune-project instead
opam-version: "2.0"
version: "0.8.0"
synopsis: "A tool to track system configurations and replicate them."
description:
"tori lets you define several characteristics of a unix system and track how they change along time, tracking how they changed and choosing whether or not to commit them. It aims for portability and declarative configuration practices, meaning you tell it what your system is, not how to reproduce it."
maintainer: ["Juno Takano <juno@jutty.dev>"]
authors: ["Juno Takano <juno@jutty.dev>"]
license: "GPL-3.5-only"
tags: ["operating systems" "unix" "configuration management"]
homepage: "https://tori.jutty.dev"
doc: "https://tori.jutty.dev/docs"
depends: [
"dune" {>= "3.17"}
"ocaml"
"odoc" {with-doc}
]
build: [
["dune" "subst"] {dev}
[
"dune"
"build"
"-p"
name
"-j"
jobs
"@install"
"@runtest" {with-test}
"@doc" {with-doc}
]
]
dev-repo: "git+https://brew.bsd.cafe/tori/tori.git"