v0.3.0 da0887c

.goreleaser.yaml RawHistoryFolder

1# Builds the GitHub release for a pushed v* tag (.github/workflows/release.yml)
2# 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.
4version: 2
5
6project_name: neferbar
7
8before:
9  hooks:
10    - go mod verify
11
12builds:
13  - id: neferbar
14    main: ./cmd/neferbar
15    binary: neferbar
16    env:
17      - CGO_ENABLED=0
18    goos: [linux]
19    goarch: [amd64, arm64]
20    flags:
21      - -trimpath
22      - -buildmode=pie
23    ldflags:
24      - -s -w -X main.version={{ .Version }}
25    # Same inputs give the same binary.
26    mod_timestamp: "{{ .CommitTimestamp }}"
27
28archives:
29  - id: neferbar
30    ids: [neferbar]
31    name_template: "{{ .ProjectName }}_{{ .Version }}_{{ .Os }}_{{ .Arch }}"
32    formats: [tar.gz]
33    # Everything the PKGBUILD package() installs, at the paths of the repo.
34    files:
35      - LICENSE
36      - README.md
37      - examples/**/*
38
39checksum:
40  name_template: checksums.txt
41  algorithm: sha256
42
43snapshot:
44  version_template: "{{ incpatch .Version }}-next"
45
46git:
47  tag_sort: -version:refname
48
49changelog:
50  sort: asc
51  use: github
52  filters:
53    exclude:
54      - "^style(\\([^)]+\\))?:"
55      - "^test(\\([^)]+\\))?:"
56  groups:
57    - title: Added
58      regexp: "^feat(\\([^)]+\\))?!?:"
59      order: 0
60    - title: Fixed
61      regexp: "^fix(\\([^)]+\\))?!?:"
62      order: 1
63    - title: Performance
64      regexp: "^perf(\\([^)]+\\))?!?:"
65      order: 2
66    - title: Changed
67      regexp: "^(refactor|build)(\\([^)]+\\))?!?:"
68      order: 3
69    - title: Documentation
70      regexp: "^docs(\\([^)]+\\))?!?:"
71      order: 4
72    - title: Maintenance
73      regexp: "^(chore|ci)(\\([^)]+\\))?!?:"
74      order: 5
75    - title: Other changes
76      order: 999
77
78release:
79  github:
80    owner: bnema
81    name: neferbar
82  draft: false
83  prerelease: auto
84  mode: replace
85  header: |
86    ## neferbar {{ .Tag }}
87
88    ### Install on Arch Linux
89
90    ```sh
91    paru -S neferbar-bin   # this release, pre-built (x86_64, aarch64)
92    paru -S neferbar-git   # latest main, built from source
93    ```
94
95    ### Install the pre-built archive
96
97    Linux amd64 and arm64. Replace `amd64` with `arm64` on ARM.
98
99    ```sh
100    gh release download {{ .Tag }} -R bnema/neferbar -p 'neferbar_{{ .Version }}_linux_amd64.tar.gz' -p checksums.txt
101    sha256sum -c --ignore-missing checksums.txt
102    gh attestation verify neferbar_{{ .Version }}_linux_amd64.tar.gz -R bnema/neferbar
103    ```
104
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 }}
110
111aurs:
112  - name: neferbar-bin
113    ids: [neferbar]
114    homepage: https://github.com/bnema/neferbar
115    description: One-cell-high, terminal-style status bar for Wayland, driven by scripts
116    maintainers:
117      - "bnema <b at bnema dot dev>"
118    license: MIT
119    # The release workflow verifies and publishes the generated PKGBUILD.
120    skip_upload: true
121    provides: [neferbar]
122    conflicts: [neferbar, neferbar-git]
123    # Loaded at runtime (purego, no cgo): not seen by makepkg's library scan.
124    # fontconfig provides fc-match, which finds the font files.
125    depends:
126      - glibc
127      - fontconfig
128      - libxkbcommon
129      - vulkan-icd-loader
130      - vulkan-driver
131    optdepends:
132      - "ttf-jetbrains-mono-nerd: default font, with the icons modules print"
133    package: |-
134      install -Dm755 ./neferbar "${pkgdir}/usr/bin/neferbar"
135      install -Dm644 ./README.md "${pkgdir}/usr/share/doc/neferbar/README.md"
136      cp -r ./examples "${pkgdir}/usr/share/doc/neferbar/examples"
137      install -Dm644 ./LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"

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