Files
sandbox/PKGBUILD-calamares
2019-09-13 22:46:28 +03:00

111 lines
3.8 KiB
Plaintext

# Maintainers: Portergos Linux <portergoslinux@gmail.com>, EndeavourOS info@endeavouros.com
# Multipurpose installer for arch based distros
pkgname=calamares_current
_eos_changes=Calamares_current
_reponame=calamares
pkgver=3.2.12
pkgrel=7
pkgdesc="calamares installer for arch based distros"
arch=('any')
url="https://github.com/endeavouros-team"
license=('GPL3')
optdepends=('update-mirrorlist')
makedepends=('git' 'cmake' 'extra-cmake-modules')
conflicts=('calamares_offline' 'calamares_netinstall_test' 'calamares_netinstall' 'calamares_current')
depends=(
qt5-svg
qt5-webengine
yaml-cpp
networkmanager
upower
qt5-webengine
yaml-cpp
boost
networkmanager
upower
kcoreaddons
kconfig
ki18n
kservice
kwidgetsaddons
kpmcore
squashfs-tools
rsync
cryptsetup
qt5-xmlpatterns
doxygen
dmidecode
gptfdisk
hwinfo
kparts
polkit-qt5
python
qt5ct
solid
qt5-tools)
provides=("${pkgname}")
options=(!strip !emptydirs)
source=(
"git+https://github.com/endeavouros-team/$_eos_changes.git#branch=master"
"https://github.com/calamares/calamares/releases/download/v$pkgver/$_reponame-$pkgver.tar.gz"
)
sha256sums=(
'SKIP'
'SKIP'
)
prepare() {
# endeavouros' calamares is cloned at source variable, the original calamares is wget bellow
if [ ! -d $_reponame ]
then
# wget https://github.com/calamares/calamares/releases/download/v$pkgver/$_reponame-$pkgver.tar.gz
# tar -zxvf $_reponame-$pkgver.tar.gz
# rm $_reponame-$pkgver.tar.gz
mv $_reponame-$pkgver $_reponame
rsync -va $_eos_changes/* $_reponame
rm -rf $_eos_changes
fi
# Build proccess can't understand our personal files, so we adjust here
cp $_reponame/src/modules/packages/packages.conf_offline $_reponame/src/modules/packages/packages.conf
cp $_reponame/settings.conf_offline $_reponame/settings.conf
cp $_reponame/src/modules/welcome/welcome.conf_offline $_reponame/src/modules/welcome/welcome.conf
mkdir -p $_reponame/build/$pkgname
# remove some calamares modules we don't need
rm -r $_reponame/src/modules/{dracut,dracutlukscfg,dummycpp,dummyprocess,dummypython,dummypythonqt,initramfs,plymouthcfg,tracking,webview} ||true
# change some files on the go - distro-specific
sed -i "s?configuration files\" OFF?configuration files\" ON?g" $_reponame/CMakeLists.txt
sed -i "s?username: live?username: liveuser?g" $_reponame/src/modules/removeuser/removeuser.conf
sed -i 's/\"mkinitcpio\", \"-p\", m_kernel/\"mkinitcpio\", \"-P\"/' $_reponame/src/modules/initcpio/InitcpioJob.cpp
sed -i "s?./example.sqfs?\"/run/archiso/bootmnt/arch/x86_64/airootfs.sfs\"?g" $_reponame/src/modules/unpackfs/unpackfs.conf
}
build() {
cd $_reponame/build
cmake .. -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_LIBDIR=/usr/lib -DCMAKE_INSTALL_PREFIX=/usr
export DESTDIR="$srcdir/$_reponame/build/$pkgname" && make -j4 install
}
package() {
local destdir="/usr"
# Build proccess can't understand our personal files, so we explicitly copy them here to be packed along calamares files
cp -r $_reponame/src/branding $_reponame/build/$pkgname/usr/share/calamares/
cp -r $_reponame/settings.conf_{on,off}line $_reponame/build/$pkgname/usr/share/calamares/
cp -r $_reponame/src/modules/welcome/welcome.conf_{on,off}line $_reponame/build/$pkgname/usr/share/calamares/modules/
cp -r $_reponame/src/modules/packages/packages.conf_{on,off}line $_reponame/build/$pkgname/usr/share/calamares/modules/
# Commom install -D doen't work
cp -r "${srcdir}/${_reponame}/build/$pkgname/"* "${pkgdir}${destdir}"
}