daydream

A small matrix web client written in rust
git clone git://archive.git.mtrnord.blog/daydream-mx/daydream.git
Log | Files | Refs | README | LICENSE

Makefile.toml (3914B)


      1 [config]
      2 skip_core_tasks = true
      3 
      4 [tasks.format]
      5 install_crate = { crate_name = "rustfmt", rustup_component_name = "rustfmt", binary = "rustfmt", test_arg = "--help" }
      6 command = "cargo"
      7 args = ["fmt"]
      8 
      9 [tasks.ruma-docs]
     10 command = "cargo"
     11 args = ["doc", "-p", "ruma", "--open"]
     12 
     13 [tasks.wasm-clean]
     14 script_runner = "@rust"
     15 script = [
     16 '''
     17 fn main() -> std::io::Result<()> {
     18     if std::path::Path::new("./dist").exists() {
     19         std::fs::remove_dir_all("./dist")?;
     20     }
     21     Ok(())
     22 }
     23 '''
     24 ]
     25 
     26 [tasks.dist-folder]
     27 script_runner = "@rust"
     28 script = [
     29 '''
     30 fn main() -> std::io::Result<()> {
     31     std::fs::create_dir_all("./dist")?;
     32     Ok(())
     33 }
     34 '''
     35 ]
     36 
     37 [tasks.dist]
     38 # TODO add scss task when it works
     39 dependencies = ["format", "wasm-clean", "update-translations", "dist-folder", "scss", "pure-build-app", "wasm-build", "pure-build-worker", "wasm-build-worker", "copy-files"]
     40 
     41 [tasks.dist-debug]
     42 # TODO add scss task when it works
     43 dependencies = ["format", "wasm-clean", "update-translations", "dist-folder", "scss", "pure-build-app-debug", "wasm-build-debug", "pure-build-worker-debug", "wasm-build-worker-debug", "copy-files"]
     44 
     45 [tasks.run]
     46 watch = {watch = ["./src", "./static", "./startup_helper"], poll = true}
     47 dependencies = ["dist-debug", "start-server"]
     48 
     49 [tasks.start-server]
     50 script_runner = "@shell"
     51 script = [
     52 '''
     53 cd dist
     54 python3 -m http.server
     55 '''
     56 ]
     57 
     58 [tasks.pure-build-app]
     59 command = "cargo"
     60 args = ["build", "--release", "--target", "wasm32-unknown-unknown", "--bin", "daydream_app"]
     61 
     62 [tasks.pure-build-app-debug]
     63 command = "cargo"
     64 args = ["build", "--target", "wasm32-unknown-unknown", "--bin", "daydream_app"]
     65 
     66 [tasks.pure-build-worker]
     67 command = "cargo"
     68 args = ["build", "--release", "--target", "wasm32-unknown-unknown", "--bin", "daydream_worker"]
     69 
     70 [tasks.pure-build-worker-debug]
     71 command = "cargo"
     72 args = ["build", "--target", "wasm32-unknown-unknown", "--bin", "daydream_worker"]
     73 
     74 [tasks.wasm-build]
     75 install_crate = { crate_name = "wasm-bindgen-cli", binary = "wasm-bindgen", test_arg = "--help" }
     76 command = "wasm-bindgen"
     77 args = ["--no-typescript", "--out-dir", "./dist/", "--target", "web", "--out-name", "daydream", "./target/wasm32-unknown-unknown/release/daydream_app.wasm"]
     78 
     79 [tasks.wasm-build-worker]
     80 install_crate = { crate_name = "wasm-bindgen-cli", binary = "wasm-bindgen", test_arg = "--help" }
     81 command = "wasm-bindgen"
     82 args = ["--no-typescript", "--out-dir", "./dist/", "--target", "no-modules", "--out-name", "worker", "./target/wasm32-unknown-unknown/release/daydream_worker.wasm"]
     83 
     84 [tasks.wasm-build-debug]
     85 install_crate = { crate_name = "wasm-bindgen-cli", binary = "wasm-bindgen", test_arg = "--help" }
     86 command = "wasm-bindgen"
     87 args = ["--no-typescript", "--debug", "--out-dir", "./dist/", "--target", "web", "--out-name", "daydream", "./target/wasm32-unknown-unknown/debug/daydream_app.wasm"]
     88 
     89 [tasks.wasm-build-worker-debug]
     90 install_crate = { crate_name = "wasm-bindgen-cli", binary = "wasm-bindgen", test_arg = "--help" }
     91 command = "wasm-bindgen"
     92 args = ["--no-typescript", "--debug", "--out-dir", "./dist/", "--target", "no-modules", "--out-name", "worker", "./target/wasm32-unknown-unknown/debug/daydream_worker.wasm"]
     93 
     94 
     95 [tasks.copy-files]
     96 # TODO use rust
     97 script_runner = "@shell"
     98 script = [
     99 '''
    100 mkdir -p dist/images
    101 cp static/index_rust_only.html dist/index.html
    102 cp static/images/* dist/images/
    103 cp static/normalize.css dist/normalize.css
    104 '''
    105 ]
    106 
    107 [tasks.update-translations]
    108 condition = { platforms = ["mac", "linux"] }
    109 ignore_errors = true
    110 command = "cargo"
    111 args = ["i18n"]
    112 dependencies = ["install-xtr"]
    113 
    114 [tasks.install-xtr]
    115 condition = { platforms = ["mac", "linux"] }
    116 install_crate = { crate_name = "xtr", binary = "xtr", test_arg = "--help" }
    117 
    118 [tasks.scss]
    119 install_crate = { crate_name = "grass", binary = "grass", test_arg = "--help" }
    120 install_crate_args = ["--git", "https://github.com/connorskees/grass", "grass"]
    121 command = "grass"
    122 args = ["static/style.scss", "dist/style.css"]