Envoyer intends to be the mail app for the Linux desktop of today. It has been through many writes and rewrites. It is currently written in Rust on top of GTK 4.0 using the melib library as a mailing backend.
While this application started with the intent of being a serious effort, it has since become a vehicle for me to learn and experiment. It will likely never be finished. Anyway, the experience of rewriting this in Rust has been very nice. Go learn Rust!
Install flatpak runtimes:
flatpak install org.gnome.Platform/x86_64/45
flatpak install org.freedesktop.Sdk.Extension.rust-stable/x86_64/23.08
flatpak install org.freedesktop.Sdk.Extension.llvm16/x86_64/23.08
Make sure to initialize the git submodules:
git submodule init
git submodule update
mkdir build
flatpak-builder --user --install build build-aux/flatpak.yml
The commands below should give you a shell in a flatpak environment with GTK 4 set up. This also works on systems with no GTK 4. Building without flatpak is possible, although a bit more difficult.
flatpak-builder --user workdir build-aux/flatpak.yml
flatpak-builder --run workdir build-aux/flatpak.yml bash
To build the application then:
mkdir build && cd build
meson setup --prefix=/app -D profile=devel ..
ninja
In order to get the application set up correctly, you will need to run:
ninja install
Then you will simply be able to run the application from the PATH
by simply running:
envoyer
A test server is available to test the application against. To start the server, run the command below. docker
needs to be available.
cargo run --bin test_server
Then running envoyer
like so should get it to connect to the test server:
envoyer --with-test-server
Copyright 2016-2021 Andrei-Costin Zisu.
This software is licensed under the GNU General Public License (version 3). See the LICENSE file in this distribution.