Re: Libreoffice 6.1.x - fails to start Draw, Impress due to new Avahi dependency
Posted: 01 Jan 2019, 17:18
Porteus User Forum
https://forum.porteus.org/
Code: Select all
guest@porteus:~$ ls /mnt/sda6/porteus5.0/003Modules/*.xzm
/mnt/sda6/porteus5.0/003Modules/003-mate_x86_64-20181226.xzm*
guest@porteus:~$
Code: Select all
desktopfiles=`unsquashfs -l $1 | grep "\.desktop" | sed 's/squashfs-root//g'`
Code: Select all
for dfile in $desktopfiles; do
desktop-file-install $mlmi/${modname}${dfile} >/dev/null 2>&1
xdg-desktop-menu install $mlmi/${modname}${dfile} >/dev/null 2>&1
done
Lucky you. I tried it on Mate and the window manager and the panel crashed.Ed_P wrote: ↑03 Jan 2019, 06:48Just tried with V5.0 withAnd NO double entries.Code: Select all
guest@porteus:~$ ls /mnt/sda6/porteus5.0/003Modules/*.xzm /mnt/sda6/porteus5.0/003Modules/003-mate_x86_64-20181226.xzm* guest@porteus:~$
Sounds like an easy fix.Maybe rename /opt/libreoffice6.1/share/xdg/*.desktop file extensions to something else , but symlink them to /usr/share/applications as .desktop file extensions in the module. This way, activate script wont collect them and create double entries.
By the way, the screenshots from you guys look fabulous! Nice wallpaper
Code: Select all
#!/bin/bash
txtcyan=${txtbld}$(tput setaf 6) # Bold Cyan
rst=$(tput sgr0) # Reset
function cyan() {
echo -E "$1" $txtcyan
}
if [ `whoami` != "root" ]; then
cyan "Enter root's password"
su -c "sh $0 $1"
exit
fi
echo $rst
MOD=/mnt/sda6/porteus4.0/Optional/libreoffice-6.1.4-x86_64-ru-5.0
echo Edit files in $MOD
read
cd $MOD/opt/libreoffice6.1/share/xdg
ls
#mv *.desktop *.lnk
mv base.* base.lnk
mv draw.* draw.lnk
mv math.* math.lnk
mv writer.* writer.lnk
mv calc.* calc.lnk
mv impress.* impress.lnk
mv startcenter.* startcenter.lnk
mv xsltfilter.* xsltfilter.lnk
ls
read
dir2xzm $MOD /home/guest/libreoffice-test.xzm
Code: Select all
guest@porteus:~$ ls /usr/share/applications/libre*
/usr/share/applications/libreoffice6.1-base.desktop@
/usr/share/applications/libreoffice6.1-calc.desktop@
/usr/share/applications/libreoffice6.1-draw.desktop@
/usr/share/applications/libreoffice6.1-impress.desktop@
/usr/share/applications/libreoffice6.1-math.desktop@
/usr/share/applications/libreoffice6.1-startcenter.desktop@
/usr/share/applications/libreoffice6.1-writer.desktop@
/usr/share/applications/libreoffice6.1-xsltfilter.desktop@
guest@porteus:~$
Code: Select all
ln -s base.* $MOD/usr/share/applications/base.desktop
ln -s draw.* $MOD/usr/share/applications/draw.desktop
ln -s math.* $MOD/usr/share/applications/math.desktop
ln -s writer.* $MOD/usr/share/applications/writer.desktop
ln -s calc.* $MOD/usr/share/applications/calc.desktop
ln -s impress.* $MOD/usr/share/applications/impress.desktop
ln -s startcenter.* $MOD/usr/share/applications/startcenter.desktop
ln -s xsltfilter.* $MOD/usr/share/applications/xsltfilter.desktop
Code: Select all
guest@porteus:~$ ls /mnt/sda6/porteus4.0/Optional/libreoffice-6.1.4-x86_64-ru-5.0/usr/share/applications/
base.desktop@ libreoffice6.1-math.desktop@
calc.desktop@ libreoffice6.1-startcenter.desktop@
draw.desktop@ libreoffice6.1-writer.desktop@
impress.desktop@ libreoffice6.1-xsltfilter.desktop@
libreoffice6.1-base.desktop@ math.desktop@
libreoffice6.1-calc.desktop@ startcenter.desktop@
libreoffice6.1-draw.desktop@ writer.desktop@
libreoffice6.1-impress.desktop@ xsltfilter.desktop@
guest@porteus:~$
hmmm The starting point.
Code: Select all
guest@porteus:~$ ls -lght /mnt/sda6/porteus4.0/Optional/libreoffice-6.1.4-x86_64-ru-5.0/usr/share/applications/
total 4.0K
lrwxrwxrwx 1 root 104 Jan 4 18:32 libreoffice6.1-xsltfilter.desktop -> /opt/libreoffice6.1/share/xdg/xsltfilter.desktop
lrwxrwxrwx 1 root 96 Jan 4 18:32 libreoffice6.1-writer.desktop -> /opt/libreoffice6.1/share/xdg/writer.desktop
lrwxrwxrwx 1 root 106 Jan 4 18:32 libreoffice6.1-startcenter.desktop -> /opt/libreoffice6.1/share/xdg/startcenter.desktop
lrwxrwxrwx 1 root 92 Jan 4 18:32 libreoffice6.1-math.desktop -> /opt/libreoffice6.1/share/xdg/math.desktop
lrwxrwxrwx 1 root 98 Jan 4 18:32 libreoffice6.1-impress.desktop -> /opt/libreoffice6.1/share/xdg/impress.desktop
lrwxrwxrwx 1 root 92 Jan 4 18:32 libreoffice6.1-draw.desktop -> /opt/libreoffice6.1/share/xdg/draw.desktop
lrwxrwxrwx 1 root 92 Jan 4 18:32 libreoffice6.1-calc.desktop -> /opt/libreoffice6.1/share/xdg/calc.desktop
lrwxrwxrwx 1 root 92 Jan 4 18:32 libreoffice6.1-base.desktop -> /opt/libreoffice6.1/share/xdg/base.desktop
guest@porteus:~$
Code: Select all
8309951d4c40c07aec61413ce6ede5b9 avahi-0.6.32-x86_64-1_SBo.xzm
f8679f1c9176161b6747b3c43b808f9e libavahi-client-and-common.xzm
Code: Select all
#!/bin/bash
# If you use official LibreOffice 6.1.x (or higher) rpm.tar.gz package -
# need to drop avahi and wayland dependences.
# set SAL_USE_VCLPLUGIN=gtk
LO=$(find /opt/libreoffice*/program -name soffice | awk 'NR==1 {print $0}')
sed -i -e '/^#\ restore/i# Prefer GTK2\nexport SAL_USE_VCLPLUGIN=${SAL_USE_VCLPLUGIN:-gtk}\n' $LO
# built two dummy/empty libraries
cd $(echo $LO | sed 's|soffice||')
gcc -shared -o libavahi-client.so.3 -x c - < /dev/null
gcc -shared -o libavahi-common.so.3 -x c - < /dev/null
echo 'Done!'
unset LO