summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGabriel Schneider <[email protected]>2026-10-01 13:55:09 -0300
committerGabriel Schneider <[email protected]>2026-10-01 13:55:09 -0300
commitd92a3f358ad15e98c400cd72ff6af680eccbdb49 (patch)
tree0b8036556a87c9e2b092995dbb2b52457ea77ab3
parentbbbaf75a6f231475a7b50be7eaadd141d9264215 (diff)
downloadpardes-d92a3f358ad15e98c400cd72ff6af680eccbdb49.tar.gz
pardes-d92a3f358ad15e98c400cd72ff6af680eccbdb49.zip
Install offers the built pardes 0.23 binaries first, each with its checksum, then building from source
`project.download` in style.typ holds the version, the SHA256SUMS link and a file per program (the static terminal build and the window build, with what each needs); install.typ shows, for each, the curl, the sha256sum -c of its own checksum and the move into ~/.local/bin, then the clone and the build as the alternative. Co-Authored-By: Claude Opus 5.5 <[email protected]>
-rw-r--r--docs/typ/install.typ23
-rw-r--r--docs/typ/style.typ17
2 files changed, 29 insertions, 11 deletions
diff --git a/docs/typ/install.typ b/docs/typ/install.typ
index f54cda46..c293b3fb 100644
--- a/docs/typ/install.typ
+++ b/docs/typ/install.typ
@@ -1,16 +1,23 @@
-// Installing pardes: the clone and the build, included by setup.typ and by
-// the site's landing page, so it is written once. The mirrors come from
-// `project` in style.typ.
+// Installing pardes: the downloads, else the clone and the build, included
+// by setup.typ and by the site's landing page, so it is written once. The
+// downloads and the mirrors come from `project` in style.typ.
#import "style.typ": cmd, project
+#if project.download != none {
+ let d = project.download
+ for f in d.files {
+ let name = f.url.split("/").last()
+ [pardes #d.version, #f.what:]
+ cmd("curl -LO " + f.url + "\necho '" + f.sha256 + " " + name + "' | sha256sum -c\nchmod +x " + name + " && mv " + name + " ~/.local/bin/" + f.program)
+ }
+ [The checksums are also in #link(d.sums)[`SHA256SUMS`].]
+ parbreak()
+ [Or build it from source:]
+}
+
#let first = project.mirrors.first()
#cmd("git clone " + first.clone + " && cd pardes")
-#if project.download != none [
- A static #raw(project.download.arch) binary: #link(project.download.url)[#raw(project.download.url.split("/").last())]
- (sha256 #raw(project.download.sha256)). Or build it:
-]
-
With Zig 0.16 (the build fetches everything else; once that is
downloaded, a first build from a clean cache took 62 seconds on 16 cores):
#cmd("# pardes, in a terminal\nzig build -Dplatform=tty --prefix ~/.local")
diff --git a/docs/typ/style.typ b/docs/typ/style.typ
index c96b5e39..c7e91495 100644
--- a/docs/typ/style.typ
+++ b/docs/typ/style.typ
@@ -308,9 +308,20 @@
(name: "git.0x4200.cafe", web: "https://git.0x4200.cafe/pardes", clone: "https://git.0x4200.cafe/pardes.git"),
),
license: "ISC",
- // a built binary to download, when there is one:
- // (url: "...", sha256: "...", arch: "x86_64-linux")
- download: none,
+ // built binaries to download: the version they are, where the
+ // checksums are, and a file per program (install.typ shows them)
+ download: (
+ version: "0.23",
+ sums: "https://pub-66384ba880784f119ce95123b92fa5c6.r2.dev/SHA256SUMS",
+ files: (
+ (program: "pardes", what: "the terminal build, static, any x86_64 Linux",
+ url: "https://pub-66384ba880784f119ce95123b92fa5c6.r2.dev/pardes-x86_64-linux-static",
+ sha256: "9db75765a8ad2fc881164b98ff69f0d34ded582304428c28aee7f87ccb211061"),
+ (program: "pardes-gui", what: "the window, x86_64 Linux with glibc 2.29 or later; it loads Wayland or X11 and GL or Vulkan from the system",
+ url: "https://pub-66384ba880784f119ce95123b92fa5c6.r2.dev/pardes-gui-x86_64-linux",
+ sha256: "d788213d14e69ee32348cee9b707b046c71c208c6436d84988e76aaf117095da"),
+ ),
+ ),
)
/// A glossary: like #pairs, under its own heading. On paper the heading