add bld_prepare.sh options of debian and ubuntu testing
[goodguy/cin-manual-latex.git] / parts / Installation.tex
index 7ae11fbb8c43d71205e0c982519945a2277b3745..dcc575121dce6bb4465968e1ae1a1e70c8257bf3 100644 (file)
@@ -4,16 +4,15 @@
 
 \section{\CGG{} AppImage}%
 \label{sec:cin_gg_appimage}
+\index{appimage}
 
 The main way to install \CGG{} is to use the AppImage. This is updated regularly and works for every distro, since it already contains the necessary dependencies. 
 A big advantage of using the AppImage format is that it is only 1/3 the size of the normal install,
 and since each release is named differently, you can keep a number of versions in a directory,
 and when testing from a terminal you just have to type CinGG, then hit tab, and complete it to
 the desired date release.
-
-For 64-bit systems you can choose between an image with up-to-date libraries or one that supports older libraries, which you should use only if the first image gives you problems with unsupported libs. There is also a 32-bit older distro available that has \textit{i686} as part of the filename that currently works on older distros but may not work on the latest distros and
-definitely does now work on Debian version 11.00 (most of the popular Linux distributions such
-as Arch, Ubuntu, and Fedora have dropped support for this older architecture).  And there is a 8/10/12 bit newer distro that handles 8 or 10 or 12 bits that has \textit{multibit} as part of the filename.  Installing the appimage is simple:
+For 64-bit systems you can choose between an image with up-to-date libraries or one that supports older libraries, which you should use only if the first image gives you problems with unsupported libs. There is also a 32-bit older distro available that has \textit{i686} as part of the filename that currently works on older distros but may not work on the newest distros
+(most of the popular Linux distributions such as Arch, Ubuntu, and Fedora have dropped support for this older architecture). In any case, if you are using a 32-bit Linux distro, you should compile your sources from git or use a precompiled binary\protect\footnote{Remember that a 32-bit distro does not address more than 4GB of memory, so you may have stability and performance problems with large, high-resolution mediafiles.}. And there is a 8/10/12 bit newer distro that handles 8 or 10 or 12 bits that has \textit{multibit} as part of the filename.  Installing the appimage is simple:
 
 Download the file from:
 
@@ -22,14 +21,18 @@ Download the file from:
 Some example file names are as follows - where 8 digits represent yyyymmdd:
 
 \begin{lstlisting}[style=sh]
-       CinGG-20210731-x86_64.AppImage
-         (currently based on Fedora Core 32, libc version 2.31)
-       CinGG-20210731-x86_64-older-distros.AppImage
+       CinGG-20220131-x86_64.AppImage
+         (currently based on Fedora 32, linux kernel 5.8.15, libc version 2.31)
+       CinGG-20220131-x86_64-older-distros.AppImage
          (currently based on Ubuntu 16.04, libc version 2.23)
-       CinGG-20210731-i686.AppImage
-         (currently based on Debian 9, linux kernel 4.9, does not work on Debian 11.0)
-       CinGG-20210731-x86_64-multibit.AppImage
-         (currently based on Fedora Core 32, libc version 2.31)
+       CinGG-20220131-i686.AppImage
+         (currently based on Debian 9, linux kernel 4.9, use "newer" for Debian 11.0)
+       CinGG-20220131-i686-newer-distros.AppImage
+         (currently based on Debian 11, linux kernel 5.10)
+       CinGG-20220131-x86_64-multibit.AppImage
+         (currently based on Fedora 32, libc version 2.31)
+       CinGG-20220131-x86_64-older-distros-multibit.AppImage
+         (currently based on Fedora 29 - runs on RHEL8 - linux kernel 4.19.9, libc version 2.28)
 \end{lstlisting}
 
 Make the file executable with the proper execute permissions either from the GUI of the Desktop Environment used (link to the file) or from a terminal window.  Make sure you are already in the directory containing the appimage:
@@ -65,6 +68,8 @@ In addition, if you are using the OpenGL video driver, you will need to install
 drivers for your Operating System graphics board because libGLU.so and other OpenGL libraries are
 not included in the AppImage.
 
+Using AppImage means you can't have the installation folder and work on the files. To unpack the AppImage and get its structure in folders and files see \nameref{sub:managing_appimage} To create, edit and manage appimages see \nameref{sub:built_appimage_scratch}.
+
 \section{Download Already Built \CGG{}}%
 \label{sec:download_already_built_cinelerra_gg}
 
@@ -87,7 +92,7 @@ you get the added benefit of the latest checked in changes, please reference
 ~\ref{sec:How_to_build}.
 %
 A Windows 10 version installation is described in~\ref{sec:ms_windows10}.  There are also 32-bit i686 Ubuntu, Debian,
-and Slackware versions available. \textbf{These binaries are no longer being updated; they are stable and working but without future functionality}.
+and Slackware versions available\protect\footnote{Remember that a 32-bit distro does not address more than 4GB of memory, so you may have stability and performance problems with large, high-resolution mediafiles.}. \textbf{These binaries are no longer being updated; they are stable and working but without future functionality}.
 They are in subdirectories of:
 
 \begin{list}{}{}
@@ -144,7 +149,7 @@ caption={README.pkgs}
 
 These are generic build instructions for building \CGG{} Infinity.
 Known to work on Ubuntu, Mint, OpenSuse, Fedora, Debian, Centos,
-Arch, Slackware, and Gentoo.  It has not been tested on every
+Arch, Slackware, and Gentoo. Compiling from git is perhaps the best way to get \CGG{} on 32-bit systems\protect\footnote{Remember that a 32-bit distro does not address more than 4GB of memory, so you may have stability and performance problems with large, high-resolution mediafiles.}. It has not been tested on every
 single possible distro yet so you might expect to have to make
 some minor changes.  Also works on a somewhat limited basis on
 FreeBSD and Windows 10 with the bsd.patch for FreeBSD and the
@@ -157,8 +162,8 @@ NOTE: as of May 31, 2021 when Context Help was added, to include
 this Context Help you will need to download the corresponding
 tgz file containing the HTML manual sections referenced for the
 Help pages.  The file to download is:
-\url{https://cinelerra-gg.org/download/images/HTML_Manual-20210531.tgz}
-substituting for "20210531" the "yyyymmdd" representing latest release date.
+\url{https://cinelerra-gg.org/download/images/HTML_Manual-20220131.tgz}
+substituting for "20220131" the "yyyymmdd" representing latest release date.
 Then unpack to your Cinelerra/bin/doc directory so it is included in
 your built system.
 NOTE End
@@ -239,20 +244,23 @@ cd cinelerra5/cinelerra-5.1
 \begin{lstlisting}[style=sh]
 ./blds/bld_prepare.sh <os> # where <os> represents the
                            # Operating System of
-                           # centos, fedora, suse, ubuntu, mint, debian.
+                           # centos, fedora, suse, ubuntu, mint, debian, arch, debian-testing, ubuntu-testing.
 ./autogen.sh
 ./configure --prefix=/usr  # optional parameters can be added here
 make 2>&1 | tee log        # make and log the build
 \end{lstlisting}
 
-  \texttt{bld\_prepare.sh} does not work for Arch Linux or Gentoo,
-  so we have to install the dependencies
-  manually. \texttt{README.arch} or \texttt{README.gentoo}, which
+  \texttt{bld\_prepare.sh} for Arch Linux may require other packages,
+  so you may have to install the dependencies
+  manually as you will have to do for gentoo.  \texttt{README.arch} or \texttt{README.gentoo}, which
   contain the list of dependencies, can be found at:
   \begin{list}{}{}
   \item \href{https://cinelerra-gg.org/download/README.arch}{https://cinelerra-gg.org/download/README.arch}
   \item \href{https://cinelerra-gg.org/download/README.gentoo}{https://cinelerra-gg.org/download/README.gentoo}
   \end{list}
+  
+  \texttt{bld\_prepare.sh} option of debian-testing and ubuntu-testing is currently for future distros and
+  will be changed to more relevant names when they are released.
 
 \item Check for obvious build errors:
 \begin{lstlisting}[style=sh]
@@ -450,12 +458,19 @@ export ac_cv_header_xmmintrin_h=no
 export FFMPEG_EXTRA_CFG=" --disable-vdpau"
 \end{lstlisting}
 
+Note for building 32-bit packages on hybrid 32/64 x86 systems, you may
+need to add the following:
+
+\begin{lstlisting}[style=sh]
+setarch i686  (befire configure and package build)
+\end{lstlisting}
+
 NOTE: as of May 31, 2021 when Context Help was added, to include
 this Context Help you will need to download the corresponding
 tgz file containing the HTML manual sections referenced for the
 Help pages.  The file to download is:
-\url{https://cinelerra-gg.org/download/images/HTML_Manual-20210531.tgz}
-substituting for "20210531" the "yyyymmdd" representing latest release date.
+\url{https://cinelerra-gg.org/download/images/HTML_Manual-20220131.tgz}
+substituting for "20220131" the "yyyymmdd" representing latest release date.
 Then unpack to your Cinelerra/bin/doc directory so it is included in
 your built system.  The reason for not including the HTML manual in 
 the source code so that it would already be there, is because it is
@@ -1021,10 +1036,10 @@ must run from an external console window to avoid this issue.
 \label{sec:android_termux}
 \index{Android}
 
-CinGG can be run on Android (without audio), a non-x86 mostly posix system,
+\CGG{} can be run on Android (without audio), a non-x86 mostly posix system,
 tablet or phone after installing TERMUX, the \textit{terminal emulator}.
 You will have to do your own build using the file in Cinelerra's
-\textit{blds} subdirectory, \textit{termux.bld}.
+\texttt{blds} subdirectory, \texttt{termux.bld}.
 Because this is a relatively new capability and of lesser use, some
 additional effort may have to be exerted on your part to get it going
 but it is easy to get help by contacting the mailing list.
@@ -1043,10 +1058,10 @@ Some requirements include;
 \item Install takes 5 GB of internal storage. In addition you can download videos,
 and other files with wget to one specific location at sdcard after running termux-setup-storage
 inside termux (it will prompt you to give access to sdcard graphically the first time used).
-\item If you have empty versions of locale.alias, locale.dir,
+\item If you have empty versions of \texttt{locale.alias}, \texttt{locale.dir},
  and
-\newline \$PREFIX\/share/X11\/locale\/en\_US.UTF-8\/en\_US.UTF-8\/XLC\_LOCALE
- you will have to request non-empty versions via the mailing list.
+\newline \texttt{\$PREFIX/share/X11/locale/en\_US.UTF-8/XLC\_LOCALE}
+\newline you will have to request non-empty versions via the mailing list.
 \item Some helpful information on installing the X environment is at:
  \url{https://wiki.termux.com/wiki/Graphical\_Environment}
 \item To prevent crashing when loading a video file that has audio, use the guide
@@ -1055,8 +1070,7 @@ inside termux (it will prompt you to give access to sdcard graphically the first
 \end{enumerate} 
 
 A little more about Audio is presented next because you will need to have this running
-in order to prevent a crash (even though you still will not be able to hear audio) -
-there does not seem to be a simple PA client in termux itself.
+in order to prevent a crash (even though you still will not be able to hear audio) -- there does not seem to be a simple PA client in termux itself.
 Some information is available at:
  \url{https://android.stackexchange.com/questions/205576/how-to-play-sound-from-termux-when-using-linux} .
 
@@ -1095,9 +1109,9 @@ Now to start up \CGG{}, type in:
         $ PULSE_SERVER=127.0.0.1 ./cin.sh
 \end{lstlisting}
 
-You can even build a package version similiar to Debian, just with 'pkg search\/pkg install'
-instead of 'apt search/install' and with '*-static' instead of '-dev\/-devel packages'. For more
-information on this, see:
+You can even build a package version similiar to Debian, just with "\texttt{pkg search} pkg\_name / \texttt{pkg install}
+ pkg\_name" instead of "\texttt{apt search/install} pkg\_name" and with "\texttt{*-static}" instead of "\texttt{*-dev/-devel} packages".
+For more information on this, see:
 
 \url{https://wiki.termux.com/wiki/Package\_Management}
 \newline \url{https://wiki.termux.com/wiki/Building\_packages}
@@ -1143,7 +1157,7 @@ You can read all about DeLinuxCo \href{https://www.delinuxco.com/}{here} and dow
 \subsection{Elive}
 \label{sec:elive}
 
-\textbf{Elive}, or Enlightenment live CD, is a non-commercial, cost-free operating system based on Debian, and it can be used either as a live CD or an Installed system. Elive uses a customized Enlightenment desktop. It is fast, user-friendly and feature-rich and \CGG{} is included in the 64 bit version.
+\textbf{Elive}, or Enlightenment live CD, is a non-commercial, cost-free operating system based on Debian, and it can be used either as a live CD or an Installed system. Elive uses a customized Enlightenment desktop. It is fast, user-friendly and feature-rich and \CGG{} is included in the both the 64 bit and 32 bit versions.
 
 Click \href{https://www.elivecd.org/}{Elive} for more information.  The \CGG{} packages for the program
 and the manual are in the direcotry at 
@@ -1183,10 +1197,7 @@ so it is of no value.
 \label{sec:multibit_build}
 \index{multibit}
 
-To build a version that can handle 8 bit, or 10 bit, or 12 bit videos,
-a patch is provided in the \texttt{thirdparty} subdirectory that needs
-to be applied to do so.  Be aware that the compile may take more time
-and seems to be about twice as long. To apply the required patch:
+To build a version that can handle 8 bit, or 10 bit, or 12 bit videos, a patch is provided in the \texttt{thirdparty} subdirectory that needs to be applied to do so.  Be aware that the compile may take more time and seems to be about twice as long. To apply the required patch:
 
 \begin{lstlisting}[style=sh]
 cd /path/to/cinelerra-5.1/thirdparty