For a KDE-free environment, it seems to be nice to have an alternative PDF reader to Okular, which has the features of adding comments, highlighting text and saving the added annotations in a non-software-specific manner. Fortunately, the latest version of Evince (3,17.2, 06/JUN/2015), available from its git repository, has finally featured these long awaited functions with the prerequisite of libpoppler-glib8 being upgraded to version 0.24.0. However, it will probably take a while for Debian to add this version of Evince to its repository. A quick way out is to compile the upstream source.
It is not particularly challenging to build Evince-related packages compared with that of gVim in terms of fulfilling the required build-depends. However, the version of the stock libgtk-3-0 (3.12.2-2) hampers the direct use of evince_3.14.1-2.debian.tar.xz to build the latest Evince from source. As the result, extra patches from Ubuntu utopic (3.14.1-0ubuntu1) need to be imported and amendments to be made to the files of control.in and control in this regards. In addition, the newly introduced functions since version 3.15 require to be appended to the symbol files of libevdocument3-4 and libevview3-3. For some reason, the stock libgtk-3-0 package also needs to be re-installed, otherwise the build process , regardless of the version of Evince to be built, will fail with the error message as follows,
Alongside the mentioned patches and amendments, an extra patch (from Ubuntu utopic) relating to the substitution of adwaita-icon-theme by gnome-icon-theme can be imported and the files of control.in and control be changed accordingly to match with the corresponding package shipped with KNOPPIX 7.4.2. Regardless of the icon-theme related patch being applied, the adwaita-icon-theme needs not to be present when the newly built Evince packages are installed.Code:-- snip -- /usr/lib/gcc/i586-linux-gnu/4.9/../../../i386-linux-gnu/libgdk-3.so: file not recognized: Bad value collect2: error: ld returned 1 exit status make[4]: *** [libevdocument3.la] Error 1 make[4]: Leaving directory `/home/knoppix/evince_3.17.2_20150611/debian/build/evince/libdocument' -- snip --
On 06/MAR/2015, Wheezy released a security update for libarchive12. As the package is required by libarchive-dev and libgxps-dev, it is worth to consider updating the package and then compiling Evince against it.
[Time for Action]
Part 1 of 4: Retrieve the source of Evince, the modification files made by Debain and Ubuntu and the required build-depends
-- Boot up KNOPPIX without persistent overlay.-- Download the tarballs.Code:wget --no-check-certificate \ https://git.gnome.org/browse/evince/snapshot/evince-b998a03242ea4d94486ff8de6a8471edde208911.tar.xz wget \ http://http.debian.net/debian/pool/main/e/evince/evince_3.14.1-2.debian.tar.xz \ http://archive.ubuntu.com/ubuntu/pool/main/e/evince/evince_3.14.1-0ubuntu1.debian.tar.xz-- With root privilege, append the following to /etc/apt/source.list .Code:deb http://ftp.de.debian.org/debian wheezy main deb http://security.debian.org/debian-security wheezy/updates main deb http://snapshot.debian.org/archive/debian/20140817T155553Z/ jessie main deb http://snapshot.debian.org/archive/debian/20140928T221124Z/ jessie main deb http://snapshot.debian.org/archive/debian/20141212T221320Z/ jessie main-- Update the package list with the argument of "-o Acquire::Check-Valid-Until=false".
-- Download the build-depends with version number specified.Part 2 of 4: Install the required build-dependsCode:# --start-- build-depends # Re-install libgtk-3-0 (3.12.2-2; jessie) # Upgrade libpoppler-glib8 from 0.18.4-6 (wheezy) to 0.26.4-1 (jessie). # Security update libarchive12 from 3.0.4-3+num1 (wheezy) to 3.0.4-3+wheezy1 # (wheezy). apt-get download cdbs=0.4.115+deb7u1 \ dh-autoreconf=7 \ adwaita-icon-theme=3.14.0-2 \ intltool=0.50.2-2 \ gnome-pkg-tools=0.19.3 \ itstool=1.1.3-1 yelp-tools=3.4.1-1 \ libsp1c2=1.3.4-1.2.1-47.3 jade=1.2.1-47.3 docbook-dsssl=1.79-7 \ docbook=4.5-5.1 sp=1.3.4-1.2.1-47.3 docbook-to-man=1:2.0.0-32 \ autopoint=0.19.3-2 gnome-common=3.14.0-1 gtk-doc-tools=1.21-2 \ libgtk-3-0=3.12.2-2 libgtk-3-dev=3.12.2-2 libgail-3-dev=3.12.2-2 \ gir1.2-secret-1=0.18-1 libsecret-1-dev=0.18-1 \ libxml2-dev=2.9.1+dfsg1-4 \ gir1.2-nautilus-3.0=3.4.2-1+build1 libnautilus-extension-dev=3.4.2-1+build1 \ libpoppler-glib8=0.26.4-1 gir1.2-poppler-0.18=0.26.4-1 \ libpoppler-dev=0.26.4-1 libpoppler-glib-dev=0.26.4-1 \ libspectre-dev=0.2.7-2 \ libjbig-dev=2.0-2+deb7u1 libjpeg8-dev=8d-1+deb7u1 \ liblzma-dev=5.1.1alpha+20120614-2 \ libtiffxx5=4.0.3-10 libtiff5-dev=4.0.3-10 \ libdjvulibre-dev=3.5.25.3-1 \ libkpathsea-dev=2012.20120628-4 \ gir1.2-gxps-0.1=0.2.2-2 \ libarchive12=3.0.4-3+wheezy1 libarchive-dev=3.0.4-3+wheezy1 \ libgxps-dev=0.2.2-2 \ gobject-introspection=1.40.0-2 \ libffi-dev=3.1-2 libgirepository1.0-dev=1.40.0-2 \ gsettings-desktop-schemas-dev=3.12.2-1 # --finish-- build-depends
-- Purge the following packages if it is preferred to compile Evince against adwaita-icon-theme.Code:apt-get purge gdm3 gnome-session gnome-shell gnome-themes-standard gnome-themes-standard-data-- Install the build-depends with gdebi accordingly.
Part 3 of 4: Build the .deb packages
-- Unpack the tarball of source code.-- Execute the included autogen.sh and then run "make distclean".-- Repack a .tar.gz file of source code with a Debian-compliant filename.-- Unpack the tar ball (evince_3.14.1-2.tar.xz) to the folder of source code.-- Revert the version of libgtk-3-dev specified in the Build-Depends sections of control.in and control from 3.14 to 3.12.-- Append the following to the files of libevview3-3 and libevdocument3-4 accordingly; the version number may be inaccurate.Code:-- libevview3-3.symbols -- ev_page_cache_get_media_mapping@Base 3.17.2 -- libevdocument3-4.symbols -- ev_annotation_get_area@Base 3.17.2 ev_annotation_markup_can_have_popup@Base 3.17.2 ev_annotation_set_area@Base 3.17.2 ev_annotation_text_markup_get_markup_type@Base 3.15.4 ev_annotation_text_markup_get_type@Base 3.15.4 ev_annotation_text_markup_highlight_new@Base 3.15.4 ev_annotation_text_markup_set_markup_type@Base 3.15.4 ev_annotation_text_markup_strike_out_new@Base 3.15.4 ev_annotation_text_markup_type_get_type@Base 3.15.4 ev_annotation_text_markup_underline_new@Base 3.15.4 ev_document_get_size@Base 3.15.4 ev_document_media_get_media_mapping@Base 3.17.2 ev_document_media_get_type@Base 3.17.2 ev_media_get_page_index@Base 3.17.2 ev_media_get_show_controls@Base 3.17.2 ev_media_get_type@Base 3.17.2 ev_media_get_uri@Base 3.17.2 ev_media_new_for_uri@Base 3.17.2 ev_media_set_show_controls@Base 3.17.2-- Extract and import the following patches from Ubuntu tarball in order to match with the version of libgtk-3-0 in use.Code:rtl_avoid_3.14_dep.patch gtk_no_gesture.patch-- In the case of skipping adwaita-icon-theme, remove adwaita-icon-theme from the Build-Depends sections of control.in and control, and import the gnome_icon_theme.patch from Ubuntu tarball.
-- Log the changelog.
-- Build the packages with dpkg-buildpackages or debuild.
-- Save the newly built packages plus libpoppler-glib8=0.26.4-1 and libarchive12=3.0.4-3+wheezy1 on a hard drive.
Part 4 of 4: Install the .deb packages
-- Reboot KNOPPIX with persistent overlay enabled.-- With root privilege, purge Evince (3.4.0-3.1) and its related packages.Code:apt-get purge evince evince-common libevview3-3 libevdocument3-4--Install packages with gdebi in the order of libpoppler-glib8, libarchive12, libevdocument3-4, libevview3-3, evince-common and evince (or evince-gtk).
[A Quick Spin]
In comparison with the previous versions (3.4.0-3.1, 3.14.1-2) of Evince and the stock Okular (0.14.3) shipped with KNOPPIX 7.4.2, the latest Evince is susceptible to a non-left mouse button click when the annotation mode is activated, which results in the program being terminated unexpectedly due to the error return of g_assert (view->pressed_button == 1). Despite this trivial glitch, the newest Evince is fairly stable so long as the PDF file is not as challenging as the attachment of bug report #750621.
DELL PowerEdge R730XD Server 2x E5-2690v4 2.6GHz =28 Cores 64GB H730 4xRJ45
$387.00
DELL R630 SERVER 8 x 2.5'' 2X E5-2680V4 32GB RAM IDRAC ENT & NDC 2X 495W PSU
$169.95
Dell PowerEdge R630 Server 2x E5-2640v3 2.60Ghz 16-Core 64GB H330
$182.65
Dell PowerEdge T420 2x Xeon E5-2430 V2 2.50GHZ 32GB DDR3-1600MHZ 2x 550W PSU
$149.95
Dell PowerEdge R730XD 28 Core Server 2X Xeon E5-2680 V4 H730 128GB RAM No HDD
$389.99
Dell Poweredge R210 Server X3450 2.67GHz 8GB RAM - NO HDDs
$59.99
Dell PowerEdge R620 Server - 256GB RAM, 2x8cCPU, 120Gb SSD/3x900Gb SAS, Proxmox
$320.00
Dell Poweredge R730xd 12 Bay LFF 2x SFF 2x E5-2680v3 2.5ghz H730p No Ram No HDD
$219.99
DELL PowerEdge R730 Server 2x E5-2697v4 2.3GHz =36 Cores 128GB H730 4xRJ45
$461.00
Dell PowerEdge R730 2x E5-2699V3 2.3Ghz 36 Core 128GB RAM H730 X520-I350 2x750W
$299.99