v0.6.1 3d41bc5

.goreleaser.yaml RawHistoryFolder

1# Builds the ermite release for a pushed v* tag (.github/workflows/release.yml)
2# and generates the nefercap-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: nefercap
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.
11github_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
16before:
17  hooks:
18    - go mod verify
19
20builds:
21  - id: nefercap
22    main: ./cmd/nefercap
23    binary: nefercap
24    env:
25      - CGO_ENABLED=0
26    goos: [linux]
27    goarch: [amd64, arm64]
28    flags:
29      - -trimpath
30      - -buildmode=pie
31    ldflags:
32      - -s -w -X main.version={{ .Version }}
33    # Same inputs give the same binary.
34    mod_timestamp: "{{ .CommitTimestamp }}"
35
36archives:
37  - id: nefercap
38    ids: [nefercap]
39    name_template: "{{ .ProjectName }}_{{ .Version }}_{{ .Os }}_{{ .Arch }}"
40    formats: [tar.gz]
41    # Everything the PKGBUILD package() installs, at the paths of the repo.
42    files:
43      - LICENSE
44      - README.md
45
46checksum:
47  name_template: checksums.txt
48  algorithm: sha256
49
50snapshot:
51  version_template: "{{ incpatch .Version }}-next"
52
53git:
54  tag_sort: -version:refname
55
56changelog:
57  sort: asc
58  use: git
59  filters:
60    exclude:
61      - "^style(\\([^)]+\\))?:"
62      - "^test(\\([^)]+\\))?:"
63  groups:
64    - title: Added
65      regexp: "^feat(\\([^)]+\\))?!?:"
66      order: 0
67    - title: Fixed
68      regexp: "^fix(\\([^)]+\\))?!?:"
69      order: 1
70    - title: Performance
71      regexp: "^perf(\\([^)]+\\))?!?:"
72      order: 2
73    - title: Changed
74      regexp: "^(refactor|build)(\\([^)]+\\))?!?:"
75      order: 3
76    - title: Documentation
77      regexp: "^docs(\\([^)]+\\))?!?:"
78      order: 4
79    - title: Maintenance
80      regexp: "^(chore|ci)(\\([^)]+\\))?!?:"
81      order: 5
82    - title: Other changes
83      order: 999
84
85release:
86  github:
87    owner: bnema
88    name: nefercap
89  draft: false
90  prerelease: auto
91  mode: replace
92  header: |
93    ## nefercap {{ .Tag }}
94
95    ### Install on Arch Linux
96
97    ```sh
98    paru -S nefercap-bin   # this release, pre-built (x86_64, aarch64)
99    paru -S nefercap-git   # latest main, built from source
100    ```
101
102    ### Install the pre-built archive
103
104    Linux amd64 and arm64. Replace `amd64` with `arm64` on ARM.
105
106    ```sh
107    curl -fLO https://git.bnema.dev/nefercap/releases/download/{{ .Tag }}/nefercap_{{ .Version }}_linux_amd64.tar.gz
108    curl -fLO https://git.bnema.dev/nefercap/releases/download/{{ .Tag }}/checksums.txt
109    sha256sum -c --ignore-missing checksums.txt
110    ```
111
112    The archive holds the `nefercap` binary, the README and the license. Install the binary as `/usr/bin/nefercap`: NeferWL allows that path to capture by default. See the [README](https://git.bnema.dev/nefercap) for runtime dependencies.
113
114aurs:
115  - name: nefercap-bin
116    ids: [nefercap]
117    homepage: https://git.bnema.dev/nefercap
118    # Public URL: github_urls.download is the CI-only relay address.
119    url_template: 'https://git.bnema.dev/nefercap/releases/download/{{ .Tag }}/{{ .ArtifactName }}'
120    description: Screenshots and silent screen recording for Wayland, from one shortcut
121    maintainers:
122      - "bnema <b at bnema dot dev>"
123    license: GPL-3.0-only
124    # The release workflow verifies and publishes the generated PKGBUILD.
125    skip_upload: true
126    provides: [nefercap]
127    conflicts: [nefercap, nefercap-git]
128    # Loaded at runtime (purego, no cgo): not seen by makepkg's library scan.
129    depends:
130      - glibc
131      - wayland
132      - libxkbcommon
133      - vulkan-icd-loader
134      - vulkan-driver
135    optdepends:
136      - "ffmpeg: screen recording (libx264)"
137      - "wl-clipboard: copy screenshots to the clipboard"
138      - "neferwl: hidden-workspace capture, HUD exclusion and capture indicator"
139    package: |-
140      install -Dm755 ./nefercap "${pkgdir}/usr/bin/nefercap"
141      install -Dm644 ./README.md "${pkgdir}/usr/share/doc/nefercap/README.md"
142      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 2

Tags 9

↑↓ moveenter openesc close