krokiet@12.0.1: Update Krokiet to use the recommended skia_opengl variant - #18431
krokiet@12.0.1: Update Krokiet to use the recommended skia_opengl variant#18431julianrendell wants to merge 1 commit into
Conversation
Krokiet stopped working for me, and on checking the source repo releases page, the developer recommends the windows_krokiet_on_windows_skia_opengl.exe variant over the windows_krokiet_on_linux.exe one. The skia variant works for me.
|
/verify |
📝 WalkthroughWalkthroughThe Krokiet Scoop manifest now downloads the Windows Skia/OpenGL executable. It uses the executable's new SHA-256 checksum, updates the shortcut target, and changes the autoupdate URL. Estimated code review effort: 1 (Trivial) | ~2 minutes 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
All changes look good. Wait for review from human collaborators. krokiet
|
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@bucket/krokiet.json`:
- Around line 8-22: Add the standard Microsoft Visual C++ Redistributable
dependency suggestion to the manifest containing the
windows_krokiet_on_windows_skia_opengl.exe URL, using Scoop’s conventional
`vcredist` suggestion format alongside the existing `shortcuts`, `checkver`, and
`autoupdate` entries.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro Plus
Run ID: c83295e8-c7c4-49d9-84b8-3fb2048a5271
📒 Files selected for processing (1)
bucket/krokiet.json
| "url": "https://github.com/qarmin/czkawka/releases/download/12.0.1/windows_krokiet_on_windows_skia_opengl.exe", | ||
| "hash": "9f1a8e51b4d0825c57379fb2d0e13f153e7c559aeb1e4e7c129ffe6b24e3aa15" | ||
| } | ||
| }, | ||
| "shortcuts": [ | ||
| [ | ||
| "windows_krokiet_on_linux.exe", | ||
| "windows_krokiet_on_windows_skia_opengl.exe", | ||
| "Krokiet" | ||
| ] | ||
| ], | ||
| "checkver": "github", | ||
| "autoupdate": { | ||
| "architecture": { | ||
| "64bit": { | ||
| "url": "https://github.com/qarmin/czkawka/releases/download/$version/windows_krokiet_on_linux.exe" | ||
| "url": "https://github.com/qarmin/czkawka/releases/download/$version/windows_krokiet_on_windows_skia_opengl.exe" |
There was a problem hiding this comment.
🩺 Stability & Availability | 🟠 Major | ⚡ Quick win
🧩 Analysis chain
🏁 Script executed:
jq -e '.suggest["Visual C++ Redistributable"] | index("vcredist2022")' bucket/krokiet.jsonRepository: ScoopInstaller/Extras
Length of output: 164
🏁 Script executed:
#!/bin/bash
set -euo pipefail
echo "== target manifest =="
jq -R . bucket/krokiet.json | sed -n '1,120p'
printf '\n== line endings in target manifest ==\n'
if python3 - <<'PY'; then
path = "bucket/krokiet.json"
with open(path, "rb") as f:
data = f.read()
if b"\n" in data.split(b"\r")[-1]:
print("LF_detected")
else:
print("CRLF_only_or_no_newlines")
print(data.count(b"\r\n"), "CRLF")
print(data.count(b"\r\n\n"), "double LF after CRLF")
PY
fi
printf '\n== vcredist references in manifest and nearby manifests ==\n'
rg -n '"suggest"|"vcredist"|Krokiet|krokiet|czkawka' manifest* bucket deprecated 2>/dev/null | head -120
printf '\n== GitHub release text for selected asset/docs ==\n'
python3 - <<'PY'
import json, urllib.request, urllib.parse
url = "https://api.github.com/repos/qarmin/czkawka/releases/latest"
headers = {"Accept": "application/vnd.github+json", "User-Agent": "CodeRabbit-verifier"}
try:
req = urllib.request.Request(url, headers=headers)
with urllib.request.urlopen(req, timeout=20) as r:
data = json.load(r)
print("release_tag:", data.get("tag_name"))
print("assets:")
for a in data.get("assets", [])[:40]:
print(f" {a.get('name')} {a.get('size')}")
body = data.get("body", "")
for line in (body or "").splitlines()[:120]:
if any(s in line.lower() for s in ["skia opengl", "skia", "opengl", "visual c++", "vc redist", "vcredist", ".net"]):
print("release_body:", line[:240])
except Exception as e:
print("ERROR", type(e).__name__, str(e))
PYRepository: ScoopInstaller/Extras
Length of output: 1302
🏁 Script executed:
#!/bin/bash
set -euo pipefail
echo "== target manifest =="
jq -R . bucket/krokiet.json | sed -n '1,120p'
printf '\n== line endings in target manifest ==\n'
python3 - <<'PY'
from pathlib import Path
path = Path("bucket/krokiet.json")
data = path.read_bytes()
if data.endswith((b"\n", b"\r")):
print("trailing_newline=True")
else:
print("trailing_newline=False")
print("contains_CR=", bool(b"\r" in data))
print("contains_LF=", bool(b"\n" in data))
print("CRLF_only=", data == data.replace(b"\r\n", b""))
print("LF_only=", data == data.replace(b"\n", b""))
PY
printf '\n== runtime dependency-related references ==\n'
rg -n '"suggest"|"vcredist|maxnet2049|net8|Runtime|runtime|Windows Skia|Skia|OpenGL|Visual C|VC Redist|Microsoft Visual C' manifest* bucket deprecated -S 2>/dev/null | head -160
printf '\n== latest release text snippets for Czkawka releases ==\n'
python3 - <<'PY'
import json, urllib.request
url = "https://api.github.com/repos/qarmin/czkawka/releases/latest"
headers = {"Accept": "application/vnd.github+json", "User-Agent": "CodeRabbit-verifier"}
try:
with urllib.request.urlopen(urllib.request.Request(url, headers=headers), timeout=20) as r:
data = json.load(r)
print("tag=", data.get("tag_name"))
print("assets:")
for a in data.get("assets", []):
print(" ", a.get("name"), a.get("size"))
body = data.get("body", "")
for line in body.splitlines():
if any(s.lower() in line.lower() for s in ["skia", "opengl", "visual c++", "vc redist", "vcredist", "microsoft visual c++"]):
print("release_body=", line[:240])
except Exception as e:
print("ERROR", type(e).__name__, str(e))
PYRepository: ScoopInstaller/Extras
Length of output: 13600
🌐 Web query:
qarmin czkawka github releases windows_krokiet_on_windows_skia_opengl opengl Visual C++ Redistributable
💡 Result:
The Windows executable named windows_krokiet_on_windows_skia_opengl.exe is a specific build of the Krokiet application (a component of the Czwawka project) that utilizes the Skia graphics library with an OpenGL backend for rendering [1][2]. Regarding your query about its requirements: 1. Visual C++ Redistributable: Yes, this specific build requires the Microsoft Visual C++ Redistributable package to be installed on your Windows system [1][3]. This is because it is compiled using MSVC (Microsoft Visual C++), which necessitates these runtime libraries to execute correctly [1][3]. 2. Technical Context: - Rendering Backend: The Skia OpenGL backend provides a different rendering path than the default 'femtovg' renderer used in other builds [4]. It is typically chosen for better visual quality, particularly with text and fonts [4]. - Dependencies: While prebuilt binaries for Czwawka generally aim to be portable and lack mandatory runtime dependencies [5], the MSVC-compiled versions like this one create the specific dependency on the Visual C++ Redistributable [1][3]. If you are choosing between builds, the official documentation suggests that if the Skia/OpenGL version does not work on your system, you may need to try one of the other available builds, such as those using different backends (e.g., Vulkan or the default femtovg) [1][2].
Citations:
- 1: https://github.com/qarmin/czkawka/releases
- 2: https://github.com/qarmin/czkawka/releases/tag/11.0.1
- 3: https://github.com/qarmin/czkawka/blob/master/Changelog.md
- 4: [Question] Is there any difference between the windows krokiet versions? qarmin/czkawka#1800
- 5: https://github.com/qarmin/czkawka/blob/e56dc1160bf9efd4b232f3abb4e21b21817436c1/krokiet/README.md
Declare the Visual C++ Redistributable suggestion.
The selected windows_krokiet_on_windows_skia_opengl.exe build depends on Microsoft Visual C++ Redistributable. Add the standard VC Redist suggestion so Scoop can offer users the required runtime.
Proposed manifest addition
+ "suggest": {
+ "Visual C++ Redistributable": [
+ "vcredist2022"
+ ]
+ },📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| "url": "https://github.com/qarmin/czkawka/releases/download/12.0.1/windows_krokiet_on_windows_skia_opengl.exe", | |
| "hash": "9f1a8e51b4d0825c57379fb2d0e13f153e7c559aeb1e4e7c129ffe6b24e3aa15" | |
| } | |
| }, | |
| "shortcuts": [ | |
| [ | |
| "windows_krokiet_on_linux.exe", | |
| "windows_krokiet_on_windows_skia_opengl.exe", | |
| "Krokiet" | |
| ] | |
| ], | |
| "checkver": "github", | |
| "autoupdate": { | |
| "architecture": { | |
| "64bit": { | |
| "url": "https://github.com/qarmin/czkawka/releases/download/$version/windows_krokiet_on_linux.exe" | |
| "url": "https://github.com/qarmin/czkawka/releases/download/$version/windows_krokiet_on_windows_skia_opengl.exe" | |
| "url": "https://github.com/qarmin/czkawka/releases/download/12.0.1/windows_krokiet_on_windows_skia_opengl.exe", | |
| "hash": "9f1a8e51b4d0825c57379fb2d0e13f153e7c559aeb1e4e7c129ffe6b24e3aa15" | |
| } | |
| }, | |
| "suggest": { | |
| "Visual C++ Redistributable": [ | |
| "vcredist2022" | |
| ] | |
| }, | |
| "shortcuts": [ | |
| [ | |
| "windows_krokiet_on_windows_skia_opengl.exe", | |
| "Krokiet" | |
| ] | |
| ], | |
| "checkver": "github", | |
| "autoupdate": { | |
| "architecture": { | |
| "64bit": { | |
| "url": "https://github.com/qarmin/czkawka/releases/download/$version/windows_krokiet_on_windows_skia_opengl.exe" |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@bucket/krokiet.json` around lines 8 - 22, Add the standard Microsoft Visual
C++ Redistributable dependency suggestion to the manifest containing the
windows_krokiet_on_windows_skia_opengl.exe URL, using Scoop’s conventional
`vcredist` suggestion format alongside the existing `shortcuts`, `checkver`, and
`autoupdate` entries.
Source: Path instructions
Krokiet stopped working for me, and on checking the source repo releases page, the developer recommends the
windows_krokiet_on_windows_skia_opengl.exevariant over thewindows_krokiet_on_linux.exeone.The skia variant works for me 😄