mirror of
https://codeberg.org/unspeaker/tek.git
synced 2026-03-13 11:50:44 +01:00
parent
236ee6b810
commit
cb989baf83
8 changed files with 674 additions and 283 deletions
500
Cargo.lock
generated
500
Cargo.lock
generated
|
|
@ -171,6 +171,29 @@ version = "1.0.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "175571dd1d178ced59193a6fc02dde1b972eb0bc56c892cde9beeceac5bf0f6b"
|
checksum = "175571dd1d178ced59193a6fc02dde1b972eb0bc56c892cde9beeceac5bf0f6b"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "atk"
|
||||||
|
version = "0.18.2"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "241b621213072e993be4f6f3a9e4b45f65b7e6faad43001be957184b7bb1824b"
|
||||||
|
dependencies = [
|
||||||
|
"atk-sys",
|
||||||
|
"glib",
|
||||||
|
"libc",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "atk-sys"
|
||||||
|
version = "0.18.2"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "c5e48b684b0ca77d2bbadeef17424c2ea3c897d44d566a1617e7e8f30614d086"
|
||||||
|
dependencies = [
|
||||||
|
"glib-sys",
|
||||||
|
"gobject-sys",
|
||||||
|
"libc",
|
||||||
|
"system-deps",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "atomic-waker"
|
name = "atomic-waker"
|
||||||
version = "1.1.2"
|
version = "1.1.2"
|
||||||
|
|
@ -296,6 +319,31 @@ version = "1.11.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "1e748733b7cbc798e1434b6ac524f0c1ff2ab456fe201501e6497c8417a4fc33"
|
checksum = "1e748733b7cbc798e1434b6ac524f0c1ff2ab456fe201501e6497c8417a4fc33"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "cairo-rs"
|
||||||
|
version = "0.18.5"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "8ca26ef0159422fb77631dc9d17b102f253b876fe1586b03b803e63a309b4ee2"
|
||||||
|
dependencies = [
|
||||||
|
"bitflags 2.11.0",
|
||||||
|
"cairo-sys-rs",
|
||||||
|
"glib",
|
||||||
|
"libc",
|
||||||
|
"once_cell",
|
||||||
|
"thiserror 1.0.69",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "cairo-sys-rs"
|
||||||
|
version = "0.18.2"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "685c9fa8e590b8b3d678873528d83411db17242a73fccaed827770ea0fedda51"
|
||||||
|
dependencies = [
|
||||||
|
"glib-sys",
|
||||||
|
"libc",
|
||||||
|
"system-deps",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "calloop"
|
name = "calloop"
|
||||||
version = "0.13.0"
|
version = "0.13.0"
|
||||||
|
|
@ -355,6 +403,16 @@ version = "1.1.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c"
|
checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "cfg-expr"
|
||||||
|
version = "0.15.8"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "d067ad48b8650848b989a59a86c6c36a995d02d2bf778d45c3c5d57bc2718f02"
|
||||||
|
dependencies = [
|
||||||
|
"smallvec",
|
||||||
|
"target-lexicon",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "cfg-if"
|
name = "cfg-if"
|
||||||
version = "1.0.4"
|
version = "1.0.4"
|
||||||
|
|
@ -395,7 +453,7 @@ version = "4.5.55"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "a92793da1a46a5f2a02a6f4c46c6496b28c43638adea8306fcb0caa1634f24e5"
|
checksum = "a92793da1a46a5f2a02a6f4c46c6496b28c43638adea8306fcb0caa1634f24e5"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"heck",
|
"heck 0.5.0",
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
"quote",
|
"quote",
|
||||||
"syn 2.0.117",
|
"syn 2.0.117",
|
||||||
|
|
@ -529,15 +587,6 @@ dependencies = [
|
||||||
"libc",
|
"libc",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "crossbeam-channel"
|
|
||||||
version = "0.5.15"
|
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
||||||
checksum = "82b8f8f868b36967f9606790d1903570de9ceaf870a7bf9fbbd3016d636a2cb2"
|
|
||||||
dependencies = [
|
|
||||||
"crossbeam-utils",
|
|
||||||
]
|
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "crossbeam-deque"
|
name = "crossbeam-deque"
|
||||||
version = "0.8.6"
|
version = "0.8.6"
|
||||||
|
|
@ -606,16 +655,6 @@ dependencies = [
|
||||||
"winapi",
|
"winapi",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "ctor"
|
|
||||||
version = "0.2.9"
|
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
||||||
checksum = "32a2785755761f3ddc1492979ce1e48d2c00d09311c39e4466429188f3dd6501"
|
|
||||||
dependencies = [
|
|
||||||
"quote",
|
|
||||||
"syn 2.0.117",
|
|
||||||
]
|
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "cursor-icon"
|
name = "cursor-icon"
|
||||||
version = "1.2.0"
|
version = "1.2.0"
|
||||||
|
|
@ -779,6 +818,16 @@ version = "2.3.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be"
|
checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "field-offset"
|
||||||
|
version = "0.3.6"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "38e2275cc4e4fc009b0669731a1e5ab7ebf11f469eaede2bab9309a5b4d6057f"
|
||||||
|
dependencies = [
|
||||||
|
"memoffset",
|
||||||
|
"rustc_version",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "find-msvc-tools"
|
name = "find-msvc-tools"
|
||||||
version = "0.1.9"
|
version = "0.1.9"
|
||||||
|
|
@ -912,6 +961,64 @@ dependencies = [
|
||||||
"slab",
|
"slab",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "gdk"
|
||||||
|
version = "0.18.2"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "d9f245958c627ac99d8e529166f9823fb3b838d1d41fd2b297af3075093c2691"
|
||||||
|
dependencies = [
|
||||||
|
"cairo-rs",
|
||||||
|
"gdk-pixbuf",
|
||||||
|
"gdk-sys",
|
||||||
|
"gio",
|
||||||
|
"glib",
|
||||||
|
"libc",
|
||||||
|
"pango",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "gdk-pixbuf"
|
||||||
|
version = "0.18.5"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "50e1f5f1b0bfb830d6ccc8066d18db35c487b1b2b1e8589b5dfe9f07e8defaec"
|
||||||
|
dependencies = [
|
||||||
|
"gdk-pixbuf-sys",
|
||||||
|
"gio",
|
||||||
|
"glib",
|
||||||
|
"libc",
|
||||||
|
"once_cell",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "gdk-pixbuf-sys"
|
||||||
|
version = "0.18.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "3f9839ea644ed9c97a34d129ad56d38a25e6756f99f3a88e15cd39c20629caf7"
|
||||||
|
dependencies = [
|
||||||
|
"gio-sys",
|
||||||
|
"glib-sys",
|
||||||
|
"gobject-sys",
|
||||||
|
"libc",
|
||||||
|
"system-deps",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "gdk-sys"
|
||||||
|
version = "0.18.2"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "5c2d13f38594ac1e66619e188c6d5a1adb98d11b2fcf7894fc416ad76aa2f3f7"
|
||||||
|
dependencies = [
|
||||||
|
"cairo-sys-rs",
|
||||||
|
"gdk-pixbuf-sys",
|
||||||
|
"gio-sys",
|
||||||
|
"glib-sys",
|
||||||
|
"gobject-sys",
|
||||||
|
"libc",
|
||||||
|
"pango-sys",
|
||||||
|
"pkg-config",
|
||||||
|
"system-deps",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "gethostname"
|
name = "gethostname"
|
||||||
version = "1.1.0"
|
version = "1.1.0"
|
||||||
|
|
@ -964,6 +1071,148 @@ version = "0.32.3"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "e629b9b98ef3dd8afe6ca2bd0f89306cec16d43d907889945bc5d6687f2f13c7"
|
checksum = "e629b9b98ef3dd8afe6ca2bd0f89306cec16d43d907889945bc5d6687f2f13c7"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "gio"
|
||||||
|
version = "0.18.4"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "d4fc8f532f87b79cbc51a79748f16a6828fb784be93145a322fa14d06d354c73"
|
||||||
|
dependencies = [
|
||||||
|
"futures-channel",
|
||||||
|
"futures-core",
|
||||||
|
"futures-io",
|
||||||
|
"futures-util",
|
||||||
|
"gio-sys",
|
||||||
|
"glib",
|
||||||
|
"libc",
|
||||||
|
"once_cell",
|
||||||
|
"pin-project-lite",
|
||||||
|
"smallvec",
|
||||||
|
"thiserror 1.0.69",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "gio-sys"
|
||||||
|
version = "0.18.1"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "37566df850baf5e4cb0dfb78af2e4b9898d817ed9263d1090a2df958c64737d2"
|
||||||
|
dependencies = [
|
||||||
|
"glib-sys",
|
||||||
|
"gobject-sys",
|
||||||
|
"libc",
|
||||||
|
"system-deps",
|
||||||
|
"winapi",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "glib"
|
||||||
|
version = "0.18.5"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "233daaf6e83ae6a12a52055f568f9d7cf4671dabb78ff9560ab6da230ce00ee5"
|
||||||
|
dependencies = [
|
||||||
|
"bitflags 2.11.0",
|
||||||
|
"futures-channel",
|
||||||
|
"futures-core",
|
||||||
|
"futures-executor",
|
||||||
|
"futures-task",
|
||||||
|
"futures-util",
|
||||||
|
"gio-sys",
|
||||||
|
"glib-macros",
|
||||||
|
"glib-sys",
|
||||||
|
"gobject-sys",
|
||||||
|
"libc",
|
||||||
|
"memchr",
|
||||||
|
"once_cell",
|
||||||
|
"smallvec",
|
||||||
|
"thiserror 1.0.69",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "glib-macros"
|
||||||
|
version = "0.18.5"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "0bb0228f477c0900c880fd78c8759b95c7636dbd7842707f49e132378aa2acdc"
|
||||||
|
dependencies = [
|
||||||
|
"heck 0.4.1",
|
||||||
|
"proc-macro-crate 2.0.2",
|
||||||
|
"proc-macro-error",
|
||||||
|
"proc-macro2",
|
||||||
|
"quote",
|
||||||
|
"syn 2.0.117",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "glib-sys"
|
||||||
|
version = "0.18.1"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "063ce2eb6a8d0ea93d2bf8ba1957e78dbab6be1c2220dd3daca57d5a9d869898"
|
||||||
|
dependencies = [
|
||||||
|
"libc",
|
||||||
|
"system-deps",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "gobject-sys"
|
||||||
|
version = "0.18.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "0850127b514d1c4a4654ead6dedadb18198999985908e6ffe4436f53c785ce44"
|
||||||
|
dependencies = [
|
||||||
|
"glib-sys",
|
||||||
|
"libc",
|
||||||
|
"system-deps",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "gtk"
|
||||||
|
version = "0.18.2"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "fd56fb197bfc42bd5d2751f4f017d44ff59fbb58140c6b49f9b3b2bdab08506a"
|
||||||
|
dependencies = [
|
||||||
|
"atk",
|
||||||
|
"cairo-rs",
|
||||||
|
"field-offset",
|
||||||
|
"futures-channel",
|
||||||
|
"gdk",
|
||||||
|
"gdk-pixbuf",
|
||||||
|
"gio",
|
||||||
|
"glib",
|
||||||
|
"gtk-sys",
|
||||||
|
"gtk3-macros",
|
||||||
|
"libc",
|
||||||
|
"pango",
|
||||||
|
"pkg-config",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "gtk-sys"
|
||||||
|
version = "0.18.2"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "8f29a1c21c59553eb7dd40e918be54dccd60c52b049b75119d5d96ce6b624414"
|
||||||
|
dependencies = [
|
||||||
|
"atk-sys",
|
||||||
|
"cairo-sys-rs",
|
||||||
|
"gdk-pixbuf-sys",
|
||||||
|
"gdk-sys",
|
||||||
|
"gio-sys",
|
||||||
|
"glib-sys",
|
||||||
|
"gobject-sys",
|
||||||
|
"libc",
|
||||||
|
"pango-sys",
|
||||||
|
"system-deps",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "gtk3-macros"
|
||||||
|
version = "0.18.2"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "52ff3c5b21f14f0736fed6dcfc0bfb4225ebf5725f3c0209edeec181e4d73e9d"
|
||||||
|
dependencies = [
|
||||||
|
"proc-macro-crate 1.3.1",
|
||||||
|
"proc-macro-error",
|
||||||
|
"proc-macro2",
|
||||||
|
"quote",
|
||||||
|
"syn 2.0.117",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "hashbrown"
|
name = "hashbrown"
|
||||||
version = "0.15.5"
|
version = "0.15.5"
|
||||||
|
|
@ -981,6 +1230,12 @@ version = "0.16.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100"
|
checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "heck"
|
||||||
|
version = "0.4.1"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "heck"
|
name = "heck"
|
||||||
version = "0.5.0"
|
version = "0.5.0"
|
||||||
|
|
@ -1092,10 +1347,7 @@ checksum = "92ecc6618181def0457392ccd0ee51198e065e016d1d527a7ac1b6dc7c1f09d2"
|
||||||
name = "jack"
|
name = "jack"
|
||||||
version = "0.13.0"
|
version = "0.13.0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"approx",
|
|
||||||
"bitflags 2.11.0",
|
"bitflags 2.11.0",
|
||||||
"crossbeam-channel",
|
|
||||||
"ctor",
|
|
||||||
"jack-sys",
|
"jack-sys",
|
||||||
"lazy_static",
|
"lazy_static",
|
||||||
"libc",
|
"libc",
|
||||||
|
|
@ -1328,6 +1580,15 @@ dependencies = [
|
||||||
"libc",
|
"libc",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "memoffset"
|
||||||
|
version = "0.9.1"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a"
|
||||||
|
dependencies = [
|
||||||
|
"autocfg",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "midly"
|
name = "midly"
|
||||||
version = "0.5.3"
|
version = "0.5.3"
|
||||||
|
|
@ -1413,7 +1674,7 @@ version = "0.7.5"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "ff32365de1b6743cb203b710788263c44a03de03802daf96092f2da4fe6ba4d7"
|
checksum = "ff32365de1b6743cb203b710788263c44a03de03802daf96092f2da4fe6ba4d7"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro-crate",
|
"proc-macro-crate 3.4.0",
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
"quote",
|
"quote",
|
||||||
"syn 2.0.117",
|
"syn 2.0.117",
|
||||||
|
|
@ -1687,6 +1948,31 @@ dependencies = [
|
||||||
"syn 2.0.117",
|
"syn 2.0.117",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "pango"
|
||||||
|
version = "0.18.3"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "7ca27ec1eb0457ab26f3036ea52229edbdb74dee1edd29063f5b9b010e7ebee4"
|
||||||
|
dependencies = [
|
||||||
|
"gio",
|
||||||
|
"glib",
|
||||||
|
"libc",
|
||||||
|
"once_cell",
|
||||||
|
"pango-sys",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "pango-sys"
|
||||||
|
version = "0.18.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "436737e391a843e5933d6d9aa102cb126d501e815b83601365a948a518555dc5"
|
||||||
|
dependencies = [
|
||||||
|
"glib-sys",
|
||||||
|
"gobject-sys",
|
||||||
|
"libc",
|
||||||
|
"system-deps",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "parking_lot"
|
name = "parking_lot"
|
||||||
version = "0.11.2"
|
version = "0.11.2"
|
||||||
|
|
@ -1854,13 +2140,57 @@ dependencies = [
|
||||||
"syn 2.0.117",
|
"syn 2.0.117",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "proc-macro-crate"
|
||||||
|
version = "1.3.1"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919"
|
||||||
|
dependencies = [
|
||||||
|
"once_cell",
|
||||||
|
"toml_edit 0.19.15",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "proc-macro-crate"
|
||||||
|
version = "2.0.2"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "b00f26d3400549137f92511a46ac1cd8ce37cb5598a96d382381458b992a5d24"
|
||||||
|
dependencies = [
|
||||||
|
"toml_datetime 0.6.3",
|
||||||
|
"toml_edit 0.20.2",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "proc-macro-crate"
|
name = "proc-macro-crate"
|
||||||
version = "3.4.0"
|
version = "3.4.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "219cb19e96be00ab2e37d6e299658a0cfa83e52429179969b0f0121b4ac46983"
|
checksum = "219cb19e96be00ab2e37d6e299658a0cfa83e52429179969b0f0121b4ac46983"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"toml_edit",
|
"toml_edit 0.23.10+spec-1.0.0",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "proc-macro-error"
|
||||||
|
version = "1.0.4"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
|
||||||
|
dependencies = [
|
||||||
|
"proc-macro-error-attr",
|
||||||
|
"proc-macro2",
|
||||||
|
"quote",
|
||||||
|
"syn 1.0.109",
|
||||||
|
"version_check",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "proc-macro-error-attr"
|
||||||
|
version = "1.0.4"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
|
||||||
|
dependencies = [
|
||||||
|
"proc-macro2",
|
||||||
|
"quote",
|
||||||
|
"version_check",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
|
|
@ -2269,6 +2599,15 @@ dependencies = [
|
||||||
"zmij",
|
"zmij",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "serde_spanned"
|
||||||
|
version = "0.6.9"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "bf41e0cfaf7226dca15e8197172c295a782857fcb97fad1808a166870dee75a3"
|
||||||
|
dependencies = [
|
||||||
|
"serde",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "serde_spanned"
|
name = "serde_spanned"
|
||||||
version = "1.0.4"
|
version = "1.0.4"
|
||||||
|
|
@ -2400,7 +2739,7 @@ version = "0.26.4"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be"
|
checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"heck",
|
"heck 0.5.0",
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
"quote",
|
"quote",
|
||||||
"rustversion",
|
"rustversion",
|
||||||
|
|
@ -2624,6 +2963,25 @@ dependencies = [
|
||||||
"unicode-ident",
|
"unicode-ident",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "system-deps"
|
||||||
|
version = "6.2.2"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "a3e535eb8dded36d55ec13eddacd30dec501792ff23a0b1682c38601b8cf2349"
|
||||||
|
dependencies = [
|
||||||
|
"cfg-expr",
|
||||||
|
"heck 0.5.0",
|
||||||
|
"pkg-config",
|
||||||
|
"toml 0.8.2",
|
||||||
|
"version-compare",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "target-lexicon"
|
||||||
|
version = "0.12.16"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "tek"
|
name = "tek"
|
||||||
version = "0.3.0"
|
version = "0.3.0"
|
||||||
|
|
@ -2632,7 +2990,10 @@ dependencies = [
|
||||||
"atomic_float",
|
"atomic_float",
|
||||||
"backtrace",
|
"backtrace",
|
||||||
"builder-pattern",
|
"builder-pattern",
|
||||||
|
"bumpalo",
|
||||||
"clap",
|
"clap",
|
||||||
|
"dizzle",
|
||||||
|
"gtk",
|
||||||
"jack",
|
"jack",
|
||||||
"konst",
|
"konst",
|
||||||
"livi",
|
"livi",
|
||||||
|
|
@ -2640,10 +3001,12 @@ dependencies = [
|
||||||
"palette",
|
"palette",
|
||||||
"proptest",
|
"proptest",
|
||||||
"proptest-derive",
|
"proptest-derive",
|
||||||
|
"quanta",
|
||||||
"rand 0.8.5",
|
"rand 0.8.5",
|
||||||
"symphonia",
|
"symphonia",
|
||||||
|
"tek",
|
||||||
"tengri",
|
"tengri",
|
||||||
"toml",
|
"toml 0.9.12+spec-1.1.0",
|
||||||
"uuid",
|
"uuid",
|
||||||
"wavers",
|
"wavers",
|
||||||
"winit",
|
"winit",
|
||||||
|
|
@ -2665,16 +3028,21 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "tengri"
|
name = "tengri"
|
||||||
version = "0.14.0"
|
version = "0.15.0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
|
"anyhow",
|
||||||
"atomic_float",
|
"atomic_float",
|
||||||
"better-panic",
|
"better-panic",
|
||||||
"crossterm 0.29.0",
|
"crossterm 0.29.0",
|
||||||
"dizzle",
|
"dizzle",
|
||||||
|
"heck 0.5.0",
|
||||||
"palette",
|
"palette",
|
||||||
|
"proc-macro2",
|
||||||
"quanta",
|
"quanta",
|
||||||
|
"quote",
|
||||||
"rand 0.8.5",
|
"rand 0.8.5",
|
||||||
"ratatui",
|
"ratatui",
|
||||||
|
"syn 2.0.117",
|
||||||
"unicode-width 0.2.0",
|
"unicode-width 0.2.0",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
@ -2743,6 +3111,18 @@ dependencies = [
|
||||||
"strict-num",
|
"strict-num",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "toml"
|
||||||
|
version = "0.8.2"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "185d8ab0dfbb35cf1399a6344d8484209c088f75f8f68230da55d48d95d43e3d"
|
||||||
|
dependencies = [
|
||||||
|
"serde",
|
||||||
|
"serde_spanned 0.6.9",
|
||||||
|
"toml_datetime 0.6.3",
|
||||||
|
"toml_edit 0.20.2",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "toml"
|
name = "toml"
|
||||||
version = "0.9.12+spec-1.1.0"
|
version = "0.9.12+spec-1.1.0"
|
||||||
|
|
@ -2751,11 +3131,20 @@ checksum = "cf92845e79fc2e2def6a5d828f0801e29a2f8acc037becc5ab08595c7d5e9863"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"indexmap",
|
"indexmap",
|
||||||
"serde_core",
|
"serde_core",
|
||||||
"serde_spanned",
|
"serde_spanned 1.0.4",
|
||||||
"toml_datetime",
|
"toml_datetime 0.7.5+spec-1.1.0",
|
||||||
"toml_parser",
|
"toml_parser",
|
||||||
"toml_writer",
|
"toml_writer",
|
||||||
"winnow",
|
"winnow 0.7.14",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "toml_datetime"
|
||||||
|
version = "0.6.3"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "7cda73e2f1397b1262d6dfdcef8aafae14d1de7748d66822d3bfeeb6d03e5e4b"
|
||||||
|
dependencies = [
|
||||||
|
"serde",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
|
|
@ -2767,6 +3156,30 @@ dependencies = [
|
||||||
"serde_core",
|
"serde_core",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "toml_edit"
|
||||||
|
version = "0.19.15"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421"
|
||||||
|
dependencies = [
|
||||||
|
"indexmap",
|
||||||
|
"toml_datetime 0.6.3",
|
||||||
|
"winnow 0.5.40",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "toml_edit"
|
||||||
|
version = "0.20.2"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "396e4d48bbb2b7554c944bde63101b5ae446cff6ec4a24227428f15eb72ef338"
|
||||||
|
dependencies = [
|
||||||
|
"indexmap",
|
||||||
|
"serde",
|
||||||
|
"serde_spanned 0.6.9",
|
||||||
|
"toml_datetime 0.6.3",
|
||||||
|
"winnow 0.5.40",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "toml_edit"
|
name = "toml_edit"
|
||||||
version = "0.23.10+spec-1.0.0"
|
version = "0.23.10+spec-1.0.0"
|
||||||
|
|
@ -2774,9 +3187,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "84c8b9f757e028cee9fa244aea147aab2a9ec09d5325a9b01e0a49730c2b5269"
|
checksum = "84c8b9f757e028cee9fa244aea147aab2a9ec09d5325a9b01e0a49730c2b5269"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"indexmap",
|
"indexmap",
|
||||||
"toml_datetime",
|
"toml_datetime 0.7.5+spec-1.1.0",
|
||||||
"toml_parser",
|
"toml_parser",
|
||||||
"winnow",
|
"winnow 0.7.14",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
|
|
@ -2785,7 +3198,7 @@ version = "1.0.9+spec-1.1.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "702d4415e08923e7e1ef96cd5727c0dfed80b4d2fa25db9647fe5eb6f7c5a4c4"
|
checksum = "702d4415e08923e7e1ef96cd5727c0dfed80b4d2fa25db9647fe5eb6f7c5a4c4"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"winnow",
|
"winnow 0.7.14",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
|
|
@ -2895,6 +3308,12 @@ dependencies = [
|
||||||
"wasm-bindgen",
|
"wasm-bindgen",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "version-compare"
|
||||||
|
version = "0.2.1"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "03c2856837ef78f57382f06b2b8563a2f512f7185d732608fd9176cb3b8edf0e"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "version_check"
|
name = "version_check"
|
||||||
version = "0.9.5"
|
version = "0.9.5"
|
||||||
|
|
@ -3425,6 +3844,15 @@ dependencies = [
|
||||||
"xkbcommon-dl",
|
"xkbcommon-dl",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "winnow"
|
||||||
|
version = "0.5.40"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876"
|
||||||
|
dependencies = [
|
||||||
|
"memchr",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "winnow"
|
name = "winnow"
|
||||||
version = "0.7.14"
|
version = "0.7.14"
|
||||||
|
|
@ -3450,7 +3878,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "ea61de684c3ea68cb082b7a88508a8b27fcc8b797d738bfc99a82facf1d752dc"
|
checksum = "ea61de684c3ea68cb082b7a88508a8b27fcc8b797d738bfc99a82facf1d752dc"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
"heck",
|
"heck 0.5.0",
|
||||||
"wit-parser",
|
"wit-parser",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
@ -3461,7 +3889,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "b7c566e0f4b284dd6561c786d9cb0142da491f46a9fbed79ea69cdad5db17f21"
|
checksum = "b7c566e0f4b284dd6561c786d9cb0142da491f46a9fbed79ea69cdad5db17f21"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
"heck",
|
"heck 0.5.0",
|
||||||
"indexmap",
|
"indexmap",
|
||||||
"prettyplease",
|
"prettyplease",
|
||||||
"syn 2.0.117",
|
"syn 2.0.117",
|
||||||
|
|
|
||||||
119
Cargo.toml
119
Cargo.toml
|
|
@ -1,53 +1,84 @@
|
||||||
[workspace]
|
[package]
|
||||||
resolver = "2"
|
name = "tek"
|
||||||
members = [ "./app" ]
|
|
||||||
exclude = [ "./tengri", "./dizzle" ]
|
|
||||||
|
|
||||||
[workspace.package]
|
|
||||||
edition = "2024"
|
edition = "2024"
|
||||||
version = "0.3.0"
|
version = "0.3.0"
|
||||||
|
|
||||||
|
[lib]
|
||||||
|
path = "app/tek.rs"
|
||||||
|
|
||||||
|
[[bin]]
|
||||||
|
name = "tek"
|
||||||
|
path = "app/tek.rs"
|
||||||
|
|
||||||
|
[target.'cfg(target_os = "linux")']
|
||||||
|
rustflags = ["-C", "link-arg=-fuse-ld=mold"]
|
||||||
|
|
||||||
|
[dependencies]
|
||||||
|
tengri = { path = "./tengri", features = [ "tui", "dsl" ] }
|
||||||
|
dizzle = { path = "./dizzle" }
|
||||||
|
jack = { path = "./rust-jack" }
|
||||||
|
|
||||||
|
ansi_term = { version = "0.12.1" }
|
||||||
|
atomic_float = { version = "1.0.0" }
|
||||||
|
backtrace = { version = "0.3.72" }
|
||||||
|
builder-pattern = { version = "0.4.2" }
|
||||||
|
bumpalo = { version = "3.19.0" }
|
||||||
|
konst = { version = "0.3.16", features = [ "rust_1_83" ] }
|
||||||
|
midly = { version = "0.5" }
|
||||||
|
palette = { version = "0.7.6", features = [ "random" ] }
|
||||||
|
quanta = { version = "0.12.3" }
|
||||||
|
rand = { version = "0.8.5" }
|
||||||
|
toml = { version = "0.9.2" }
|
||||||
|
xdg = { version = "3.0.0" }
|
||||||
|
|
||||||
|
clap = { optional = true, version = "4.5.4", features = [ "derive" ]}
|
||||||
|
livi = { optional = true, version = "0.7.4" }
|
||||||
|
symphonia = { optional = true, version = "0.5.4", features = [ "all" ] }
|
||||||
|
winit = { optional = true, version = "0.30.4", features = [ "x11" ]}
|
||||||
|
wavers = { optional = true, version = "1.4.3" }
|
||||||
|
uuid = { optional = true, version = "1.10.0", features = [ "v4" ] }
|
||||||
|
gtk = { optional = true, version = "0.18.1" }
|
||||||
|
|
||||||
|
#once_cell = "1.19.0"
|
||||||
|
#no_deadlocks = "1.3.2"
|
||||||
|
#suil-rs = { path = "../suil" }
|
||||||
|
#vst = "0.4.0"
|
||||||
|
#vst3 = "0.1.0"
|
||||||
|
|
||||||
|
[dev-dependencies]
|
||||||
|
tek = { path = "." }
|
||||||
|
proptest = { version = "^1" }
|
||||||
|
proptest-derive = { version = "^0.5.1" }
|
||||||
|
|
||||||
|
[features]
|
||||||
|
default = ["cli", "arranger", "sampler"]
|
||||||
|
|
||||||
|
arranger = ["port", "editor", "sequencer", "track", "scene", "clip", "select"]
|
||||||
|
browse = []
|
||||||
|
clap = []
|
||||||
|
cli = ["dep:clap"]
|
||||||
|
clip = []
|
||||||
|
clock = []
|
||||||
|
editor = []
|
||||||
|
host = ["lv2"]
|
||||||
|
lv2 = ["port", "livi"]
|
||||||
|
lv2_gui = ["lv2", "winit"]
|
||||||
|
meter = []
|
||||||
|
mixer = []
|
||||||
|
pool = []
|
||||||
|
port = []
|
||||||
|
sampler = ["port", "meter", "mixer", "browse", "symphonia", "wavers"]
|
||||||
|
scene = []
|
||||||
|
select = []
|
||||||
|
sequencer = ["port", "clock", "uuid", "pool"]
|
||||||
|
sf2 = []
|
||||||
|
track = []
|
||||||
|
vst2 = []
|
||||||
|
vst3 = []
|
||||||
|
|
||||||
[profile.release]
|
[profile.release]
|
||||||
lto = true
|
lto = true
|
||||||
|
|
||||||
[profile.coverage]
|
[profile.coverage]
|
||||||
inherits = "test"
|
inherits = "test"
|
||||||
lto = false
|
lto = false
|
||||||
|
|
||||||
[workspace.dependencies.tengri]
|
|
||||||
path = "./tengri/tengri"
|
|
||||||
features = [ "tui", "dsl" ]
|
|
||||||
|
|
||||||
[workspace.dependencies.tengri_proc]
|
|
||||||
path = "./tengri/proc"
|
|
||||||
|
|
||||||
[workspace.dependencies.jack]
|
|
||||||
path = "./rust-jack"
|
|
||||||
|
|
||||||
[workspace.dependencies]
|
|
||||||
tek = { path = "./tek" }
|
|
||||||
|
|
||||||
atomic_float = { version = "1.0.0" }
|
|
||||||
backtrace = { version = "0.3.72" }
|
|
||||||
bumpalo = { version = "3.19.0" }
|
|
||||||
clap = { version = "4.5.4", features = [ "derive" ] }
|
|
||||||
gtk = { version = "0.18.1" }
|
|
||||||
konst = { version = "0.3.16", features = [ "rust_1_83" ] }
|
|
||||||
livi = { version = "0.7.4" }
|
|
||||||
midly = { version = "0.5" }
|
|
||||||
palette = { version = "0.7.6", features = [ "random" ] }
|
|
||||||
quanta = { version = "0.12.3" }
|
|
||||||
rand = { version = "0.8.5" }
|
|
||||||
symphonia = { version = "0.5.4", features = [ "all" ] }
|
|
||||||
toml = { version = "0.9.2" }
|
|
||||||
uuid = { version = "1.10.0", features = [ "v4" ] }
|
|
||||||
wavers = { version = "1.4.3" }
|
|
||||||
winit = { version = "0.30.4", features = [ "x11" ] }
|
|
||||||
xdg = { version = "3.0.0" }
|
|
||||||
#once_cell = "1.19.0"
|
|
||||||
#no_deadlocks = "1.3.2"
|
|
||||||
#suil-rs = { path = "../suil" }
|
|
||||||
#vst = "0.4.0"
|
|
||||||
#vst3 = "0.1.0"
|
|
||||||
proptest = { version = "^1" }
|
|
||||||
proptest-derive = { version = "^0.5.1" }
|
|
||||||
|
|
|
||||||
|
|
@ -1,63 +0,0 @@
|
||||||
[package]
|
|
||||||
name = "tek"
|
|
||||||
edition = { workspace = true }
|
|
||||||
version = { workspace = true }
|
|
||||||
|
|
||||||
[lib]
|
|
||||||
path = "tek.rs"
|
|
||||||
|
|
||||||
[[bin]]
|
|
||||||
name = "tek"
|
|
||||||
path = "tek.rs"
|
|
||||||
|
|
||||||
[target.'cfg(target_os = "linux")']
|
|
||||||
rustflags = ["-C", "link-arg=-fuse-ld=mold"]
|
|
||||||
|
|
||||||
[dependencies]
|
|
||||||
ansi_term = "0.12.1"
|
|
||||||
atomic_float = { workspace = true }
|
|
||||||
backtrace = { workspace = true }
|
|
||||||
builder-pattern = "0.4.2"
|
|
||||||
clap = { workspace = true, optional = true }
|
|
||||||
jack = { workspace = true }
|
|
||||||
konst = { workspace = true }
|
|
||||||
livi = { workspace = true, optional = true }
|
|
||||||
midly = { workspace = true }
|
|
||||||
palette = { workspace = true }
|
|
||||||
rand = { workspace = true }
|
|
||||||
symphonia = { workspace = true, optional = true }
|
|
||||||
tengri = { workspace = true }
|
|
||||||
toml = { workspace = true }
|
|
||||||
uuid = { workspace = true, optional = true }
|
|
||||||
wavers = { workspace = true, optional = true }
|
|
||||||
winit = { workspace = true, optional = true }
|
|
||||||
xdg = { workspace = true }
|
|
||||||
|
|
||||||
[dev-dependencies]
|
|
||||||
proptest = { workspace = true }
|
|
||||||
proptest-derive = { workspace = true }
|
|
||||||
|
|
||||||
[features]
|
|
||||||
arranger = ["port", "editor", "sequencer", "editor", "track", "scene", "clip", "select"]
|
|
||||||
browse = []
|
|
||||||
clap = []
|
|
||||||
cli = ["dep:clap"]
|
|
||||||
clip = []
|
|
||||||
clock = []
|
|
||||||
default = ["cli", "arranger", "sampler", "lv2"]
|
|
||||||
editor = []
|
|
||||||
host = ["lv2"]
|
|
||||||
lv2 = ["port", "livi"]
|
|
||||||
lv2_gui = ["lv2", "winit"]
|
|
||||||
meter = []
|
|
||||||
mixer = []
|
|
||||||
pool = []
|
|
||||||
port = []
|
|
||||||
sampler = ["port", "meter", "mixer", "browse", "symphonia", "wavers"]
|
|
||||||
scene = []
|
|
||||||
select = []
|
|
||||||
sequencer = ["port", "clock", "uuid", "pool"]
|
|
||||||
sf2 = []
|
|
||||||
track = []
|
|
||||||
vst2 = []
|
|
||||||
vst3 = []
|
|
||||||
|
|
@ -1167,7 +1167,7 @@ mod view {
|
||||||
&connect.info)))))))))
|
&connect.info)))))))))
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn draw_header (state: &Lv2, to: &mut TuiOut, x: u16, y: u16, w: u16) {
|
#[cfg(feature = "lv2")] pub fn draw_header (state: &Lv2, to: &mut TuiOut, x: u16, y: u16, w: u16) {
|
||||||
let style = Style::default().gray();
|
let style = Style::default().gray();
|
||||||
let label1 = format!(" {}", state.name);
|
let label1 = format!(" {}", state.name);
|
||||||
to.blit(&label1, x + 1, y, Some(style.white().bold()));
|
to.blit(&label1, x + 1, y, Some(style.white().bold()));
|
||||||
|
|
|
||||||
237
app/tek_impls.rs
237
app/tek_impls.rs
|
|
@ -1850,129 +1850,6 @@ impl HasContent<TuiOut> for OctaveVertical {
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Lv2 {
|
|
||||||
|
|
||||||
pub fn new (
|
|
||||||
jack: &Jack<'static>,
|
|
||||||
name: &str,
|
|
||||||
uri: &str,
|
|
||||||
) -> Usually<Self> {
|
|
||||||
let lv2_world = livi::World::with_load_bundle(&uri);
|
|
||||||
let lv2_features = lv2_world.build_features(livi::FeaturesBuilder {
|
|
||||||
min_block_length: 1,
|
|
||||||
max_block_length: 65536,
|
|
||||||
});
|
|
||||||
let lv2_plugin = lv2_world.iter_plugins().nth(0)
|
|
||||||
.unwrap_or_else(||panic!("plugin not found: {uri}"));
|
|
||||||
Ok(Self {
|
|
||||||
jack: jack.clone(),
|
|
||||||
name: name.into(),
|
|
||||||
path: Some(String::from(uri).into()),
|
|
||||||
selected: 0,
|
|
||||||
mapping: false,
|
|
||||||
midi_ins: vec![],
|
|
||||||
midi_outs: vec![],
|
|
||||||
audio_ins: vec![],
|
|
||||||
audio_outs: vec![],
|
|
||||||
lv2_instance: unsafe {
|
|
||||||
lv2_plugin
|
|
||||||
.instantiate(lv2_features.clone(), 48000.0)
|
|
||||||
.expect(&format!("instantiate failed: {uri}"))
|
|
||||||
},
|
|
||||||
lv2_port_list: lv2_plugin.ports().collect::<Vec<_>>(),
|
|
||||||
lv2_input_buffer: Vec::with_capacity(Self::INPUT_BUFFER),
|
|
||||||
lv2_ui_thread: None,
|
|
||||||
lv2_world,
|
|
||||||
lv2_features,
|
|
||||||
lv2_plugin,
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
const INPUT_BUFFER: usize = 1024;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
fn lv2_jack_process (
|
|
||||||
Lv2 {
|
|
||||||
midi_ins, midi_outs, audio_ins, audio_outs,
|
|
||||||
lv2_features, lv2_instance, lv2_input_buffer, ..
|
|
||||||
}: &mut Lv2,
|
|
||||||
_client: &Client,
|
|
||||||
scope: &ProcessScope
|
|
||||||
) -> Control {
|
|
||||||
|
|
||||||
let urid = lv2_features.midi_urid();
|
|
||||||
|
|
||||||
lv2_input_buffer.clear();
|
|
||||||
|
|
||||||
for port in midi_ins.iter() {
|
|
||||||
let mut atom = ::livi::event::LV2AtomSequence::new(
|
|
||||||
&lv2_features,
|
|
||||||
scope.n_frames() as usize
|
|
||||||
);
|
|
||||||
for event in port.iter(scope) {
|
|
||||||
match event.bytes.len() {
|
|
||||||
3 => atom.push_midi_event::<3>(
|
|
||||||
event.time as i64,
|
|
||||||
urid,
|
|
||||||
&event.bytes[0..3]
|
|
||||||
).unwrap(),
|
|
||||||
_ => {}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
lv2_input_buffer.push(atom);
|
|
||||||
}
|
|
||||||
|
|
||||||
let mut outputs = vec![];
|
|
||||||
|
|
||||||
for _ in midi_outs.iter() {
|
|
||||||
outputs.push(::livi::event::LV2AtomSequence::new(
|
|
||||||
lv2_features,
|
|
||||||
scope.n_frames() as usize
|
|
||||||
));
|
|
||||||
}
|
|
||||||
|
|
||||||
let ports = ::livi::EmptyPortConnections::new()
|
|
||||||
.with_atom_sequence_inputs(lv2_input_buffer.iter())
|
|
||||||
.with_atom_sequence_outputs(outputs.iter_mut())
|
|
||||||
.with_audio_inputs(audio_ins.iter().map(|o|o.as_slice(scope)))
|
|
||||||
.with_audio_outputs(audio_outs.iter_mut().map(|o|o.as_mut_slice(scope)));
|
|
||||||
|
|
||||||
unsafe {
|
|
||||||
lv2_instance.run(scope.n_frames() as usize, ports).unwrap()
|
|
||||||
};
|
|
||||||
|
|
||||||
Control::Continue
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
#[cfg(feature = "lv2_gui")]
|
|
||||||
impl LV2PluginUI {
|
|
||||||
pub fn new () -> Usually<Self> {
|
|
||||||
Ok(Self { window: None })
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#[cfg(feature = "lv2_gui")]
|
|
||||||
impl ApplicationHandler for LV2PluginUI {
|
|
||||||
fn resumed (&mut self, event_loop: &ActiveEventLoop) {
|
|
||||||
self.window = Some(event_loop.create_window(Window::default_attributes()).unwrap());
|
|
||||||
}
|
|
||||||
fn window_event (&mut self, event_loop: &ActiveEventLoop, id: WindowId, event: WindowEvent) {
|
|
||||||
match event {
|
|
||||||
WindowEvent::CloseRequested => {
|
|
||||||
self.window.as_ref().unwrap().set_visible(false);
|
|
||||||
event_loop.exit();
|
|
||||||
},
|
|
||||||
WindowEvent::RedrawRequested => {
|
|
||||||
self.window.as_ref().unwrap().request_redraw();
|
|
||||||
}
|
|
||||||
_ => (),
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
impl Layout<TuiOut> for RmsMeter {}
|
impl Layout<TuiOut> for RmsMeter {}
|
||||||
impl Layout<TuiOut> for Log10Meter {}
|
impl Layout<TuiOut> for Log10Meter {}
|
||||||
impl Pool {
|
impl Pool {
|
||||||
|
|
@ -3825,7 +3702,7 @@ mod draw {
|
||||||
impl Draw<TuiOut> for MidiEditor {
|
impl Draw<TuiOut> for MidiEditor {
|
||||||
fn draw (&self, to: &mut TuiOut) { self.content().draw(to) }
|
fn draw (&self, to: &mut TuiOut) { self.content().draw(to) }
|
||||||
}
|
}
|
||||||
impl Draw<TuiOut> for Lv2 {
|
#[cfg(feature = "lv2")] impl Draw<TuiOut> for Lv2 {
|
||||||
fn draw (&self, to: &mut TuiOut) {
|
fn draw (&self, to: &mut TuiOut) {
|
||||||
let area = to.area();
|
let area = to.area();
|
||||||
let XYWH(x, y, _, height) = area;
|
let XYWH(x, y, _, height) = area;
|
||||||
|
|
@ -4001,7 +3878,7 @@ impl<J: HasJack<'static>> RegisterPorts for J {
|
||||||
#[cfg(feature = "port")] has!(Vec<MidiOutput>: |self: Sequencer|self.midi_outs);
|
#[cfg(feature = "port")] has!(Vec<MidiOutput>: |self: Sequencer|self.midi_outs);
|
||||||
|
|
||||||
audio!(App: tek_jack_process, tek_jack_event);
|
audio!(App: tek_jack_process, tek_jack_event);
|
||||||
audio!(Lv2: lv2_jack_process);
|
#[cfg(feature = "lv2")] audio!(Lv2: lv2_jack_process);
|
||||||
audio!(Sampler: sampler_jack_process);
|
audio!(Sampler: sampler_jack_process);
|
||||||
has!(Jack<'static>: |self: App|self.jack);
|
has!(Jack<'static>: |self: App|self.jack);
|
||||||
has!(Dialog: |self: App|self.dialog);
|
has!(Dialog: |self: App|self.dialog);
|
||||||
|
|
@ -4119,3 +3996,113 @@ handle!(TuiIn: |self: App, input|{
|
||||||
self.history.extend(history.into_iter());
|
self.history.extend(history.into_iter());
|
||||||
Ok(None)
|
Ok(None)
|
||||||
});
|
});
|
||||||
|
|
||||||
|
#[cfg(feature = "lv2")] impl Lv2 {
|
||||||
|
const INPUT_BUFFER: usize = 1024;
|
||||||
|
pub fn new (
|
||||||
|
jack: &Jack<'static>,
|
||||||
|
name: &str,
|
||||||
|
uri: &str,
|
||||||
|
) -> Usually<Self> {
|
||||||
|
let lv2_world = livi::World::with_load_bundle(&uri);
|
||||||
|
let lv2_features = lv2_world.build_features(livi::FeaturesBuilder {
|
||||||
|
min_block_length: 1,
|
||||||
|
max_block_length: 65536,
|
||||||
|
});
|
||||||
|
let lv2_plugin = lv2_world.iter_plugins().nth(0)
|
||||||
|
.unwrap_or_else(||panic!("plugin not found: {uri}"));
|
||||||
|
Ok(Self {
|
||||||
|
jack: jack.clone(),
|
||||||
|
name: name.into(),
|
||||||
|
path: Some(String::from(uri).into()),
|
||||||
|
selected: 0,
|
||||||
|
mapping: false,
|
||||||
|
midi_ins: vec![],
|
||||||
|
midi_outs: vec![],
|
||||||
|
audio_ins: vec![],
|
||||||
|
audio_outs: vec![],
|
||||||
|
lv2_instance: unsafe {
|
||||||
|
lv2_plugin
|
||||||
|
.instantiate(lv2_features.clone(), 48000.0)
|
||||||
|
.expect(&format!("instantiate failed: {uri}"))
|
||||||
|
},
|
||||||
|
lv2_port_list: lv2_plugin.ports().collect::<Vec<_>>(),
|
||||||
|
lv2_input_buffer: Vec::with_capacity(Self::INPUT_BUFFER),
|
||||||
|
lv2_ui_thread: None,
|
||||||
|
lv2_world,
|
||||||
|
lv2_features,
|
||||||
|
lv2_plugin,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#[cfg(feature = "lv2")] fn lv2_jack_process (
|
||||||
|
Lv2 {
|
||||||
|
midi_ins, midi_outs, audio_ins, audio_outs,
|
||||||
|
lv2_features, lv2_instance, lv2_input_buffer, ..
|
||||||
|
}: &mut Lv2,
|
||||||
|
_client: &Client,
|
||||||
|
scope: &ProcessScope
|
||||||
|
) -> Control {
|
||||||
|
let urid = lv2_features.midi_urid();
|
||||||
|
lv2_input_buffer.clear();
|
||||||
|
for port in midi_ins.iter() {
|
||||||
|
let mut atom = ::livi::event::LV2AtomSequence::new(
|
||||||
|
&lv2_features,
|
||||||
|
scope.n_frames() as usize
|
||||||
|
);
|
||||||
|
for event in port.iter(scope) {
|
||||||
|
match event.bytes.len() {
|
||||||
|
3 => atom.push_midi_event::<3>(
|
||||||
|
event.time as i64,
|
||||||
|
urid,
|
||||||
|
&event.bytes[0..3]
|
||||||
|
).unwrap(),
|
||||||
|
_ => {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
lv2_input_buffer.push(atom);
|
||||||
|
}
|
||||||
|
let mut outputs = vec![];
|
||||||
|
for _ in midi_outs.iter() {
|
||||||
|
outputs.push(::livi::event::LV2AtomSequence::new(
|
||||||
|
lv2_features,
|
||||||
|
scope.n_frames() as usize
|
||||||
|
));
|
||||||
|
}
|
||||||
|
let ports = ::livi::EmptyPortConnections::new()
|
||||||
|
.with_atom_sequence_inputs(lv2_input_buffer.iter())
|
||||||
|
.with_atom_sequence_outputs(outputs.iter_mut())
|
||||||
|
.with_audio_inputs(audio_ins.iter().map(|o|o.as_slice(scope)))
|
||||||
|
.with_audio_outputs(audio_outs.iter_mut().map(|o|o.as_mut_slice(scope)));
|
||||||
|
unsafe {
|
||||||
|
lv2_instance.run(scope.n_frames() as usize, ports).unwrap()
|
||||||
|
};
|
||||||
|
Control::Continue
|
||||||
|
}
|
||||||
|
|
||||||
|
#[cfg(feature = "lv2_gui")]
|
||||||
|
impl LV2PluginUI {
|
||||||
|
pub fn new () -> Usually<Self> {
|
||||||
|
Ok(Self { window: None })
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#[cfg(feature = "lv2_gui")]
|
||||||
|
impl ApplicationHandler for LV2PluginUI {
|
||||||
|
fn resumed (&mut self, event_loop: &ActiveEventLoop) {
|
||||||
|
self.window = Some(event_loop.create_window(Window::default_attributes()).unwrap());
|
||||||
|
}
|
||||||
|
fn window_event (&mut self, event_loop: &ActiveEventLoop, id: WindowId, event: WindowEvent) {
|
||||||
|
match event {
|
||||||
|
WindowEvent::CloseRequested => {
|
||||||
|
self.window.as_ref().unwrap().set_visible(false);
|
||||||
|
event_loop.exit();
|
||||||
|
},
|
||||||
|
WindowEvent::RedrawRequested => {
|
||||||
|
self.window.as_ref().unwrap().request_redraw();
|
||||||
|
}
|
||||||
|
_ => (),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
||||||
2
dizzle
2
dizzle
|
|
@ -1 +1 @@
|
||||||
Subproject commit eec89565c99eb23c2c46803de1bfaabbb6ef95b2
|
Subproject commit 89260648ff828ab3c55b566368007a7b83fc3fc8
|
||||||
32
shell.nix
32
shell.nix
|
|
@ -11,30 +11,38 @@
|
||||||
pkgs.cloc
|
pkgs.cloc
|
||||||
];
|
];
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
|
pkgs.libclang
|
||||||
pkgs.jack2
|
pkgs.jack2
|
||||||
pkgs.lilv
|
pkgs.lilv
|
||||||
pkgs.serd
|
pkgs.serd
|
||||||
pkgs.libclang
|
|
||||||
|
#pkgs.glib
|
||||||
|
#pkgs.atk
|
||||||
|
#pkgs.gdk
|
||||||
|
#pkgs.pango
|
||||||
];
|
];
|
||||||
VST3_SDK_DIR = "/home/user/Lab/Music/tek/vst3sdk/";
|
VST3_SDK_DIR = "/home/user/Lab/Music/tek/vst3sdk/";
|
||||||
LIBCLANG_PATH = "${pkgs.libclang.lib.outPath}/lib";
|
LIBCLANG_PATH = "${pkgs.libclang.lib.outPath}/lib";
|
||||||
LD_LIBRARY_PATH = pkgs.lib.makeLibraryPath [
|
LD_LIBRARY_PATH = pkgs.lib.makeLibraryPath [
|
||||||
pkgs.pipewire.jack
|
pkgs.pipewire.jack
|
||||||
|
|
||||||
# for ChowKick.lv2:
|
# for ChowKick.lv2:
|
||||||
pkgs.freetype
|
#pkgs.freetype
|
||||||
pkgs.libgcc.lib
|
#pkgs.libgcc.lib
|
||||||
|
|
||||||
# for Panagement
|
# for Panagement
|
||||||
pkgs.xorg.libX11
|
#pkgs.xorg.libX11
|
||||||
pkgs.xorg.libXcursor
|
#pkgs.xorg.libXcursor
|
||||||
pkgs.xorg.libXi
|
#pkgs.xorg.libXi
|
||||||
pkgs.libxkbcommon
|
#pkgs.libxkbcommon
|
||||||
pkgs.lilv
|
#pkgs.lilv
|
||||||
pkgs.serd
|
#pkgs.serd
|
||||||
#suil
|
#suil
|
||||||
|
|
||||||
# for Helm:
|
# for Helm:
|
||||||
pkgs.alsa-lib
|
#pkgs.alsa-lib
|
||||||
pkgs.curl
|
#pkgs.curl
|
||||||
pkgs.libglvnd
|
#pkgs.libglvnd
|
||||||
#xorg_sys_opengl
|
#xorg_sys_opengl
|
||||||
];
|
];
|
||||||
in pkgs.mkShell.override {
|
in pkgs.mkShell.override {
|
||||||
|
|
|
||||||
2
tengri
2
tengri
|
|
@ -1 +1 @@
|
||||||
Subproject commit 006cddcc16868aa626ecca6abf1c0f00523402fc
|
Subproject commit 06f8ed3ae3a5d0458036ba816f244df11c6b1277
|
||||||
Loading…
Add table
Add a link
Reference in a new issue