= remwharead :toc: preamble :project: remwharead :uri-base: https://schlomp.space/tastytea/{project} :uri-branch-main: {uri-base}/src/branch/main :uri-reference: https://doc.schlomp.space/{project}/ :uri-images-base: https://doc.schlomp.space/.{project} :uri-archive: https://archive.org/ :uri-overlay: https://schlomp.space/tastytea/overlay :uri-blogpost: https://blog.tastytea.de/posts/keep-track-of-what-you-have-read-online-with-remwharead/ :uri-gcc: https://gcc.gnu.org/ :uri-clang: https://clang.llvm.org/ :uri-cmake: https://cmake.org/ :uri-poco: https://pocoproject.org/ :uri-asciidoc: http://asciidoc.org/ :uri-catch: https://github.com/catchorg/Catch2 :uri-dpkg: https://packages.qa.debian.org/dpkg :uri-rpm: http://www.rpm.org/ :uri-ff-addon: https://addons.mozilla.org/firefox/addon/remwharead :uri-papirus: https://github.com/PapirusDevelopmentTeam/papirus-icon-theme :uri-rofi: https://github.com/davatorium/rofi :uri-boost: https://www.boost.org/ :uri-clang-tidy: https://clang.llvm.org/extra/clang-tidy/ :uri-curl: https://curl.haxx.se/libcurl/ *remwharead* saves URIs of things you want to remember in a database along with an URI to the archived version, the current date and time, title, description, the full text of the page and optional tags. The database can be filtered by time, tags and full text and exported to CSV, AsciiDoc, JSON or RSS. Archiving is done using the Wayback machine from the {uri-archive}[Internet Archive]. .AsciiDoc export formatted with Asciidoctor. ==== [alt="Dates view", height=250, link="{uri-images-base}/example_dates.png", role=left] image::{uri-images-base}/example_dates.png[] [alt="Tags view", height=250, link="{uri-images-base}/example_tags.png"] image::{uri-images-base}/example_tags.png[] ==== == Usage See {uri-branch-main}/man/remwharead.1.adoc[manpage] and/or read {uri-blogpost}[the blogpost]. === With rofi The link:{uri-rofi}[rofi] export makes integration with rofi simple. See link:{uri-branch-main}/scripts/remwharead-rofi[scripts/remwharead-rofi] for an example. === In your programs The complete functionality is implemented in a C++ library, libremwharead. Take a look at the {uri-reference}[reference] for more info. == Install === Gentoo Add my {uri-overlay}[repository] and install it from there. [source,zsh] ---- eselect repository enable tastytea echo "www-misc/remwharead ~amd64" >> /etc/portage/package.accept_keywords/remwharead emaint sync -r tastytea emerge -a www-misc/remwharead ---- === Debian and Debian based Download the `.deb`-package from {uri-base}/releases[schlomp.space] and install with `apt install ./rewharead_*.deb`. The package works for 64 bit installations only. === From source ==== Dependencies * Tested OS: Linux * C++ compiler ({uri-gcc}[gcc] 6+, {uri-clang}[clang] 6+) * {uri-cmake}[cmake] (at least: 3.9) * {uri-poco}[POCO] (tested: 1.9 / 1.7) * {uri-boost}[Boost] (tested: 1.71 / 1.67) * {uri-curl}[libcurl] (at least: 7.52) * Optional: ** Manpage: {uri-asciidoc}[asciidoc] (tested: 8.6) ** Tests: {uri-catch}[catch] (tested: 2.5 / 1.2) ** DEB package: {uri-dpkg}[dpkg] (tested: 1.18) ** RPM package: {uri-rpm}[rpm-build] (tested: 4.11) .Install dependencies in Debian buster. ==== [source,zsh] ---- apt-get install g++ cmake libpoco-dev libboost-dev asciidoc dpkg ---- ==== ==== Get sourcecode ===== Releases Download the current release at {uri-base}/releases[schlomp.space]. ===== Development version [source,zsh] ---- git clone https://schlomp.space/tastytea/remwharead.git ---- ==== Compile [source,zsh] ---- mkdir build cd build/ cmake .. cmake --build . ---- .cmake options: * `-DCMAKE_BUILD_TYPE=Debug` for a debug build. * `-DWITH_MAN=NO` to not compile the manpage. * `-DWITH_TESTS=YES` to compile the tests. * `-DWITH_MOZILLA=YES` to install the wrapper for the Mozilla extension. * `-DMOZILLA_NMH_DIR` lets you set the directory for the Mozilla extension wrapper. The complete path is `${CMAKE_INSTALL_PREFIX}/${MOZILLA_NMH_DIR}`. * `-DWITH_CLANG-TIDY=YES` to check the sourcecode with link:{uri-clang-tidy}[clang-tidy] while compiling. * One of: ** `-DWITH_DEB=YES` if you want to be able to generate a deb-package. ** `-DWITH_RPM=YES` if you want to be able to generate an rpm-package. You can run the tests with `cd tests && ctest`. Install with `make install`, generate binary packages with `make package`. == Browser plugins === WebExtension The {uri-branch-main}/browser-plugins/webextension[WebExtension] works in Firefox and possibly other browsers with WebExtension support. You can install it from {uri-ff-addon}/[addons.mozilla.org] or build it yourself with `build_xpi.sh`. include::{uri-base}/raw/branch/main/CONTRIBUTING.adoc[] == Copyright The icons of the plugins are from the {uri-papirus}[Papirus icon theme] with the license GPLv3. ---- Copyright © 2019 tastytea . License GPLv3: GNU GPL version 3 . This program comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it under certain conditions. ----