Source: td-system-tools
Section: utils
Priority: optional
Maintainer: Thomas Dreibholz <thomas.dreibholz@gmail.com>
Homepage: https://www.nntb.no/~dreibh/system-tools/
Vcs-Git: https://github.com/dreibh/system-tools.git
Vcs-Browser: https://github.com/dreibh/system-tools
Build-Depends: cmake,
               debhelper-compat (= 13)
Standards-Version: 4.7.4
Rules-Requires-Root: no

Package: td-system-info
Architecture: all
Depends: figlet | toilet,
         gettext-base,
         mbuffer | buffer,
         td-get-system-info (>= ${source:Version}),
         td-print-utf8 (>= ${source:Version}),
         ${misc:Depends}
Recommends: subnetcalc
Description: Print basic system information and banners
 This program displays basic status information about the system:
 hostname, uptime, CPU, memory statistics, disk space statistics,
 SSH public key hashes, and networking information. Furthermore,
 it can be configured to show one or more banners (for example,
 a project name).
 System-Info can be configured to be automatically run when logging
 in, providing the user an up-to-date overview of the system.

Package: td-get-system-info
Architecture: any
Depends: procps,
         ${misc:Depends},
         ${shlibs:Depends}
Description: Obtain basic system information
 This small program obtains basic status information about the system:
 hostname, uptime, CPU, memory statistics, and networking information.
 The output is printed in machine-readable form, which can be evaluated
 in shell scripts for further processing.

Package: td-system-maintenance
Architecture: all
Depends: apt-show-versions,
         gettext-base,
         sudo,
         ${misc:Depends}
Recommends: td-system-info
Description: Perform basic system maintenance
 This program runs basic system maintenance tasks:
 trying to repair broken package management, updating the package
 management databases, installing all available updates, checking
 for old kernels and removing them, trimming SSDs, or unmapping
 unused storage.

Package: td-reset-machine-id
Architecture: all
Depends: gettext-base,
         sudo,
         uuid,
         ${misc:Depends}
Recommends: td-system-info,
            td-system-maintenance
Description: Reset machine identity state
 This program helps to reset the machine identity state: resetting the
 machine ID, changing the hostname, replacing SSH keys, and suggesting
 hardened SSH client and server settings.

Package: td-fingerprint-ssh-keys
Architecture: all
Depends: gettext-base,
         ${misc:Depends}
Recommends: td-system-info
Description: Print SSH key fingerprints
 This program prints the SSH key fingerprints of the local machine
 in different formats: SSH hash, DNS SSHFP RR.

Package: td-system-configure-grub
Architecture: all
Depends: gettext-base,
         ${misc:Depends}
Recommends: grub2-common,
            td-system-maintenance
Description: Helper tool to adjust GRUB configuration
 This program adjusts a GRUB configuration file by applying a configuration
 from a template, and merging the existing configuration settings with
 additional customisations. It can for example be used to set a custom
 screen resolution (GRUB_GFXMODE option) or startup tune (GRUB_INIT_TUNE
 option).
 Warning: This program is meant to be used by expert users! Do not modify
 a working GRUB configuration without knowing how to boot the system from
 a rescue medium to fix a broken configuration!

Package: td-print-utf8
Architecture: any
Depends: ${misc:Depends},
         ${shlibs:Depends}
Description: Print UTF-8 strings and obtain size/length/width information
 The print-utf8 tool is a simple program to print UTF-8 strings in the
 console with options for indentation, centering, and separators, as well
 as size/length/width information.

Package: td-text-block
Architecture: any
Depends: ${misc:Depends},
         ${shlibs:Depends}
Description: Apply modifications to text
 The text-block tool reads text from standard input or given file, and
 writes it to standard output or a given file. Various modifications can
 be applied to the text depending on the operation mode.

Package: td-try-hard
Architecture: all
Depends: gettext-base,
         td-random-sleep (>= ${source:Version}),
         ${misc:Depends},
         ${shlibs:Depends}
Provides: td-misc
Replaces: td-misc (<< 2.4.1)
Breaks: td-misc (<< 2.4.1)
Description: Make multiple trials to successfully run a command
 Try-hard runs a command and retries for a given number of times in case
 of error, with a delay between the trials.

Package: td-random-sleep
Architecture: any
Depends: gettext-base,
         ${misc:Depends},
         ${shlibs:Depends}
Replaces: td-misc (<< 2.4.1)
Breaks: td-misc (<< 2.4.1)
Description: Wait for a random time span
 Random-sleep waits for a random time span, selected from a given
 interval, with support for fractional seconds.

Package: td-x509-tools
Architecture: all
Depends: gettext-base,
         openssl,
         td-text-block,
         ${misc:Depends}
Provides: td-x509
Replaces: td-x509 (<< 2.2.0)
Breaks: td-x509 (<< 2.2.0)
Recommends: gnutls-bin,
            libnss3-tools
Suggests: pwgen,
          python3,
          python3-netifaces
Description: X.509 certificate handling tools
 This package contains X.509 certificate handling tools:
  * The view-certificate tool displays an X.509 certificate and its hierarchy.
  * The view-crl tool shows an X.509 certificate revocation list (CRL).
  * The check-certificate tool verifies an X.509 certificate using a CA
    certificate and optionally a revocation list.
  * The extract-pem tool extracts a PEM file.
  * The der2pem tool converts a certificate or CRL in DER format to PEM format.
  * The pem2der tool converts a certificate or CRL in PEM format to DER format.
  * The test-tls-connection tool tests a TCP TLS connection to a remote
    endpoint.

Package: td-system-tools-basic
Replaces: td-system-tools (<< 2.4.0)
Breaks: td-system-tools (<< 2.4.0)
Architecture: all
Depends: td-fingerprint-ssh-keys (>= ${source:Version}),
         td-random-sleep (>= ${source:Version}),
         td-reset-machine-id  (>= ${source:Version}),
         td-system-info (>= ${source:Version}),
         td-system-maintenance (>= ${source:Version}),
         td-text-block (>= ${source:Version}),
         td-try-hard (>= ${source:Version}),
         td-x509-tools (>= ${source:Version}),
         ${misc:Depends}
Recommends: td-system-configure-grub
Description: Metapackage for basic system tools sub-packages
 System-Tools is a collection of utilities for system management and
 maintenance.
 .
 The package includes:
  - System-Info: Displays system status (CPU, memory, disk, network)
    and configurable login banners.
  - System-Maintenance: Automates package updates, old kernel removal,
    and storage cleanup (e.g., SSD trimming).
  - Reset-Machine-ID: Resets machine IDs, hostnames, and SSH keys for
    cloned virtual machines.
  - X.509-Tools: Utilities for viewing, verifying, and converting X.509
    certificates, and testing TLS connections.
  - Automation tools: Try-Hard (command retry with backoff), Random-Sleep,
    Text-Block (stream editing), and Print-UTF8.
  - Security tools: Fingerprint-SSH-Keys.
 .
 The utilities are suitable for non-interactive use in shell scripts and
 feature native internationalization support via GNU gettext.
 .
 This package is a metapackage for the basic sub-packages of System-Tools.
 Note that td-system-configure-grub is only added as weak dependency
 ("recommends"),  since it is only available on selected architectures.

Package: td-system-tools-complete
Architecture: all
Depends: td-system-tools-basic (>= ${source:Version}),
         ${misc:Depends}
Description: Metapackage for complete system tools sub-packages
 System-Tools is a collection of utilities for system management and
 maintenance.
 .
 The package includes:
  - System-Info: Displays system status (CPU, memory, disk, network)
    and configurable login banners.
  - System-Maintenance: Automates package updates, old kernel removal,
    and storage cleanup (e.g., SSD trimming).
  - Reset-Machine-ID: Resets machine IDs, hostnames, and SSH keys for
    cloned virtual machines.
  - X.509-Tools: Utilities for viewing, verifying, and converting X.509
    certificates, and testing TLS connections.
  - Automation tools: Try-Hard (command retry with backoff), Random-Sleep,
    Text-Block (stream editing), and Print-UTF8.
  - Security tools: Fingerprint-SSH-Keys.
 .
 The utilities are suitable for non-interactive use in shell scripts and
 feature native internationalization support via GNU gettext.
 .
 This package is a metapackage for all sub-packages of System-Tools.

Package: td-system-tools
Section: oldlibs
Architecture: all
Depends: td-system-tools-basic (>= ${source:Version}),
         ${misc:Depends}
Description: Transitional package td-system-tools -> td-system-tools-basic
 This is a transitional dummy package. It can safely be removed.
