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.
IBM LSI SAS9220-8i M1015 46M0861 SAS/SATA PCI-e RAID Controller Both brackets
$139.00
LSI 9305-16i SATA SAS 12Gbs RAID Controller PCIe 3.0 x8 IT-Mode 4* 8643 SATA
$229.99
XDHXT DELL PERC H710P 6Gbps 1GB PCI RAID CONTROLLER 0XDHXT
$59.00
HPE 869102-001 Smart Array E208i-a SR Gen10 Storage Controller RAID SP: 871039
$129.99
Inspur LSI 9300-8i Raid Card 12Gbps HBA HDD Controller High Profile IT MODE
$15.98
LSI MegaRAID 9361-8i 12Gb PCIe 8-Port SAS/SATA RAID 1Gb w/BBU/CacheVault/License
$35.96
ORICO Multi Bay RAID Hard Drive Enclosure USB 3.0/ Type-C For 2.5/3.5'' HDD SSDs
$86.99
LSI MegaRAID 9361-8i 12Gbps PCIe 3 x8 SATA SAS 3 8 Port RAID + BBU & CacheVault
$39.00
Yottamaster 5 Bay RAID Hard Drive Enclosure USB3.1 Type C 2.5"/3.5" SATA HDD SSD
$142.49
Dell PCIe M.2 Boss S1 RAID Controller Card 7HYY4 with 2x 240GB SSD
$94.99