Commit Graph

6 Commits

Author SHA1 Message Date
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
Ilia Ross
270e26172b Fix theme
Some checks failed
Tests / prove (push) Has been cancelled
Build / build (push) Has been cancelled
Close inactive / close-inactive (push) Has been cancelled
2026-05-28 02:21:57 +02:00
Ilia Ross
ad890156fa Add new Kea DHCP server module 2026-05-23 01:53:07 +02:00
Ilia Ross
82e9e1c7dd Fix to place new nftables module to the right stack 2026-05-02 01:25:05 +02:00
Ilia Ross
41e32f4e37 Add Nginx module and make part of the full modules list
https://forum.virtualmin.com/t/virtual-nginx-module-port-to-webmin/137074/13?u=ilia
2026-04-25 19:38:04 +02:00
Ilia Ross
282b28da5e Fix to use new file names for modes 2025-06-05 23:38:46 +03:00