OnWorks favicon

duck - Online in the Cloud

Run duck in OnWorks free hosting provider over Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

This is the command duck that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator



duck - the Debian Url ChecKer


duck [ OPTION ]... [-f file] [-u file] [-c file]


duck extracts links, email address domains and VCS-* entries from the following files:

o debian/control

o debian/upstream, debian/upstream-metadata.yaml and debian/upstream/metadata

o debian/copyright

o DEP-3 patch files in every directory a series file is found

o systemd.unit files (*.socket, *.device, *.mount, *.automount, *.swap, *.target,
*.path, *.time, *.snapshot, *.slice, *.scope)

o Appstream files (*.appdata)

It tries to access those VCS-* entries and URLs using the approriate tool to find out
whether the given URLs or entries are broken or working. If errors are detected, the
filename, fieldname and URL/email of the broken entry are displayed.

duck will search for the default files (see above) and skip them silently, if they cannot
be found. If specific filenames for options -c, -f or -u are given, and one of those
files cannot be found, duck exits with exit code 2.

Email address domains are checked for existing MX records, A records, or AAAA records, in
this order. If none of these 3 are found for a given domain, it is considered broken.

Checks results are displayed with 3 different error levels

O: (OK) Indicates that the given check did not result in an error. Only shown if -n is

I: (Information) Indicates informational warnings, suchs as missing helper tools as
well as failing checks based on searches in unstructured text files, which
sometimes lead to false positives.

E: (Error) Indicates failing checks based on data from well-defined fields (e.g.
Homepage: entry in debian/control).

and 3 different certainty-levels

Data taken from well defined fields. As the format of this field is specified (e.g.
Debian Policy, etc.), it can be checked by the appropriate tools. If this check
then fails, the data in the field is certainly erroneous.

Data extracted using regular expressions (e.g. email addresses, URLs). This might
lead to false positives, so the check result is possibly a false positive.

Data extracted from websites, by using regular expressions. This is still
experimental and probably buggy, hence the "wild-guess".


-v verbose mode. This shows all URLs found and the checks run.

-q quiet mode. Suppress all output.

-n dry run. Don't run any checks, just show entries to be checked.

specify modules directory. Mostly useful for developing new checks.

do not colorize output. See also the DUCK_NOCOLOR environment variable.

do not try to find matching https URLs to http URLs. See also the DUCK_NOHTTPS
environment variable.

display list of missing external helper tools and exits.

display copyright and version information

-f specify path to control file. This overrides the default debian/control.

-F skip processing of the control file.

-u specify path to upstream metadata file. This overrides the default files
debian/upstream, debian/upstream-metadata.yaml and debian/upstream/metadata.

-U skip processing of the upstream metadata file.

-c specify path to copyright file. This overrides the default debian/copyright.

-C skip processing of copyright file.

-P skip processing of patch files.

-A skip processing of appstream metadata files.

-S skip processing of systemd.unit files.


If this variable is set, do not colorize output.

If this variable is set, do not try to find matching https URLs to http URLs.



To run duck, change your working directory to an extracted debian source package and run:


0 Success, no errors

1 Error(s) detected

2 User-specified file not found

Use duck online using onworks.net services

Free Servers & Workstations

Download Windows & Linux apps

  • 1
    Clover EFI bootloader
    Clover EFI bootloader
    Project has moved to
    Features:Boot macOS, Windows, and Linux
    in UEFI or legacy mode on Mac or PC with
    Download Clover EFI bootloader
  • 2
    Sequelize is a promise-based Node.js
    ORM for Postgres, MySQL, MariaDB, SQLite
    and Microsoft SQL Server. It features
    solid transaction support, relations,
    Download Sequelize
  • 3
    Join us in Gitter!
    Enable the URPMS repository in your
    system -
    Download unitedrpms
  • 4
    Boost C++ Libraries
    Boost C++ Libraries
    Boost provides free portable
    peer-reviewed C++ libraries. The
    emphasis is on portable libraries which
    work well with the C++ Standard Library.
    See http://www.bo...
    Download Boost C++ Libraries
  • 5
    Library to enable user space
    application programs to communicate with
    USB devices. Audience: Developers, End
    Users/Desktop. Programming Language: C.
    Download libusb
  • 6
    SWIG is a software development tool
    that connects programs written in C and
    C++ with a variety of high-level
    programming languages. SWIG is used with
    Download SWIG
  • 7
    WooCommerce Nextjs React Theme
    WooCommerce Nextjs React Theme
    React WooCommerce theme, built with
    Next JS, Webpack, Babel, Node, and
    Express, using GraphQL and Apollo
    Client. WooCommerce Store in React(
    contains: Products...
    Download WooCommerce Nextjs React Theme
  • More »

Linux commands