Commit Graph
88 Commits
Author SHA1 Message Date
MacRimi 8e0d4ff337 eep only package-changing executions and clean up entry presentation 2026-09-11 08:37:23 +02:00
MacRimi 90c4a720e3 group host changes by function with a truthful before/after 2026-09-09 19:26:22 +02:00
MacRimiandClaude Opus 5 da8a480eff Add audit and reports page, and a change journal
ProxMenux modifies the host: it rewrites configuration files, installs packages, enables services. Until now nobody could say afterwards what had changed, and showing the script does not answer that question — a four-hundred-line function may alter two values, and the reader has no way to know which two. This adds the two halves of an answer.

The change journal records what ProxMenux does as it does it. Eleven bash primitives capture the previous state, apply the change and record it in the same step, writing to a spool that the Monitor reads back. One hundred and thirteen functions across twenty-five scripts are instrumented, covering post-install, shared storage, security tooling, container conversions, disk operations and the PVE 8 to 9 upgrade path. The page shows the difference — rotate 7 becoming rotate 14 — and never the script. Restore and backup scripts are deliberately left out: a restore puts the host back to a state some other script already recorded.

The Audit and reports page answers the other half: what state is this host in, regardless of who put it there. Forty-three checks across seven areas read the host and classify each result as critical, warning, observation, conformant, unverified or not applicable, with the evidence they read attached to each one. A declared policy lets the reader say what this particular host is expected to do — which guests must have a backup, which storages are essential — so the report judges the host against its own intent rather than a generic template. An inventory records the hardware, network and guest topology behind those readings, a comparison shows what moved between two runs, and six report profiles produce a printable document scoped to what the reader needs. Everything is available in the eight supported languages.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-08 21:06:04 +02:00
MacRimi 86305cf261 fix: harden post-install migrations and bundle multi-ABI Python runtimes
- safely migrate historical Bashrc and Log2RAM installations
- align post-install function versions across both flows
- bundle gevent runtimes for CPython 3.11 and 3.13
- select the correct Python ABI at runtime
- validate both supported Proxmox VE Python versions in AppImage workflows
- fix #327, #328 and #331
2026-09-03 11:55:39 +02:00
MacRimi 315259f5ec New version 1.2.5
Stable release consolidating the v1.2.4 beta cycle (1.2.4.1-beta and 1.2.4.2-beta) into 1.2.5.

Highlights:

- Apps dashboard: single launcher for every LXC-registered app and user-defined Custom Web Link, with category badges, search, sort and one-click deep-links back to the guest modal.
- LXC Apps & Updates end-to-end: App tab inside every guest modal, upstream version tracking, and Easy Updates that cover OS packages, registered apps, Docker Engine and per-image updates on the same 24-hour cycle.
- Application detection catalog with 380+ tracked workloads generated live from community-scripts across seven detector methods.
- Monitor now speaks 8 languages: English, Spanish, German, French, Italian, Portuguese, Slovak and Swedish (i18n scaffolding by @vaso73).
- NVIDIA multi-GPU passthrough by exact BDF so one card can be assigned to a VM while another stays operational on the host or LXC.
- Navigation reorder, Memory & Swap real memory-pressure signal, native Pushover channel, Actions API, plus wide-reaching improvements across health, hardware, network, backup and post-install.

Full release notes: see CHANGELOG.md and https://github.com/MacRimi/ProxMenux/releases
2026-09-01 19:15:42 +02:00
MacRimi fcfe8da765 refine post-install and hardware GPU docs, Monitor UX and CLI styling
- rewrite the 15 post-install pages and the 3 hardware GPU pages so they reflect the current scripts (reversibility, tracked-tool counts, kernel parameters, per-tool commands, Alpine LXC propagation flow)
- migrate the legacy step-badge helper on post-install/optional and create-vm/synology to the canonical pill component, with the stepLabel key added in each locale
- fix rich-text i18n calls missing helpers across network, automated, optional, security, customization and the post-install landing pages, and escape the `<iface>` placeholder in automated so intl no longer parses it as a tag
- remove the mouse-follow blue overlay from the docs landing layout
- reposition the App-tab Edit button and stack the Search and Register controls vertically on mobile
- move the Bulk update Configure/Edit control into the section header so it behaves the same on desktop and mobile
- show a spinner during the final autoremove/autoclean pass of update-pve-safe so the cleanup step reads as active instead of silent
- restyle the shell spinner and msg_info in a distinctive purple and drop the unused msg_lang duplicate
- add a web-docs i18n build script and its CI workflow, plus tests for the pushover notification channel
2026-08-26 17:23:09 +02:00
MacRimi 46158209f1 fix: improve host diagnostics, storage handling, and maintenance workflows
- add zero-downtime Proxmox TLS certificate refresh from the Security panel (#307)
- classify storage availability independently from missing capacity information (#309)
- update ZFS ARC sizing and safely reconcile conflicting module configurations
- preserve and restore migrated ZFS settings without overwriting later administrator changes
- stop memory optimization from forcing the kernel overcommit policy
- correlate multi-line OOM events and identify the affected LXC, cgroup limits, swap and killed process
- add selectable Bash prompt path styles and clearer shell activation guidance
- protect technical names during automatic translation and correct localized terminology
- update the Coral and VM/LXC Apps and Updates documentation, translations and screenshots
2026-08-25 18:48:39 +02:00
MacRimi 99ad69e8cf Event-only modal cache + Settings edit gating + ES i18n polish
Modal caches now refresh on events only — the periodic prewarmer runs one-shot at startup, mount points split into static/runtime endpoints, and backups get a client 6-hour gate. Updates tab shows post-apply feedback and the script terminal no longer closes the parent modal. Settings adds edit gating on 3 cards with the 3-level contrast rule applied consistently. ES translation batch (~25 fixes) and What's New for 1.2.4.1-beta refreshed.
2026-08-14 20:17:45 +02:00
VAIO73 2bfa84d5e0 fix(post-install): run fwbr udev rule after systemd 2026-08-10 16:29:54 +02:00
MacRimi e05b4e94dc chore(post_install): bump setup_persistent_network FUNC_VERSION to 1.2
Bump FUNC_VERSION from 1.1 to 1.2 in the setup_persistent_network wrapper
for both customizable and auto post_install variants.

Rationale:
The generator pmx_setup_persistent_network in utils-install-functions.sh
now emits `.link` files with Kind=!bridge (PR #280), so existing installs
need their `.link` files regenerated to pick up the fix. Bumping the
wrapper's FUNC_VERSION triggers the Monitor + CLI post-install version
tracker to surface persistent_network as a pending update, prompting
users to re-run the optimization — which regenerates the files with the
fix applied.

Not touched:
- network_menu.sh copy of setup_persistent_network: uses a simpler
  register_tool() that doesn't track versions (menu-driven invocation
  is on-demand, not tracked as auto-update-eligible by design).
2026-08-09 00:54:22 +02:00
MacRimi b2c6a6c536 Update 1.2.4 2026-07-21 18:26:11 +02:00
MacRimi 51b9285980 update 1.2.2.2 beta 2026-06-28 13:06:40 +02:00
MacRimi 4112323961 Update AppImage 2026-05-20 18:14:32 +02:00
MacRimiandClaude Opus 4.7 6eb1312c61 1.2.1.1-beta: notification + LXC + post-install fixes
- flask_notification_routes: PVE webhook X-Webhook-Secret written in
  standard base64 so PVE can decode it (GH #198)
- notification_channels: Gmail SMTP App Password handling — normalize
  tls_mode (None/empty → starttls), reject creds without host (false-
  positive sendmail delivery), surface "AUTH not advertised" hint
- notification_events: is_vzdump_active_on_host() reads /var/log/pve/
  tasks/active directly so backup_start fallback and vm_shutdown
  suppression survive a Monitor restart mid-backup
- notification_templates: extract --storage flag from vzdump log →
  "PBS-Cloud: vm/104/…" instead of generic "PBS:" prefix when multiple
  PBS endpoints exist
- health_monitor: pve_storage_capacity + zfs_pool_capacity respect
  per-item dismiss (don't keep category WARNING/CRITICAL after user
  dismisses); updates_check cache invalidated when /var/log/apt/
  history.log mtime advances
- lxc_mount_points: PVE volume size from subvol quota (df via
  /proc/<host_pid>/root/<target> + lxc.conf size=NNNG fallback);
  host_source_state detects "host detached" zombie binds; per-mount
  subprocess work parallelised via ThreadPoolExecutor so a CT with
  many bind mounts doesn't trip the Caddy 3s reverse-proxy timeout
- virtual-machines: "host detached" badge on bind mounts whose host
  source path disappeared
- auto/customizable_post_install: log2ram FUNC_VERSION 1.1 → 1.2; new
  log2ram-check.sh vacuums journal + truncates non-rotating logs
  (pveproxy/access.log, pveam.log) instead of only calling
  `log2ram write` (which leaves the tmpfs full); auto flow gains the
  missing SystemMaxUse in /etc/systemd/journald.conf

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-19 00:06:49 +02:00
jcastro 8877f9871f Enable ZFS autotrim in auto post-install 2026-05-14 06:46:08 +02:00
MacRimi 2f919de9e3 update beta ProxMenux 1.2.1.1-beta 2026-05-09 18:59:59 +02:00
MacRimi 5db6762690 upddate flask_proxmenux_routes.py 2026-04-16 20:40:34 +02:00
MacRimi 26968b02a1 update post_install.sh 2026-04-02 19:23:55 +02:00
MacRimi dd197c9826 Update auto_post_install.sh 2026-03-22 19:32:08 +01:00
MacRimi e98637321d Update auto_post_install.sh 2026-02-13 18:17:32 +01:00
MacRimi bebf0e692a Update License 2026-01-19 17:15:00 +01:00
cod378 ba984592ed refactor: replace remote script fetching with local file execution 2025-11-03 01:22:24 +00:00
MacRimi f1fa6b03d5 change license CC-BY-NC-4.0 2025-11-01 00:10:46 +01:00
MacRimi 4712171d43 Updsate Post Install 2025-10-31 20:16:42 +01:00
MacRimi 4d109c0481 Update Post Install 2025-10-31 20:03:34 +01:00
MacRimi c046b77223 Update auto_post_install.sh 2025-10-31 18:44:30 +01:00
MacRimi 56ba3b5e5f Update auto_post_install.sh 2025-10-31 18:39:11 +01:00
MacRimi 9d053beafb Update Post Install menu 2025-10-31 18:28:11 +01:00
MacRimi f33c451a19 Update Post Install 2025-10-31 17:57:09 +01:00
MacRimi 48d4836f0a Update auto_post_install.sh 2025-10-25 17:33:05 +02:00
MacRimi 5d4f70e943 Update auto_post_install.sh 2025-10-25 17:22:52 +02:00
MacRimi 11671e884d Update auto_post_install.sh 2025-10-25 11:44:00 +02:00
MacRimi dcce818678 Update post Install 2025-10-25 11:28:07 +02:00
MacRimi 93bdcaab7f Update auto_post_install.sh 2025-10-24 17:26:32 +02:00
MacRimiandGitHub 3287dc77e2 Update auto_post_install.sh 2025-10-21 14:24:41 +02:00
MacRimiandGitHub 78a08b35e7 Update auto_post_install.sh 2025-10-21 14:06:10 +02:00
MacRimiandGitHub e86196999a Update auto_post_install.sh 2025-10-21 13:57:32 +02:00
MacRimiandGitHub 4d50339041 Update journald configuration in auto_post_install.sh 2025-10-21 13:56:37 +02:00
MacRimi fb4998d21b Update auto_post_install.sh 2025-10-18 18:24:05 +02:00
MacRimi 84544b1e84 Update auto_post_install.sh 2025-10-04 16:11:45 +02:00
MacRimi 95fce39502 Update auto_post_install.sh 2025-10-04 16:04:09 +02:00
MacRimi ca7b959fce Update auto_post_install.sh 2025-09-27 18:25:25 +02:00
MacRimi 7350bea345 Update auto_post_install.sh 2025-09-09 19:16:13 +02:00
MacRimi 15cd118845 Update auto_post_install.sh 2025-09-09 19:06:33 +02:00
MacRimi d58dff047c Update auto_post_install.sh 2025-09-08 19:24:49 +02:00
MacRimi 5d1338e485 Merge branch 'main' of https://github.com/MacRimi/ProxMenux 2025-09-01 17:21:41 +02:00
MacRimi ce25a167f1 Update auto_post_install.sh 2025-09-01 17:21:39 +02:00
MacRimiandGitHub b11baf2e5d Update auto_post_install.sh 2025-09-01 12:42:46 +02:00
MacRimiandGitHub 233770b553 Update auto_post_install.sh 2025-09-01 12:41:26 +02:00
MacRimiandGitHub d11e3a4ac4 Update auto_post_install.sh 2025-08-31 23:45:37 +02:00