The C-based comics downloader
Explore the docs »
Submit A Bug
·
Request Feature
To get a local copy up and running follow these simple steps.
To install cmics
, only a few dependencies are required. Get the following packages with pip
and your package manager of choice.
- pip
pip3 install -r requirements.txt
- Package manager (Debian/Ubuntu example)
sudo apt-get install libncurses5-dev libncursesw5-dev
sudo apt-get install libcurl4-gnutls-dev
cmics
is maintained using the GNU Autotools. To install, clone and make the build system yourself (autoreconf --install
), or download a tarball, unzip it, and follow the ritual:
./configure
make
sudo make install
WARNING: If you want to install cmics
somewhere else, that's totally fine. However, modify src/imgs.c
so that the path of the installed img
script is correct. If this is ommitted, the comics will download and cache correctly, but they will not display properly.
Cmics is used for aggregating some of the geekier comics that many members of the programming community enjoy. To automate downloading all of the comics, you can set up a cron job of cmics --download ...
. cmics
logs all comics image URLs in an sqlite
database, accessable with cmics -a
or --archive
. It logs the time accessed, comic, and the absolute image url, so that if you remember, "There was this great XKCD I read last thursday... what was it?" You could so something like cmics -a | grep 'Comic: xkcd' -B 2
and get all of the XKCD images that cmics
has downloaded. The database is found in $HOME/.comics/cmics.db
.
Some things I intend to add one day are:
- Another comic (or two). This is limited by keeping the GUI useable for people with small terminals, however.
- A more sophisticated image display mechanism than the
img
script.
There are no currently known bugs in cmics
. If you find a bug, please open an issue on GitHub!
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the 3-part BSD License. See LICENSE
for more information.