Skip to content

MX-Linux/mx-service-manager

 
 

Repository files navigation

MX Service Manager

A Qt6-based application for managing init services on MX Linux and Debian-based systems. Provides a user-friendly graphical interface to manually enable, disable, start, and stop system services.

latest packaged version(s) build result

image

Features

  • Service Management: Start, stop, enable, and disable system services
  • Multi-Init Support: Works with systemd, SysV init, and other init systems
  • User-Friendly Interface: Clean Qt6-based GUI with intuitive controls
  • Privilege Escalation: Automatic privilege elevation for service operations
  • Internationalization: Multi-language support with 60+ translations
  • Real-time Status: Live display of service states and statuses

Installation

Prerequisites

  • Qt6 (Core, Gui, Widgets, LinguistTools)
  • C++20 compatible compiler (GCC 14+ or Clang)
  • CMake 3.16+
  • Ninja build system (recommended)

Building from Source

Quick Build

./build.sh           # Release build
./build.sh --debug   # Debug build
./build.sh --clean   # Clean rebuild

Using Make Targets

make                 # Default release build
make debug           # Debug build
make install         # Install (requires sudo)
make clean           # Clean rebuild

Manual CMake Build

cmake -G Ninja -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build --parallel
sudo cmake --install build

See BUILD.md for detailed build instructions and options.

Package Installation

On MX Linux and compatible Debian-based systems:

sudo apt update
sudo apt install mx-service-manager

Usage

  1. Launch the application from the application menu or run mx-service-manager in terminal
  2. The application will request administrative privileges for service management
  3. Browse the list of available services
  4. Use the action buttons to:
    • Start: Begin running a stopped service
    • Stop: Stop a running service
    • Enable: Configure service to start at boot
    • Disable: Prevent service from starting at boot

Technical Details

  • Language: C++20
  • Framework: Qt6
  • Build System: CMake with Ninja generator
  • License: GPL v3
  • Version: 25.08.06

Development

Code Style

  • Modern C++20 with Qt6 framework
  • Header guards using #pragma once
  • Member variables use camelCase

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Follow the existing code style
  4. Test your changes thoroughly
  5. Submit a pull request

Translation Contributions

License

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

See LICENSE for the full license text.

Authors

Links

About

Service and daemon manager for MX

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • C++ 62.4%
  • Shell 29.0%
  • CMake 7.3%
  • C 1.3%