-*- Text -*-

This is Rescapp.  Welcome.

This file contains instructions for installing Rescapp.
Rescapp does not need to be compiled.

Even though the install instructions are for Debian,
Rescapp can be successfully installed on other Distro's.

In order to be able to do that, you will need to use the
packages below as a guide, to be able to find the name that your
chosen Distro uses, and install that particular package, making sure
that the package that you are installing provides the same commands as those listed below.

Install Requirements
========================

Rescapp depends on some software packages being already installed on your system. If
you don't have any of them, please obtain and install them before
installing Rescapp.

* GNU Make
* GNU Coreutils


Installing Rescapp
====================

The simplest way to install this package is:

  1. "cd" to the directory containing the package's source code.

  2. Type "make install" to install the programs and any data files and
     documentation.


Installation Names
==================

By default, "make install" will install the package's files in
"/usr/local/bin", "/usr/local/lib", etc.  You can specify a different
installation prefix, by preceding the "make command" with an environment variable prefix.

E.g.: prefix=/usr make install

The DESTDIR, environment variable also works, as Debian (and other
GNU/Linux distributions expect it to work).

E.g.: DESTDIR=/tmp/rescapp-test prefix=/usr make install

Please note, however, that Rescapp knows where it is located in the
filesystem.  If you have installed it in an unusual location, the
system may not work properly, or at all.  The chief utility of these
options for Rescapp, is to allow you to "install" it in an alternative
location, and then copy the files to the actual root filesystem later.

Runtime Requirements
========================

Rescapp, depends on some software packages being installed at run time. If
you don't have any of them, please obtain and install them before
using Rescapp.

The chntpw package should be obtained from the official Rescatux repo.
http://rescatux.sourceforge.io/repo/ stretch-dev main

Debian Package Runtime Requirements
===================================

You will find the needed Debian Jessie packages in the following list.

util-linux (from essential) for the lsblk command.

PYTHON_DBUS_PACKAGES="python3-gi python3-dbus"
PYTHON_PACKAGES="python-pyqt5 python-pyqt5.qtwebkit"
RAID_PACKAGES="dmraid"
LVM_PACKAGES="lvm2"
CRYPTSETUP_PACKAGES="cryptsetup \
 libcryptsetup4 \
 cryptsetup-bin \
 "
FILESYSTEM_PACKAGES="reiserfsprogs \
 reiser4progs \
 btrfs-tools \
 xfsprogs \
 xfsdump \
 ntfs-3g \
 dosfstools \
 xterm \
 "

GPT_PACKAGES="\
 gdisk \
"

UEFI_PACKAGES="\
 efibootmgr \
"

PYTHON_PARTED_PACKAGES="python-parted"

CHNTPW_PACKAGES="\
 chntpw \
"

INXI_PACKAGES="\
 inxi \
"

BOOTINFOSCRIPT_PACKAGES="\
 boot-info-script \
"

RESCAPP_PACKAGES=" \
 ${PYTHON_PACKAGES} \
 ${RAID_PACKAGES} \
 ${LVM_PACKAGES} \
 ${CRYPTSETUP_PACKAGES} \
 ${FILESYSTEM_PACKAGES} \
 ${GPT_PACKAGES} \
 ${PYTHON_PARTED_PACKAGES} \
 ${UEFI_PACKAGES} \
 ${CHNTPW_PACKAGES} \
 ${PYTHON_DBUS_PACKAGES} \
 ${INXI_PACKAGES} \
 ${BOOTINFOSCRIPT_PACKAGES} \
 zenity \
 xdg-utils \
 hexchat \
 syslinux \
 pastebinit \
 lilo \
 gawk \
 extundelete \
 os-prober \
 mokutil \
 " # I add syslinux so that the isohybrid command is recognised.

Optional Debian Package Runtime Requirements
==============================================
gparted
gpart
testdisk



SELinux support
===============

If you want Rescapp to work with SELinux systems, your Live CD/DVD/USB-STICK
probably needs to be booted in SELinux mode.

The suggested Kernel parametres are:
selinux=1 security=selinux enforcing=0

You will also need some SELinux packages.
These were the ones needed when using jessie and sid
back in October 2015:


SELINUX_PACKAGES="\
 python-selinux \
 python-semanage \
 policycoreutils-python-utils \
 selinux-basics \
 auditd \
 selinux-policy-default \
 setools \
"

Git based Debian package build
==============================

The official repo use two branches for rescapp:
 master
and
 debian-dev
.

The debian-dev branch, is only used for representing the debian/ branch.


When a new release comes out there will be one tag on the master branch
and another on the debian-dev branch.

We are going to use version 0.54b4 as an example on how to build
Rescapp as a package.

Available tags are: v0.54b4 and v054b4-debian .
Please enter an empty folder and follow this procedure:

git clone https://github.com/rescatux/rescapp.git -b v0.54b4 rescapp-0.54b4
# Ignore detached HEAD warning
rm -rf rescapp-0.54b4/.git/
tar czf rescapp_0.54b4.orig.tar.gz rescapp-0.54b4/
rm -rf rescapp-0.54b4/
git clone https://github.com/rescatux/rescapp.git -b v0.54b4-debian rescapp-0.54b4
# Ignore detached HEAD warning
rm -rf rescapp-0.54b4/.git/
cd rescapp-0.54b4
dpkg-buildpackage -us -uc
cd ..
rm -rf rescapp-0.54b4/

Once the procedure has completed without errors you will find the following
files:

rescapp_0.54b4-1.debian.tar.xz
rescapp_0.54b4-1.dsc
rescapp_0.54b4-1_i386.changes
rescapp_0.54b4-1_i386.deb
rescapp_0.54b4.orig.tar.gz
