diff options
| author | Danilo M. <danix@danix.xyz> | 2026-08-08 21:55:43 +0200 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-08-08 21:55:43 +0200 |
| commit | d912ffb18952dd53d39e189e9259d4b4748e1f9f (patch) | |
| tree | 195e0d51e1a029189a1c2a991a8c5a53f0847b2e | |
| parent | 8094c6725824d2dc836e390a655c0a0e9c0745f7 (diff) | |
| download | danix-nvchecker-d912ffb18952dd53d39e189e9259d4b4748e1f9f.tar.gz danix-nvchecker-d912ffb18952dd53d39e189e9259d4b4748e1f9f.zip | |
Typora now ships as the typora-bin Slackware package from my-slackbuilds, so
its installed version comes from /var/log/packages like everything else. The
OPT_JSON map existed solely to read /opt/Typora-linux-x64/resources/package.json
and is removed along with its branch in installed_of().
Typora joins through both alias maps instead: ALIAS for the installed package
name and REPO_ALIAS for the SlackBuild directory, both typora-bin. The stanza
is marked # repo=my.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
| -rw-r--r-- | CLAUDE.md | 6 | ||||
| -rw-r--r-- | nvchecker.toml | 2 | ||||
| -rwxr-xr-x | nvtable | 16 |
3 files changed, 6 insertions, 18 deletions
@@ -72,10 +72,8 @@ the rest, and they are separate because the mappings differ per direction: SlackBuild directory (`kitty` → `kitty-bin`). Adding one map for both breaks the other direction. -**Installed version** resolves through four sources in order: the `OPT_JSON` -map (apps unpacked under `/opt` that are none of the below, currently Typora, -declared as `<path>:<jq filter>`), `/var/log/packages`, the appimage-updater -state file, then `flatpak list`. +**Installed version** resolves through three sources in order: +`/var/log/packages`, the appimage-updater state file, then `flatpak list`. **Repo version** is the `VERSION=` line from `<repo>/<category>/<pkg>/<pkg>.info`. Note the category level: `.info` files sit diff --git a/nvchecker.toml b/nvchecker.toml index 0c0569e..5a7391c 100644 --- a/nvchecker.toml +++ b/nvchecker.toml @@ -392,7 +392,7 @@ prefix = "v" # Proprietary, no git repo. The Linux changelog is the only per-platform feed: # dev_update.xml carries the macOS dev channel and reports a different version. -[Typora] +[Typora] # repo=my source = "regex" url = "https://typora.io/releases/linux" regex = "<h2>([0-9]+\\.[0-9]+\\.[0-9]+)</h2>" @@ -38,6 +38,7 @@ REPOS=( declare -A ALIAS=( [kvantum]="kvantum-qt5 kvantum-qt6" [metasploit-framework]="metasploit-framework-bin" + [Typora]="typora-bin" ) # Stanza name -> SlackBuild directory name, where the repo dir differs from the @@ -47,13 +48,7 @@ declare -A REPO_ALIAS=( [claude-code]="claude-code-bin" [kvantum]="kvantum-qt6" [metasploit-framework]="metasploit-framework-bin" -) - -# Stanza name -> JSON file carrying the installed version, for apps unpacked -# under /opt that are neither a package, an AppImage, nor a flatpak. Value is -# "<path>:<jq filter>". -declare -A OPT_JSON=( - [Typora]="/opt/Typora-linux-x64/resources/package.json:.version" + [Typora]="typora-bin" ) SHOW_ALL=0; NO_TAKE=0; NO_COLOR=0; NO_EMOJI=0 @@ -147,12 +142,7 @@ if command -v flatpak >/dev/null 2>&1; then fi installed_of() { # echoes "version" or "" ; handles alias + case-insensitive - local n=$1 cand v spec f - if [[ -n ${OPT_JSON[$n]:-} ]]; then - spec=${OPT_JSON[$n]}; f=${spec%%:*} - [[ -r $f ]] && v=$(jq -r "${spec#*:} // empty" "$f" 2>/dev/null) \ - && [[ -n $v ]] && { echo "$v"; return; } - fi + local n=$1 cand v for cand in ${ALIAS[$n]:-$n}; do # Anchored lookup first: correct even when VERSION contains a dash. v=$(pkg_version "$cand") && { echo "$v"; return; } |
