# Postsack ## Provides a high level visual overview of swaths of email ### Performance It currently parses 632383 emails in ~160 seconds, so roughly `4.000` emails per second. This excludes (for now) attachments. Update: It currently parses 632115 emails in ~56 seconds, so roughly `11.000` emails per second. This excludes (for now) attachments. (on M1) ## Open Issues - [ ] check for unused dependencies in each crate - [ ] `pub use ...` some deps in core so that they don't need to be re-imported - [ ] check the feature.lru to see if it compiles without LRU - [ ] build static linux binary via docker: Via Github Actions? - [ ] try to build a static windows binary: Via Github Actions? - [ ] try to build a macos binary: Via Github Actions? - [ ] Demo Video - [ ] Documentation - [ ] wasm build? ## Windows Issues - [ ] No Outlook support - [ ] The `apple importer` fails - [ ] Very much untested (it does run though) ## Future Options - [ ] Add additional UI based on Druid, Iced or Native Cocoa - [ ] maybe add blocking versions of the calls, too (in model) - [ ] abstract over `Fields` and backend to have a generic way to display groupable information - [ ] apply the window changes (no status etc) on startup, not just when loading main - [ ] split up into multiple crates - [ ] action when clicking an email? - [ ] support light theme - [ ] allow diving into splits/segments until there're no gropu bys anymore, but the last split can be opened full (to see the mails) - [ ] remove unneeded dependencies and features - [ ] add support for generating mail deletion rules based on the visible mails - [ ] support more mail formats: - [ ] outlook - [ ] notmuch - [ ] maildir ## Development Generate a macOS bundle (requires [Cargo Bundle](https://github.com/burtonageo/cargo-bundle)) ``` sh ./build_mac.sh ``` ### Linux Dependencies In order to build (and or run) on Linux, the following dependencies are needed: #### Fedora ``` sh # Development sudo dnf install @development-tools glib cairo-devel pango-devel gdk-pixbux2-devel atk-devel gtk3 gtk3-devel libsqlite3x-devel ``` #### Ubuntu ``` sh # Development sudo apt-get install libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev libspeechd-dev libxkbcommon-dev libssl-dev libsqlite3-dev ``` #### Windows Windows supor is a bit shaky. - [cargo bundle](https://github.com/burtonageo/cargo-bundle/issues/77) doesn't currently work on Windows - [cargo wix should work](https://github.com/volks73/cargo-wix), but I could not get it to work - `cargo build --release` works, but then the binary has no icon.