1RESUME
2------
3These scripts build a binary digiKam AppImage bundle for Linux using Mageia 64 bits.
4
5
6AUTHORS
7-------
8
9(c) 2015-2021 by Gilles Caulier <caulier dot gilles at gmail dot com>
10
11
12DESCRIPTION
13-----------
14These files and scripts are used to make binary AppImage bundle of the digiKam
15Software Collection for Linux.
16
17For more information about AppImage, see at this url:
18http://appimage.org/
19
20In addition to this README, there are comments in the scripts that provide some
21additional explanation for how they work.
22
23
24BUNDLE CONTENTS
25---------------
26
27Note : the bundle is rellocable.
28
29.
30└── usr
31    ├── bin                                         Main executable
32    │   ├── data                                    Marble data
33    │   └── plugins                                 Marble plugins
34    ├── lib                                         All Shared libraries, including 64 bits
35    ├── lib64 -> lib                                Symbolic link, for compatibility
36    ├── plugins                                     Qt5 based plugins
37    │   ├── bearer
38    │   ├── designer
39    │   ├── generic
40    │   ├── geoservices
41    │   ├── iconengines
42    │   ├── imageformats
43    │   ├── kauth                                   KF5 authentification
44    │   ├── kf5                                     Generic KF5 plugins
45    │   ├── mediaservice
46    │   ├── org.kde.kglobalaccel5.platforms         KF5 global accelerators
47    │   ├── platforminputcontexts
48    │   ├── platforms
49    │   ├── playlistformats
50    │   ├── position
51    │   ├── sensorgestures
52    │   ├── sensors
53    │   ├── sqldrivers
54    │   ├── webkit
55    │   └── xcbglintegrations
56    ├── share                                       Shared data files
57    │   ├── digikam                                 digiKam
58    │   ├── knotifications5                         KF5
59    │   ├── kservices5                              KF5
60    │   ├── kservicetypes5                          KF5
61    │   ├── kxmlgui5                                KF5
62    │   ├── lensfun                                 Lens database for Lensfun
63    │   ├── locale                                  KF5 i18n
64    │   ├── metainfo                                Application metadata
65    │   ├── OpenCV                                  OpenCv shared lib data
66    │   └── solid                                   KF5 Solid
67    └── translations                                Qt5 i18n
68
69
70REQUIREMENTS
71------------
72
73- For technical reasons about compatibility with libc, Mageia 7 is used to be compatible
74  at run-time under other Linux distributions. NOTE: we have tested Centos in the pass but
75  this distribution is really a puzzle to group all required multimedia packages.
76
77- Create a fresh Mageia 7 environment in a Virtual Machine:
78  Install the distribution using official ISO from http://distrib-coffee.ipsl.jussieu.fr/pub/linux/Mageia/iso/
79  or another mirror.
80  Use a static 80Gb virtual disk with separated partitions as 50Gb for /, 8Gb for swap, and 23Gb for /home.
81- Install the customized group of packages (no Plasma or Gnome desktop) with development tools.
82  Install the light XFCE desktop (not Qt5 based desktop).
83  Setup the Internet repositories and install update.
84- Install the minimum requirement to checkout the code:
85  urpmi git openssh-askpass
86  git clone git://anongit.kde.org/digikam.git DK
87  cd DK/project/appimage.mageia/
88
89- Customize the config.sh file:
90  Setup the digiKam git tags to checkout right source code in bundle.
91  Setup the option to host debug symbols or not in bundle.
92
93
94COMPONENTS
95----------
96There are 4 scripts to be run by the user. 2 first ones installs
97components on Mageia 7 and all dependencies, next one digiKam, and last one makes a
98binary AppImage bundle for Linux.
99
100
101SCRIPT DESCRIPTIONS
102-------------------
103All scripts should be run from within this directory.
104
105* 01-build-host.sh:
106
107This script downloads and configures all packages for Mageia 7 to compile digiKam, KF5, Qt5,
108and all other important low level libraries. When the system is ready, this script compile
109and install low level and Qt5 libraries.
110
111* 02-build-extralibs.sh:
112
113This script configures, compile, and install KF5 frameworks and Marble.
114
115* 03-build-digikam.sh:
116
117This script configures, and compile digiKam.
118
119* 04-build-installer.sh:
120
121Once you've successfully built digiKam, this script create the AppImage bundle.
122This include applications documentations and translations.
123Depending of configuration done in config.sh, this script is able to upload automatically
124the bundle file on files.kde.org digiKam area through ssh. A valid ssh key configured
125with remote KDE server need to be set previously with the account. You can load ssh key
126at startup following these instructions:
127
1281/ As root, mkdir /root/.ssh
1292/ Put your ssh keys in /root/.ssh
1303/ Install openssh-ask-pass package.
1314/ Edit /root/.bashrc and add these lines at end:
132
133# --- ssh key rules
134
135eval `SSH_ASKPASS=/usr/libexec/openssh/x11-ssh-askpass /usr/bin/keychain -q --eval --noask --agents ssh ~/.ssh/id_rsa`
136
137# ---
138
139Note: the bundle can be signed with GPG. You must setup your private and public keys before
140and put your passphare to a text file (~/.gnupg/dkorg-gpg-pwd.txt)
141
1425/ Re-login as root to setup password.
143
144Source : https://unix.stackexchange.com/questions/90853/how-can-i-run-ssh-add-automatically-without-password-prompt
145
146* makeall.sh
147
148This script permit to build whole Linux bundle from scratch in one time.
149
150* update.sh
151
152This script re-build only digiKam and Linux bundle.
153
154
155AT RUN-TIME ON TARGET COMPUTER
156------------------------------
157- Make AppImage file executable (CentOS : chmod +x _bundle_file_).
158- Add Fuse on on computer       (CentOS : yum install fuse).
159- Add user right to use Fuse    (CentOS : usermod -a -G fuse _user_name_).
160
161
162LICENSES
163--------
164The scripts and other contents of this package are licensed
165under the GNU General Public License version 2, or any later version.
166