Source: td-system-tools
Section: utils
Priority: optional
Maintainer: Thomas Dreibholz <thomas.dreibholz@gmail.com>
Homepage: https://www.nntb.no/~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: ${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-unixtimestamp-tools
Architecture: any
Depends: ${misc:Depends},
         ${shlibs:Depends}
Description: Unix timestamp conversion tools
 This package contains two simple tools:
 time2unixts converts a time string to a Unix timestamp.
 unixts2time converts a Unix timestamp to a time string.
 These tools support Unix timestamps (i.e. the time since
 January 1, 1970, 00:00:00.000000000 UTC) in seconds,
 milliseconds, microseconds, and nanoseconds.

Package: td-try-hard
Architecture: all
Depends: gettext-base,
         td-random-sleep (>= ${source:Version}),
         ${misc: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,
         mbuffer | buffer,
         openssl,
         td-print-utf8,
         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-gimp-scripts
Architecture: all
Depends: fontconfig,
         gimp,
         graphicsmagick,
         ${misc:Depends}
Recommends: clifractgen,
            fonts-lobstertwo,
            fonts-open-sans,
            fonts-urw-base35
Suggests: td-gimp-scripts-examples
Description: GIMP image processing scripts
 This package contains some GIMP scripts for automated image processing.
 The main purpose of this script is to generate background images for
 desktops, boot splashes, etc. with some branding.

Package: td-gimp-scripts-examples
Architecture: all
Depends: ${misc:Depends}
Description: Example files for the GIMP image processing scripts
 The GIMP scripts are scripts for automated image processing.
 The main purpose of this script is to generate background images for
 desktops, boot splashes, etc. with some branding.
 .
 This package contains some example input files for the testing the
 GIMP scripts.

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-unixtimestamp-tools (>= ${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, storage, 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 machines.
  - Fingerprint-SSH-Keys: Shows the machine's SSH public key fingerprints
    in different formats.
  - Configure-GRUB: Configures options for the GRUB boot loader.
  - Print-UTF8: Prints UTF-8 text with options for centering,
    adjusting, etc.
  - Text-Block: Edits files or streams by inserting, replacing, or
    removing text blocks.
  - Unix-Timestamp-Tools: Convert Unix timestamps (s, ms, us, ns) to
    and from date/time strings.
  - Try-Hard: Retries commands with a configurable backoff.
  - Random-Sleep: Waits for a random time span, with support for
    fractional seconds.
  - X.509-Tools: Provide utilities for viewing, verifying, and
    converting X.509 certificates, and testing TLS connections.
 .
 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-gimp-scripts  (>= ${source:Version}),
         td-gimp-scripts-examples  (>= ${source:Version}),
         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, storage, 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 machines.
  - Fingerprint-SSH-Keys: Shows the machine's SSH public key fingerprints
    in different formats.
  - Configure-GRUB: Configures options for the GRUB boot loader.
  - Print-UTF8: Prints UTF-8 text with options for centering,
    adjusting, etc.
  - Text-Block: Edits files or streams by inserting, replacing, or
    removing text blocks.
  - Unix-Timestamp-Tools: Convert Unix timestamps (s, ms, us, ns) to
    and from date/time strings.
  - Try-Hard: Retries commands with a configurable backoff.
  - Random-Sleep: Waits for a random time span, with support for
    fractional seconds.
  - X.509-Tools: Provide utilities for viewing, verifying, and
    converting X.509 certificates, and testing TLS connections.
 .
 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.
