31 lines
1.2 KiB
Bash
31 lines
1.2 KiB
Bash
|
|
#!/usr/bin/env nix-shell
|
||
|
|
#!nix-shell -i bash -p curl jq git nix-prefetch-git common-updater-scripts gnused nix-update
|
||
|
|
|
||
|
|
set -euo pipefail
|
||
|
|
|
||
|
|
OWNER="wez"
|
||
|
|
REPO="wezterm"
|
||
|
|
|
||
|
|
NIXPKGS_ROOT=$(git rev-parse --show-toplevel)
|
||
|
|
PACKAGE_NIX_ATTR_PATH="wezterm"
|
||
|
|
|
||
|
|
# For wezterm, the version is 0-unstable-YYYY-MM-DD, so we need to get the commit date
|
||
|
|
# from the latest commit, not the release tag.
|
||
|
|
# We also need the latest commit SHA for the rev.
|
||
|
|
|
||
|
|
LATEST_COMMIT_INFO=$(curl ${GITHUB_TOKEN:+--user ":$GITHUB_TOKEN"} --location --silent "https://api.github.com/repos/$OWNER/$REPO/commits/HEAD")
|
||
|
|
LATEST_REV=$(echo "$LATEST_COMMIT_INFO" | jq --raw-output '.sha')
|
||
|
|
COMMIT_DATE=$(echo "$LATEST_COMMIT_INFO" | jq --raw-output '.commit.author.date' | cut -d 'T' -f 1)
|
||
|
|
|
||
|
|
NEW_VERSION="0-unstable-$COMMIT_DATE"
|
||
|
|
|
||
|
|
FETCH_JSON=$(nix-prefetch-git --url "https://github.com/$OWNER/$REPO" --rev "$LATEST_REV" --fetch-submodules)
|
||
|
|
FETCH_HASH=$(echo "$FETCH_JSON" | jq --raw-output .hash)
|
||
|
|
|
||
|
|
(cd "$NIXPKGS_ROOT" && nix-update wezterm)
|
||
|
|
(cd "$NIXPKGS_ROOT" && update-source-version "$PACKAGE_NIX_ATTR_PATH" "$NEW_VERSION" "$FETCH_HASH" --rev="$LATEST_REV")
|
||
|
|
|
||
|
|
sed -i -e "s#version = \".*\"#version = \"$NEW_VERSION\"#" "$NIXPKGS_ROOT/pkgs/by-name/we/wezterm/package.nix"
|
||
|
|
|
||
|
|
echo "Wezterm update script finished."
|