@@ -300,17 +300,22 @@ <h2 id="rust-and-cargo"><a class="header" href="#rust-and-cargo">Rust and Cargo<
300300< p > Other platforms and older distributions can get a Rust development toolchain
301301by going to < a href ="https://rustup.rs "> rustup.rs and following the installation instructions</ a > .</ p >
302302< h2 id ="cratesio "> < a class ="header " href ="#cratesio "> Crates.io</ a > </ h2 >
303- < p > This requires at least Rust 1.45 and Cargo to be installed. Once you have
303+ < p > This requires at least Rust 1.74 and Cargo to be installed. Once you have
304304installed Rust, type the following in the terminal:</ p >
305305< pre > < code > cargo install garden-tools
306306</ code > </ pre >
307- < p > This will download and compile garden for you. The only thing left to do is
307+ < p > This will download and compile < code > garden</ code > for you. The only thing left to do is
308308to add the Cargo < code > $HOME/.cargo/bin</ code > directory to your < code > $PATH</ code > .</ p >
309+ < p > The Garden graphical user interface is provided in a separate crate called < code > garden-gui</ code > .
310+ You can install Garden GUI using < code > cargo</ code > using Rust 1.81.0 or newer.</ p >
311+ < pre > < code > cargo install garden-gui
312+ </ code > </ pre >
309313< h2 id ="latest-using-cargo "> < a class ="header " href ="#latest-using-cargo "> Latest using Cargo</ a > </ h2 >
310314< p > The version published to crates.io will sometimes be behind the source
311315code repository. If you want to install the latest pre-release version then you can
312316build the Git version of Garden yourself using < code > cargo</ code > .</ p >
313317< pre > < code > cargo install --git https://gitlab.com/garden-rs/garden.git garden-tools
318+ cargo install --git https://gitlab.com/garden-rs/garden.git garden-gui
314319</ code > </ pre >
315320< h2 id ="install-using-homebrew "> < a class ="header " href ="#install-using-homebrew "> Install using Homebrew</ a > </ h2 >
316321< p > You can install < code > garden</ code > on macOS using < a href ="https://brew.sh/ "> Homebrew</ a > .</ p >
@@ -355,11 +360,17 @@ <h2 id="build-and-install-from-source-for-development"><a class="header" href="#
355360< pre > < code class ="language-bash "> git clone https://gitlab.com/garden-rs/garden.git
356361cd garden
357362
358- # Build ./target/debug/ garden
363+ # Build garden only
359364cargo build
360365
366+ # Build garden and garden-gui
367+ cargo build --workspace
368+
361369# Install $HOME/.cargo/bin/garden
362370cargo install --path .
371+
372+ # Install $HOME/.cargo/bin/garden-gui
373+ cargo install --path gui
363374</ code > </ pre >
364375< p > This will install < code > garden</ code > to < code > ~/.cargo/bin/garden</ code > by default.</ p >
365376< p > Once you have < code > garden</ code > installed then you can use Garden's < code > garden.yaml</ code > to run
@@ -1169,6 +1180,21 @@ <h2 id="garden-eval"><a class="header" href="#garden-eval">garden eval</a></h2>
11691180< p > When a tree is given then its variables are considered as well.</ p >
11701181< p > When a garden is specified then the garden's variables are also available for
11711182evaluation.</ p >
1183+ < h2 id ="garden-gui "> < a class ="header " href ="#garden-gui "> garden gui</ a > </ h2 >
1184+ < pre > < code > garden gui [<query>...]
1185+
1186+ # example
1187+ garden gui
1188+ </ code > </ pre >
1189+ < p > Garden has a graphical user interface for running command and queries.
1190+ < code > garden-gui</ code > is provided by a separate crate:</ p >
1191+ < pre > < code class ="language-bash "> cargo install garden-gui
1192+ </ code > </ pre >
1193+ < p > The top-most search bar allows you to input Tree Queries and see the set of trees that
1194+ the query would find.</ p >
1195+ < p > Custom commands are displayed in a grid of buttons. The contents of each command can be
1196+ seen by right-clicking a command button.</ p >
1197+ < p > Clicking on a command button will run that command against the current query.</ p >
11721198< h2 id ="garden-shell-1 "> < a class ="header " href ="#garden-shell-1 "> garden shell</ a > </ h2 >
11731199< pre > < code > garden shell <tree-query> [<tree>]
11741200
@@ -2379,6 +2405,25 @@ <h2 id="can-garden-print-out-each-command-in-a-multi-line-command-as-it-is-run">
23792405world
23802406</ code > </ pre >
23812407< div style ="break-before: page; page-break-before: always; "> </ div > < h1 id ="changelog "> < a class ="header " href ="#changelog "> Changelog</ a > </ h1 >
2408+ < h2 id ="v200 "> < a class ="header " href ="#v200 "> v2.0.0</ a > </ h2 >
2409+ < p > < em > Released 2025-01-26</ em > </ p >
2410+ < p > < strong > Features</ strong > :</ p >
2411+ < ul >
2412+ < li > A new < code > garden-gui</ code > graphical user interface for Garden is now available.
2413+ Garden GUI is provided as a separate < code > cargo install garden-gui</ code > crate.</ li >
2414+ </ ul >
2415+ < p > < strong > Development</ strong > :</ p >
2416+ < ul >
2417+ < li >
2418+ < p > The < code > dirs</ code > dependency was upgraded to v6.0.</ p >
2419+ </ li >
2420+ < li >
2421+ < p > The < code > thiserror</ code > dependency was upgraded to v2.0.</ p >
2422+ </ li >
2423+ < li >
2424+ < p > The < code > which</ code > dependency was upgraded to v7.0.</ p >
2425+ </ li >
2426+ </ ul >
23822427< h2 id ="v1101 "> < a class ="header " href ="#v1101 "> v1.10.1</ a > </ h2 >
23832428< p > < em > Released 2025-01-14</ em > </ p >
23842429< p > < strong > Features</ strong > :</ p >
@@ -2442,7 +2487,7 @@ <h2 id="v190"><a class="header" href="#v190">v1.9.0</a></h2>
24422487< p > Internal APIs for running commands were refactored.</ p >
24432488</ li >
24442489< li >
2445- < p > The < code > yaml-rust2</ code > dependency was upgraded to v0.9.0. </ p >
2490+ < p > The < code > yaml-rust2</ code > dependency was upgraded to v0.9.</ p >
24462491</ li >
24472492</ ul >
24482493< h2 id ="v180 "> < a class ="header " href ="#v180 "> v1.8.0</ a > </ h2 >
0 commit comments