3.8 KiB
Hammond
Multithreaded and reliable Gtk+ Podcast client.
This is a prototype of a podcast client written in Rust.
Getting in Touch
If you have any questions regarding the use or development of Hammond, want to discuss design or simply hang out, please join us in #hammond on irc.gnome.org.
Sidenote:
There isn't much documentation yet, so you will probably have question about parts of the Code.
Quick start
The following steps assume you have a working installation of rustc and cargo. If you dont take a look at rustup.rs
git clone https://gitlab.gnome.org/alatiera/hammond.git
cd Hammond/
cargo run -p hammond-gtk --release
Install from soure
git clone https://gitlab.gnome.org/alatiera/hammond.git
cd Hammond/
./configure --prefix=/usr/local
make && sudo make install
Additionall:
You can run sudo make uninstall for removal
And make clean to clean up the enviroment after instalation.
Flatpak
Flatpak instructions... Soon™.
Building
Dependancies
- Rust stable 1.22 or later.
- Gtk+ 3.22 or later
- Meson
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 meson
Fedora:
dnf install -y gtk3-devel glib2-devel openssl-devel sqlite-devel meson
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.
git clone https://gitlab.gnome.org/alatiera/Hammond.git
cd Hammond/
cargo build --all
Contributing
There alot of thins yet to be done.
If you want to contribute, please check the Contributions Guidelines.
You can start by taking a look at Issues or by opening a New issue.
There are also some minor tasks tagged with TODO: and FIXME: in the source code.
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
│ ├── resources # GResources folder
│ │ └── gtk # Contains the glade.ui files.
│ └── src
│ ├── views # Currently only contains the Empty and Episodes views.
│ └── widgets # Contains custom widgets such as Podcast and Episode.
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.
Acknowledgments
Hammond's design is heavily insired by Gnome-Music and Vocal.
We also copied some elements from Gnome-news.
And almost the entirety of the build system is copied from the Fractal project.

