Do the typst tests past? Does the binary work?

The typst-cli tests pass and the binary works (I am currently using it for a small project). For the typst library, the tests require typst_dev_assets which isn't packaged in crates.io or referred to in the typst crate, so I would need to point rust-typst to the GitHub version instead of the Crates version or make it modify the Crates version to load typst_dev_assets correctly, and also add rust-typst-dev-assets to Guix which would point to the typst/typst-dev-assets GitHub repo (not sure whether I should do this or just disable tests, and should this also go in crates-io.scm or a different file).

I believe there as a package manager for typst, so if typst packages will be included in guix, would be worth creating a separate file, otherwise the typst cli package could go in markup.scm.

From what I'm seeing the `typst compile` command, which generates the file, also downloads imported packages from Typst Universe but also accepts local and custom directories, so creating a separate typst.scm file would probably be good.

On Thu, Jul 11, 2024, at 20:34, kiasoc5 wrote:
On 7/11/24 02:21, Ethan Reece wrote:
> Hello,

> I created a file that packages Typst and its dependencies, and I'm 
> trying to figure out how to contribute it to the Guix project. What I've 
> done to generate the file:

>   * guix import -i typst-guix.scm crate --recursive
>     --recursive-dev-dependencies --allow-yanked typst-cli
>   * I had to run this again for pretty_assertions@0.5 for some reason
>   * Marked the modules licensed as "Unicode-3.0" as license:unicode
>   * Marked the modules licensed as "Apache-2.0 with LLVM-exception" as
>     license:asl2.0
>   * Added a snippet at the end (generated with GPT but appears to work)
>     that allows me to build everything in it using "guix build -m
>     typst-guix.scm" and used this to verify that everything builds
>   * Bumped a few packages from rust-1.75 to rust-1.76 that were
>     complaining about it
>   * For the packages where tests or build failed, disabled tests or
>     build for that package so that there are no errors when I run the
>     guix build command
>   * Added pkg-config and openssl as dependencies for rust-typst-cli-0.11

> The file has about 2500 lines worth of dependencies, and I'm a bit 
> confused on how I should handle that. Should I redo all of this on 
> "crates-io.scm" or a different file? What branch should I do this on? 
> Should rust-typst-cli be changed to just typst or put in a different 
> file as that?

> - Ethan

Good job getting this to work!

Do the typst tests past? Does the binary work?

I believe that all the crates that came from crates.io should go into 
crates-io.scm. The typst binary package should simply be called "typst" 
unless there is a need to distinguish between a cli and gui version. I 
believe there as a package manager for typst, so if typst packages will 
be included in guix, would be worth creating a separate file, otherwise 
the typst cli package could go in markup.scm. I'll let more experienced 
members confirm or deny these assertions.