diff --git a/check_ntp-0.0.3-20230607.mkp b/check_ntp-0.0.3-20230607.mkp
deleted file mode 100644
index 4cddd50e3cc3fb0c308d81ffd765d4817a52f81f..0000000000000000000000000000000000000000
Binary files a/check_ntp-0.0.3-20230607.mkp and /dev/null differ
diff --git a/check_ntp.mkp b/check_ntp.mkp
deleted file mode 100644
index 4cddd50e3cc3fb0c308d81ffd765d4817a52f81f..0000000000000000000000000000000000000000
Binary files a/check_ntp.mkp and /dev/null differ
diff --git a/checks/check_ntp b/checks/check_ntp
deleted file mode 100644
index 620b90235d3920023148c377076cb6157edd7936..0000000000000000000000000000000000000000
--- a/checks/check_ntp
+++ /dev/null
@@ -1,64 +0,0 @@
-#!/usr/bin/env python3
-# -*- coding: utf-8 -*-
-#
-# License: GNU General Public License v2
-#
-#
-# Author: thl-cmk[at]outlook[dot]com
-# URL   : https://thl-cmk.hopto.org
-# Date  : 2022-10-04
-# File  : checks/active_checks_ntp
-#
-# 2022-11-15: changed to use short options, doesn't work with long options
-
-def check_ntp_arguments(params):
-    args = []
-
-    if 'port' in params:
-        args.append(f'-p {params["port"]}')
-
-    if 'timeout' in params:
-        args.append(f'-t {params["timeout"]}')
-
-    if 'server' in params:
-        args.append(f'-H {params["server"]}')
-    else:
-        args.append('-H $HOSTADDRESS$')
-
-    if 'version' in params:
-        args.append(f'-V {params["version"]}')
-
-    if 'offset_levels' in params:
-        args.append(f'-o {params["offset_levels"][0]},{params["offset_levels"][1]}')
-
-    if 'stratum_levels' in params:
-        args.append(f'-s {params["stratum_levels"][0]},{params["stratum_levels"][1]}')
-
-    if 'dispersion_levels' in params:
-        args.append(f'-D {params["dispersion_levels"][0]},{params["dispersion_levels"][1]}')
-
-    if 'delay_levels' in params:
-        args.append(f'-d {params["dispersion_levels"][0]},{params["dispersion_levels"][1]}')
-
-    if 'state_not_synchronized' in params:
-        args.append(f'-n {params["state_not_synchronized"]}')
-
-    if 'state_no_response' in params:
-        args.append(f'-r {params["state_no_response"]}')
-
-    return args
-
-
-def _check_description(params):
-    if 'description' in params:
-        return f'NTP server {params["description"]}'
-
-    return 'NTP server'
-
-
-active_check_info['ntp'] = {
-    'command_line': 'check_ntp $ARG1$',
-    'argument_function': check_ntp_arguments,
-    'service_description': _check_description,
-    'has_perfdata': True,
-}
diff --git a/doc/.gitkeep b/doc/.gitkeep
deleted file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000
diff --git a/doc/sample-details.png b/doc/sample-details.png
deleted file mode 100644
index c8bf3a99486586f7f7da1dbd0c48437fff3e13bb..0000000000000000000000000000000000000000
Binary files a/doc/sample-details.png and /dev/null differ
diff --git a/doc/sample.png b/doc/sample.png
deleted file mode 100644
index 222012074a6c39ee0ec4f9fa346be4f5ecc4c152..0000000000000000000000000000000000000000
Binary files a/doc/sample.png and /dev/null differ
diff --git a/gui/metrics/check_ntp.py b/gui/metrics/check_ntp.py
deleted file mode 100644
index 3456514550f450e253cd2a3f848f30dfa9a3d8ea..0000000000000000000000000000000000000000
--- a/gui/metrics/check_ntp.py
+++ /dev/null
@@ -1,88 +0,0 @@
-#!/usr/bin/env python3
-# -*- coding: utf-8 -*-
-#
-# License: GNU General Public License v2
-#
-# Author: thl-cmk[at]outlook[dot]com
-# URL   : https://thl-cmk.hopto.org
-# Date  : 2022-10-06
-# File  : metrics/check_ntp.py
-#
-#
-
-from cmk.gui.i18n import _
-
-from cmk.gui.plugins.metrics.utils import (
-    metric_info,
-    graph_info,
-    perfometer_info
-)
-
-metric_info['ntp_offset'] = {
-    'title': _('Offset'),
-    'unit': 's',
-    'color': '#9a52bf',
-}
-
-
-metric_info['ntp_delay'] = {
-    'title': _('Delay'),
-    'help': _(''),
-    'unit': 's',
-    'color': '26/a',
-}
-
-metric_info['ntp_root_dispersion'] = {
-    'title': _('Root dispersion'),
-    'help': _(''),
-    'unit': 's',
-    'color': '32/a',
-}
-
-
-graph_info['check_ntp_offset'] = {
-    'title': _('Time offset'),
-    'metrics': [
-        ('ntp_offset', 'area'),
-    ],
-    'scalars': [
-        ('ntp_offset:crit', _('Upper critical level')),
-        ('ntp_offset:warn', _('Upper warning level')),
-        ('0,ntp_offset:warn,-', _('Lower warning level')),
-        ('0,ntp_offset:crit,-', _('Lower critical level')),
-    ],
-    'range': ('0,ntp_offset:crit,-', 'ntp_offset:crit'),
-}
-
-graph_info['check_ntp_delay'] = {
-    'title': _('Delay'),
-    'metrics': [
-        ('ntp_delay', 'area'),
-    ],
-    'scalars': [
-        ('ntp_delay:crit', _('Critical')),
-        ('ntp_delay:warn', _('Warning')),
-    ],
-    'range': (0, 'ntp_delay:max'),
-}
-
-
-graph_info['check_ntp_dispersion'] = {
-    'title': _('Root dispersion'),
-    'metrics': [
-        ('ntp_root_dispersion', 'area'),
-    ],
-    'scalars': [
-        ('ntp_root_dispersion:crit', _('Critical')),
-        ('ntp_root_dispersion:warn', _('Warning')),
-    ],
-    'range': (0, 'ntp_root_dispersion:max'),
-}
-
-
-perfometer_info.append({
-    'type': 'logarithmic',
-    'metric': 'ntp_offset',
-    'half_value': 1.0,
-    'exponent': 10.0,
-})
diff --git a/gui/wato/check_ntp.py b/gui/wato/check_ntp.py
deleted file mode 100644
index 451a293db59736f8aaf9a78e683fa849c02f13da..0000000000000000000000000000000000000000
--- a/gui/wato/check_ntp.py
+++ /dev/null
@@ -1,184 +0,0 @@
-#!/usr/bin/env python3
-# -*- coding: utf-8 -*-
-#
-# License: GNU General Public License v2
-#
-#
-# Author: thl-cmk[at]outlook[dot]com
-# URL   : https://thl-cmk.hopto.org
-# Date  : 2022-10-04
-# File  : wato/active_checks_ntp.py
-#
-
-from cmk.gui.i18n import _
-from cmk.gui.valuespec import (
-    Dictionary,
-    Tuple,
-    Transform,
-    Integer,
-    TextAscii,
-    MonitoringState,
-)
-
-from cmk.gui.plugins.wato.utils import (
-    rulespec_registry,
-    HostRulespec,
-)
-
-from cmk.gui.plugins.wato.active_checks import (
-    RulespecGroupActiveChecks
-)
-
-
-def _valuespec_active_checks_ntp():
-    return Transform(
-        Dictionary(
-            title=_('Check NTP service'),
-            help=_(''),
-            elements=[
-                ('description',
-                 TextAscii(
-                     title=_('Service description'),
-                     help=_(
-                         'Must be unique for every host. The service description starts always with \"NTP server\".'),
-                     size=50,
-                 )),
-                ('server',
-                 TextAscii(
-                     title=_('Server IP-address or name'),
-                     help=_(
-                         'Hostname or IP-address to monitor. Default is the host name/IP-Address of the monitored host.'
-                     ),
-                     size=50,
-                 )),
-                ('port',
-                 Integer(
-                     title=_('NTP port'),
-                     help=_('UDP Port to use. Default is 123.'),
-                     # size=5,
-                     default_value=123,
-                     minvalue=1,
-                     maxvalue=65535,
-                 )),
-                ('version',
-                 Integer(
-                     title=_('NTP version'),
-                     help=_('NTP version for the request. Default is version 4.'),
-                     # size=1,
-                     default_value=4,
-                     minvalue=1,
-                     maxvalue=4,
-                 )),
-                ('timeout',
-                 Integer(
-                     title=_('Request timeout'),
-                     help=_('Timeoute for the request in seconds. Min: 1s, Max: 20, Default is 2 seconds.'),
-                     # size=3,
-                     default_value=2,
-                     minvalue=1,
-                     maxvalue=20,
-                 )),
-                ('state_not_synchronized',
-                 MonitoringState(
-                     title=_('Monitoring state if server is not synchronized'),
-                     help=_('Monitoring state if server is not synchronized. Default is warning.'),
-                     default_value=2,
-                 )),
-                ('state_no_response',
-                 MonitoringState(
-                     default_value=2,
-                     title=_('Monitoring state if server doesn\'t respond (timeout)'),
-                     help=_('Monitoring state if the server doesn\'t respond. Default is "CRIT"')
-                 )),
-                ('stratum_levels',
-                 Tuple(
-                     title=_('max. stratum'),
-                     elements=[
-                         Integer(
-                             title=_('Warning at'),
-                             default_value=10,
-                             maxvalue=255,
-                             minvalue=1,
-                             help=_(
-                                 'The stratum (\'distance\' to the reference clock) at which the check gets warning.'),
-                         ),
-                         Integer(
-                             title=_('Critical at'),
-                             default_value=15,
-                             maxvalue=18,
-                             help=_(
-                                 'The stratum (\'distance\' to the reference clock) at which the check gets critical.'),
-                         )
-                     ],
-                 )),
-                ('offset_levels',
-                 Tuple(
-                     title=_('max. offset in ms'),
-                     help=_('Mean offset in the times reported between this local host and the remote peer or server.'
-                            'Note: This levels will also be used as lower levels.'),
-                     elements=[
-                         Integer(
-                             title=_('Warning at'),
-                             unit='ms',
-                             default_value=200,
-                             help=_('The offset in ms at which a warning state is triggered. Default is 200ms'),
-                         ),
-                         Integer(
-                             title=_('Critical at'),
-                             unit='ms',
-                             default_value=500,
-                             help=_('The offset in ms at which a critical state is triggered. Default is 500ms'),
-                         )
-                     ],
-                 )),
-                ('delay_levels',
-                 Tuple(
-                     title=_('max. delay in ms'),
-                     help=_('Upper levels for delay in milly seconds.'),
-                     elements=[
-                         Integer(
-                             title=_('Warning at'),
-                             unit='ms',
-                             default_value=200,
-                             help=_('The delay in ms at which a warning state is triggered. Default is 200ms'),
-                         ),
-                         Integer(
-                             title=_('Critical at'),
-                             unit='ms',
-                             default_value=500,
-                             help=_('The delay in s at which a critical state is triggered. Default is 500ms'),
-                         )
-                     ],
-                 )),
-                ('dispersion_levels',
-                 Tuple(
-                     title=_('max. root dispersion in s'),
-                     help=_('Upper levels for (root) dispersion in seconds.'),
-                     elements=[
-                         Integer(
-                             title=_('Warning at'),
-                             unit='s',
-                             default_value=3,
-                             help=_('The dispersion in s at which a warning state is triggered. Default is 3s'),
-                         ),
-                         Integer(
-                             title=_('Critical at'),
-                             unit='s',
-                             default_value=5,
-                             help=_('The dispersion in s at which a critical state is triggered. Default is 5s'),
-                         )
-                     ],
-                 )),
-            ],
-        ),
-    )
-
-
-rulespec_registry.register(
-    HostRulespec(
-        group=RulespecGroupActiveChecks,
-        match_type='all',
-        name='active_checks:ntp',
-        valuespec=_valuespec_active_checks_ntp,
-    )
-)
diff --git a/lib/nagios/plugins/check_ntp b/lib/nagios/plugins/check_ntp
deleted file mode 100755
index f270473b5fb7873bb996ddd51aab0aa69cbde28d..0000000000000000000000000000000000000000
--- a/lib/nagios/plugins/check_ntp
+++ /dev/null
@@ -1,297 +0,0 @@
-#!/usr/bin/env python3
-# -*- coding: utf-8 -*-
-#
-# License: GNU General Public License v2
-#
-#
-# Author: thl-cmk[at]outlook[dot]com
-# URL   : https://thl-cmk.hopto.org
-# Date  : 2022-10-04
-# File  : active_checks_ntp.py
-#
-# Active check to monitor NTP servers.
-#
-# 2022-10-13: added exception handling for ntp request
-# 2022-11-14: made state on no response configurable
-# 2022-11-15: added short options
-# 2023-06-07: moved gui files to ~/local/lib/chek_mk/gui/plugins/...
-
-from typing import Optional, Sequence, Tuple
-from ipaddress import IPv4Address
-import sys
-import argparse
-import socket
-from time import ctime
-
-import ntplib
-
-no_ntplib = False
-try:
-    from ntplib import NTPClient, NTPStats
-except ModuleNotFoundError:
-    no_ntplib = True
-
-_ntp_leap = {
-    0: 'no warning',
-    1: 'last minute of the day has 61 seconds',
-    2: 'last minute of the day has 59 seconds',
-    3: 'unknown(clock unsynchronized)',
-}
-
-_ntp_mode = {
-    0: 'reserved',
-    1: 'symmetric active',
-    2: 'symmetric passive',
-    3: 'client',
-    4: 'server',
-    5: 'broadcast',
-    6: 'NTP control message',
-    7: 'reserved for private use',
-}
-
-_ntp_ref_id = {
-    # from RFC5905
-    'GOES': 'Geosynchronous Orbit Environment Satellite',
-    'GPS': 'Global Position System',
-    'GAL': 'Galileo Positioning System',
-    'PPS': 'Generic pulse - per - second',
-    'IRIG': 'Inter - Range Instrumentation Group',
-    'WWVB': 'LF Radio WWVB Ft.Collins, CO 60 kHz',
-    'DCF': 'LF Radio DCF77 Mainflingen, DE 77.5 kHz',
-    'HBG': 'LF Radio HBG Prangins, HB 75 kHz',
-    'MSF': 'LF Radio MSF Anthorn, UK 60 kHz',
-    'JJY': 'LF Radio JJY Fukushima, JP 40 kHz, Saga, JP 60 kHz',
-    'LORC': 'MF Radio LORAN C station, 100 kHz',
-    'TDF': 'MF Radio Allouis, FR 162 kHz',
-    'CHU': 'HF Radio CHU Ottawa, Ontario',
-    'WWV': 'HF Radio WWV Ft.Collins, CO',
-    'WWVH': 'HF Radio WWVH Kauai, HI',
-    'NIST': 'NIST telephone modem',
-    'ACTS': 'NIST telephone modem',
-    'USNO': 'USNO telephone modem',
-    'PTB': 'European telephone modem',
-    # from meienberg
-    # 'PPS': '“Pulse Per Second” from a time standard',
-    # 'IRIG': 'Inter-Range Instrumentation Group time code',
-    # 'ACTS': 'American NIST time standard telephone modem',
-    # 'NIST': 'American NIST time standard telephone modem',
-    # 'PTB': 'German PTB time standard telephone modem',
-    # 'USNO': 'American USNO time standard telephone modem',
-    # 'CHU': 'CHU (HF, Ottawa, ON, Canada) time standard radio receiver',
-    'DCFa': 'DCF77 (LF, Mainflingen, Germany) time standard radio receiver',
-    # 'HBG': 'HBG (LF Prangins, Switzerland) time standard radio receiver',
-    # 'JJY': 'JJY (LF Fukushima, Japan) time standard radio receiver',
-    # 'LORC': 'LORAN-C station (MF) time standard radio receiver. Note, no longer operational (superseded by eLORAN)',
-    # 'MSF': 'MSF (LF, Anthorn, Great Britain) time standard radio receiver',
-    # 'TDF': 'TDF (MF, Allouis, France) time standard radio receiver',
-    # 'WWV': 'WWV (HF, Ft. Collins, CO, America) time standard radio receiver',
-    # 'WWVB': 'WWVB (LF, Ft. Collins, CO, America) time standard radio receiver',
-    # 'WWVH': 'WWVH (HF, Kauai, HI, America) time standard radio receiver',
-    # 'GOES': 'American Geosynchronous Orbit Environment Satellite',
-    # 'GPS': 'American GPS',
-    # 'GAL': 'Galileo European GNSS',
-    'ACST': 'manycast server',
-    'AUTO': 'Autokey sequence error',
-    'BCST': 'broadcast server',
-    'MCST': 'multicast server',
-}
-
-_ntp_refids_bad = {
-    'AUTH': 'authentication error',
-    'AUTO': 'Autokey sequence error',
-    'CRYPT': 'Autokey protocol error',
-    'DENY': 'Access denied by server',
-    'INIT': 'Association initialized',
-    'RATE': 'Polling rate exceeded',
-    'LOCL': 'This local host (a place marker at the lowest stratum included in case '
-            'there are no remote peers or servers available)',
-    'STEP': 'Step time change, the offset is less than the panic threshold (1000ms) '
-            'but greater than the step threshold (125ms).',
-    'TIME': 'Association timeout',
-    'XFAC': 'Association changed (IP address changed or lost)',
-}
-
-
-def _ntp_decode_ref_id(stratum: int, ref_id: int):
-    if 1 < stratum < 16:
-        return IPv4Address(ref_id)
-
-    elif stratum in [0, 1]:
-        _byte4 = ref_id % 256
-        _byte3 = (ref_id // 256) % 256
-        _byte2 = (ref_id // 256 // 256) % 256
-        _byte1 = (ref_id // 256 // 256 // 256)
-
-        ref_id = ''
-        for _byte in [_byte1, _byte2, _byte3, _byte4]:
-            if _byte > 31:
-                ref_id += chr(_byte)
-
-        return ref_id
-
-
-def parse_arguments(argv: Sequence[str]) -> argparse.Namespace:
-
-    def _warn_crit(arg: str) -> Optional[Tuple[int, int]]:
-        arg = arg.strip('(').strip(')').split(',')
-        warn, crit = arg
-        try:
-            arg = (int(warn), int(crit))
-        except ValueError as e:
-            raise argparse.ArgumentTypeError(e)
-
-        return arg
-
-    parser = argparse.ArgumentParser(
-        formatter_class=argparse.ArgumentDefaultsHelpFormatter,
-        epilog='Add WARN,CRIT levels separated by comma without brackets, like this: "--offset 200,500".'
-               'To use this check plugin you need to install the python "ntplib" in your CMK python environment.'
-    )
-    parser.add_argument(
-        '-H', '--host', required=True,
-        help='Host to query (required)')
-    parser.add_argument(
-        '-p', '--port', type=int, default=123,
-        help='UDP port to use.')
-    parser.add_argument(
-        '-t', '--timeout', type=int, default=2,
-        help='Request timeout in seconds.')
-    parser.add_argument(
-        '-V', '--version', type=int, default=4, choices=[1, 2, 3, 4],
-        help='NTP version to use.')
-    parser.add_argument(
-        '-n', '--state_not_synchronized', type=int, default=2, choices=[0, 1, 2, 3],
-        help='Monitoring state if not synchronized.')
-    parser.add_argument(
-        '-r', '--state_no_response', type=int, default=2, choices=[0, 1, 2, 3],
-        help='Monitoring state if response (timeout) received.')
-    parser.add_argument(
-        '-s', '--stratum', type=_warn_crit, default=(10, 15),
-        help='WARN,CRIT levels for stratum. Use values > 16 to disable.')
-    parser.add_argument(
-        '-o', '--offset', type=_warn_crit, default=(200, 500),
-        help='WARN,CRIT levels for offset in milliseconds.')
-    parser.add_argument(
-        '-d', '--delay', type=_warn_crit, default=(200, 500),
-        help='WARN,CRIT levels for delay in milliseconds.')
-    parser.add_argument(
-        '-D', '--dispersion', type=_warn_crit, default=(200, 500),
-        help='WARN,CRIT levels for dispersion in seconds.')
-
-    args = parser.parse_args(argv)
-    args.host = args.host.strip(' ')
-    return args
-
-
-def get_ntp_time(server: str, port: int, timeout: int, version: int, state_no_response: int):  # -> Optional[NTPStats]
-    # NTPStats is not available if ntplib is not installed
-    c = NTPClient()
-    try:
-        response = c.request(
-            host=server,
-            port=port,
-            timeout=timeout,
-            version=version
-        )
-    except (ntplib.NTPException, socket.gaierror) as e:
-        sys.stdout.write(f'{e}\n')
-        sys.exit(state_no_response)
-    return response
-
-
-def main(args=None):
-    if args is None:
-        args = sys.argv[1:]  # without the path/plugin it self
-
-    args = parse_arguments(args)
-
-    if no_ntplib:
-        sys.stdout.write(
-            f'To use this check plugin you need to install the python ntplib in your CMK python environment.'
-        )
-        sys.exit(3)
-
-    ntp_time = get_ntp_time(args.host, args.port, args.timeout, args.version, args.state_no_response)
-
-    server_time = ctime(ntp_time.tx_time)
-    stratum = int(ntp_time.stratum)
-
-    if stratum == 0:
-        info_text = f'Server not synchronized. Stratum: 0'
-        sys.stdout.write(info_text)
-        return args.state_not_synchronized
-
-    ref_id = _ntp_decode_ref_id(stratum, int(ntp_time.ref_id))
-
-    info_text = ''
-    long_output = ''
-    perfdata = ''
-    status = 0
-    # https://tutorial.eyehunts.com/python/python-strftime-function-milliseconds-examples/
-    # time_format = '%Y-%m-%d %H:%M:%S'
-
-    text = f'Stratum: {stratum}'
-    if stratum >= args.stratum[1]:
-        status = 2
-        text += '(!!)'
-    elif stratum >= args.stratum[0]:
-        status = max(status, 1)
-        text += '(!)'
-
-    info_text += f'{text}, Reference ID: {ref_id}, Time: {server_time}'
-    long_output += f'{text}\n'
-
-    long_output += f'Ref-ID: {ref_id}, {_ntp_ref_id.get(ref_id, "")}\n'
-    long_output += f'Time: {server_time}\n'
-    long_output += f'Mode: {_ntp_mode.get(ntp_time.mode, f"unknown: {ntp_time.mode}")}\n'
-    long_output += f'Version: {ntp_time.version}\n'
-    long_output += f'Poll: {ntp_time.poll}\n'
-    long_output += f'Precision: {ntp_time.precision}\n'
-    long_output += f'Leap: {_ntp_leap.get(ntp_time.leap, f"unknown {ntp_time.leap}")}\n'
-
-    long_output += '\nPerfdata\n'
-    for value, warn, crit, label, metric, unit in [
-        (ntp_time.offset, args.offset[0] / 1000, args.offset[1] / 1000, 'Offset', 'ntp_offset', 's'),
-        (ntp_time.delay, args.delay[0] / 1000, args.delay[1] / 1000, 'Delay', 'ntp_delay', 's'),
-        (ntp_time.root_dispersion, args.dispersion[0], args.dispersion[1], 'Root dispersion', 'ntp_root_dispersion', 's')
-    ]:
-        perfdata += f'{metric}={value};{warn};{crit}; '
-        text = f'{label}: {value:.4f} {unit}'
-        if (crit * - 1) > value or value >= crit:  # use crit as lower and upper level
-            status = 2
-            info_text += f', {text}(!!)'
-            long_output += f'{text}(!!)\n'
-        elif (warn * -1) > value or value >= warn:  # use warn as lower and upper level
-            status = max(status, 1)
-            info_text += f', {text}(!)'
-            long_output += f'{text}(!)\n'
-        else:
-            long_output += f'{text}\n'
-
-    long_output += '\nTimestamps:\n'
-    long_output += f'Reference Timestamp (ref): {ntp_time.ref_timestamp}\n'
-    long_output += f'Origin Timestamp (org): {ntp_time.orig_timestamp}\n'
-    long_output += f'Receive Timestamp (rec): {ntp_time.recv_timestamp}\n'
-    long_output += f'Transmit Timestamp (xmt): {ntp_time.tx_timestamp}\n'
-    long_output += f'Destination Timestamp (dst): {ntp_time.dest_timestamp}\n'
-
-    long_output += '\nTimes\n'
-    for label, value in [
-        ('Reference', ntp_time.ref_time),
-        ('Origin', ntp_time.orig_time),
-        ('Receive', ntp_time.recv_time),
-        ('Transmit', ntp_time.tx_time),
-        ('Destination', ntp_time.dest_time),
-    ]:
-        # long_output += f' {label} time: {strftime(time_format,gmtime(value))}\n'
-        long_output += f' {label} time: {value}\n'
-
-    info_text = info_text.strip(',').strip(' ')
-    sys.stdout.write(f'{info_text}\n{long_output} | {perfdata}\n')
-
-    return status
-
-
-if __name__ == '__main__':
-    exitcode = main()
-    sys.exit(exitcode)
diff --git a/ntplib-0.4.0.mkp b/ntplib-0.4.0.mkp
deleted file mode 100644
index fbd1aee77a99b2e257a31a461a98231d2e481906..0000000000000000000000000000000000000000
Binary files a/ntplib-0.4.0.mkp and /dev/null differ
diff --git a/packages/check_ntp b/packages/check_ntp
deleted file mode 100644
index d1d9e1a1bd54898a462585a2fd67d2ff75044776..0000000000000000000000000000000000000000
--- a/packages/check_ntp
+++ /dev/null
@@ -1,12 +0,0 @@
-{'author': 'Th.L. (thl-cmk[at]outlook[dot]com)',
- 'description': 'Active check to monitor NTP servers\n',
- 'download_url': 'https://thl-cmk.hopto.org',
- 'files': {'checks': ['check_ntp'],
-           'gui': ['metrics/check_ntp.py', 'wato/check_ntp.py'],
-           'lib': ['nagios/plugins/check_ntp']},
- 'name': 'check_ntp',
- 'title': 'Active check NTP',
- 'version': '0.0.3-20230607',
- 'version.min_required': '2.1.0b1',
- 'version.packaged': '2.1.0p21',
- 'version.usable_until': None}
\ No newline at end of file