diff --git a/.gitmodules b/.gitmodules index 868d33227be17871dbcf31b5fb5eb1631e42458a..cc1ec1f570726bcaf95b0d0ab629c8df00635e64 100644 --- a/.gitmodules +++ b/.gitmodules @@ -60,3 +60,7 @@ path = patches/jobserver-rs url = https://gitlab.redox-os.org/redox-os/jobserver-rs.git branch = redox +[submodule "pkgar"] + path = pkgar + url = https://gitlab.redox-os.org/redox-os/pkgar.git + branch = master diff --git a/cook.sh b/cook.sh index 9ce54ae418386b99f50f856701ec62d605da2723..aa19f96d73bc7ca1dac3cf223d973f8c238942ce 100755 --- a/cook.sh +++ b/cook.sh @@ -15,15 +15,17 @@ export PREPARE_COPY=1 if [ ! "$(uname -s)" = "Redox" ] then +function docgen { + CC=cc cargo run --release --manifest-path "$ROOT/docgen/Cargo.toml" --bin docgen -- "$@" +} function pkg { - CC=cc cargo run --release --manifest-path "$ROOT/pkgutils/Cargo.toml" --bin pkg -- $@ + CC=cc cargo run --release --manifest-path "$ROOT/pkgutils/Cargo.toml" --bin pkg -- "$@" } -function docgen { - CC=cc cargo run --release --manifest-path "$ROOT/docgen/Cargo.toml" --bin docgen -- $@ +function pkgar { + CC=cc cargo run --release --manifest-path "$ROOT/pkgar/Cargo.toml" --bin pkgar -- "$@" } - fi function usage { @@ -423,6 +425,33 @@ function op { unstage) rm -rfv stage ;; + pkg) + if [ ! -e "${ROOT}/build/secret.key" ] + then + mkdir -p "${ROOT}/build" + pkgar \ + keygen \ + --secret "${ROOT}/build/secret.key" \ + --public "${ROOT}/build/public.key" + fi + + pkgar \ + create \ + --secret "${ROOT}/build/secret.key" \ + --file stage.pkg \ + stage + + if command -v pigz > /dev/null + then + pigz --force stage.pkg + else + echo "Install pigz for increased performance" + gzip --force recipes/jeremy/stage.pkg + fi + ;; + unpkg) + rm -fv stage.pkg stage.pkg.gz + ;; tar) echo "name = \"$1\"" > "stage.toml" echo "version = \"$(op $1 version)\"" >> "stage.toml" diff --git a/pkgar b/pkgar new file mode 160000 index 0000000000000000000000000000000000000000..6855ee50a3beda271975aebce50196ebdb75d442 --- /dev/null +++ b/pkgar @@ -0,0 +1 @@ +Subproject commit 6855ee50a3beda271975aebce50196ebdb75d442