From 0ec7c606844768cfc501d6213ffa17ebdfda1bab Mon Sep 17 00:00:00 2001 From: Friedrich Beckmann Date: Sat, 2 Sep 2017 10:51:47 +0200 Subject: [PATCH] added a description how to update linux distributions The usual way to obtain pspp in linux distributions is to use the pspp version which is part of the distribution. I described ways to update the pspp version by using backports, a ppa or creating a new binary package from a source package. --- doc/installing.texi | 118 ++++++++++++++++++++++++++++++++++++++++++++ doc/pspp.texi | 2 + 2 files changed, 120 insertions(+) diff --git a/doc/installing.texi b/doc/installing.texi index 9ce33b2238..201a20242f 100644 --- a/doc/installing.texi +++ b/doc/installing.texi @@ -9,6 +9,14 @@ @c @node Installation @appendix Installing @pspp{} + +The usual way to obtain pspp is described here: +@uref{https://www.gnu.org/software/pspp/get.html}. This appendix +describes ways to update to newer released pspp versions. For building +development versions: @xref{BuildDevel,,Building Development Versions}. + +@anchor{InstallUnix} +@section Installation in Unix Environment from Source @cindex installation @cindex @pspp{}, installing @@ -65,3 +73,113 @@ but only if that directory already exists. (optional) Type @samp{make clean} to delete the @pspp{} binaries from the source tree. @end enumerate + +More detailed instructions for building from source including the +installation of required libraries can be found here: +@uref{http://git.savannah.gnu.org/cgit/pspp.git/plain/INSTALL}. + +@section Updating the pspp package in Linux distributions +Linux distributions like Debian or Ubuntu make a release by taking the +pspp package version which is in the rolling testing (sid) stage at the +time of freezing the linux release. The pspp versions which are the default +version for a specific linux distribution release are listed here: + +@itemize +@item Debian: @uref{https://packages.debian.org/pspp} +@item Ubuntu: @uref{https://packages.ubuntu.com/pspp} +@end itemize + +Debian stretch for example contains pspp 0.10.2. There are a number of +possibilities to update the pspp version inside a linux distribution. + +@subsection Backports + +Sometimes a backport of a newer pspp version is available for an older +distribution. Instructions how to install backports +can be found here @uref{https://backports.debian.org/Instructions} for +Debian. This is the easiest way to have an updated version. + +@subsection Ubuntu PPA +For Ubuntu Adam Zammit maintains a PPA with several updates of pspp. +Installation via a PPA is similar to a backports install. See: +@uref{https://launchpad.net/~adamzammit/+archive/ubuntu/pspp}. + +@subsection Building an updated pspp package + +If you wish to use a newer pspp version than the one provided with +the distribution or possibly a backport, then there is a good chance +that you can generate a new updated pspp package for your linux distribution release +from the package source of a later distribution release. The latest +pspp package for Debian is in sid (unstable). It is not advisable to +take a binary package from a later distribution because the interface to +the required libraries may have changed. Therefore you take the package +source instead of the package binary and then compile a new pspp package for your +linux distribution. + +Assume you want to create a new pspp package for Debian jessie. Jessie +has pspp version 0.8.4 as the default version. Assume that Debian unstable +contains the pspp version 1.0.1. Add the line +@example +deb-src http://ftp.debian.org/debian unstable main +@end example +to the file @code{/etc/apt/sources.conf}. This will make the package +sources of the packages in unstable available for apt-get. + +Then download the pspp package sources from the unstable distribution. + +@example +mkdir tmp +cd tmp +sudo apt-get update +apt-get source pspp/unstable +@end example + +After this step you will have the files + +@example +pspp_1.0.1-1.dsc +pspp_1.0.1-1.debian.tar.xz +pspp_1.0.1.orig.tar.gz +@end example + +and the directory + +@example +pspp-1.0.1 +@end example + +in your directory. Now you can install the package +dependencies with + +@example +sudo apt-get build-dep pspp/unstable +@end example + +And then you can build and test your pspp package with + +@example +cd pspp-1.0.1 +debuild -us -uc +cd .. +@end example +After this step you have the binary pspp package +@example +pspp_1.0.1-1_amd64.deb +@end example +in your directory and you can install the package with +@example +sudo dpkg -i pspp_1.0.1-1_amd64.deb +@end example +You can uninstall the package as usual with +@example +sudo apt-get remove pspp +@end example +This procedure is preferable vs. the @xref{InstallUnix, Plain Source Installation} +because the package and all data can be uninstalled the usual way and +the prerequisites can be installed the usual way via apt-get. + +@anchor{BuildDevel} +@section Building a development version + +The installation of development versions and building directly from git is +described here: @uref{https://www.gnu.org/software/pspp/get.html}. diff --git a/doc/pspp.texi b/doc/pspp.texi index 2e8b8f43f2..d399cb7e69 100644 --- a/doc/pspp.texi +++ b/doc/pspp.texi @@ -130,6 +130,7 @@ in the production of this manual. * Command Index:: Index of PSPP procedures. * Concept Index:: Index of concepts. +* Installation:: Installing pspp * GNU Free Documentation License:: License for copying this manual. @end menu @@ -159,6 +160,7 @@ in the production of this manual. @include command-index.texi @include concept-index.texi +@include installing.texi @include fdl.texi @bye -- 2.30.2