Commit Graph

25336 Commits

Author SHA1 Message Date
Ilia Ross
5577c1d50f Add comments for clarity 2026-06-15 13:31:25 +02:00
Imre Eilertsen
e62ee2bb4d Update no 2026-06-15 13:30:56 +02:00
Imre Eilertsen
2007354f27 Update no 2026-06-15 13:24:46 +02:00
Imre Eilertsen
bf397eac7b Update no 2026-06-15 13:23:03 +02:00
Imre Eilertsen
3325cc717e Update no 2026-06-15 13:21:47 +02:00
Imre Eilertsen
305b228c0e Update config.info.no 2026-06-15 13:19:06 +02:00
Joe Cooper
7ca3819d2b xmlrpc.cgi strict, warnings, critic, tests, and security audit 2026-06-15 01:16:09 -05:00
Ilia Ross
162a103c45 Merge branch 'master' into systemd 2026-06-14 23:42:05 +02:00
Ilia Ross
605e575908 Fix to escape select label 2026-06-14 23:37:30 +02:00
Jamie Cameron
1445cd7641 Check permission to delete home dirs in batch operations 2026-06-14 13:29:54 -07:00
Ilia Ross
5b0b6fbf1f Add nftables module to the core too
Some checks failed
Tests / prove (push) Has been cancelled
Package and upload artifacts / build (push) Has been cancelled
Close inactive / close-inactive (push) Has been cancelled
2026-06-14 17:51:30 +02:00
Ilia Ross
de57c42f4a Fix to update nested group module access in parent order
Some checks failed
Tests / prove (push) Has been cancelled
Package and upload artifacts / build (push) Has been cancelled
2026-06-14 16:14:21 +02:00
Ilia Ross
ce998ac478 Add module access helpers 2026-06-14 16:00:41 +02:00
Ilia Ross
f65554cec1 Fix to drop breaks 2026-06-14 14:20:21 +02:00
Ilia Ross
8953add81e Fix it to properly retire and exclude nftables for now
ⓘ Move "custom" and "postgresql" into the core Webmin package and add Debian/RPM package metadata so upgrades retire the old standalone module packages cleanly.
2026-06-14 14:06:18 +02:00
Ilia Ross
630de14410 Add custom nftables postgresql modules
https://forum.virtualmin.com/t/custom-commands-module-has-gone/137403/65?u=ilia
2026-06-14 12:46:43 +02:00
Jamie Cameron
804591f892 Merge branch 'master' of github.com:webmin/webmin
Some checks failed
Tests / prove (push) Has been cancelled
Package and upload artifacts / build (push) Has been cancelled
Close inactive / close-inactive (push) Has been cancelled
2026-06-13 18:51:30 -07:00
Jamie Cameron
a56748a3fc Add support for IP-based lets encrypt certs, with version 5.3 of certbot 2026-06-13 18:49:12 -07:00
Jamie Cameron
854b8e8c2b Merge pull request #2759 from mckaygerhard/master-alpine-mysql-mariadb
Some checks failed
Tests / prove (push) Has been cancelled
Package and upload artifacts / build (push) Has been cancelled
Improve alpine mysql/mariadb default support
2026-06-13 15:38:45 -07:00
Jamie Cameron
b0fbe87592 Merge pull request #2762 from webmin/dev/fix-systemd-unit
Don't fork. systemd prefers one process.
2026-06-13 15:33:41 -07:00
Joe Cooper
bf722a658d Ah, I guess keep 5 minute TimeoutStopSec 2026-06-13 15:59:45 -05:00
Joe Cooper
02bdfc20db Type simple for compat with old systems 2026-06-13 15:43:24 -05:00
Joe Cooper
7d6af20741 Don't need ExecStop if systemd is managing process directly 2026-06-13 15:42:53 -05:00
Герхард PICCORO Lenz McKAY
ebbbf7cecb Update CHANGELOG for software module on Alpine Linux
* Update CHANGELOG for software pointing that alpine linux mysql package is supported for sure since  v 3.16
2026-06-13 10:20:44 -04:00
Joe Cooper
da12554998 Don't fork. systemd prefers one process. 2026-06-13 05:34:03 -05:00
Jamie Cameron
84943943fc Merge pull request #2761 from webmin/dev/init-simplify
Some checks failed
Tests / prove (push) Has been cancelled
Package and upload artifacts / build (push) Has been cancelled
Close inactive / close-inactive (push) Has been cancelled
Fix init module
2026-06-12 22:07:38 -07:00
Ilia Ross
8dd06e3c34 Add ability to hide services table if dedicated module is avail 2026-06-13 00:52:47 +02:00
Ilia Ross
8f8199a4bf Fix to simplify and show only systemd services 2026-06-13 00:14:08 +02:00
Ilia Ross
53c3ee1c5d Fix to show only related config options for current boot system 2026-06-12 23:59:36 +02:00
Ilia Ross
d94000afbd Add Systemd Services and Units module
This PR adds a standalone Systemd Services and Units module for managing systemd units across system and user scopes.

The module keeps systemd-specific behavior separate from the legacy Bootup and Shutdown module and is implemented as standalone `strict`/`warnings` Perl code rather than depending on its existing init helpers. Those helpers intentionally smooth over multiple init systems, while this module keeps systemd-specific file handling, user-manager behavior, ACL checks, and control operations explicit, scoped, and easier to audit.

It includes:

- Tabbed views for services, timers, sockets, paths, targets, storage, resources, devices, and user units
- Guided creation and editing for common unit types, with contextual fields, validation, and help
- User-scoped unit management with linger support and safe handling of home-directory unit files
- Runtime actions for start, stop, restart, enable, disable, status, logs, properties, dependencies, and system-unit mask/unmask
- Drop-in override inventory plus create, edit, and delete flows
- Manual unit-file editing with daemon reload reminders and actions
- Configurable module behavior, visible tabs, display options, and post-create navigation
- Comprehensive ACL controls for system/user scopes, actions, manual edits, drop-ins, linger, reload, backup, and user filters
- Safe Webmin user support through a scoped safe ACL preset
- Virtualmin integration for granting domain owners access to their own systemd user units
- Tests for unit generation, safety checks, ACL behavior, user-unit handling, backup coverage, and Perl::Critic compatibility

A companion Virtualmin PR adds template integration so domain owners can be granted scoped access to their own systemd user units when this module is installed.
2026-06-12 20:55:28 +02:00
itamarperdomo
ed5bc3e4b6 Improve alpine mysql/mariadb default support
* The MySQL module in Alpine it lacks default values. This change
uses the necessary values ​​for the module to function.
* These values ​​work for any version of Alpine Linux from 3.8
to Edge, since MariaDB is and always has been the default package.
* The tools server package was included in the package instalation
* Missing changelog entries were included
2026-06-11 11:50:56 -04:00
Ilia Ross
2024a48acf Fix job name
Some checks failed
Tests / prove (push) Has been cancelled
Package and upload artifacts / build (push) Has been cancelled
Close inactive / close-inactive (push) Has been cancelled
2026-06-10 20:11:24 +02:00
Jamie Cameron
db38923b20 Merge pull request #2753 from webmin/dev/add-alpine-initial-support
Some checks failed
Tests / prove (push) Has been cancelled
Build / build (push) Has been cancelled
Close inactive / close-inactive (push) Has been cancelled
Add minimal Alpine Linux compatibility
2026-06-08 21:17:38 -07:00
Ilia Ross
0d4c65ec04 Fix to create custom temp dirs after validation 2026-06-08 18:53:57 +02:00
Ilia Ross
3215c0d0a3 Fix to rename OpenRC init template
ⓘ Rename webmin-gentoo-init to webmin-openrc-init and update setup/distribution references to use the generic OpenRC template name.
2026-06-08 12:24:28 +02:00
Ilia Ross
c11d67d989 Add support for alternate module descriptions
Some checks failed
Tests / prove (push) Has been cancelled
Build / build (push) Has been cancelled
Close inactive / close-inactive (push) Has been cancelled
2026-06-07 16:26:37 +02:00
Ilia Ross
6457a1d7d1 Fix missing install commands for Xterm.js
Some checks failed
Tests / prove (push) Has been cancelled
Build / build (push) Has been cancelled
Close inactive / close-inactive (push) Has been cancelled
2026-06-07 00:21:44 +02:00
Ilia Ross
91c9f6b4ce Update Xterm.js to fix Control-C on iPadOS/Safari terminals
The issue is a known xterm.js/iPadOS Safari hardware-keyboard bug where Ctrl+C may be reported like Enter/newline instead of terminal interrupt input; it has been fixed upstream in xterm.js.

https://github.com/xtermjs/xterm.js/issues/5721
2026-06-07 00:12:58 +02:00
Ilia Ross
ad06644617 Add minimal Alpine Linux compatibility
This PR adds baseline Alpine Linux support in Webmin with OS detection, APK package and update backend, OpenRC boot integration, ifupdown-style networking support and DHCPD defaults.

https://github.com/webmin/webmin/issues/2353
2026-06-06 23:11:25 +02:00
Ilia Ross
d788bbe9c2 Fix to add a placeholder to tempdir field 2026-06-06 22:49:37 +02:00
Ilia Ross
9577737aeb Fix to harden Webmin temp directory validation
https://github.com/webmin/webmin/pull/2749#discussion_r3368028469
2026-06-06 22:40:52 +02:00
Jamie Cameron
ee50fa41cd Merge pull request #2752 from webmin/dev/fix-broken-renewals
Some checks failed
Tests / prove (push) Has been cancelled
Build / build (push) Has been cancelled
Fix LE renewal to schedule by elapsed interval
2026-06-06 08:37:54 -07:00
Ilia Ross
80497c60b9 Update comment 2026-06-06 12:59:44 +02:00
Ilia Ross
6026a20424 Fix LE renewal to schedule by elapsed interval
The Webmin SSL LE renewal setting is labeled as "Months between automatic renewal", but it was previously saved as a calendar-style cron month expression like `*/N`.

That is not the same as an elapsed renewal interval. Webmin’s cron matcher evaluates month schedules against calendar month numbers, so values like `*/5`, `*/12`, or values above `12` do not reliably mean “renew every N months”. This could cause uneven or dangerously late renewal timing.

This changes the renewal job to use Webmin cron’s elapsed `interval` support instead of calendar-month matching.

- Saves automatic renewal as `renew * 30 * 24 * 60 * 60` seconds.
- Clears the cron time fields so the scheduler uses the interval path only.
- Keeps `months => '*/N'` so the SSL UI can continue to display the saved renewal value.
- Resets the renewal timer only after a newly issued certificate.
- Preserves the existing renewal timer for settings-only saves.
- Migrates existing month-based Let's Encrypt renewal jobs during postinstall.
2026-06-06 00:22:19 +02:00
Ilia Ross
501bddabc8 Fix to make temp dir perms message translatable 2026-06-05 22:13:48 +02:00
Ilia Ross
e434d0b138 Fix to use a variable for default perms 2026-06-05 22:06:49 +02:00
Ilia Ross
42a5838d9e Fix not to expect option saved in config
Some checks failed
Tests / prove (push) Has been cancelled
Build / build (push) Has been cancelled
Close inactive / close-inactive (push) Has been cancelled
2026-06-04 22:35:42 +02:00
Ilia Ross
e10b9eeb40 Fix to treat Dovecot add_config as a single file 2026-06-04 22:29:47 +02:00
Ilia Ross
1e5f3dbb83 Fix to create extra config file on save
https://github.com/virtualmin/virtualmin-gpl/issues/324#issuecomment-4619300683
2026-06-04 22:28:27 +02:00
Ilia Ross
e8a3d9d21b Fix to handle missing user input better
Some checks failed
Tests / prove (push) Has been cancelled
Build / build (push) Has been cancelled
Close inactive / close-inactive (push) Has been cancelled
https://github.com/webmin/webmin/issues/2750
2026-06-04 11:36:41 +02:00