---
name: "mainline"
section: "1"
platform: "linux"
package: "dosage"
version: "1.6.0-1"
release: "Debian 7 (Wheezy)"
platforms: ["linux"]
url: "https://new.carta.tech/mainline"
---

# mainline(1)

command line interface to Dosage

## NAME

mainline - command line interface to Dosage

## SYNOPSIS

**mainline** \[*options*\] *module* \[*module*...\]

## DESCRIPTION

**mainline** is a command line interface to Dosage. Dosage is a an application designed to keep a local ‘mirror’ of specific web comics and other picture-based content, such as ‘Picture Of The Day’ sites, with a variety of options for updating and maintaining collections.

## OPTIONS

- **-b** *PATH***, --base--path=***PATH*

  Specifies a base path to put comic subdirectories. The default is ‘Comics’.

- **--base-url=***PATH*

  Specifies the base URL for output events. The default is a local file URI.

- **-c**, **--catch-up**

  Traverses all available strips until an (identical) existing one is found. This can be useful if your collection was previously up to date, but you've missed a few days worth of strips. Alternatively you can specify **-c** twice for a ‘full catchup’, which will not stop until all comics have been traversed. Catchups can ‘resumed’ by using the index syntax, see the **INDEX SYNTAX** and **SPECIAL SYNTAX** sections for more information.

- **-h**, **--help**

  Output brief help information.

- **-l**, **--list**

  List available comic modules in multi-column fashion.

- **--single-list**

  List available comic modules in single-column fashion.

- **-m** *MODULE***, --module-help=***MODULE*

  Output module-specific help for *MODULE*.

- **-o** *OUTPUT***, --output=***OUTPUT*

  *OUTPUT* may be any one of the following:

**text** - Provides no additional output and is the default value.

**html** - Writes out an HTML file linking to the strips actually downloaded in the current run, named by date (ala dailystrips). The files can be found in the ´html' directory of your Comics directory.

**rss** - Writes out an RSS feed detailing what strips were downloaded in the last 24 hours. The feed can be found in Comics/dailydose.xml.

**rss** - Writes an RSS feed with all of the strips downloaded during the run, for use with your favourite RSS aggregator.

- **-p**, **--progress**

  Display a progress bar while downloading comics.

- **-q**, **--quiet**

  Decrease the output level by one with each occurence.

- **-t**, **--timestamps**

  Print timestamps for all output at any level.

- **-v**, **--verbose**

  Increase the output level by one with each occurence.

- **-V**, **--version**

  Display the version number. *module* At least one valid *module* must be specified. A list of valid modules can be found by passing the **-l** option. Multiple *module* arguments can be specified on the command line.

## INDEX SYNTAX

One can indicate the start of a list of **comma seperated** indices using a ‘**:**’.

If *-c* is specified with index syntax then ‘resume’ mode is activated, where a ‘catchup’ will start at the given index.

Refer to **EXAMPLES** for samples.

## OFFENSIVE COMICS

Some users may find certain comics offensive and wish to disable them. Modules listed in **/etc/dosage/disabled** and **~/.dosage/disabled** will be disabled. These files should contain only one module name per line.

## SPECIAL SYNTAX

- **@**

  This expands to mean all the comics currently in your ‘Comics’ directory.

- **@@**

  This expands to mean all the comics available to Dosage.

**INDEX SYNTAX** can be used with **SPECIAL SYNTAX** but this is unlikely to be useful.

## EXAMPLES

Retrieve the latest Mega Tokyo comic:

**mainline MegaTokyo**

Retrieve every strip from every comic that there is a module for:

**mainline -c @@**

Retrieve all Penny Arcade strips from (and including) a given index to the beginning regardless of whether they already exist or not:

**mainline -c PennyArcade:2004-07-22**

## ENVIRONMENT

- HTTP\_PROXY

  **mainline** will use the specified HTTP proxy whenever possible.

## NOTES

Should retrieval fail on any given strip **mainline** will attempt to retry. However the retry information is only outputted in the **second** and successive output levels.

At the time of writing, a **complete** Dosage collection weighs in at around 3.0GB.

## BUGS

See *http://trac.slipgate.za.net/dosage* for a list of current development tasks and suggestions.

## FILES

- **/etc/dosage/disabled**

  Disables comic modules on a global scale.

- **~/.dosage/disabled**

  Disables comic modules on a local scale.

## AUTHORS

**mainline** and **Dosage** were written by Jonathan Jacobs \<korpse@slipgate.za.net\> and Tristan Seligmann \<mithrandi@slipgate.za.net\>. This manual page was written by Jonathan Jacobs.
