From e1dc1d2d48281ed08f52ef6009cadeb86d130ed7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bla=C5=BE=20Hrastnik?= Date: Tue, 11 May 2021 19:46:58 +0900 Subject: [PATCH] Fix release packaging. --- .github/workflows/release.yml | 68 ++++++++++++++++++++--------------- README.md | 9 +++-- {doc => docs}/architecture.md | 0 3 files changed, 46 insertions(+), 31 deletions(-) rename {doc => docs}/architecture.md (100%) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index f8fd14df..c7c4d2ad 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -86,49 +86,31 @@ jobs: aarch64-linux-gnu-strip \ /target/${{ matrix.target }}/release/hx - - name: Calculate tag name - run: | - name=dev - if [[ $GITHUB_REF == refs/tags/v* ]]; then - name=${GITHUB_REF:10} - fi - echo ::set-output name=val::$name - echo TAG=$name >> $GITHUB_ENV - id: tagname - - name: Build archive shell: bash run: | - # outdir="$(ci/cargo-out-dir "${{ env.TARGET_DIR }}")" - staging="helix-${{ env.RELEASE_VERSION }}-${{ matrix.target }}" - mkdir "$staging" - cp {README.md,LICENSE} "$staging/" - # cp {CHANGELOG.md,FAQ.md,GUIDE.md} "$staging/doc/" - # cp "$outdir"/{hx.bash,hx.fish,_hx.ps1} "$staging/complete/" - # cp complete/_hx "$staging/complete/" + mkdir dist if [ "${{ matrix.os }}" = "windows-2019" ]; then - cp "target/${{ matrix.target }}/release/hx.exe" "$staging/" - 7z a "$staging.zip" "$staging" - echo "ASSET=$staging.zip" >> $GITHUB_ENV + cp "target/${{ matrix.target }}/release/hx.exe" "dist/" else - # The man page is only generated on Unix systems. ¯\_(ツ)_/¯ - # cp "$outdir"/hx.1 "$staging/doc/" - cp "target/${{ matrix.target }}/release/hx" "$staging/" - tar czf "$staging.tar.gz" "$staging" - echo "ASSET=$staging.tar.gz" >> $GITHUB_ENV + cp "target/${{ matrix.target }}/release/hx" "dist/" fi - # package - uses: actions/upload-artifact@v1 with: - name: tarballs-${{ matrix.build }} - path: ${{ env.ASSET }} + name: bins-${{ matrix.build }} + path: dist publish: name: Publish needs: [dist] runs-on: ubuntu-latest steps: + - name: Checkout sources + uses: actions/checkout@v2 + with: + submodules: false + - uses: actions/download-artifact@v2 with: path: dist @@ -144,11 +126,39 @@ jobs: echo TAG=$name >> $GITHUB_ENV id: tagname + - name: Build archive + shell: bash + run: | + set -euxo pipefail + + rm -rf tmp + mkdir tmp + mkdir dist + + for dir in bins-* ; do + platform=${dir#"bins-"} + if [[ $platform =~ "windows" ]]; then + exe=".exe" + fi + pkgname=helix-$TAG-$platform + mkdir tmp/$pkgname + cp LICENSE README.md tmp/$pkgname + cp -r runtime tmp/$pkgname/ + mv bins-$platform/hx$exe tmp/$pkgname + chmod +x tmp/$pkgname/hx$exe + + if [ "$exe" = "" ]; then + tar cJf dist/$pkgname.tar.xz -C tmp $pkgname + else + (cd tmp && 7z a -r ../dist/$pkgname.zip $pkgname) + fi + done + - name: Upload binaries to release uses: svenstaro/upload-release-action@v2 with: repo_token: ${{ secrets.GITHUB_TOKEN }} - file: dist/**/* + file: dist/* file_glob: true tag: ${{ steps.tagname.outputs.val }} overwrite: true diff --git a/README.md b/README.md index 677a5852..e68f0884 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,15 @@ # Helix + +[![Build status](https://github.com/helix-editor/helix/workflows/ci/badge.svg)](https://github.com/helix-editor/helix/actions) + A kakoune / neovim inspired editor, written in Rust. The editing model is very heavily based on kakoune; during development I found myself agreeing with most of kakoune's design decisions. +For more information, see the [website](https://helix-editor.com). + # Features - Vim-like modal editing @@ -40,7 +45,7 @@ Some suggestions to get started: - You can look at the [good first issue](https://github.com/helix-editor/helix/labels/good%20first%20issue) label on the issue tracker. - Help with packaging on various distributions needed! -- If your preffered language is missing, integrating a tree-sitter grammar for +- If your preferred language is missing, integrating a tree-sitter grammar for it and defining syntax highlight queries for it is straight forward and doesn't require much knowledge of the internals. @@ -49,5 +54,5 @@ a good overview of the internals. # Getting help -Discuss the project on the community [Matrix channel](https://matrix.to/#/#helix-editor:example.com). +Discuss the project on the community [Matrix channel](https://matrix.to/#/#helix-editor:matrix.org). diff --git a/doc/architecture.md b/docs/architecture.md similarity index 100% rename from doc/architecture.md rename to docs/architecture.md