on master help sign in
Fix release packaging.
e1dc1d2Blaž Hrastnik
.github/workflows/release.yml+39−29
@@ -86,49 +86,31 @@ jobs:
86 aarch64-linux-gnu-strip \
86 aarch64-linux-gnu-strip \
87 /target/${{ matrix.target }}/release/hx
87 /target/${{ matrix.target }}/release/hx
88
88
89− - name: Calculate tag name
90− run: |
91− name=dev
92− if [[ $GITHUB_REF == refs/tags/v* ]]; then
93− name=${GITHUB_REF:10}
94− fi
95− echo ::set-output name=val::$name
96− echo TAG=$name >> $GITHUB_ENV
97− id: tagname
98−
99 - name: Build archive
89 - name: Build archive
100 shell: bash
90 shell: bash
101 run: |
91 run: |
102− # outdir="$(ci/cargo-out-dir "${{ env.TARGET_DIR }}")"
103− staging="helix-${{ env.RELEASE_VERSION }}-${{ matrix.target }}"
104− mkdir "$staging"
92+ mkdir dist
105− cp {README.md,LICENSE} "$staging/"
106− # cp {CHANGELOG.md,FAQ.md,GUIDE.md} "$staging/doc/"
107− # cp "$outdir"/{hx.bash,hx.fish,_hx.ps1} "$staging/complete/"
108− # cp complete/_hx "$staging/complete/"
109 if [ "${{ matrix.os }}" = "windows-2019" ]; then
93 if [ "${{ matrix.os }}" = "windows-2019" ]; then
110− cp "target/${{ matrix.target }}/release/hx.exe" "$staging/"
94+ cp "target/${{ matrix.target }}/release/hx.exe" "dist/"
111− 7z a "$staging.zip" "$staging"
112− echo "ASSET=$staging.zip" >> $GITHUB_ENV
113 else
95 else
114− # The man page is only generated on Unix systems. ¯\_(ツ)_/¯
115− # cp "$outdir"/hx.1 "$staging/doc/"
116− cp "target/${{ matrix.target }}/release/hx" "$staging/"
96+ cp "target/${{ matrix.target }}/release/hx" "dist/"
117− tar czf "$staging.tar.gz" "$staging"
118− echo "ASSET=$staging.tar.gz" >> $GITHUB_ENV
119 fi
97 fi
120
98
121− # package
122 - uses: actions/upload-artifact@v1
99 - uses: actions/upload-artifact@v1
123 with:
100 with:
124− name: tarballs-${{ matrix.build }}
101+ name: bins-${{ matrix.build }}
125− path: ${{ env.ASSET }}
102+ path: dist
126
103
127 publish:
104 publish:
128 name: Publish
105 name: Publish
129 needs: [dist]
106 needs: [dist]
130 runs-on: ubuntu-latest
107 runs-on: ubuntu-latest
131 steps:
108 steps:
109+ - name: Checkout sources
110+ uses: actions/checkout@v2
111+ with:
112+ submodules: false
113+
132 - uses: actions/download-artifact@v2
114 - uses: actions/download-artifact@v2
133 with:
115 with:
134 path: dist
116 path: dist
@@ -144,11 +126,39 @@ jobs:
144 echo TAG=$name >> $GITHUB_ENV
126 echo TAG=$name >> $GITHUB_ENV
145 id: tagname
127 id: tagname
146
128
129+ - name: Build archive
130+ shell: bash
131+ run: |
132+ set -euxo pipefail
133+
134+ rm -rf tmp
135+ mkdir tmp
136+ mkdir dist
137+
138+ for dir in bins-* ; do
139+ platform=${dir#"bins-"}
140+ if [[ $platform =~ "windows" ]]; then
141+ exe=".exe"
142+ fi
143+ pkgname=helix-$TAG-$platform
144+ mkdir tmp/$pkgname
145+ cp LICENSE README.md tmp/$pkgname
146+ cp -r runtime tmp/$pkgname/
147+ mv bins-$platform/hx$exe tmp/$pkgname
148+ chmod +x tmp/$pkgname/hx$exe
149+
150+ if [ "$exe" = "" ]; then
151+ tar cJf dist/$pkgname.tar.xz -C tmp $pkgname
152+ else
153+ (cd tmp && 7z a -r ../dist/$pkgname.zip $pkgname)
154+ fi
155+ done
156+
147 - name: Upload binaries to release
157 - name: Upload binaries to release
148 uses: svenstaro/upload-release-action@v2
158 uses: svenstaro/upload-release-action@v2
149 with:
159 with:
150 repo_token: ${{ secrets.GITHUB_TOKEN }}
160 repo_token: ${{ secrets.GITHUB_TOKEN }}
151− file: dist/**/*
161+ file: dist/*
152 file_glob: true
162 file_glob: true
153 tag: ${{ steps.tagname.outputs.val }}
163 tag: ${{ steps.tagname.outputs.val }}
154 overwrite: true
164 overwrite: true
README.md+7−2
@@ -1,10 +1,15 @@
1# Helix
1# Helix
2
2
3+
4+[![Build status](https://github.com/helix-editor/helix/workflows/ci/badge.svg)](https://github.com/helix-editor/helix/actions)
5+
3A kakoune / neovim inspired editor, written in Rust.
6A kakoune / neovim inspired editor, written in Rust.
4
7
5The editing model is very heavily based on kakoune; during development I found
8The editing model is very heavily based on kakoune; during development I found
6myself agreeing with most of kakoune's design decisions.
9myself agreeing with most of kakoune's design decisions.
7
10
11+For more information, see the [website](https://helix-editor.com).
12+
8# Features
13# Features
9
14
10- Vim-like modal editing
15- Vim-like modal editing
@@ -40,7 +45,7 @@ Some suggestions to get started:
40
45
41- You can look at the [good first issue](https://github.com/helix-editor/helix/labels/good%20first%20issue) label on the issue tracker.
46- You can look at the [good first issue](https://github.com/helix-editor/helix/labels/good%20first%20issue) label on the issue tracker.
42- Help with packaging on various distributions needed!
47- Help with packaging on various distributions needed!
43−- If your preffered language is missing, integrating a tree-sitter grammar for
48+- If your preferred language is missing, integrating a tree-sitter grammar for
44 it and defining syntax highlight queries for it is straight forward and
49 it and defining syntax highlight queries for it is straight forward and
45 doesn't require much knowledge of the internals.
50 doesn't require much knowledge of the internals.
46
51
@@ -49,5 +54,5 @@ a good overview of the internals.
49
54
50# Getting help
55# Getting help
51
56
52−Discuss the project on the community [Matrix channel](https://matrix.to/#/#helix-editor:example.com).
57+Discuss the project on the community [Matrix channel](https://matrix.to/#/#helix-editor:matrix.org).
53
58
doc/architecture.md → docs/architecture.mdrenamed

The content is the same.