mirror of
https://abf.rosa.ru/djam/lazarus.git
synced 2025-02-23 15:12:46 +00:00
109 lines
3.2 KiB
Bash
109 lines
3.2 KiB
Bash
#!/bin/bash
|
|
#
|
|
# This script is distributed under terms of GPLv3 or later
|
|
# Copyright (C) AlexL <loginov.alex.valer@gmail.com>, 2013
|
|
#
|
|
# This is a simple script, which creates /etc/lazarus/miscellaneousoptions.xml
|
|
# Config /etc/lazarus/miscellaneousoptions.xml is neaded for rebuild lazarus under root/user
|
|
# and after rebuild to save all additional components, which were installed before.
|
|
|
|
if [ ! -f "/usr/bin/lazarus-ide" ]
|
|
then
|
|
echo "You have no /usr/bin/lazarus-ide, please install lazarus"
|
|
exit 0
|
|
fi
|
|
|
|
if [ -d "/usr/lib64/lazarus" ]
|
|
then
|
|
ARCH=lib64
|
|
else
|
|
ARCH=lib
|
|
fi
|
|
|
|
# determine type for compiled IDE
|
|
#IDETYPE=`strings $LazarusDir/lazarus|grep qtwidgets`
|
|
IDETYPE=`ldd /usr/bin/lazarus-ide|grep libQt4Pas`
|
|
if [ "$IDETYPE" = "" ]
|
|
then
|
|
IDETYPE=gtk2
|
|
echo IDETYPE: $IDETYPE
|
|
else
|
|
IDETYPE=qt4
|
|
echo IDETYPE: $IDETYPE
|
|
fi
|
|
|
|
if [ ! -f "/etc/lazarus/extra_lpk_$IDETYPE.conf" ]
|
|
then
|
|
echo "There is no /etc/lazarus/extra_lpk_$IDETYPE.conf, you don't need to run script lazarus-miscellaneousoptions"
|
|
exit 0
|
|
fi
|
|
|
|
if [ ! "$USER" = "root" ]
|
|
then
|
|
echo "You must be root for lazarus-miscellaneousoptions"
|
|
exit 0
|
|
fi
|
|
|
|
echo "Starting script lazarus-miscellaneousoptions"
|
|
if [ -f "/etc/lazarus/miscellaneousoptions.xml" ]
|
|
then
|
|
echo "Current file /etc/lazarus/miscellaneousoptions.xml:"
|
|
cat /etc/lazarus/miscellaneousoptions.xml
|
|
else
|
|
echo "There is no /etc/lazarus/miscellaneousoptions.xml, will be created."
|
|
fi
|
|
|
|
echo '<?xml version="1.0"?>' > /etc/lazarus/miscellaneousoptions.xml
|
|
echo '<CONFIG>' >> /etc/lazarus/miscellaneousoptions.xml
|
|
echo ' <MiscellaneousOptions>' >> /etc/lazarus/miscellaneousoptions.xml
|
|
echo ' <Version Value="2"/>' >> /etc/lazarus/miscellaneousoptions.xml
|
|
echo ' <BuildLazarusOptions>' >> /etc/lazarus/miscellaneousoptions.xml
|
|
echo ' <StaticAutoInstallPackages Count="ў">' >> /etc/lazarus/miscellaneousoptions.xml
|
|
|
|
i=0
|
|
|
|
if [ "$ARCH" = "lib" ]
|
|
then
|
|
for a in `cat /etc/lazarus/extra_lpk_$IDETYPE.conf|sed 's|$(LazarusDir)|/usr/lib/lazarus|g'`
|
|
do
|
|
echo "File: $a"
|
|
if [ -f "$a" ]
|
|
then
|
|
b=`cat $a |grep "<Name Value"|cut -d '"' --fields=2`
|
|
echo "Package name: $b"
|
|
i=$(($i+1))
|
|
echo " <Item$i Value=\"$b\"/>" >> /etc/lazarus/miscellaneousoptions.xml
|
|
else
|
|
echo "Error: there is no file $a"
|
|
fi
|
|
done
|
|
fi
|
|
|
|
if [ "$ARCH" = "lib64" ]
|
|
then
|
|
for a in `cat /etc/lazarus/extra_lpk_$IDETYPE.conf|sed 's|$(LazarusDir)|/usr/lib64/lazarus|g'`
|
|
do
|
|
echo "File: $a"
|
|
if [ -f "$a" ]
|
|
then
|
|
b=`cat $a |grep "<Name Value"|cut -d '"' --fields=2`
|
|
echo "Package name: $b"
|
|
i=$(($i+1))
|
|
echo " <Item$i Value=\"$b\"/>" >> /etc/lazarus/miscellaneousoptions.xml
|
|
else
|
|
echo "Error: there is no file $a"
|
|
fi
|
|
done
|
|
fi
|
|
|
|
echo ' </StaticAutoInstallPackages>' >> /etc/lazarus/miscellaneousoptions.xml
|
|
echo ' </BuildLazarusOptions>' >> /etc/lazarus/miscellaneousoptions.xml
|
|
echo ' </MiscellaneousOptions>' >> /etc/lazarus/miscellaneousoptions.xml
|
|
echo '</CONFIG>' >> /etc/lazarus/miscellaneousoptions.xml
|
|
|
|
sed -i -e "s|ў|$i|g" /etc/lazarus/miscellaneousoptions.xml
|
|
|
|
echo "File /etc/lazarus/miscellaneousoptions.xml was updated."
|
|
echo "Current file /etc/lazarus/miscellaneousoptions.xml:"
|
|
cat /etc/lazarus/miscellaneousoptions.xml
|
|
echo "Script lazarus-miscellaneousoptions was finished."
|