(pkg: str)
| 1178 | return cfg["systems"][distro].get("installed_programs", []) or [] |
| 1179 | |
| 1180 | def _validate_pkg_name(pkg: str) -> Optional[str]: |
| 1181 | pkg = (pkg or "").strip() |
| 1182 | if not pkg: |
| 1183 | return None |
| 1184 | # prevent shell injection: allow only common package name chars |
| 1185 | if not re.fullmatch(r"[A-Za-z0-9.+_-]+", pkg): |
| 1186 | return None |
| 1187 | return pkg |
| 1188 | |
| 1189 | def install_custom_package(cfg: Dict, distro: str, pkg: str) -> Optional[str]: |
| 1190 | """Install an arbitrary package name inside a distro (best-effort). Returns tracking id or None.""" |
no outgoing calls
no test coverage detected