Commit Graph

10355 Commits

Author SHA1 Message Date
Joost van den Berg
c5f50d9a78 setup-fork.sh 2026-05-08 08:07:54 +02:00
Joost van den Berg
50a505e41e Merge branch 'feature/umbraco-testing' 2026-05-08 08:01:10 +02:00
Joost van den Berg
6de9341399 testing 2026-05-08 07:10:59 +02:00
Morten Nernes
b90d890bb4 Renamed back to community-scripts 2026-05-07 23:12:53 +02:00
Morten Nernes
e619f5757e Fixed deprecated command: forgejo-runner register. 2026-05-07 23:02:55 +02:00
MickLesk
4ff70ba166 Stop spinner on cleanup & simplify qm set
Call stop_spinner in cleanup() to ensure any active spinner is stopped on exit. Consolidate duplicated qm set branches in ubuntu2604-vm.sh into a single invocation to reduce code duplication and simplify VM disk/serial configuration. Remove the explicit ide2 cloudinit device and redundant cloud-init status messages; setup_cloud_init() is still invoked when USE_CLOUD_INIT is enabled, keeping cloud-init configuration centralized.
2026-05-07 11:24:02 +02:00
MickLesk
2a8c6b260f Add optional Cloud-Init and q35 support
Introduce optional Cloud-Init integration and better machine type handling for VMs. Changes include: loading cloud-init helpers lazily (load_cloud_init_functions), interactive cloud-init prompt/configuration (vm_prompt_cloud_init) and SSH key handling, a cloud icon for UI, and vm_machine_type_label for readable machine type display. Default machine type switched to q35 and displays the label in prompts and summaries. VM creation logic now conditionally attaches the cloudinit drive (ide2) and runs setup_cloud_init when enabled; otherwise it creates the VM without the cloudinit device. Post-install messaging now either shows cloud-init details or a guidance message about manual guest filesystem expansion. Minor UI/output adjustments and defaults updated accordingly.
2026-05-07 10:16:16 +02:00
github-actions[bot]
0c5240302c chore: update app headers [skip ci] 2026-05-07 07:53:22 +00:00
MickLesk
27f256a20f Refactor VM script to use shared vm-core helpers
Introduce a shared vm-core loader and refactor the Ubuntu 26.04 VM script to use reusable helper functions. misc/vm-core.func: add COMMUNITY_SCRIPTS_URL default and load_api_functions to dynamically source API helpers, then call load_api_functions from load_functions. vm/ubuntu2604-vm.sh: switch to sourcing the shared vm-core via COMMUNITY_SCRIPTS_URL, replace many inline UI and utility functions with generic vm_* helpers (vm_confirm_new_vm, vm_prompt_*, vm_select_storage, vm_define_disk_references, set_description, etc.), modernize quoting and pushd usage, simplify disk import/resizing logic, and set START_VM default to yes. Also update repository URLs to ProxmoxVED and adjust some behavior (machine type handling, storage/disk references). Overall this centralizes common functionality, reduces duplication, and prepares scripts to use the shared core utilities.
2026-05-07 09:52:57 +02:00
MickLesk
2f5a5771b0 Add interactive VM prompts and error handling
Introduce interactive whiptail-based helpers and robust error handling for VM creation.

- Add error_handler() to report failures (calls post_update_to_api if available), print contextual error info, and call cleanup_vmid.
- Ensure TEMP_DIR is removed in cleanup().
- Replace brittle pve_check with version parsing that supports Proxmox VE 8.0–8.9 and 9.0–9.1 (exits with code 105 on unsupported versions).
- Add ssh_check() to warn users running the script over SSH.
- Add sanitize_vm_hostname() and a suite of vm_* helper functions to prompt and validate interactive settings via whiptail: vm_confirm_new_vm, vm_choose_settings_mode, vm_prompt_vmid, vm_prompt_machine_type, vm_apply_machine_type, vm_prompt_disk_size, vm_prompt_disk_cache, vm_prompt_hostname, vm_prompt_cpu_model, vm_prompt_cpu_cores, vm_prompt_ram, vm_prompt_bridge, vm_prompt_mac, vm_prompt_vlan, vm_prompt_mtu, vm_prompt_start_vm.
- Add storage helpers: vm_select_storage, vm_apply_storage_layout, vm_define_disk_references to detect storage pools, set formats/extensions and prepare disk refs.
- Use APP/NSAPP for description title by introducing local description_title in set_description().

These changes centralize validation and interactive flow, improve UX, and harden error reporting and cleanup.
2026-05-07 09:45:45 +02:00
MickLesk
d1a1c795b7 Create ubuntu2604-vm.sh 2026-05-07 09:36:48 +02:00
montagneId
348f3a9050 Fix license URL in umbraco-install.sh 2026-05-06 15:02:41 +02:00
Joost van den Berg
3e858b3313 Change source url 2026-05-06 14:59:03 +02:00
Joost van den Berg
3e321c41f3 Add website json 2026-05-06 14:52:48 +02:00
Joost van den Berg
1ae259e3ad feat: add Umbraco CMS LXC
Co-authored-by: Copilot <copilot@github.com>
2026-05-06 14:47:22 +02:00
MickLesk
e287504ab9 fix: improve HyperDX API build process in ClickHouse scripts
Co-authored-by: Copilot <copilot@github.com>
2026-05-06 10:07:08 +02:00
MickLesk
d1bd9de24a Merge branch 'main' of https://github.com/community-scripts/ProxmoxVED 2026-05-06 09:10:04 +02:00
MickLesk
3850f46cdb fix clickstack 2026-05-06 09:10:02 +02:00
github-actions[bot]
850a4cf4b7 chore: update app headers [skip ci] 2026-05-06 07:09:05 +00:00
MickLesk
7376a73337 Refactor AlmaLinux VM installer & lobehub setup
Modernize and simplify VM installer and lobehub installation flows.

Key changes:
- install/lobehub-install.sh: consolidated apt invocation, replaced manual ParadeDB .deb download with fetch_and_deploy_gh_release helper, added postgresql pg_search preload configuration and restart, moved pnpm installation into setup_nodejs via NODE_MODULE, and adjusted build env handling.
- vm/almalinux-10-vm.sh: major refactor to source shared functions from COMMUNITY_SCRIPTS_URL, add load_functions, centralize cloud-init handling (configure_cloudinit_ssh_keys / setup_cloud_init), replace many custom UI/helper functions with standardized helpers and exit_script, update traps and error handling, simplify prompts/defaults, use $STD for apt operations, and streamline image customization and VM creation flow.
- Added vm/headers/almalinux-10-vm containing the VM header art and title.

These changes centralize common logic, improve cloud-init integration, reduce duplicated code, and make maintenance easier.
2026-05-06 09:08:38 +02:00
MickLesk
012fa20a03 dfv 2026-05-06 08:35:07 +02:00
MickLesk
1580612098 finalize hoodik
Co-authored-by: Copilot <copilot@github.com>
2026-05-06 08:34:10 +02:00
MickLesk
7b5bb6dfd9 Update domain configuration to use nip.io for subdomain routing and enhance documentation 2026-05-06 07:36:01 +02:00
MickLesk
bc51257aa7 Refactor build process in Puter installation and update JSON files to ensure proper formatting 2026-05-06 07:09:31 +02:00
nnsense
8815335de7 feat: add pinchflat metadata 2026-05-05 17:27:21 +00:00
nnsense
4ddf5beaf8 fix: align pinchflat lxc settings 2026-05-05 17:21:06 +00:00
CanbiZ (MickLesk)
98e1dd0133 Increase default disk size from 10GB to 16GB 2026-05-05 14:40:57 +02:00
nnsense
ebe0dc4e8e fix: update func 2026-05-04 21:04:56 +00:00
nnsense
659bc5d5ce Merge branch 'community-scripts:main' into main 2026-05-04 23:00:11 +02:00
github-actions[bot]
c340f4d4e9 Delete protonmail-bridge (ct) after migration to ProxmoxVE (#1785)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-05-04 17:20:40 +00:00
nnsense
f06e17e68a fix: add erlang runtime apps for pinchflat 2026-05-04 10:26:09 +00:00
CanbiZ (MickLesk)
daf3d624ee Merge pull request #1779 from thieneret/update/authentik-fix-volume-attach
authentik:storage-fix
2026-05-04 07:34:47 +02:00
nnsense
013e63d00f fix: add erlang xmerl for pinchflat 2026-05-04 00:38:19 +00:00
nnsense
cd618da487 fix: add erlang syntax tools for pinchflat 2026-05-04 00:30:34 +00:00
nnsense
2ec7001ff7 feat: add pinchflat lxc script 2026-05-04 00:10:49 +00:00
Thieneret
340cfd679c storage-fix 2026-05-04 00:26:09 +02:00
Stephen Chin
a0bffe7a4f feat(hermesagent): replace shim+system-unit pattern with hermes-native user services
The previous approach used a /usr/bin/hermes shim to proxy commands from root
to the hermes user, and a hand-crafted system-level systemd unit for the
gateway. This worked for the default profile but broke down for named profiles:

- hermes profile create <name> generates an alias script in
  ~/.local/bin/<name> that calls hermes with -p <name>. These aliases live
  in the hermes user's PATH, not root's, so root could not invoke them.
- Maintaining parity would require per-profile shims, a watcher daemon to
  create/remove them, and system-unit mirrors for each profile gateway — all
  of which would need to stay in sync with hermes internals across updates.

New approach — work with hermes, not around it:

- loginctl enable-linger hermes: ensures the hermes user's systemd session
  starts at boot and persists without login. All user-unit gateways (default
  and per-profile) now survive reboots automatically.
- Gateway service management delegated entirely to hermes: 'hermes gateway
  install' / 'hermes setup' create and enable the user unit natively.
  The install script no longer pre-installs the gateway; hermes prompts the
  user to do so at the end of 'hermes setup'.
- hermes-dashboard.service remains a system unit (no native install command
  exists for it). Its After= no longer references hermes-gateway.service
  since there is no system-unit gateway to depend on.
- /usr/bin/hermes shim removed. Root is guided to 'su - hermes' via a two-
  line /etc/profile.d/hermes-hint.sh message on login, with a one-liner to
  make the switch automatic. Once logged in as hermes, all hermes commands,
  profile aliases, and gateway management work natively.
- update_script simplified: only hermes-dashboard (our unit) is stopped and
  restarted. hermes update --yes handles gateway service lifecycle itself.
2026-05-03 15:22:11 -07:00
CanbiZ (MickLesk)
bd804eba5a Merge pull request #1776 from thieneret/update/authentik-outposts
authentik: add outposts
2026-05-02 22:32:32 +02:00
MickLesk
ec5341f9dd Merge branch 'main' of https://github.com/community-scripts/ProxmoxVED 2026-05-02 21:48:29 +02:00
MickLesk
9a9138a051 fix
Co-authored-by: Copilot <copilot@github.com>
2026-05-02 21:48:23 +02:00
Stephen Chin
8afb182095 fix(hermesagent): shim handles hermes user invocation
runuser requires root. When the hermes user calls the shim directly
(e.g. via su - hermes), exec the binary directly instead.
2026-05-02 12:30:34 -07:00
Stephen Chin
be8d55fb83 fix(hermesagent): pass --yes to hermes update to avoid interactive prompt
hermes update prompts "Restore local changes now? [Y/n]" when run
in a TTY context. --yes skips all interactive prompts.
2026-05-02 12:21:18 -07:00
github-actions[bot]
6fe0684fb7 chore: update app headers [skip ci] 2026-05-02 19:13:37 +00:00
MickLesk
494d41392d add docuseal
Co-authored-by: Copilot <copilot@github.com>
2026-05-02 21:13:05 +02:00
Stephen Chin
21dfffd158 fix(hermesagent): correct JSON metadata
- default_credentials: username null/null (no SSH login for hermes
  service account; access is via root like all PVE Helper Scripts)
- Update setup note to reference root instead of hermes user
- Update dashboard tunnel note to use root and -fNL flags
2026-05-02 12:10:09 -07:00
Stephen Chin
aa975798a1 fix(hermesagent): correct SSH access instructions
The hermes service account has no password or SSH keys and cannot
be used to log in. Access is via root (standard PVE Helper Scripts
pattern). Also add -fN flags to the dashboard tunnel command so it
runs in the background without opening a shell session.
2026-05-02 12:09:56 -07:00
Stephen Chin
06d9c62e54 fix(hermes-agent): rename files to match NSAPP derivation
APP='Hermes Agent' produces NSAPP='hermesagent' via build.func's
lowercase+strip-spaces logic. Rename ct/, install/, json/, and
header files to match.
2026-05-02 09:45:59 -07:00
Stephen Chin
edf1a9604a fix(hermes-agent): harden .hermes directory permissions
The response_store.db and session JSON files under ~/.hermes/ are stored
in plaintext and readable by any process with filesystem access. Set
~/.hermes to 0700 (owner-only) and ~/home/hermes to 0750 to restrict
access to conversation history, credentials, and session data.

Ref: https://github.com/NousResearch/hermes-agent/issues/7486
2026-05-02 08:09:21 -07:00
Stephen Chin
e0aaacdb96 fix(hermes-agent): restrict /proc access in systemd services
Hermes strips sensitive env vars from tool subprocesses, but child
processes can recover them by reading /proc/<parent_pid>/environ. Add
ProtectProc=invisible and ProcSubset=pid to both systemd services to
hide other processes' /proc entries and limit /proc to the service's
own PID namespace.

Ref: https://github.com/NousResearch/hermes-agent/issues/4427
2026-05-02 08:09:00 -07:00
Stephen Chin
16e774083f fix(hermes-agent): set UMask=0077 on systemd services
The Anthropic OAuth helper writes credential files with the process
default umask, resulting in 0644 permissions on sensitive files. Set
UMask=0077 on both hermes-gateway and hermes-dashboard services so all
files created at runtime are owner-only (0600/0700).

Ref: https://github.com/NousResearch/hermes-agent/issues/11003
2026-05-02 08:08:41 -07:00