253 Commits

Author SHA1 Message Date
CanbiZ
d2e9997d0d
Improve NVIDIA device detection for container passthrough (#9670) 2025-12-05 12:44:23 +01:00
CanbiZ
e73f35e2c8
var. core fixes (bash to sh in fix_gpu_gids ...) (#9666)
* Switch container exec from bash to sh in fix_gpu_gids

Replaces bash with sh for container execution in fix_gpu_gids and updates device matching logic to use a POSIX-compliant case statement. This improves compatibility with containers that may not have bash installed.

* fix(apt): auto-recover from interrupted dpkg operations

When a previous installation is interrupted (e.g., by script error or
user cancellation), dpkg can be left in an inconsistent state requiring
'dpkg --configure -a' to fix.

This change:
- Adds dpkg --configure -a check to ensure_apt_working()
- Adds dpkg --configure -a to retry logic in install_packages_with_retry()
- Adds dpkg --configure -a to retry logic in upgrade_packages_with_retry()

Fixes: Omada Controller update failing after interrupted installation
Reported-in: #9663
2025-12-05 09:17:19 +01:00
CanbiZ
0f7c201b57
core: extend storage type support (rbd, nfs, cifs) and validation (iscidirect, isci, zfs, cephfs, pbs) (#9646)
* core: enhance storage type validation and error codes

Improve storage validation for LXC container creation with
explicit checks for unsupported storage types.

Changes:
- Add validation for storage types that don't support containers:
  - iscsidirect (exit 212) - VMs only
  - iscsi/zfs (exit 213) - no rootdir support
  - cephfs (exit 219) - use RBD instead
  - pbs (exit 224) - backups only
- Add connectivity check for network storage (linstor, rbd, nfs, cifs)
- Simplify storage content validation using pvesm status
- Reorganize Proxmox error codes (200-231) for consistency
- Update error messages to be more descriptive and actionable

This helps users identify storage compatibility issues early
before container creation fails with cryptic errors.

* Update build.func
2025-12-04 19:41:01 +01:00
CanbiZ
a826769899
Three-tier defaults system | security improvements | error_handler | improved logging | improved container creation | improved architecture (#9540)
* Refactor Core

Refactored misc/alpine-install.func to improve error handling, network checks, and MOTD setup. Added misc/alpine-tools.func and misc/error_handler.func for modular tool installation and error management. Enhanced misc/api.func with detailed exit code explanations and telemetry functions. Updated misc/core.func for better initialization, validation, and execution helpers. Removed misc/create_lxc.sh as part of cleanup.

* Delete config-file.func

* Update install.func

* Refactor stop_all_services function and variable names

Refactor service stopping logic and improve variable handling

* Refactor installation script and update copyright

Updated copyright information and adjusted package installation commands. Enhanced IPv6 disabling logic and improved container customization process.

* Update install.func

* Update license comment format in install.func

* Refactor IPv6 handling and enhance MOTD and SSH

Refactor IPv6 handling and update OS function. Enhance MOTD with additional details and configure SSH settings.

* big core refactor

* Enhance IPv6 configuration menu options

Updated IPv6 Address Management menu options for clarity and added a new option for fully disabling IPv6.

* Update default Node.js version to 24 LTS

* Update misc/alpine-tools.func

Co-authored-by: Michel Roegl-Brunner <73236783+michelroegl-brunner@users.noreply.github.com>

* indention

* remove debugf and duplicate codes

* Update whiptail backtitles and error codes

Removed '[dev]' from whiptail --backtitle strings for consistency. Refactored custom exit codes in build.func and error_handler.func: updated Proxmox error codes, shifted MySQL/MariaDB codes to 260-263, and removed unused MongoDB code. Updated error descriptions to match new codes.

* comments

* Refactor error handling and clean up debug comments

Standardized bash variable checks, removed unnecessary debug and commented code, and clarified error handling logic in container build and setup scripts. These changes improve code readability and maintainability without altering functional behavior.

* Update build.func

* feat: Improve LXC network checks and LINSTOR storage handling

Enhanced LXC container network setup to check for both IPv4 and IPv6 addresses, added connectivity (ping) tests, and provided troubleshooting tips on failure. Updated storage validation to support LINSTOR, including cluster connectivity checks and special handling for LINSTOR template storage.

---------

Co-authored-by: Michel Roegl-Brunner <73236783+michelroegl-brunner@users.noreply.github.com>
2025-12-04 07:52:18 +01:00
CanbiZ
d2a103c230
Set default LANG in locale configuration (#9440)
Ensures LANG is set to en_US.UTF-8 by default if not already defined before updating /etc/locale.gen.
2025-11-25 20:32:18 +01:00
CanbiZ
156d6e46a1 core: Improve timezone detection 2025-11-22 17:56:50 +01:00
CanbiZ
3f2f29d352
Refactor IPv6 disable logic and add 'disable' option (#9326)
Replaces previous IPv6 disabling method with a dedicated 'disable' option, storing sysctl settings in /etc/sysctl.d/99-disable-ipv6.conf. Updates build and install scripts to clarify the difference between 'none' (no assignment) and 'disable' (fully disables IPv6), adds user warnings, and disables IPv6 listeners in nginx if present.
2025-11-21 08:53:46 +01:00
CanbiZ
acb1c4efbd
PVE 9.1 version support (#9280) 2025-11-19 17:36:29 +01:00
CanbiZ
714c2e5888
Bump K to H-Scripts to Debian 13 (Trixie) (#8597)
* Update scripts to use Debian 13 and improve update logic

Bump default container OS version from Debian 12 to 13 across multiple LXC setup scripts. Refactor update_script functions for consistency, improve messaging, and standardize apt usage. Update Kimai install and update scripts to use setup_php, setup_composer, and fetch_and_deploy_gh_release helpers, and switch from MySQL to MariaDB. Update Kometa to use Python 3.13. Minor improvements to backup, cleanup, and service management steps in several scripts.

* Refactor install scripts: unify cleanup and apt usage

Replaces repeated apt-get commands with apt for installing dependencies, and consolidates cleanup steps into a single cleanup_lxc function across all install scripts. Also updates repository setup to use setup_deb822_repo where applicable, and makes minor improvements to dependency installation and service setup.

* Update default Debian version to 13 and refactor updates

Set the default Debian version to 13 across all container scripts. Standardize apt command usage by replacing 'apt-get' with 'apt' where appropriate. Remove redundant cleanup steps from update scripts and streamline update logic for consistency. Also, call 'cleanup_lxc' after 'update_script' in the build function.

* Update default OS version to Debian 13 in JSON configs

Updated the 'version' field from '12' to '13' for Debian-based install methods across multiple application JSON files. Also set default OS and version for inspircd. This ensures new containers use the latest supported Debian release.

* fix kimai Update Check

* grammar

* Correct typo in success message

* Fix typo in success message for update

* refactor

* fixed jenkins / improve komodo

---------

Co-authored-by: Tobias <96661824+CrazyWolf13@users.noreply.github.com>
2025-11-12 10:56:18 +01:00
Slaviša Arežina
306627378e
Update shell check (#7796) 2025-09-22 09:51:34 +02:00
CanbiZ
4c3d42d5d1 fix verbose 2025-09-08 14:09:20 +02:00
CanbiZ
299a10efe8 Update build.func 2025-09-08 14:07:25 +02:00
CanbiZ
5e46d81c45
[core]: switch all base_settings to variables (#7479) 2025-09-08 14:03:34 +02:00
CanbiZ
993aff59d7
Update build.func (#6608) 2025-08-06 15:18:23 +02:00
CanbiZ
c53d1d004a
PVE9: Remove Beta Whiptail / add correct version check (#6599) 2025-08-06 13:46:07 +02:00
CanbiZ
3dda41df94
Increase: Core Network check (pre-LXC Creation) (#6546)
* Update build.func

* Update build.func

* Update build.func
2025-08-04 14:36:02 +02:00
Mariano D'Agostino
7433f7df0c
Alternative connectivity checks for LXC (#6472) 2025-08-02 17:52:21 +02:00
Matt Visnovsky
4bd360d31b
Strip SD and NS prefixes before writing to config file (#6356) 2025-07-30 21:14:16 +02:00
teohz
15e3958687
fix: removing ",gw=" from GATE variable when reading/writing from/to config. (#6177)
Previously when creating a config, GATE variable would incluse ",gw="
which was crashing the installer script when read later on.
This fix:
1. writes GATE variable to config without ",gw="
2. removes ",gw=" from GATE variable when reading existing config

Co-authored-by: teohz <git@teohz.com>
2025-07-28 15:11:52 +02:00
CanbiZ
ba70f9867b
ProxmoxVE 9.0 Beta: add BETA Version as test in pve_check (#6295) 2025-07-28 11:00:09 +02:00
CanbiZ
84860a9893
[core]: Improved LXC Container Startup Handling (#6142)
* [core]: Improved LXC Container Startup Handling

* Update build.func

---------

Co-authored-by: Tobias <96661824+CrazyWolf13@users.noreply.github.com>
2025-07-22 14:46:50 +02:00
CanbiZ
7a0ca05153 fix possible whiptail issue 2025-07-15 13:47:08 +02:00
CanbiZ
fb3bf03332 Update build.func 2025-07-15 13:43:05 +02:00
CanbiZ
a2dde6594e
add missing choise 2025-07-15 13:38:25 +02:00
CanbiZ
8f4f2f4d92
Whiptail: Improve Dialogue to work with ESC (#6003) 2025-07-15 13:15:42 +02:00
CanbiZ
e5e8b1e020
fix ipv6 config file 2025-07-14 22:37:36 +02:00
CanbiZ
3b3e62c4cf
escape ipv6 config file 2025-07-14 22:33:05 +02:00
CanbiZ
478b65b2c2
qf 2025-07-14 22:17:48 +02:00
CanbiZ
b060de68c0
Push (#5978) 2025-07-14 21:50:56 +02:00
CanbiZ
24be3b43b1
core: Fix VAAPI passthrough for unprivileged LXC containers via devX (#5875) 2025-07-09 16:10:13 +02:00
CanbiZ
7561e26c0a
Core layer refactor: centralized error traps and msg_* consistency (#5705) 2025-07-04 21:22:50 +02:00
CanbiZ
a80ec39740 fix broken ip6 config file 2025-06-30 12:39:29 +02:00
CanbiZ
b26c5c9354
[core]: add ipv6 configuration support (#5575) 2025-06-30 12:11:44 +02:00
CanbiZ
75b6aa9dac Update build.func 2025-06-22 20:53:02 +02:00
CanbiZ
aab85ab654 fix issue while creating ct without gnupg2 2025-06-22 20:43:25 +02:00
CanbiZ
5e87af5e8f Update build.func 2025-06-22 20:25:01 +02:00
CanbiZ
8bd6d89bff quickfix 2025-06-22 20:16:16 +02:00
CanbiZ
ddf3019021 quickfix missing char 2025-06-22 20:06:25 +02:00
CanbiZ
5fcc97142f
[core]: fix timing issues while template update & timezone setup at create new LXC (#5358)
* fix timezone timing issue at new LXC

* fix possible issue on templates
2025-06-22 19:54:55 +02:00
CanbiZ
637f9a1f44 quickfix broken format 2025-06-20 13:32:57 +02:00
CanbiZ
1f7d85ac60
[core]: unify misc/*.func scripts with centralized logic from core.func (#5316)
* Core Changes

* Formatting

* add create_lxc patches

* Update install.func

* remove dev header
2025-06-20 13:28:06 +02:00
CanbiZ
b5012c4225
Feat: Quorum Status (#5278) 2025-06-19 18:50:23 +02:00
CanbiZ
5db3d92286
Add hostname validation and replace recursion for invalid inputs in advanced settings (#5291) 2025-06-19 18:48:35 +02:00
Michel Roegl-Brunner
2574e41ee8
Prevent api from posing if disabled (#5080) 2025-06-10 09:24:20 +02:00
Michel Roegl-Brunner
4b7c734b9a
Fix typo in build.func (#5041) 2025-06-07 20:57:55 +02:00
CanbiZ
1e3d0e501b
lowercase immich 2025-06-02 18:14:47 +02:00
CanbiZ
05c008241e
add hw for immich, openwebui / remove scrypted (#4927) 2025-06-02 16:40:08 +02:00
Michel Roegl-Brunner
43697716ae
Various fixes (#4924) 2025-06-02 14:16:11 +02:00
CanbiZ
8e7caf4cd9
enable FUSE and TUN Handling (#4644) 2025-05-22 14:32:27 +02:00
Michel Roegl-Brunner
222db46cac
[core] New Features for Config File function (#4601)
* New Features for Config File function

* New Features for Config File function
2025-05-20 11:00:58 +02:00