= remwharead
:toc: preamble

*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 or
AsciiDoc.

Archiving is done using the Wayback machine from the
https://archive.org/[Internet Archive].

.AsciiDoc export formatted with Asciidoctor.
====
image::https://doc.schlomp.space/.remwharead/example_dates.png[Dates view, height=250, link="https://doc.schlomp.space/.remwharead/example_dates.png", role=left]
image::https://doc.schlomp.space/.remwharead/example_tags.png[Tags view, height=250, link="https://doc.schlomp.space/.remwharead/example_tags.png"]
====

== Usage

See
https://schlomp.space/tastytea/remwharead/src/branch/main/man/remwharead.1.adoc[manpage].

=== In your programs

The complete functionality is implemented in a C++ library, libremwharead. Take
a look at the https://doc.schlomp.space/remwharead/[reference] for more info.

== Install

=== Gentoo

Add my https://schlomp.space/tastytea/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
https://schlomp.space/tastytea/remwharead/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 (tested: https://gcc.gnu.org/[gcc] 5/6/8/9,
  https://llvm.org/[clang] 3/6)
* https://cmake.org/[cmake] (at least: 3.2)
* https://pkgconfig.freedesktop.org/wiki/[pkgconfig] (tested: 0.29)
* https://github.com/badaix/popl[popl] (tested: 1.2)
* http://repo.or.cz/w/libxdg-basedir.git[libxdg-basedir] (tested: 1.2)
* http://www.curlpp.org/[curlpp] (tested: 0.8 / 0.7)
* http://vsqlite.virtuosic-bytes.com/[vsqlite++] (tested: 0.3)
* http://www.icu-project.org/[ICU] (tested: 64.2 / 57.1)
* Optional:
** Manpage: http://asciidoc.org/[asciidoc] (tested: 8.6)
** Tests: https://github.com/catchorg/Catch2[catch] (tested: 2.5 / 1.2)
** DEB package: https://packages.qa.debian.org/dpkg[dpkg] (tested: 1.18)
** RPM package: http://www.rpm.org[rpm-build] (tested: 4.11)

.Install dependencies in Debian stretch.
====
[source,zsh]
----
echo "APT::Default-Release \"stretch\";" >> /etc/apt/apt.conf.d/00default_release
echo "deb http://deb.debian.org/debian sid main" >> /etc/apt/sources.list.d/sid.list
apt-get update
apt-get install g++-6 cmake pkg-config libcurl4-openssl-dev libxdg-basedir-dev \
    libvsqlitepp-dev libboost-system-dev libboost-filesystem-dev libicu-dev asciidoc
apt-get install -t sid libcurlpp-dev
# Inside the source directory:
wget -O src/cli/popl.hpp https://raw.githubusercontent.com/badaix/popl/v1.2.0/include/popl.hpp
export CXX="g++-6"
----
====

==== Get sourcecode

===== Releases

Download the current release at
https://schlomp.space/tastytea/remwharead/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}`.
* 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
https://schlomp.space/tastytea/remwharead/src/branch/main/browser-plugins/webextension[WebExtension]
works in Firefox and possibly other browsers with WebExtension support. You
can install it from
https://addons.mozilla.org/en-US/firefox/addon/remwharead/[addons.mozilla.org]
or build it yourself with `build_xpi.sh`.

== Copyright

The icons of the plugins are from the
https://github.com/PapirusDevelopmentTeam/papirus-icon-theme[Papirus icon
theme] with the license GPLv3.

----
Copyright © 2019 tastytea <tastytea@tastytea.de>.
License GPLv3: GNU GPL version 3 <https://www.gnu.org/licenses/gpl-3.0.html>.
This program comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to redistribute it under certain conditions.
----
