Go to file
2017-11-04 14:40:36 +02:00
assets Moved banner.png from assets into hammond-gtk/gtk 2017-11-04 11:28:10 +02:00
hammond-data Refactored refresh_feed. 2017-11-04 13:56:23 +02:00
hammond-downloader Wired and implemented the functionality for episde delete button. 2017-10-26 14:00:33 +03:00
hammond-gtk Implemented updater_on_startup and refresh_feed sleep. 2017-11-04 14:40:36 +02:00
.gitignore IT DISPLAYS STUFF!! 2017-10-10 01:26:16 +03:00
.gitlab-ci.yml Code cleanup. 2017-10-23 07:37:07 +03:00
Cargo.lock Removed code duplication and combined refresh_feed and refresh_db. 2017-11-04 13:36:25 +02:00
Cargo.toml Fixed a play button bug. 2017-10-23 00:27:16 +03:00
Hammond.doap Ui minor polish. 2017-10-23 04:00:32 +03:00
LICENSE Added License. 2017-09-30 22:39:31 +03:00
README.md Added an overview to README.md . 2017-11-03 15:33:21 +02:00
rustfmt.toml Completed functionality of the delete buttons. 2017-10-27 04:31:39 +03:00
TODO.md Implemented updater_on_startup and refresh_feed sleep. 2017-11-04 14:40:36 +02:00

Hammond

Multithreaded, safe, and reliable Gtk+ Podcast client.

This is a prototype of a podcast client written in Rust.

pipeline status

podcasts_view podcast_widget

Quick start

git clone https://gitlab.gnome.org/alatiera/hammond.git
cd Hammond/
cargo run -p hammond-gtk --release

Flatpak:

Flatpak instructions... Soon™.

Dependancies:

  • Rust stable 1.21 or later.
  • Gtk+ 3.22 or later

Debian/Ubuntu:

apt-get update -yqq
apt-get install -yqq --no-install-recommends build-essential
apt-get install -yqq --no-install-recommends libgtk-3-dev

Fedora:

dnf install -y gtk3-devel glib2-devel openssl-devel sqlite-devel

If you happen to build it on other distributions please let me know the names of the corresponding libraries. Feel free to open a PR or an Issue to note it.

Building:

git clone https://gitlab.gnome.org/alatiera/Hammond.git
cd Hammond/
cargo build --all

Overview:

$ tree -d
├── assets              # png's used in the README.md
├── hammond-data        # Storate related stuff, Sqlite db, XDG setup.
│   ├── migrations      # Diesel migrations.
│   │   └── ... 
│   ├── src
│   └── tests
│       └── feeds       # Raw RSS Feeds used for tests.
├── hammond-downloader  # Really basic, Really crappy downloader.
│   └── src
├── hammond-gtk         # The Gtk+ client.
│   ├── gtk             # Contains the glade.ui files and.
│   └── src
│       ├── views       # Currently only contains the Podcasts_view.
│       └── widgets     # Contains custom widgets such as Podcast and Episode.

Contributing:

There alot of thins to be done, take a look at TODO.md or grep for TODO: and FIXME:.

to be added: CONTRIBUTING.md

A note about the project's name:

The project was named after Allan Moore's character Evey Hammond from the graphic novel V for Vendetta.

It has nothing to do with the horrible headlines on the news.