detached c0a556a

Merge 7a3b92c884e77765c3248ca12c5ad3c70980dcda into ed9eea0333a1e1c3e9759f3f1aac48b52ebe5dda

commit
c0a556ac7b80e9e815838953d3a35f65c96bbbbd
author
ermite · · 2026-10-22 05:39 UTC
merge of
ed9eea0 + 7a3b92c · diff against the first parent
signature
unsigned
3 files · +21 -19
M .github/workflows/release.yml +3 -7
@@ -8,7 +8,10 @@ concurrency:
88 group: release-${{ github.ref }}
99 cancel-in-progress: false
1010 jobs:
11+ # Releases are published by ermite (git.bnema.dev); the GitHub mirror
12+ # receives the tags but must not publish a second release or AUR push.
1113 check:
14+ if: github.server_url != 'https://github.com'
1215 uses: ./.github/workflows/ci.yml
1316
1417 release:
@@ -16,8 +19,6 @@ jobs:
1619 runs-on: ubuntu-latest
1720 permissions:
1821 contents: write # create the release
19- id-token: write # sign the provenance attestation
20- attestations: write
2122 steps:
2223 - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
2324 with:
@@ -33,11 +34,6 @@ jobs:
3334 args: release --clean
3435 env:
3536 GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
36- - uses: actions/attest-build-provenance@4d101475d8b20a2381f78447822ac1eab6504dd8 # v4.2.2
37- with:
38- subject-path: |
39- dist/*.tar.gz
40- dist/checksums.txt
4137 - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
4238 with:
4339 name: aur-bin
@@ -8,7 +8,10 @@ concurrency:
8 group: release-${{ github.ref }}8 group: release-${{ github.ref }}
9 cancel-in-progress: false9 cancel-in-progress: false
10 jobs:10 jobs:
11+ # Releases are published by ermite (git.bnema.dev); the GitHub mirror
12+ # receives the tags but must not publish a second release or AUR push.
11 check:13 check:
14+ if: github.server_url != 'https://github.com'
12 uses: ./.github/workflows/ci.yml15 uses: ./.github/workflows/ci.yml
13 16
14 release:17 release:
@@ -16,8 +19,6 @@ jobs:
16 runs-on: ubuntu-latest19 runs-on: ubuntu-latest
17 permissions:20 permissions:
18 contents: write # create the release21 contents: write # create the release
19- id-token: write # sign the provenance attestation
20- attestations: write
21 steps:22 steps:
22 - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.123 - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
23 with:24 with:
@@ -33,11 +34,6 @@ jobs:
33 args: release --clean34 args: release --clean
34 env:35 env:
35 GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}36 GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
36- - uses: actions/attest-build-provenance@4d101475d8b20a2381f78447822ac1eab6504dd8 # v4.2.2
37- with:
38- subject-path: |
39- dist/*.tar.gz
40- dist/checksums.txt
41 - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.137 - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
42 with:38 with:
43 name: aur-bin39 name: aur-bin
M .goreleaser.yaml +16 -10
@@ -1,10 +1,18 @@
1-# Builds the GitHub release for a pushed v* tag (.github/workflows/release.yml)
1+# Builds the ermite release for a pushed v* tag (.github/workflows/release.yml)
22 # and generates the neferbar-bin PKGBUILD. The workflow verifies that PKGBUILD
33 # with makepkg before it pushes it to the AUR, so GoReleaser never uploads it.
44 version: 2
55
66 project_name: neferbar
77
8+# Releases are published on ermite. In CI the runner sets GITHUB_API_URL and
9+# GITHUB_SERVER_URL to an address the job can reach; the public URLs are the
10+# fallback for a local run.
11+github_urls:
12+ api: '{{ or (index .Env "GITHUB_API_URL") "https://git.bnema.dev/-/github/api" }}/'
13+ upload: '{{ or (index .Env "GITHUB_API_URL") "https://git.bnema.dev/-/github/api" }}/uploads/'
14+ download: '{{ or (index .Env "GITHUB_SERVER_URL") "https://git.bnema.dev" }}/'
15+
816 before:
917 hooks:
1018 - go mod verify
@@ -48,7 +56,7 @@ git:
4856
4957 changelog:
5058 sort: asc
51- use: github
59+ use: git
5260 filters:
5361 exclude:
5462 - "^style(\\([^)]+\\))?:"
@@ -97,21 +105,19 @@ release:
97105 Linux amd64 and arm64. Replace `amd64` with `arm64` on ARM.
98106
99107 ```sh
100- gh release download {{ .Tag }} -R bnema/neferbar -p 'neferbar_{{ .Version }}_linux_amd64.tar.gz' -p checksums.txt
108+ curl -fLO https://git.bnema.dev/neferbar/releases/download/{{ .Tag }}/neferbar_{{ .Version }}_linux_amd64.tar.gz
109+ curl -fLO https://git.bnema.dev/neferbar/releases/download/{{ .Tag }}/checksums.txt
101110 sha256sum -c --ignore-missing checksums.txt
102- gh attestation verify neferbar_{{ .Version }}_linux_amd64.tar.gz -R bnema/neferbar
103111 ```
104112
105- The archive holds the `neferbar` binary, the example configs and scripts, the README and the license. See the [README](https://github.com/bnema/neferbar#readme) for runtime dependencies.
106- footer: |
107- ---
108-
109- **Full changelog**: https://github.com/bnema/neferbar/compare/{{ .PreviousTag }}...{{ .Tag }}
113+ The archive holds the `neferbar` binary, the example configs and scripts, the README and the license. See the [README](https://git.bnema.dev/neferbar) for runtime dependencies.
110114
111115 aurs:
112116 - name: neferbar-bin
113117 ids: [neferbar]
114- homepage: https://github.com/bnema/neferbar
118+ homepage: https://git.bnema.dev/neferbar
119+ # Public URL: github_urls.download is the CI-only relay address.
120+ url_template: 'https://git.bnema.dev/neferbar/releases/download/{{ .Tag }}/{{ .ArtifactName }}'
115121 description: One-cell-high, terminal-style status bar for Wayland, driven by scripts
116122 maintainers:
117123 - "bnema <b at bnema dot dev>"
@@ -1,10 +1,18 @@
1-# Builds the GitHub release for a pushed v* tag (.github/workflows/release.yml)1+# Builds the ermite release for a pushed v* tag (.github/workflows/release.yml)
2 # and generates the neferbar-bin PKGBUILD. The workflow verifies that PKGBUILD2 # and generates the neferbar-bin PKGBUILD. The workflow verifies that PKGBUILD
3 # with makepkg before it pushes it to the AUR, so GoReleaser never uploads it.3 # with makepkg before it pushes it to the AUR, so GoReleaser never uploads it.
4 version: 24 version: 2
5 5
6 project_name: neferbar6 project_name: neferbar
7 7
8+# Releases are published on ermite. In CI the runner sets GITHUB_API_URL and
9+# GITHUB_SERVER_URL to an address the job can reach; the public URLs are the
10+# fallback for a local run.
11+github_urls:
12+ api: '{{ or (index .Env "GITHUB_API_URL") "https://git.bnema.dev/-/github/api" }}/'
13+ upload: '{{ or (index .Env "GITHUB_API_URL") "https://git.bnema.dev/-/github/api" }}/uploads/'
14+ download: '{{ or (index .Env "GITHUB_SERVER_URL") "https://git.bnema.dev" }}/'
15+
8 before:16 before:
9 hooks:17 hooks:
10 - go mod verify18 - go mod verify
@@ -48,7 +56,7 @@ git:
48 56
49 changelog:57 changelog:
50 sort: asc58 sort: asc
51- use: github59+ use: git
52 filters:60 filters:
53 exclude:61 exclude:
54 - "^style(\\([^)]+\\))?:"62 - "^style(\\([^)]+\\))?:"
@@ -97,21 +105,19 @@ release:
97 Linux amd64 and arm64. Replace `amd64` with `arm64` on ARM.105 Linux amd64 and arm64. Replace `amd64` with `arm64` on ARM.
98 106
99 ```sh107 ```sh
100- gh release download {{ .Tag }} -R bnema/neferbar -p 'neferbar_{{ .Version }}_linux_amd64.tar.gz' -p checksums.txt108+ curl -fLO https://git.bnema.dev/neferbar/releases/download/{{ .Tag }}/neferbar_{{ .Version }}_linux_amd64.tar.gz
109+ curl -fLO https://git.bnema.dev/neferbar/releases/download/{{ .Tag }}/checksums.txt
101 sha256sum -c --ignore-missing checksums.txt110 sha256sum -c --ignore-missing checksums.txt
102- gh attestation verify neferbar_{{ .Version }}_linux_amd64.tar.gz -R bnema/neferbar
103 ```111 ```
104 112
105- The archive holds the `neferbar` binary, the example configs and scripts, the README and the license. See the [README](https://github.com/bnema/neferbar#readme) for runtime dependencies.113+ The archive holds the `neferbar` binary, the example configs and scripts, the README and the license. See the [README](https://git.bnema.dev/neferbar) for runtime dependencies.
106- footer: |
107- ---
108-
109- **Full changelog**: https://github.com/bnema/neferbar/compare/{{ .PreviousTag }}...{{ .Tag }}
110 114
111 aurs:115 aurs:
112 - name: neferbar-bin116 - name: neferbar-bin
113 ids: [neferbar]117 ids: [neferbar]
114- homepage: https://github.com/bnema/neferbar118+ homepage: https://git.bnema.dev/neferbar
119+ # Public URL: github_urls.download is the CI-only relay address.
120+ url_template: 'https://git.bnema.dev/neferbar/releases/download/{{ .Tag }}/{{ .ArtifactName }}'
115 description: One-cell-high, terminal-style status bar for Wayland, driven by scripts121 description: One-cell-high, terminal-style status bar for Wayland, driven by scripts
116 maintainers:122 maintainers:
117 - "bnema <b at bnema dot dev>"123 - "bnema <b at bnema dot dev>"
M packaging/aur/neferbar-git/PKGBUILD +2 -2
@@ -6,7 +6,7 @@ pkgver=0.0.0.r0.g0000000
66 pkgrel=1
77 pkgdesc='One-cell-high, terminal-style status bar for Wayland, driven by scripts (git version)'
88 arch=('x86_64' 'aarch64')
9-url='https://github.com/bnema/neferbar'
9+url='https://git.bnema.dev/neferbar'
1010 license=('MIT')
1111 # Loaded at runtime (purego, no cgo): not seen by makepkg's library scan.
1212 # fontconfig provides fc-match, which finds the font files.
@@ -15,7 +15,7 @@ makedepends=('go>=2:1.27' 'git')
1515 optdepends=('ttf-jetbrains-mono-nerd: default font, with the icons modules print')
1616 provides=('neferbar')
1717 conflicts=('neferbar' 'neferbar-bin')
18-source=('git+https://github.com/bnema/neferbar.git')
18+source=('git+https://git.bnema.dev/neferbar.git')
1919 sha256sums=('SKIP')
2020
2121 pkgver() {
@@ -6,7 +6,7 @@ pkgver=0.0.0.r0.g0000000
6 pkgrel=16 pkgrel=1
7 pkgdesc='One-cell-high, terminal-style status bar for Wayland, driven by scripts (git version)'7 pkgdesc='One-cell-high, terminal-style status bar for Wayland, driven by scripts (git version)'
8 arch=('x86_64' 'aarch64')8 arch=('x86_64' 'aarch64')
9-url='https://github.com/bnema/neferbar'9+url='https://git.bnema.dev/neferbar'
10 license=('MIT')10 license=('MIT')
11 # Loaded at runtime (purego, no cgo): not seen by makepkg's library scan.11 # Loaded at runtime (purego, no cgo): not seen by makepkg's library scan.
12 # fontconfig provides fc-match, which finds the font files.12 # fontconfig provides fc-match, which finds the font files.
@@ -15,7 +15,7 @@ makedepends=('go>=2:1.27' 'git')
15 optdepends=('ttf-jetbrains-mono-nerd: default font, with the icons modules print')15 optdepends=('ttf-jetbrains-mono-nerd: default font, with the icons modules print')
16 provides=('neferbar')16 provides=('neferbar')
17 conflicts=('neferbar' 'neferbar-bin')17 conflicts=('neferbar' 'neferbar-bin')
18-source=('git+https://github.com/bnema/neferbar.git')18+source=('git+https://git.bnema.dev/neferbar.git')
19 sha256sums=('SKIP')19 sha256sums=('SKIP')
20 20
21 pkgver() {21 pkgver() {

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 5

Tags 4

↑↓ moveenter openesc close