Repository Analysis

end-4/dots-hyprland

Usability-first dotfiles

13.1 Low AI signal View on GitHub
13.1
Adjusted Score
13.1
Raw Score
100%
Time Factor
2026-05-29
Last Push
14,661
Stars
QML
Language
25,416
Lines of Code
173
Files
120
Pattern Hits
2026-05-31
Scan Date

Score History

Severity Breakdown

CRITICAL 0HIGH 38MEDIUM 21LOW 61

Pattern Findings

120 matches across 13 categories. Click a row to expand file-level details.

Magic Placeholder Names36 hits · 180 pts
SeverityFileLineSnippet
HIGHdots/.config/quickshell/ii/translations/id_ID.json57 "No API key\nSet it with /key YOUR_API_KEY": "Tidak ada kunci API\nAtur dengan /key KUNCI_API_ANDA",
HIGHdots/.config/quickshell/ii/translations/id_ID.json171 "API key is set\nChange with /key YOUR_API_KEY": "Kunci API sudah diatur\nUbah dengan /key KUNCI_API_ANDA",
HIGHdots/.config/quickshell/ii/translations/tr_TR.json57 "No API key\nSet it with /key YOUR_API_KEY": "API anahtarı yok\n/key API_ANAHTARINIZ ile ayarlayın",
HIGHdots/.config/quickshell/ii/translations/tr_TR.json171 "API key is set\nChange with /key YOUR_API_KEY": "API anahtarı ayarlandı\n/key API_ANAHTARINIZ ile değiştirin",
HIGHdots/.config/quickshell/ii/translations/tr_TR.json503 "Language not listed or incomplete translations?\nYou can choose to generate translations for it with Gemini.\n1. Open
HIGHdots/.config/quickshell/ii/translations/ja_JP.json331 "No API key\nSet it with /key YOUR_API_KEY": "APIキーがありません\n/key YOUR_API_KEYで設定してください",
HIGHdots/.config/quickshell/ii/translations/ja_JP.json422 "API key is set\nChange with /key YOUR_API_KEY": "APIキーが設定済み\n/key YOUR_API_KEYで変更できます",
HIGHdots/.config/quickshell/ii/translations/zh_CN.json307 "No API key\nSet it with /key YOUR_API_KEY": "无 API 密钥\n使用 /key YOUR_API_KEY 设置",
HIGHdots/.config/quickshell/ii/translations/zh_CN.json310 "API key is set\nChange with /key YOUR_API_KEY": "API 密钥已设置\n使用 /key YOUR_API_KEY 更改",
HIGHdots/.config/quickshell/ii/translations/zh_CN.json449 "Language not listed or incomplete translations?\nYou can choose to generate translations for it with Gemini.\n1. Open
HIGHdots/.config/quickshell/ii/translations/it_IT.json226 "No API key\nSet it with /key YOUR_API_KEY": "Nessuna chiave API\nUsa /key per impostarla",
HIGHdots/.config/quickshell/ii/translations/it_IT.json238 "API key is set\nChange with /key YOUR_API_KEY": "Chiave API impostata\nUsa /key per cambiarla",
HIGHdots/.config/quickshell/ii/translations/he_HE.json245 "API key is set\nChange with /key YOUR_API_KEY": "מפתח API מוגדר\nשנה עם /key YOUR_API_KEY",
HIGHdots/.config/quickshell/ii/translations/he_HE.json321 "No API key\nSet it with /key YOUR_API_KEY": "אין מפתח API\nהגדר אותו עם /key YOUR_API_KEY",
HIGHdots/.config/quickshell/ii/translations/en_US.json57 "No API key\nSet it with /key YOUR_API_KEY": "No API key\nSet it with /key YOUR_API_KEY",
HIGHdots/.config/quickshell/ii/translations/en_US.json172 "API key is set\nChange with /key YOUR_API_KEY": "API key is set\nChange with /key YOUR_API_KEY",
HIGHdots/.config/quickshell/ii/translations/en_US.json508 "Language not listed or incomplete translations?\nYou can choose to generate translations for it with Gemini.\n1. Open
HIGHdots/.config/quickshell/ii/translations/es_MX.json297 "Language not listed or incomplete translations?\nYou can choose to generate translations for it with Gemini.\n1. Open
HIGHdots/.config/quickshell/ii/translations/es_MX.json450 "API key is set\nChange with /key YOUR_API_KEY": "Clave API establecida\nCámbiala con /key TU_CLAVE_API",
HIGHdots/.config/quickshell/ii/translations/es_MX.json653 "No API key\nSet it with /key YOUR_API_KEY": "Sin clave API\nEstablécela con /key TU_CLAVE_API",
HIGHdots/.config/quickshell/ii/translations/vi_VN.json319 "No API key\nSet it with /key YOUR_API_KEY": "Không có API key\nĐặt bằng /key API_KEY",
HIGHdots/.config/quickshell/ii/translations/vi_VN.json328 "API key is set\nChange with /key YOUR_API_KEY": "API key đã đặt\nThay đổi bằng /key API_KEY",
HIGHdots/.config/quickshell/ii/translations/ru_RU.json52 "No API key\nSet it with /key YOUR_API_KEY": "Нет API-ключа\nУстановите: /key ВАШ_КЛЮЧ",
HIGHdots/.config/quickshell/ii/translations/ru_RU.json159 "API key is set\nChange with /key YOUR_API_KEY": "API-ключ установлен\nИзменить: /key ВАШ_КЛЮЧ",
HIGHdots/.config/quickshell/ii/translations/ru_RU.json469 "Language not listed or incomplete translations?\nYou can choose to generate translations for it with Gemini.\n1. Open
HIGHdots/.config/quickshell/ii/translations/de_DE.json57 "No API key\nSet it with /key YOUR_API_KEY": "Kein API-Schlüssel\nSetze ihn mit /key DEIN_API_SCHLUESSEL",
HIGHdots/.config/quickshell/ii/translations/de_DE.json171 "API key is set\nChange with /key YOUR_API_KEY": "API-Schlüssel ist gesetzt\nÄndern mit /key DEIN_API_SCHLUESSEL",
HIGHdots/.config/quickshell/ii/translations/de_DE.json503 "Language not listed or incomplete translations?\nYou can choose to generate translations for it with Gemini.\n1. Open
HIGHdots/.config/quickshell/ii/translations/pt_BR.json36 "Language not listed or incomplete translations?\nYou can choose to generate translations for it with Gemini.\n1. Open
HIGHdots/.config/quickshell/ii/translations/pt_BR.json39 "API key is set\nChange with /key YOUR_API_KEY": "Chave API definida\nAltere com /key SUA_CHAVE_API",
HIGHdots/.config/quickshell/ii/translations/pt_BR.json486 "No API key\nSet it with /key YOUR_API_KEY": "Sem chave API\nDefina com /key SUA_CHAVE_API",
HIGHdots/.config/quickshell/ii/translations/fr_FR.json57 "No API key\nSet it with /key YOUR_API_KEY": "Aucune clé API\nDéfinissez-la avec /key VOTRE_CLÉ_API",
HIGHdots/.config/quickshell/ii/translations/fr_FR.json172 "API key is set\nChange with /key YOUR_API_KEY": "Clé API définie\nModifiez avec /key VOTRE_CLÉ_API",
HIGHdots/.config/quickshell/ii/translations/fr_FR.json508 "Language not listed or incomplete translations?\nYou can choose to generate translations for it with Gemini.\n1. Open
HIGHdots/.config/quickshell/ii/translations/uk_UA.json307 "No API key\nSet it with /key YOUR_API_KEY": "Немає API ключа\nВстановіть його можна командою /key YOUR_API_KEY",
HIGHdots/.config/quickshell/ii/translations/uk_UA.json318 "API key is set\nChange with /key YOUR_API_KEY": "API ключ встановлено\nЗмінити можна командою /key YOUR_API_KEY",
Redundant / Tautological Comments26 hits · 38 pts
SeverityFileLineSnippet
LOWsdata/lib/functions.sh89 # Check if sudo is available
LOWsdata/lib/functions.sh198 # Check if both files exist
LOWsdata/lib/functions.sh254 # Check if file path starts with allowed directory
LOWsdata/subcmd-install/3.files-exp.sh93# Check if pattern should be processed based on user preferences
LOWsdata/subcmd-install/3.files-exp.sh116 # Check if paths exist
LOWsdata/subcmd-install/3.files-exp.sh178 # Check if pattern should be processed
LOWsdata/subcmd-install/3.files-exp.sh205 # Check if source exists
LOWsdata/subcmd-exp-update/exp-update-tester.sh664# Check if CREATED_DIRS has the entry
LOWsdata/subcmd-exp-update/0.run.sh267 # Check if already created in this run
LOWsdata/subcmd-exp-update/0.run.sh526 # Check if HEAD@{1} exists before trying to use it
LOWsdata/subcmd-exp-update/0.run.sh764 # Check if the process is still running
LOWsdata/subcmd-exp-update/0.run.sh794# Check if we're in a git repository
LOWsdata/subcmd-exp-update/0.run.sh898 # Check if required Arch Linux tools are available
LOW…s/.config/hypr/hyprland/scripts/start_geoclue_agent.sh3# Check if GeoClue agent is already running
LOW…/hypr/hyprland/scripts/ai/show-loaded-ollama-models.sh54 for ((i=0; i<${#model_name_paths[@]}; i++)); do # Iterate over the array of modelname,blob-path
LOW…/hypr/hyprland/scripts/ai/show-loaded-ollama-models.sh57 if [ "${fields[1]}" == "$blob" ]; then # Check if current 'field' matches a blob
LOW…onfig/hypr/hyprland/scripts/ai/primary-buffer-query.sh36# Check if content is a single line and no longer than 30 characters
LOW…fig/quickshell/ii/scripts/hyprland/hyprconfigurator.py58 # Check if line matches a key to be reset
LOW…fig/quickshell/ii/scripts/hyprland/hyprconfigurator.py67 # Check if line matches a key to be set
LOWdots/.config/quickshell/ii/scripts/colors/applycolor.sh12term_alpha=100 #Set this to < 100 make all your terminals transparent
LOWdots/.config/quickshell/ii/scripts/colors/applycolor.sh31 # Check if terminal escape sequence template exists
LOWdots/.config/quickshell/ii/scripts/colors/applycolor.sh52 # Check if terminal escape sequence template exists
LOWdots/.config/quickshell/ii/scripts/colors/applycolor.sh81# Check if terminal theming is enabled in config
LOWdots/.config/quickshell/ii/scripts/colors/switchwall.sh16 # Check if Qt app theming is enabled in config
LOWdots/.config/quickshell/ii/scripts/colors/switchwall.sh287 # Check if app and shell theming is enabled in config
LOW…uickshell/ii/translations/tools/translation-manager.py239 # Check if directories exist
Decorative Section Separators9 hits · 33 pts
SeverityFileLineSnippet
MEDIUMsdata/dist-fedora/install-deps.sh3# -------------------------
MEDIUMsdata/dist-fedora/install-deps.sh5# -------------------------
MEDIUMsdata/dist-fedora/install-deps.sh11# -------------------------
MEDIUMsdata/dist-fedora/install-deps.sh13# -------------------------
MEDIUMsdata/dist-fedora/install-deps.sh42# -------------------------
MEDIUMsdata/dist-fedora/install-deps.sh44# -------------------------
MEDIUMsdata/subcmd-install/3.files-exp.sh26# =============================================================================
MEDIUMsdata/subcmd-install/3.files-exp.sh151# =============================================================================
MEDIUMsdata/subcmd-install/3.files-exp.sh153# =============================================================================
Excessive Try-Catch Wrapping10 hits · 17 pts
SeverityFileLineSnippet
LOW…fig/quickshell/ii/scripts/hyprland/hyprconfigurator.py102 except Exception as e:
MEDIUM…fig/quickshell/ii/scripts/hyprland/hyprconfigurator.py105 print(f"Error saving file: {e}")
MEDIUM…fig/quickshell/ii/scripts/hyprland/hyprconfigurator.py135 print("Error: Must specify at least one key to set or reset.")
MEDIUM…s/.config/quickshell/ii/scripts/images/find_regions.py38 print(f'Error: Could not load image {image_path}', file=sys.stderr)
MEDIUM…uickshell/ii/translations/tools/translation-cleaner.py109 print(f"Error: Source language file does not exist: {source_file}")
LOW…uickshell/ii/translations/tools/translation-manager.py75 except Exception:
MEDIUM…uickshell/ii/translations/tools/translation-manager.py121 print(f"Error: Cannot save translation file {file_path}: {e}")
MEDIUM…uickshell/ii/translations/tools/translation-manager.py241 print(f"Error: Source code directory does not exist: {source_dir}")
LOW…config/quickshell/ii/services/gCloud/token_from_key.py29 except Exception as e:
MEDIUM…config/quickshell/ii/services/gCloud/token_from_key.py8def get_token(json_str):
Synthetic Comment Markers2 hits · 15 pts
SeverityFileLineSnippet
HIGHsdata/subcmd-exp-update/0.run.sh11# I don't really care if it's AI-generated or not, it's just an extra option in addition to ./setup install, so as long
HIGHsdata/subcmd-exp-update/0.run.sh15# This also applies for exp-update.tester.sh, TBH I don't think that file is really needed, and it also looks like AI-ge
Self-Referential Comments4 hits · 12 pts
SeverityFileLineSnippet
MEDIUMsdata/lib/package-installers.sh6# This file is provided for any distros, mainly non-Arch(based) distros.
MEDIUMsdata/subcmd-exp-update/exp-update-tester.sh402 # Create a test config file in repo
MEDIUMsdata/subcmd-exp-update/exp-update-tester.sh500 # Create a fake lock file
MEDIUM…hell/ii/scripts/colors/code/material-code-set-color.sh4# Define an array of possible VSCode settings file paths for various forks
Deep Nesting9 hits · 9 pts
SeverityFileLineSnippet
LOW…fig/quickshell/ii/scripts/hyprland/hyprconfigurator.py30
LOW…nfig/quickshell/ii/scripts/images/least_busy_region.py113
LOW…uickshell/ii/translations/tools/translation-cleaner.py24
LOW…uickshell/ii/translations/tools/translation-cleaner.py100
LOW…uickshell/ii/translations/tools/translation-manager.py213
LOW…uickshell/ii/translations/tools/translation-manager.py28
LOW…uickshell/ii/translations/tools/translation-manager.py141
LOWdots/.config/kitty/search.py311
LOWdots/.config/kitty/search.py119
Over-Commented Block8 hits · 8 pts
SeverityFileLineSnippet
LOWsdata/uv/requirements.txt1# This file was autogenerated by uv via the following command:
LOWsdata/uv/requirements.txt21idna==3.11
LOWsdata/uv/requirements.txt41opencv-contrib-python==4.12.0.88
LOWsdata/subcmd-install/3.files-exp.sh1# This script is meant to be sourced.
LOWsdata/subcmd-exp-update/0.run.sh1# This script is meant to be sourced.
LOWsdata/subcmd-exp-update/0.run.sh21# - Auto-detect repository structure (dots/ prefix or direct config)
LOW…onfig/hypr/custom/scripts/__restore_video_wallpaper.sh1#!/bin/bash
LOW…g/quickshell/ii/modules/ii/onScreenKeyboard/layouts.js1// We're going to use ydotool
Unused Imports7 hits · 7 pts
SeverityFileLineSnippet
LOW…s/.config/quickshell/ii/scripts/images/find_regions.py6
LOW…ickshell/ii/scripts/colors/generate_colors_material.py10
LOW…s/.config/quickshell/ii/scripts/thumbnails/thumbgen.py11
LOW…uickshell/ii/translations/tools/translation-cleaner.py9
LOW…uickshell/ii/translations/tools/translation-cleaner.py14
LOW…uickshell/ii/translations/tools/translation-cleaner.py14
LOW…uickshell/ii/translations/tools/translation-manager.py16
Verbosity Indicators4 hits · 6 pts
SeverityFileLineSnippet
LOWsdata/subcmd-exp-update/0.run.sh823# Step 1: Pull latest commits
LOWsdata/subcmd-exp-update/0.run.sh892# Step 2: Handle package building
LOWsdata/subcmd-exp-update/0.run.sh1002# Step 3: Update configuration files
LOWsdata/subcmd-exp-update/0.run.sh1128# Step 4: Update script permissions
AI Slop Vocabulary2 hits · 4 pts
SeverityFileLineSnippet
MEDIUMsdata/subcmd-install/2.setups.sh31 # For Fedora, uinput is required for the virtual keyboard to function, and udev rules enable input group users to util
LOW…s/.config/quickshell/ii/scripts/thumbnails/thumbgen.py5# When it gets merged and the python package gets updated we can just use it
Hyper-Verbose Identifiers2 hits · 2 pts
SeverityFileLineSnippet
LOW…uickshell/ii/translations/tools/translation-manager.py28 def extract_translatable_texts(self) -> Set[str]:
LOW…uickshell/ii/translations/tools/translation-manager.py88 def create_temp_translation_file(self, texts: Set[str]) -> str:
Example Usage Blocks1 hit · 2 pts
SeverityFileLineSnippet
LOW…ll/ii/scripts/thumbnails/generate-thumbnails-magick.sh4# Usage: