added a description how to update linux distributions
authorFriedrich Beckmann <friedrich.beckmann@gmx.de>
Sat, 2 Sep 2017 08:51:47 +0000 (10:51 +0200)
committerFriedrich Beckmann <friedrich.beckmann@gmx.de>
Sat, 2 Sep 2017 08:51:47 +0000 (10:51 +0200)
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
doc/pspp.texi

index 9ce33b2238312ad9d5acbd60de9121aa04c6f2d8..201a20242fa33a5674db91dd1bea1ac959a11948 100644 (file)
@@ -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}.
index 2e8b8f43f28cb065b73dd6a6c3bbb9a5cc5fa3fe..d399cb7e69c3e407c3077a124431d017e044f9a3 100644 (file)
@@ -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