The voxin installer installs voxin and its dependencies on various GNU/Linux distributions either system-wide or as a regular user (more details in src/installer/README.org)
The current goal is to provide:
- distribution-independent tarballs (installed under /opt or locally),
- in case of system-wide install, minimal packages providing symlinks to /opt for various package managers,
- no dependencies on foreign architectures (the x86_64 binaries won’t require multi-arch support from the distribution for x86 binaries).
The standard 32 bits libraries are built by Buildroot .
build.sh is the script used by Oralux.org to build voxin-installer and its free software dependencies on a Debian based system.
Libvoxin requires a minimal pre-built 32 bits rootfilesystem (see paragraph “minimal 32 bits rootfilesystem”).
The rsync.sh script builds voxin-installer on a remote host and calls build.sh. It can build voxin-installer on x86_64, armv7l or aarch64 (see hosts in src/host.inc).
./rsync.sh archarch: x86_64, armv7l, aarch64
# build all
cd voxin-installer
# clean up
./build.sh -c
./build.sh# build all, extract and merge the tarballs in list.vv
./build.sh -t src/list.vv
# This list provides the paths to the necessary tarballs.
# The common tarballs (*all*, *voxind*) are expected to be placed
# at the beginning of the list
# For example to test English and French, these paths would be:
$HOME/VOXIN/voxin-viavoice/build/packages/voxin-viavoice-all_6.7-1.0-1.txz
$HOME/VOXIN/voxin-viavoice/build/packages/voxin-viavoice-enu_6.7-1.0-1.txz
$HOME/VOXIN/voxin-viavoice/build/packages/voxin-viavoice-fra_6.7-1.0-1.txz
# build all, extract and merge the tarballs in list.ve.x86_64
./build.sh -t src/list.ve.x86_64
$HOME/VOXIN/voxin-nve/build/packages/voxin-nve-all_3.3.0-1.txz
$HOME/VOXIN/voxin-nve/voices/packages/voxind-nve_1.6.1.x86_64.txz
Sequence followed:
- extract files from the minimal 32 bits rfs
- download libstdc++2.10-glibc2.2 from archive.debian.org
- build libvoxin
- build libinote
- download the sd_voxin pre-built tarballs (see link in src/conf.inc)
The buildroot tarball is expected to be found in build/packages/buildroot_2017.02.9.txz . This tarball can be (re)built if needed; it is a relatively intensive process (more than one hour, 3.5 GB of storage space).
cd voxin-installer
./build.sh -bThe rootfilesystem is built by Buildroot (see its config in src/buildroot/). The tree is basically :
tree rfs32
rfs32
├── lib
│ ├── ld-2.23.so
│ ├── ld-linux.so.2 -> ld-2.23.so
│ ├── libc-2.23.so
│ ├── libc.so.6 -> libc-2.23.so
│ ├── libdl-2.23.so
│ ├── libdl.so.2 -> libdl-2.23.so
│ ├── libm-2.23.so
│ ├── libm.so.6 -> libm-2.23.so
│ ├── libpthread-2.23.so
│ └── libpthread.so.0 -> libpthread-2.23.so
├── lib32 -> lib
└── usr
├── bin
├── lib
└── lib32 -> lib
The program version is stored in src/conf.inc (VOXIN_VERSION)