The official build framework for the Armbian Linux distribution. This repository contains the complete toolchain and scripts required to compile custom OS images from source, including kernel configuration, U-Boot handling, and board-specific tweaks for various ARM and ARM64 single-board computers.
This report presents the forensic synthetic code analysis of armbian/build, a Shell project with 5,383 GitHub stars. SynthScan v2.0 examined 58,816 lines of code across 513 source files, recording 777 pattern matches distributed across 17 syntactic categories. The overall adjusted score of 24.7 places this repository in the Moderate AI signal band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 777 distinct pattern matches across 17 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | compile.sh | 7 | # This file is a part of the Armbian Build Framework | COMMENT |
| MEDIUM | tools/repository/repo.sh | 705 | # Create a temp config pointing to the main DB (not isolated) | COMMENT |
| MEDIUM | tools/repository/repo.sh | 1330 | # Create the isolated directory if it doesn't exist | COMMENT |
| MEDIUM | config/sources/mainline-kernel.conf.sh | 4 | # This file is a part of the Armbian Build Framework https://github.com/armbian/build/ | COMMENT |
| MEDIUM | …sources/vendors/mekotronics/mekotronics-rk3588.conf.sh | 4 | # This file is a part of the Armbian Build Framework https://github.com/armbian/build/ | COMMENT |
| MEDIUM | …sources/vendors/mekotronics/mekotronics-rk3588.conf.sh | 6 | # This file is SOURCED by the Mekotronics board files, and thus has the same restrictions as board files. | COMMENT |
| MEDIUM | …ources/vendors/mekotronics/mekotronics-rk3588.hooks.sh | 4 | # This file is a part of the Armbian Build Framework https://github.com/armbian/build/ | COMMENT |
| MEDIUM | extensions/lvm.sh | 6 | # This file is a part of the Armbian Build Framework https://github.com/armbian/build/ | COMMENT |
| MEDIUM | extensions/lvm.sh | 55 | # Create the PV VG and VOL | COMMENT |
| MEDIUM | extensions/jethub-burn.sh | 7 | # This file is a part of the Armbian Build Framework https://github.com/armbian/build/ | COMMENT |
| MEDIUM | extensions/uwe5622-allwinner.sh | 6 | # This file is a part of the Armbian Build Framework https://github.com/armbian/build/ | COMMENT |
| MEDIUM | extensions/kernel-debug-tiers.sh | 7 | # This file is a part of the Armbian Build Framework https://github.com/armbian/build/ | COMMENT |
| MEDIUM | extensions/uboot-binman-fix-pkg-resources.sh | 9 | # This file is a part of the Armbian Build Framework | COMMENT |
| MEDIUM | extensions/uboot-fix-pylibfdt-swig.sh | 9 | # This file is a part of the Armbian Build Framework | COMMENT |
| MEDIUM | extensions/allwinner-kernel-bump.sh | 6 | # This file is a part of the Armbian Build Framework https://github.com/armbian/build/ | COMMENT |
| MEDIUM | extensions/image-output-oowow.sh | 6 | # This file is a part of the Armbian Build Framework https://github.com/armbian/build/ | COMMENT |
| MEDIUM | extensions/syterkit-allwinner.sh | 5 | # This file is a part of the Armbian Build Framework https://github.com/armbian/build/ | COMMENT |
| MEDIUM | extensions/sophgo-sg200x-aic8800.sh | 9 | # This file is a part of the Armbian Build Framework | COMMENT |
| MEDIUM | extensions/mtkflash.sh | 6 | # This file is a part of the Armbian Build Framework https://github.com/armbian/build/ | COMMENT |
| MEDIUM | extensions/rkdevflash.sh | 6 | # This file is a part of the Armbian Build Framework https://github.com/armbian/build/ | COMMENT |
| MEDIUM | extensions/rkusbboot.sh | 6 | # This file is a part of the Armbian Build Framework https://github.com/armbian/build/ | COMMENT |
| MEDIUM | extensions/xorg-lima-serverflags.sh | 6 | # This file is a part of the Armbian Build Framework https://github.com/armbian/build/ | COMMENT |
| MEDIUM | extensions/image-output-vhd-azure.sh | 5 | # This file is a part of the Armbian Build Framework https://github.com/armbian/build/ | COMMENT |
| MEDIUM | extensions/sysrq-serial-trigger.sh | 7 | # This file is a part of the Armbian Build Framework https://github.com/armbian/build/ | COMMENT |
| MEDIUM | extensions/gen-sample-extension-docs.sh | 103 | # This file is auto-generated from and by the build system itself. | COMMENT |
| MEDIUM | extensions/nicod-armbian-gaming.sh | 6 | # This file is a part of the Armbian Build Framework https://github.com/armbian/build/ | COMMENT |
| MEDIUM | extensions/u-boot-menu.sh | 6 | # This file is a part of the Armbian Build Framework https://github.com/armbian/build/ | COMMENT |
| MEDIUM | extensions/grub-with-dtb.sh | 6 | # This file is a part of the Armbian Build Framework https://github.com/armbian/build/ | COMMENT |
| MEDIUM | extensions/uefi-edk2-rk3588.sh | 6 | # This file is a part of the Armbian Build Framework https://github.com/armbian/build/ | COMMENT |
| MEDIUM | extensions/bluetooth-hciattach.sh | 6 | # This file is a part of the Armbian Build Framework https://github.com/armbian/build/ | COMMENT |
| MEDIUM | …s/initramfs-usb-gadget-ums/initramfs-usb-gadget-ums.sh | 6 | # This file is a part of the Armbian Build Framework https://github.com/armbian/build/ | COMMENT |
| MEDIUM | …itramfs-usb-gadget-ums/init-premount/usb-gadget-ums.sh | 5 | # This file is a part of the Armbian Build Framework https://github.com/armbian/build/ | COMMENT |
| MEDIUM | extensions/image-output-sophgo-emmc-installer/mkcimg.py | 4 | # This file is a part of the Armbian Build Framework | COMMENT |
| MEDIUM | …o-emmc-installer/image-output-sophgo-emmc-installer.sh | 7 | # This file is a part of the Armbian Build Framework | COMMENT |
| MEDIUM | extensions/cloud-init/cloud-init.sh | 6 | # This file is a part of the Armbian Build Framework https://github.com/armbian/build/ | COMMENT |
| MEDIUM | …ages/bsp/usb-gadget-network/setup-usbgadget-network.sh | 30 | # Create an usb gadet configuration | COMMENT |
| MEDIUM | …s/bsp/common/usr/lib/armbian/armbian-led-state-save.sh | 5 | # This file is licensed under the terms of the GNU General Public | COMMENT |
| MEDIUM | …sp/common/usr/lib/armbian/armbian-led-state-restore.sh | 5 | # This file is licensed under the terms of the GNU General Public | COMMENT |
| MEDIUM | …mmon/etc/profile.d/armbian-check-first-login-reboot.sh | 5 | # This file is licensed under the terms of the GNU General Public | COMMENT |
| MEDIUM | …/bsp/common/etc/profile.d/armbian-check-first-login.sh | 5 | # This file is licensed under the terms of the GNU General Public | COMMENT |
| MEDIUM | packages/bsp/common/etc/profile.d/armbian-ssh-title.sh | 5 | # This file is licensed under the terms of the GNU General Public | COMMENT |
| MEDIUM | …/etc/profile.d/armbian-activate-profile-sync-daemon.sh | 5 | # This file is licensed under the terms of the GNU General Public | COMMENT |
| MEDIUM | lib/library-functions.sh | 2 | # This file is/was autogenerated by lib/tools/gen-library.sh; don't modify manually | COMMENT |
| MEDIUM | lib/library-functions.sh | 1134 | # This file is/was autogenerated by lib/tools/gen-library.sh; don't modify manually | COMMENT |
| MEDIUM | lib/single.sh | 7 | # This file is a part of the Armbian Build Framework | COMMENT |
| MEDIUM | lib/tools/autopatch-devicetree-makefile.py | 4 | # This file is a part of the Armbian Build Framework https://github.com/armbian/build/ | COMMENT |
| MEDIUM | lib/tools/shellcheck.sh | 7 | # This file is a part of the Armbian Build Framework | COMMENT |
| MEDIUM | lib/tools/aggregation.py | 7 | # This file is a part of the Armbian Build Framework | COMMENT |
| MEDIUM | lib/tools/git-to-patches.py | 7 | # This file is a part of the Armbian Build Framework | COMMENT |
| MEDIUM | lib/tools/shellfmt.sh | 7 | # This file is a part of the Armbian Build Framework | COMMENT |
| MEDIUM | lib/tools/call-stack-analyze.py | 7 | # This file is a part of the Armbian Build Framework | COMMENT |
| MEDIUM | lib/tools/patching.py | 7 | # This file is a part of the Armbian Build Framework | COMMENT |
| MEDIUM | lib/tools/gen-library.sh | 7 | # This file is a part of the Armbian Build Framework | COMMENT |
| MEDIUM | lib/tools/gen-library.sh | 24 | # This file is/was autogenerated by ${0}; don't modify manually | COMMENT |
| MEDIUM | lib/tools/gen-library.sh | 50 | # This file is/was autogenerated by ${0}; don't modify manually | COMMENT |
| MEDIUM | lib/tools/index-opensearch.py | 7 | # This file is a part of the Armbian Build Framework | COMMENT |
| MEDIUM | lib/tools/index-opensearch.py | 32 | # Create the OpenSearch client. | COMMENT |
| MEDIUM | lib/tools/index-opensearch.py | 35 | # Create an index with non-default settings. | COMMENT |
| MEDIUM | lib/tools/oras.sh | 7 | # This file is a part of the Armbian Build Framework | COMMENT |
| MEDIUM | lib/tools/info/userspace-inventory.py | 6 | # This file is a part of the Armbian Build Framework https://github.com/armbian/build/ | COMMENT |
| 159 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | compile.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | tools/repository/repo.sh | 561 | fi | COMMENT |
| LOW | tools/repository/repo.sh | 1021 | COMMENT | |
| LOW | tools/repository/cleanup-debs.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | tools/repository/cleanup-debs.sh | 21 | # Usage: | COMMENT |
| LOW | config/bootenv/onecloud.txt | 1 | # console: | COMMENT |
| LOW | config/bootscripts/boot-odroid-xu4.ini | 41 | # setenv videoconfig "video=HDMI-A-1:1280x800@60" | COMMENT |
| LOW | config/bootscripts/boot-odroid-xu4.ini | 61 | # 1920x1080 50hz (1080P) without monitor data using generic information (1080p 50hz-noedid) | COMMENT |
| LOW | config/bootscripts/boot-odroid-xu4.ini | 81 | # ----------------------------------------------- | COMMENT |
| LOW | config/bootscripts/boot-odroid-xu4.ini | 101 | # setenv videoconfig "video=HDMI-A-1:1280x720@60" | COMMENT |
| LOW | config/bootscripts/boot-odroid-xu4.ini | 121 | # 800x480 without monitor data using generic information (ODROID 7") | COMMENT |
| LOW | config/bootscripts/boot-odroid-xu4.ini | 141 | # - DVI Mode (disables sound over HDMI as per DVI compat) | COMMENT |
| LOW | config/bootscripts/boot-odroid-xu4.ini | 161 | # | COMMENT |
| LOW | config/bootscripts/boot-odroid-xu4.ini | 181 | # not. | COMMENT |
| LOW | config/bootscripts/boot-odroid-xu4.ini | 201 | setenv hdmi_tx_amp_lvl "31" | COMMENT |
| LOW | config/bootscripts/boot-odroid-xu4.ini | 221 | # TMDS data pre-emphasis level control. | COMMENT |
| LOW | config/bootscripts/boot-odroid-xu4.ini | 241 | # Hardkernel default hdmi_clk_amp_lvl = 31 (1410 mVdiff) | COMMENT |
| LOW | config/bootscripts/boot-odroid-n2.ini | 21 | setenv display_autodetect "true" | COMMENT |
| LOW | config/bootscripts/boot-odroid-n2.ini | 41 | # "2160p25hz" | 3840x2160 Progressive 25Hz | COMMENT |
| LOW | config/bootscripts/boot-odroid-n2.ini | 81 | setenv max_freq_a53 "1908" | COMMENT |
| LOW | config/bootscripts/boot-odroid-c2.ini | 1 | ODROIDC2-UBOOT-CONFIG | COMMENT |
| LOW | config/bootscripts/boot-odroid-c2.ini | 21 | setenv display_autodetect "true" | COMMENT |
| LOW | config/bootscripts/boot-odroid-c2.ini | 41 | setenv m "1080p60hz" # Progressive 60Hz | COMMENT |
| LOW | config/bootscripts/boot-odroid-c2.ini | 61 | # setenv m "800x600p60hz" | COMMENT |
| LOW | config/bootscripts/boot-odroid-c2.ini | 81 | # HDMI BPP Mode | COMMENT |
| LOW | config/bootscripts/boot-odroid-c2.ini | 101 | COMMENT | |
| LOW | config/bootscripts/boot-odroid-c2.ini | 121 | # MicroSD Card Detection enable/disable | COMMENT |
| LOW | config/bootscripts/boot-odroid-c2.ini | 141 | # setenv maxcpus "3" | COMMENT |
| LOW | extensions/lvm.sh | 1 | # @description Places the root filesystem on an LVM logical volume. Creates a PV/VG/LV on the root partition (`lvm2`), s | COMMENT |
| LOW | extensions/r8125-dkms.sh | 1 | # @description Installs Realtek's official `r8125` (v9.016.01) 2.5GbE DKMS driver and blacklists the buggy in-kernel `r8 | COMMENT |
| LOW | extensions/wayland-sessions-mask.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | extensions/v4l2loopback-dkms.sh | 21 | fi | COMMENT |
| LOW | extensions/arm64-compat-vdso.sh | 1 | # @description Builds the arm64 kernel with `CONFIG_COMPAT`, `CONFIG_COMPAT_VDSO` and `CONFIG_ARM64_32BIT_EL0`, letting | COMMENT |
| LOW | extensions/gateway-dk-ask.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | extensions/kernel-debug-tiers.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | extensions/kernel-debug-tiers.sh | 21 | # | COMMENT |
| LOW | extensions/kernel-debug-tiers.sh | 41 | # extension is then defeated. So an explicit `KERNEL_BTF=no` (in board/family | COMMENT |
| LOW | extensions/kernel-debug-tiers.sh | 121 | # VMCOREINFO note in /proc/kcore (PHYS_OFFSET, VA_BITS) and the _text | COMMENT |
| LOW | extensions/uboot-binman-fix-pkg-resources.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | extensions/uboot-fix-pylibfdt-swig.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | extensions/sophgo-sg200x-aic8800.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | extensions/sophgo-sg200x-aic8800.sh | 21 | # Shadowrom2020/aic8800-dkms, radxa-aic8800.sh from radxa-pkg/aic8800, the latter | COMMENT |
| LOW | extensions/sophgo-sg200x-aic8800.sh | 41 | declare -g AIC8800_REPO="https://github.com/queenkjuul/aic8800-milkv-duos" | COMMENT |
| LOW | extensions/image-output-iso.sh | 1 | # @description Builds a bootable live `.iso` from a UEFI image so it boots from a BMC/IPMI virtual CD-ROM. Packs the ker | COMMENT |
| LOW | extensions/image-output-iso.sh | 21 | # nothing to boot. This live layout is the only shape a virtual CD actually runs. | COMMENT |
| LOW | extensions/mtkflash.sh | 1 | # @description Clones and builds the Rust `mtk-flash` tool from `grinn-global/mtk-flash`, then flashes a MediaTek board | COMMENT |
| LOW | extensions/nvidia.sh | 21 | # BUILD_MINIMAL=yes, so we never reach this point without it. | COMMENT |
| LOW | extensions/nvidia.sh | 41 | # armbian-nvidia-autodetect helper removes this file (and modprobes | COMMENT |
| LOW | extensions/nvidia.sh | 141 | } | COMMENT |
| LOW | extensions/nvidia.sh | 161 | # - dpkg-query's the actually-installed nvidia-dkms-* / nvidia-driver-* / | COMMENT |
| LOW | extensions/nvidia.sh | 181 | # fires if the driver bound far enough to print that line, and | COMMENT |
| LOW | extensions/nvidia.sh | 201 | # loaded. The rootfs deletion self-heals initramfs on the | COMMENT |
| LOW | extensions/nvidia.sh | 221 | # 2. apt purge — removes the package set so DKMS doesn't burn | COMMENT |
| LOW | extensions/rkdevflash.sh | 1 | # @description Builds Radxa's `rkdeveloptool` and flashes the freshly built image to a connected Rockchip device over US | COMMENT |
| LOW | extensions/grub.sh | 261 | COMMENT | |
| LOW | extensions/grub.sh | 281 | # 'splash=verbose' value was rejected by the kernel | COMMENT |
| LOW | extensions/sysrq-serial-trigger.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | extensions/sysrq-serial-trigger.sh | 21 | # Mainline kernels ship CONFIG_MAGIC_SYSRQ_SERIAL_SEQUENCE empty by default, | COMMENT |
| LOW | extensions/sysrq-serial-trigger.sh | 41 | # b (or any other SysRq command — see Documentation/admin-guide/sysrq.rst) | COMMENT |
| LOW | extensions/sysrq-serial-trigger.sh | 61 | opts_y+=("MAGIC_SYSRQ" "MAGIC_SYSRQ_SERIAL") | COMMENT |
| 210 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | action.yml | 294 | # ── Configuration ──────────────────────────────────────────────────── | COMMENT |
| MEDIUM | action.yml | 353 | # ── Loaders ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | action.yml | 399 | # ── Filename parser ────────────────────────────────────────────────── | COMMENT |
| MEDIUM | action.yml | 435 | # ── URL composition ────────────────────────────────────────────────── | COMMENT |
| MEDIUM | action.yml | 471 | # ── Walk image dir, build manifest ─────────────────────────────────── | COMMENT |
| MEDIUM | action.yml | 540 | # ── Main ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 36 | # --------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 39 | # --------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 42 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 45 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 48 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 51 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 54 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 57 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 60 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 63 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 66 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 69 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 72 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 75 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 78 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 81 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 84 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 87 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 90 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 93 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 96 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 99 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 102 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 105 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 108 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 111 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 114 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 117 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 120 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 123 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 126 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 129 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 132 | # ----------------------------------------------- | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 138 | # ------------------------------------------ | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 145 | # ------------------------------------------ | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 158 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 162 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 171 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 174 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 178 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 187 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 190 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 194 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 200 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 203 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 207 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 214 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 219 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 223 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 229 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 232 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 236 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 242 | #------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | config/bootscripts/boot-odroid-xu4.ini | 245 | #------------------------------------------------------------------------------ | COMMENT |
| 14 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/repository/repo.sh | 108 | # Check if there's an isolated database for this release | COMMENT |
| LOW | tools/repository/repo.sh | 154 | # Check if any .deb files exist in the directory | COMMENT |
| LOW | tools/repository/repo.sh | 276 | # Check if snapshot is published | COMMENT |
| LOW | tools/repository/repo.sh | 336 | # Check if we have any packages to publish | COMMENT |
| LOW | tools/repository/repo.sh | 344 | # Check if this release was previously published for logging | COMMENT |
| LOW | tools/repository/repo.sh | 710 | # Check if common snapshot exists in main DB | COMMENT |
| LOW | tools/repository/repo.sh | 781 | # Check if utils repo exists in isolated DB | COMMENT |
| LOW | tools/repository/repo.sh | 817 | # Check if this package is in the utils repo (isolated) | COMMENT |
| LOW | tools/repository/repo.sh | 820 | # Check if package already exists in main DB repo to avoid conflicts | COMMENT |
| LOW | tools/repository/repo.sh | 863 | # Check if this package is in the desktop repo (isolated) | COMMENT |
| LOW | tools/repository/repo.sh | 866 | # Check if package already exists in main DB repo to avoid conflicts | COMMENT |
| LOW | tools/repository/repo.sh | 925 | # Check if utils repo has packages | COMMENT |
| LOW | tools/repository/repo.sh | 945 | # Check if desktop repo has packages | COMMENT |
| LOW | tools/repository/extract-repo.sh | 147 | # Check if output is non-empty before feeding to mapfile | COMMENT |
| LOW | tools/repository/extract-repo.sh | 274 | # Check if file already exists and is identical | COMMENT |
| LOW | extensions/armbian-live-patch.sh | 76 | # Check if installed key is ours | COMMENT |
| LOW | extensions/armbian-live-patch.sh | 83 | # Check if file is signed with Armbian key | COMMENT |
| LOW | extensions/preset-firstrun.sh | 5 | # Set PRESET_NET_CHANGE_DEFAULTS to 1 to apply any network related settings below | COMMENT |
| LOW | extensions/rkusbboot.sh | 158 | # Check if the config file has been updated with CONFIG_ROCKCHIP_MASKROM_IMAGE=y | COMMENT |
| LOW | extensions/odin2-preset-firstrun.sh | 5 | # Set PRESET_NET_CHANGE_DEFAULTS to 1 to apply any network related settings below | COMMENT |
| LOW | extensions/ccache-remote/ccache-remote.sh | 81 | # Set CCACHE_REMOTE_DOMAIN to your domain, then create DNS records: | COMMENT |
| LOW | packages/bsp/easepi/bt-hciattach.sh | 18 | # Check if already initialized by serdev | COMMENT |
| LOW | …ages/bsp/usb-gadget-network/setup-usbgadget-network.sh | 63 | # Check if there's an USB Device Controller | COMMENT |
| LOW | packages/bsp/ayn-thor/LinuxLoader.cfg | 49 | # Set this to *true* if you are trying to boot a mainline kernel. | COMMENT |
| LOW | packages/bsp/ayn-odin2/LinuxLoader.cfg | 49 | # Set this to *true* if you are trying to boot a mainline kernel. | COMMENT |
| LOW | …sp/common/usr/lib/armbian/armbian-led-state-restore.sh | 61 | # Set it to default-on, then will be reset immediately to none to turn it off | COMMENT |
| LOW | packages/bsp/ayn-odin2portal/LinuxLoader.cfg | 49 | # Set this to *true* if you are trying to boot a mainline kernel. | COMMENT |
| LOW | packages/bsp/ayn-odin2mini/LinuxLoader.cfg | 49 | # Set this to *true* if you are trying to boot a mainline kernel. | COMMENT |
| LOW | lib/tools/common/patching_parallel.py | 719 | # Check if patch failed to apply | COMMENT |
| LOW | lib/tools/common/patching_utils.py | 451 | # Check if the rejects exists: | COMMENT |
| LOW | lib/tools/common/patching_utils.py | 481 | # Check if the exit code is not zero and bomb | COMMENT |
| LOW | lib/tools/common/patching_utils.py | 500 | # Check if deleted, don't complain if so. | COMMENT |
| LOW | lib/tools/common/patching_utils.py | 840 | # Check if the exit code is not zero and bomb | COMMENT |
| LOW | lib/tools/common/patching_utils.py | 900 | content = f.read() # Read the file as bytes | CODE |
| LOW | lib/tools/common/patching_utils.py | 911 | return f.read() # Read the file as bytes | CODE |
| LOW | lib/functions/configuration/main-config.sh | 170 | # Check if the filesystem type is supported by the build host. | COMMENT |
| LOW | lib/functions/configuration/main-config.sh | 629 | # Check if the filesystem is listed in /proc/filesystems | COMMENT |
| LOW | lib/functions/configuration/main-config.sh | 658 | # Check if required configurations are set | COMMENT |
| LOW | lib/functions/rootfs/qemu-static.sh | 141 | # Check if binfmt_misc is loaded; if not, try to load it, but don't fail: it might be built in. | COMMENT |
| LOW | lib/functions/host/tmpfs-utils.sh | 95 | # Check if the tmpfs is still mounted after all that trying, log error, show debug, and give up with error | COMMENT |
| LOW | lib/functions/host/docker.sh | 443 | # Check if the base image is up to date. | COMMENT |
| LOW | lib/functions/host/docker.sh | 1030 | # Check if we need to update | COMMENT |
| LOW | lib/functions/host/docker.sh | 1078 | # Check if auto-pull cronjob is installed, and install if not or outdated | COMMENT |
| LOW | lib/functions/general/shellcheck.sh | 111 | # Check if we have a cached version in a Docker image, and copy it over before possibly updating it. | COMMENT |
| LOW | lib/functions/general/extensions.sh | 529 | # Check if "${newly_defined_function}" is already defined in the extension_function_info array, if not, add it | COMMENT |
| LOW | lib/functions/general/bat-cat.sh | 66 | # Check if we have a cached version in a Docker image, and copy it over before possibly updating it. | COMMENT |
| LOW | lib/functions/general/oci-oras.sh | 71 | # Check if we have a cached version in a Docker image, and copy it over before possibly updating it. | COMMENT |
| LOW | lib/functions/cli/cli-docker.sh | 106 | # Set globals to avoid: | COMMENT |
| LOW⚡ | lib/functions/image/partitioning.sh | 111 | # Check if we need UEFI partition | COMMENT |
| LOW⚡ | lib/functions/image/partitioning.sh | 113 | # Check if we need BIOS partition | COMMENT |
| LOW⚡ | lib/functions/image/partitioning.sh | 117 | # Check if we need boot partition | COMMENT |
| LOW⚡ | lib/functions/image/partitioning.sh | 126 | # Check if we need root partition | COMMENT |
| LOW | lib/functions/compilation/distcc.sh | 26 | # Check if host_port is not empty, otherwise continue. | COMMENT |
| LOW | lib/functions/compilation/distcc.sh | 31 | # Check if $cores is bigger than zero (0), otherwise continue. | COMMENT |
| LOW | lib/functions/logging/trap-logging.sh | 56 | # Check if we have `zstdmt` at this stage; if not, use standard gzip | COMMENT |
| LOW | lib/functions/logging/trap-logging.sh | 87 | # Check if fd 13 is still open; close it and wait for tee to die. This is done again in discard_logs_tmp_dir() | COMMENT |
| LOW | lib/functions/logging/export-logs.sh | 187 | # Check if the result_from_paste_server begin with https:// and the paste_server; if yes, it's a success, break the | COMMENT |
| LOW | lib/functions/logging/logging.sh | 201 | # Check if fd 13 is still open; close it and wait for tee to die. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | extensions/lvm.sh | 75 | # (findmnt is a single util-linux call, robust to spaces and to multiple | COMMENT |
| MEDIUM | extensions/network/net-chrony.sh | 1 | # @description Adds the `chrony` package to the image for network time synchronization. Chrony is a full-featured NTP cl | COMMENT |
| MEDIUM | lib/library-functions.sh | 459 | ### lib/functions/compilation/patch/drivers-harness.sh | COMMENT |
| MEDIUM | lib/library-functions.sh | 460 | # shellcheck source=lib/functions/compilation/patch/drivers-harness.sh | COMMENT |
| LOW | lib/tools/patching.py | 196 | # If not, just use the whole file as a single patch. | COMMENT |
| LOW | lib/tools/info/mapper-oci-uptodate.py | 56 | # we're not really checking, so just return a positive hit | COMMENT |
| LOW | lib/tools/common/dt_makefile_patcher.py | 90 | # much simpler. just add individual -y lines for each dt file to add directly to the end of the Makefile and hope for | COMMENT |
| LOW | lib/tools/common/dt_makefile_patcher.py | 147 | # For incremental, we'll just use the parsed-from-Makefile list of .dts files... | COMMENT |
| LOW | lib/tools/common/patching_parallel.py | 758 | # For simplicity in parallel mode, we'll just add all files | COMMENT |
| LOW | lib/tools/common/patching_utils.py | 489 | # if the patch failed to parse, this will be an empty list, so we'll just add all changes. | COMMENT |
| LOW | lib/tools/common/patching_utils.py | 668 | # if no files were touched, just return an ? | COMMENT |
| LOW | lib/functions/artifacts/artifacts-obtain.sh | 159 | # just use the single deb rel path | COMMENT |
| MEDIUM | lib/functions/artifacts/artifact-kernel.sh | 38 | # - Get the drivers patch hash (given LINUXFAMILY and the vX.Z.Y version) - the harness can do this by hashing patches | COMMENT |
| LOW | lib/functions/rootfs/distro-specific.sh | 182 | declare basedir="${3}" # @TODO: rpardini: this is SDCARD in all practical senses. Why not just use SDCARD? | CODE |
| LOW | lib/functions/host/host-utils.sh | 363 | # if not on Linux, just return; "ps" shenanigans we use are not supported | COMMENT |
| LOW | lib/functions/general/extensions.sh | 153 | # Extensions has its own work/tmp directory, defined by do_main_configuration, with build UUID. We just create it here, | COMMENT |
| LOW | lib/functions/general/countdown.sh | 50 | # If not interactive, just return 0. | COMMENT |
| LOW | lib/functions/general/git.sh | 196 | # when we work offline we simply return the sources to their original state | COMMENT |
| LOW | lib/functions/compilation/kernel-debs.sh | 426 | # Lets check and warn if it isn't. If warns don't popup over time we remove and just use ARCHITECTURE later. | COMMENT |
| MEDIUM | lib/functions/compilation/uboot.sh | 579 | [[ -n $atftempdir ]] && rm -rf "${atftempdir:?}" # @TODO: intricate cleanup; u-boot's pkg uses ATF's tempdir... | CODE |
| MEDIUM | lib/functions/compilation/armbian-kernel.sh | 17 | # To facilitate this, use the arrays opts_n/opts_y/opts_m and/or the opts_val dictionary. | COMMENT |
| MEDIUM | lib/functions/compilation/armbian-kernel.sh | 195 | # Enables comprehensive IPTABLES/NFTABLES support for advanced networking and firewall configurations. | COMMENT |
| MEDIUM | lib/functions/compilation/armbian-kernel.sh | 471 | # Enables Docker support by configuring a comprehensive set of kernel options required for Docker functionality. | COMMENT |
| LOW | lib/functions/compilation/distcc.sh | 56 | # If not using distcc, just add "$CTHREADS" to the DISTCC_MAKE_J_PARALLEL array. | COMMENT |
| LOW | lib/functions/logging/traps.sh | 108 | return 0 # No handlers set, just return. | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/validate-board-config.py | 96 | def collect_inherited_assignments(path: Path, _visited: set[Path] | None = None) -> dict[str, str]: | CODE |
| LOW | lib/tools/git-to-patches.py | 73 | def remove_tags_from_description(self, desc: str) -> (str, dict[str, str]): | CODE |
| LOW | lib/tools/info/output-gha-matrix.py | 24 | def resolve_gha_runner_tags_via_pipeline_gha_config(input: dict, artifact_name: str, artifact_arch: str): | CODE |
| LOW | lib/tools/info/output-gha-matrix.py | 106 | def generate_matrix_artifacts(info): | CODE |
| LOW | lib/tools/info/mapper-oci-uptodate.py | 51 | def check_oci_up_to_date_cache(oci_target: str, really_check: bool = False): | CODE |
| LOW | lib/tools/common/aggregation_utils.py | 28 | def calculate_potential_paths(root_dirs, relative_dirs, sub_dirs, artifact_file, initial_paths=None): | CODE |
| LOW⚡ | lib/tools/common/aggregation_utils.py | 43 | def process_common_path_for_potentials(potential_paths): | CODE |
| LOW⚡ | lib/tools/common/aggregation_utils.py | 50 | def get_all_potential_paths_packages(): | CODE |
| LOW⚡ | lib/tools/common/aggregation_utils.py | 55 | def aggregate_packages_from_potential(potential_paths): | CODE |
| LOW | lib/tools/common/aggregation_utils.py | 85 | def aggregate_simple_contents_potential(potential_paths): | CODE |
| LOW | lib/tools/common/aggregation_utils.py | 135 | def remove_common_path_from_refs(merged): | CODE |
| LOW | lib/tools/common/aggregation_utils.py | 205 | def aggregate_all_debootstrap(artifact, aggregation_function=aggregate_packages_from_potential): | CODE |
| LOW | lib/tools/common/aggregation_utils.py | 222 | def join_refs_for_bash_single_string(refs): | CODE |
| LOW | lib/tools/common/aggregation_utils.py | 237 | def join_refs_for_markdown_single_string(refs): | CODE |
| LOW | lib/tools/common/aggregation_utils.py | 257 | def prepare_bash_output_array_for_list( | CODE |
| LOW | lib/tools/common/aggregation_utils.py | 302 | def prepare_bash_output_single_string(output_array_name, merged_list): | CODE |
| LOW | lib/tools/common/aggregation_utils.py | 321 | def encode_source_base_path_extra(contents_dict): | CODE |
| LOW | lib/tools/common/md_asset_log.py | 68 | def get_gh_pages_workflow_script(): | CODE |
| LOW | lib/tools/common/armbian_utils.py | 70 | def show_incoming_environment(): | CODE |
| LOW | lib/tools/common/armbian_utils.py | 125 | def armbian_parse_board_file_for_static_info(board_file, board_id, core_or_userpatched): | CODE |
| LOW | lib/tools/common/armbian_utils.py | 188 | def armbian_get_all_boards_list(boards_path): | CODE |
| LOW⚡ | lib/tools/common/armbian_utils.py | 253 | def read_one_distro_config_file(filename): | CODE |
| LOW⚡ | lib/tools/common/armbian_utils.py | 260 | def split_commas_and_clean_into_list(string): | CODE |
| LOW⚡ | lib/tools/common/armbian_utils.py | 269 | def get_desktop_inventory_for_distro(distro, armbian_paths): | CODE |
| LOW | lib/tools/common/armbian_utils.py | 330 | def armbian_get_all_userspace_inventory(): | CODE |
| LOW | lib/tools/common/armbian_utils.py | 364 | def armbian_get_arch_for_family(family_name, armbian_src_path): | CODE |
| LOW | lib/tools/common/armbian_utils.py | 396 | def armbian_get_all_boards_inventory(): | CODE |
| LOW | lib/tools/common/armbian_utils.py | 458 | def armbian_run_command_and_parse_json_from_stdout(exec_cmd: list[str], params: dict): | CODE |
| LOW | lib/tools/common/armbian_utils.py | 509 | def parse_log_lines_from_stderr(lines_stderr: str): | CODE |
| LOW | lib/tools/common/armbian_utils.py | 536 | def gather_json_output_from_armbian(command: str, targets: list[dict]): | CODE |
| LOW | lib/tools/common/dt_makefile_patcher.py | 307 | def auto_patch_all_dt_makefiles(autopatcher_params: AutoPatcherParams) -> list[AutomaticPatchDescription]: | CODE |
| LOW | lib/tools/common/gha.py | 105 | def add_job_output_from_input(self, name: str, input: WorkflowJobInput) -> WorkflowJobOutput: | CODE |
| LOW | lib/tools/common/gha.py | 111 | def add_job_input_from_needed_job_output(self, job_output: WorkflowJobOutput) -> WorkflowJobInput: | CODE |
| LOW | lib/tools/common/patching_parallel.py | 355 | def calculate_optimal_workers() -> int: | CODE |
| LOW | lib/tools/common/patching_parallel.py | 389 | def parse_patch_stdout_for_files(stdout_output: str) -> List[str]: | CODE |
| LOW | lib/tools/common/patching_parallel.py | 430 | def apply_patch_date_to_files(patch_files: List[str], working_dir: str, patch_mtime: float, root_makefile_date: float) - | CODE |
| LOW | lib/tools/common/patching_parallel.py | 496 | def _process_worker_patches_sequential(worker_items: List[PatchWorkItem], progress_queue=None) -> List[ParallelPatchResu | CODE |
| LOW | lib/tools/common/patching_parallel.py | 554 | def process_single_patch_worker(item: PatchWorkItem) -> ParallelPatchResult: | CODE |
| LOW | lib/tools/common/patching_parallel.py | 974 | def group_patches_by_implicit_dependencies(patches: List) -> List[List]: | CODE |
| LOW | lib/tools/common/patching_parallel.py | 1331 | def update_patches_from_parallel_results( | CODE |
| LOW | lib/tools/common/bash_declare_parser.py | 65 | def armbian_value_parse_double_quoted(self, value: str): | CODE |
| LOW | lib/tools/common/bash_declare_parser.py | 72 | def armbian_value_parse_single_quoted(self, value: str): | CODE |
| LOW | lib/tools/common/patching_utils.py | 243 | def split_description_and_patch(full_message_text: str) -> tuple["str | None", str]: | CODE |
| LOW | lib/tools/common/patching_utils.py | 273 | def shorten_patched_file_name_for_stats(path): | CODE |
| LOW | lib/tools/common/patching_utils.py | 277 | def parse_patch_stdout_for_files(stdout_output: str): | CODE |
| LOW | lib/tools/common/patching_utils.py | 567 | def commit_changes_to_git_grouped(self, all_files_to_add: list[str], repo: git.Repo): | CODE |
| LOW | lib/tools/common/patching_utils.py | 744 | def apply_patch_date_to_files(self, working_dir, options): | CODE |
| LOW | lib/tools/common/patching_utils.py | 798 | def prepare_clean_git_tree_for_patching(repo: git.Repo, revision_sha: str, branch_name: str): | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | lib/tools/info/repo-reprepro.py | 97 | 'reprepro -b "${REPO_LOCATION}" --delete clearvanished || echo "clearvanished failed"', | CODE |
| HIGH | lib/tools/info/repo-reprepro.py | 100 | 'reprepro -b "${REPO_LOCATION}" check || echo "initial check failed"' | CODE |
| HIGH⚡ | lib/tools/common/md_asset_log.py | 85 | BRANCH_NAME: ${{ github.head_ref || github.ref_name }} | CODE |
| HIGH⚡ | lib/tools/common/md_asset_log.py | 95 | - name: Run grip to gen ${{ github.head_ref || github.ref_name }} | CODE |
| HIGH⚡ | lib/tools/common/md_asset_log.py | 97 | BRANCH_NAME: ${{ github.head_ref || github.ref_name }} | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | action.yml | 363 | except Exception as e: | CODE |
| LOW | action.yml | 381 | except Exception as e: | CODE |
| MEDIUM | lib/tools/call-stack-analyze.py | 89 | eprint("Error: line_parts length is not 4") | CODE |
| MEDIUM | lib/tools/call-stack-analyze.py | 177 | eprint("Error: function not found in function_to_file: " + func) | CODE |
| LOW | lib/tools/patching.py | 206 | except Exception as e: | CODE |
| LOW | lib/tools/patching.py | 226 | except Exception as invalid_exception: | CODE |
| LOW | lib/tools/patching.py | 385 | except Exception as e: | CODE |
| LOW | lib/tools/patching.py | 444 | except Exception as e: | CODE |
| LOW | lib/tools/cli-oci-up2date.py | 33 | except Exception as e: | CODE |
| LOW | lib/tools/info/mapper-oci-uptodate.py | 108 | except Exception as e: | CODE |
| LOW⚡ | lib/tools/common/patching_parallel.py | 201 | except Exception: | CODE |
| LOW⚡ | lib/tools/common/patching_parallel.py | 209 | except Exception as e: | CODE |
| LOW⚡ | lib/tools/common/patching_parallel.py | 218 | except Exception as e: | CODE |
| LOW⚡ | lib/tools/common/patching_parallel.py | 226 | except Exception as e: | CODE |
| LOW⚡ | lib/tools/common/patching_parallel.py | 295 | except Exception as e: | CODE |
| LOW⚡ | lib/tools/common/patching_parallel.py | 297 | except Exception as e: | CODE |
| LOW⚡ | lib/tools/common/patching_parallel.py | 300 | except Exception as e: | CODE |
| LOW | lib/tools/common/patching_parallel.py | 169 | except Exception as e: | CODE |
| LOW | lib/tools/common/patching_parallel.py | 174 | except Exception as e: | CODE |
| LOW | lib/tools/common/patching_parallel.py | 261 | except Exception as e: | CODE |
| LOW | lib/tools/common/patching_parallel.py | 323 | except Exception as e: | CODE |
| LOW | lib/tools/common/patching_parallel.py | 338 | except Exception as e: | CODE |
| LOW | lib/tools/common/patching_parallel.py | 351 | except Exception: | CODE |
| LOW | lib/tools/common/patching_parallel.py | 537 | except Exception as e: | CODE |
| LOW | lib/tools/common/patching_parallel.py | 651 | except Exception as git_error: | CODE |
| LOW | lib/tools/common/patching_parallel.py | 847 | except Exception as commit_error: | CODE |
| LOW | lib/tools/common/patching_parallel.py | 867 | except Exception as export_error: | CODE |
| LOW | lib/tools/common/patching_parallel.py | 889 | except Exception as e: | CODE |
| LOW | lib/tools/common/patching_parallel.py | 1146 | except Exception as e: | CODE |
| LOW | lib/tools/common/patching_parallel.py | 1287 | except Exception as e: | CODE |
| LOW | lib/tools/common/patching_parallel.py | 1325 | except Exception as e: | CODE |
| LOW | lib/tools/common/patching_utils.py | 358 | except Exception as e: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | tools/repository/repo.sh | 1228 | # Step 1: Build common (main) component once | COMMENT |
| LOW⚡ | tools/repository/repo.sh | 1231 | # Step 2: Workers build release-specific components in parallel (isolated DBs) | COMMENT |
| LOW⚡ | tools/repository/repo.sh | 1237 | # Step 3: Final merge to combine common component with release-specific components | COMMENT |
| LOW⚡ | lib/tools/common/patching_parallel.py | 1062 | # Step 3: Group patches by their component root | COMMENT |
| LOW⚡ | lib/tools/common/patching_parallel.py | 1072 | # Step 4: Sort each group to preserve original order | COMMENT |
| LOW | lib/tools/common/patching_parallel.py | 996 | # Step 1: Build file -> patches mapping | COMMENT |
| LOW | lib/tools/common/patching_parallel.py | 1023 | # Step 2: Build dependency graph using union-find | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | tools/repository/repo.sh | 1228 | # Step 1: Build common (main) component once | COMMENT |
| LOW⚡ | tools/repository/repo.sh | 1231 | # Step 2: Workers build release-specific components in parallel (isolated DBs) | COMMENT |
| LOW⚡ | tools/repository/repo.sh | 1237 | # Step 3: Final merge to combine common component with release-specific components | COMMENT |
| LOW⚡ | lib/tools/common/patching_parallel.py | 1062 | # Step 3: Group patches by their component root | COMMENT |
| LOW⚡ | lib/tools/common/patching_parallel.py | 1072 | # Step 4: Sort each group to preserve original order | COMMENT |
| LOW | lib/tools/common/patching_parallel.py | 996 | # Step 1: Build file -> patches mapping | COMMENT |
| LOW | lib/tools/common/patching_parallel.py | 1023 | # Step 2: Build dependency graph using union-find | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | packages/bsp/clockworkpi-a06/temp_fan_daemon_a06.py | 43 | CODE | |
| LOW | packages/bsp/clockworkpi-a06/temp_fan_daemon_a06.py | 91 | CODE | |
| LOW | packages/bsp/clockworkpi-a06/temp_fan_daemon_a06.py | 107 | CODE | |
| LOW | lib/tools/info/targets-compositor.py | 70 | CODE | |
| LOW | lib/tools/info/mapper-oci-uptodate.py | 51 | CODE | |
| LOW | lib/tools/common/aggregation_utils.py | 55 | CODE | |
| LOW | lib/tools/common/armbian_utils.py | 396 | CODE | |
| LOW | lib/tools/common/armbian_utils.py | 536 | CODE | |
| LOW | lib/tools/common/dt_makefile_patcher.py | 217 | CODE | |
| LOW | lib/tools/common/patching_parallel.py | 243 | CODE | |
| LOW | lib/tools/common/patching_parallel.py | 343 | CODE | |
| LOW | lib/tools/common/patching_parallel.py | 554 | CODE | |
| LOW | lib/tools/common/patching_parallel.py | 1099 | CODE | |
| LOW | lib/tools/common/patching_parallel.py | 90 | CODE | |
| LOW | lib/tools/common/patching_parallel.py | 178 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | lib/tools/aggregation.py | 12 | # I wrote "prompt" comments and the whole thing was generated by Copilot. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | lib/functions/rootfs/distro-agnostic.sh | 597 | return 0 # make sure to exit with success | CODE |
| LOW | lib/functions/general/chroot-helpers.sh | 61 | target="$(realpath "$1")/" # normalize, make sure to have slash as last element | CODE |
| LOW | lib/functions/main/rootfs-image.sh | 106 | # Run the cleanup handler. @TODO: this already does the above, so can be simpler. @TODO: don't forget to split MOUNT/SD | COMMENT |
| LOW | lib/functions/main/rootfs-image.sh | 106 | # Run the cleanup handler. @TODO: this already does the above, so can be simpler. @TODO: don't forget to split MOUNT/SD | COMMENT |
| LOW | lib/functions/logging/capture.sh | 11 | # make sure to local with a value, otherwise they will appear in the list... | COMMENT |
| LOW | lib/functions/logging/display-alert.sh | 233 | return 0 # make sure to exit with success, always | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/repository/cleanup-debs.sh | 21 | # Usage: | COMMENT |
| LOW | extensions/ccache-remote/ccache-remote.sh | 13 | # Usage: | COMMENT |
| LOW | packages/bsp/easepi/ir.sh | 5 | # Usage: | COMMENT |
| LOW | lib/functions/host/mktemp-utils.sh | 12 | # Usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | lib/tools/common/bash_declare_parser.py | 70 | CODE | |
| LOW | lib/tools/common/bash_declare_parser.py | 77 | CODE | |
| LOW | lib/tools/common/bash_declare_parser.py | 88 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/validate-board-config.py | 30 | CODE | |
| LOW | lib/tools/common/patching_parallel.py | 24 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | lib/functions/configuration/main-config.sh | 58 | [[ -z $MAINTAINER ]] && MAINTAINER="John Doe" # deb signature | CODE |