remwharead/README.adoc
tastytea 970fb1486a
All checks were successful
continuous-integration/drone/push Build is passing
Add rofi export to documentation.
2019-11-28 09:45:23 +01:00

180 lines
5.1 KiB
Plaintext

= 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-hunter: https://github.com/cpp-pm/hunter
:uri-rofi: https://github.com/davatorium/rofi
*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)
* 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 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}`.
* `-DHUNTER_ENABLED=YES` to use the package manager link:{uri-hunter}[Hunter].
* 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`.
===== Compiling with Hunter
If your operating system doesn't provide all the dependencies or the versions
are too old, you can use the Hunter package manager to download and compile all
library dependencies. Keep in mind that the packages from Hunter are not
necessarily up to date.
[source,shell]
----
mkdir build
cd build/
cmake -DHUNTER_ENABLED=YES ..
cmake --build .
----
== 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 <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.
----