Repository navigation
Releases: donislawdev/Naughty-Keyboard
Release list
v0.2.0
The first public release. The project is in early development, and the pack format is not frozen yet:
a later release may still change it, and its notes will say how.
Added
nkb, the command line tool, for Windows, macOS and Linux. It checks a pack file against the format
rules, puts it in canonical shape, writes the skeleton of a new one, lists the packs it can read and
prints their values for a script. On Windows it also types a value into the field that has the
keyboard.nkb-gui, the palette. On Windows one shortcut types the next value of a pack into whatever window
has the keyboard, without taking the focus from it. Values can go through the clipboard instead, and
one more shortcut copies a report block for the last value. On macOS and Linux the palette puts
values on the clipboard.- Eighteen built-in packs with 207 values: whitespace, Unicode text, length bombs, magic values,
extreme numbers, impossible dates, export breakers, Polish locale data, file names and paths,
look-alike pairs, complex emoji, encoding and mojibake, text pasted from a document, e-mail addresses
and URLs, names, time zones, money and separators, and pseudolocalisation. - Archives for Windows, macOS and Linux. Each carries the licence notices of everything compiled into
the program, and a bill of materials in SPDX describes all of them. - A Windows installer,
nkb-setup_0.2.0_windows_amd64.msi, with both programs for every account on
the machine: the palette in the Start menu andnkbon the systemPATH. A newer version replaces
an older one without closing anything that runs. - Signed downloads. The Windows programs and the installer carry an Authenticode signature with a
timestamp, the macOS bundles are signed and notarised by Apple, and the release carries signed
statements of how it was built and of what each archive holds, whichgh attestation verifychecks.
The README shows the commands.
Download
nkb is the command line and nkb-gui the palette, one archive for each system: Windows x64, macOS on
Apple silicon and Linux x64. What each needs, and how to start it, is under
Get it.
Every release but a release candidate also has a Windows installer with both programs, the .msi, for
every account on the machine: it puts the palette in the Start menu and nkb on the system PATH.
The Windows programs, and the installer where there is one, are signed, with a timestamp. The macOS bundles are signed and notarised by Apple,
with the ticket stapled inside, so keep each .app and the link next to it together. The Linux programs
are not signed.
Check what you downloaded
The four files whose names start with verify- are for checking a download, and sit together at the end
of this list. Compare an archive with verify-SHA256SUMS.txt, or ask for the statements made about it:
gh release verify-asset v0.2.0 nkb-gui_0.2.0_windows_amd64.zip -R donislawdev/Naughty-Keyboard
gh attestation verify nkb-gui_0.2.0_windows_amd64.zip -R donislawdev/Naughty-Keyboard --predicate-type https://spdx.dev/Document/v2.3
gh attestation verify nkb-gui_0.2.0_windows_amd64.zip -R donislawdev/Naughty-Keyboard --predicate-type https://spdx.dev/Document/v2.3 --bundle verify-naughty-keyboard_0.2.0.sbom.sigstore.json
gh attestation verify nkb_0.2.0_linux_amd64.tar.gz -R donislawdev/Naughty-Keyboard
gh attestation verify nkb_0.2.0_linux_amd64.tar.gz -R donislawdev/Naughty-Keyboard --bundle verify-naughty-keyboard_0.2.0.provenance.sigstore.json
The first works for every file, the next two for every archive, and the last two for the Linux archives
and the bill of materials, verify-naughty-keyboard_0.2.0.spdx.json. What each one answers, and why a
signed archive needs --predicate-type, is under
Checking a download.