\chapter{Installation}
\label{cha:Installation}
+\index{installation}
+
+\section{\CGG{} AppImage}%
+\label{sec:cin_gg_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.
+
+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. Installing the appimage is simple:
+
+Download the file from:
+
+\url{https://cinelerra-gg.org/download/images/}
+
+Some example file names are as follows - where 8 digits represent yyyymmdd:
+
+\begin{lstlisting}[style=sh]
+ CinGG-20210228-x86_64.AppImage
+ (currently based on Fedora Core 32, libc version 2.31)
+ CinGG-20210228-x86_64-older-distros.AppImage
+ (currently based on Ubuntu 16.04, libc version 2.23)
+ CinGG-20210228-i686.AppImage
+ (not yet available, but will be based on Debian 9, libc version 2.23)
+\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:
+
+\begin{lstlisting}[style=sh]
+ $ chmod u+x CinGG-yyyymmdd.AppImage
+\end{lstlisting}
+
+Finally start the program from a window in the directory where the image is stored:
+
+\begin{lstlisting}[style=sh]
+ $ ./CinGG-yyyymmdd.AppImpage
+\end{lstlisting}
+
+or create a convenient desktop icon with a link to the run action:
+
+\begin{enumerate}
+ \item right-click on the appimage file
+ \item Properties
+ \item Application Tab
+ \item Command:
+ \begin{lstlisting}[style=sh]
+ /path/to/appimage/./CinGG-yyyymmdd.AppImage
+ \end{lstlisting}
+ \item OK
+\end{enumerate}
+
+Most distros already have the libraries to run the appimage, but if not you may need an additional installation. For example Arch Linux needs the \texttt{libappimage} package.
+
+\begin{lstlisting}[style=sh]
+ sudo pacman -S libappimage
+\end{lstlisting}
\section{Download Already Built \CGG{}}%
\label{sec:download_already_built_cinelerra_gg}
~\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. These are updated on a fairly
-regular basis as long as significant code changes have been made.
+and Slackware versions available. \textbf{These binaries are no longer being updated; they are stable and working but without future functionality}.
They are in subdirectories of:
\begin{list}{}{}
\item \href{https://cinelerra-gg.org/download/pkgs}{https://cinelerra-gg.org/download/pkgs}
\end{list}
-The \textbf{tars} directory contains single-user static builds for
+The \textbf{tars} \index{tars} directory contains single-user static builds for
different distros.
%
This is the recommended usage of \CGG{} because all of the files
cd /path
mkdir cin
cd cin
- tar -xJf /src/path/cinelerra-5.1-*.txz # for the *,
- # substitute your distro tarball name
+ tar -xJf /src/path/cinelerra-5.1-*.txz # for the *, substitute your distro tarball name
\end{lstlisting}
\emph{Do not download the LEAP 10-bit version unless you specifically want to
use h265 rendering to 10-bit instead of the more standard 8-bit.} For more
information see ~\ref{sec:cinx_and_a_bit_of_confusion}.
-The \textbf{pkgs} directory contains the standard packaged
+The \textbf{pkgs} \index{pkgs} directory contains the standard packaged
application for various distros. This will install a dynamic
system version for users who prefer to have the binaries in the
system area and for multi-user systems.
\section{How to Build \CGG{} from Developer's Git Repository}%
\label{sec:How_to_build}
+\index{build}
+\index{git}
These are generic build instructions for building \CGG{} Infinity.
Known to work on Ubuntu, Mint, OpenSuse, Fedora, Debian, Centos,
\subsection{The system build}
\label{sec:system-build}
+\index{git}
-To do a system build, you should read the file
+To do a system build \index{build} , you should read the file
\texttt{README} that is at the top level after you get the source.
\begin{itemize}
\subsection{The single-user build}
\label{sec:single-user-build}
+\index{single-user build}
+\index{git}
To do a single-user build, read the file \texttt{README} that is at
the top level after you get the source.
works using the following steps:
\begin{lstlisting}[style=sh]
-git clone --depth 1 "git://git.cinelerra-gg.org/goodguy/cinelerra.git" cinelerra5
-cd /home/user/cinelerra5/cinelerra-5.1
-./autogen.sh
-./configure --prefix=/usr --without-oss --with-single-user --with-booby
-make && make install 2>&1 | tee /tmp/cin5.log]
+$ git clone --depth 1 "git://git.cinelerra-gg.org/goodguy/cinelerra.git" cinelerra5
+$ cd /home/USER/cinelerra5/cinelerra-5.1
+$ ./autogen.sh
+$ ./configure --prefix=/usr --with-single-user --with-booby
+$ make 2>&1 | tee /tmp/cin5.log && make install
\end{lstlisting}
\subsection{Notable Options and Caveats}%
\label{sub:notable_options_and_caveats}
+\index{./configure}
These procedures and the \CGG{} Infinity software have all been run
as \textbf{root} on various home laptops and desktops. This provides
\begin{lstlisting}[style=sh]
./configure --help
\end{lstlisting}
-The default build is a system build which uses:
+The default build \index{build} is a system build which uses:
\begin{lstlisting}[style=sh]
./configure --without-single-user
\end{lstlisting}
-In the single-user build, the target directory is always
+In the single-user build \index{single-user build}, the target directory is always
\texttt{cin}. Because this is also the developer build, constant
names are used throughout. However, you can rename files after the
install is complete.
\subsection{Notes about Building from Git in your Customized Environment}%
\label{sub:notes_about_building_from_git_in_your_customized_environment}
+\index{build}
+\index{./configure}
+\index{git}
Getting a build to work in a custom environment is not easy. If you
have already installed libraries which are normally in the
\subsection{Cloning the Repository for Faster Updates}%
\label{sub:cloning_the_repository_for_faster_updates}
+\index{repository}
+\index{git}
If you want to avoid downloading the software every time an update
is available you need to create a local ``repository'' or repo. The
\subsection{How to Build from a Previous GIT Version}%
\label{sub:how_to_build_from_a_previous_git_version}
+\index{build}
+\index{repository}
+\index{git}
If you have a problem with the current GIT version, you can revert
to a previous working version easily. The commands to use will be
\subsection{Debuggable Single User Build}%
\label{sub:debuggable_single_user_build}
+\index{single-user build}
+\index{git}
To build from source with full debugging symbols, first build a full
static (non\_debug) build as follows but instead of using
\subsection{Unbundled Builds}%
\label{sub:unbundled_builds}
+\index{build}
+\index{repository}
+\index{git}
There are some generic build scripts included in the \CGG{} GIT
repository for users who want to do unbundled builds with ffmpeg
\section{Windows 10 with Cygwin for \CGG{} Limited}%
\label{sec:ms_windows10}
+\index{windows 10}
To run \CGG{} on a Windows 10 computer, you will need to have
Cygwin installed on your system, along with the \CGG{} static tar
-and a patched library: libxbc. This setup has been tested with
+and a patched library: libxcb. This setup has been tested with
Windows 10, version 1909, on an HP EliteBook 820 at 2.3 GHz.
This limited version provides \textit{core} functionality at this
\subsection*{Installing Cygwin}
\label{sec:installing_cygwin}
+\index{cygwin}
Cygwin is an environment that runs natively on Windows which
allows Unix programs to be compiled and run on Windows. With
\item Download the tar file
\href{https://cinelerra-gg.org/download/testing/libxcb-bld.tar.bz2}{libxcb-bld.tar.bz2}.
-\item Install libxbc from the tar file -- installs into
+\item Install libxcb from the tar file -- installs into
\texttt{/usr/local} and requires approximately 21MB storage.
\begin{lstlisting}[style=sh]
tar -C /usr/local -xJf /path/libxcb-bld.tar.bz2
\end{lstlisting}
- The libxcb path repairs an error (XIOError), which stops
+ The libxcb patch repairs an error (XIOError), which stops
Cinelerra.
\item Download the tar file
must run from an external console window to avoid this issue.
-\section{Distribution Systems with \CGG{} Included}%
-\label{sec:distribution_systems_with_cinelerra_included}
+\section{Distro with \CGG{} Included}%
+\label{sec:distro_with_cinelerra_included}
+\index{linux distro}
There are also some special complete distribution systems
available that include \CGG{} for audio and video production
\label{sec:AV_Linux}
\textbf{AV Linux} is a downloadable/installable shared snapshot
-ISO image based on Debian. It provides the user an easy method to
+ISO image based on MX Linux. It provides the user an easy method to
get an Audio and Video production workstation without the hassle
of trying to find and install all of the usual components
themselves. Of course, it includes \CGG{}!
Click here for the
\href{https://gitlab.com/giuseppetorre/bodhilinuxmedia}{homepage of Bodhi Linux}.
+\subsection{DeLinuxCo}
+\label{sec:delinuxco}
+
+\textbf{DeLinuxCo} is a distro derived from Manjaro (so Arch based) with DE Cinammon. It is a professional workstation, mainly oriented to the multimedia field but not only. It contains many specialized programs already configured, including \CGG{}.
+
+You can read all about DeLinuxCo \href{https://www.delinuxco.com/}{here} and download \href{https://www.delinuxco.com/download/}{here}.
+
\subsection{Elive}
\label{sec:elive}
\section{Cinx and a “Bit” of Confusion}%
\label{sec:cinx_and_a_bit_of_confusion}
+\index{cinx}
Cinx is the exact same program as Cin. The X (x) represents the
roman numeral 10 for 10-bit as opposed to 8-bit standard. The