#!/bin/sh # test we are root if [ "$(id -u)" != "0" ]; then echo "run as root now exitting" exit 1 fi # build order is libfm-extra-dev menu-cache libfm then pcmanfm export CFLAGS="-mtune=generic -Os -pipe" export CXXFLAGS="-mtune=generic -Os -pipe -fno-exceptions -fno-rtti" P=pcmanfm V=1.3.2 SRC=$P-$V USER=`cat /etc/sysconfig/tcuser` LIST="compiletc submitqc libfm-dev adwaita-icon-theme " for Z in $LIST do su -c "tce-load -i $Z" $USER done # /etc as same rule for libfm cd /tmp su -c "/usr/local/bin/wget -nc --no-check-certificate \ https://downloads.sourceforge.net/$P/$SRC.tar.xz " $USER xz -d $P*xz && tar xvf $P*tar cd $SRC ./configure --prefix=/usr/local --sysconfdir=/etc --with-gtk=2 make check # takes seconds make install-strip DESTDIR=/tmp/$P cd /tmp # locale ######### mkdir -p $P-locale/usr/local/share mv $P/usr/local/share/locale $P-locale/usr/local/share # no doc ##### rm -rf $P/usr/local/share/man # no dev ##### rm -rf $P/usr/local/include rm -rf $P/usr/local/lib # main ##### mkdir -p $P/usr/local/share/doc/$P echo 'GPL v2' > $P/usr/local/share/doc/$P/COPYING mkdir -p $P/usr/local/share/pixmaps ICON=/tmp/tcloop/adwaita-icon-theme/usr/local/share/icons/Adwaita/48x48/apps/system-file-manager-symbolic.symbolic.png cp $ICON $P/usr/local/share/pixmaps/pcmanfm.png APP=$P/usr/local/share/applications/$P.desktop echo 'X-FullPathIcon=/usr/local/share/pixmaps/pcmanfm.png' >> $APP sed 's|Utility|Utilities|' -i $APP sed 's|Core;||' -i $APP # gvfs not compiled into libfm so remove its GUI rm -rf $P/usr/local/share/$P/ui/connect.ui # create template ################## mkdir -p $P/usr/local/share/$P echo 'file:///usr/local/share/applications executable-icons file:///home/tc/Downloads Downloads file:///home/tc/.config .config file:///home/tc/.local .local ' > $P/usr/local/share/$P/.gtk-bookmarks # tce.install ############# mkdir -p $P/usr/local/tce.installed cat >> $P/usr/local/tce.installed/$P <<'EOF' #!/bin/sh USER=`cat /etc/sysconfig/tcuser` DIR=/usr/local/share/pcmanfm/.gtk-bookmarks HOME=/home/$USER [ -f $HOME/.gtk-bookmarks ] || cp $DIR $HOME chown $USER:staff $HOME/.gtk-bookmarks chmod 644 $HOME/.gtk-bookmarks EOF chown -R root:staff $P/usr/local/tce.installed chmod -R 755 $P/usr/local/tce.installed # TCZ them ########### LIST="$P $P-locale " for Z in $LIST do mksquashfs $Z $Z.tcz md5sum $Z.tcz > $Z.tcz.md5.txt cd $Z find usr -not -type d > /tmp/$Z.tcz.list find etc -not -type d >> /tmp/$Z.tcz.list sed 's|usr|/usr|g' -i /tmp/$Z.tcz.list sed 's|etc|/etc|g' -i /tmp/$Z.tcz.list cd /tmp done ls -hal echo 'Title: pcmanfm-locale.tcz Description: locales for pcmanfm Version: 1.3.2 Author: Hong Jen Yee Original-site: https://downloads.sourceforge.net/pcmanfm Copying-policy: GPL v2 Size: 476K Extension_by: aus9 Tags: locale file manager Comments: locales untested by me Change-log: 2014/01/18 First version, 1.1.2.2 (bmarkus) 2015/08/20 v1.2.3 (gordon64) 2019/02/10 v1.3.0 for 10x(aus9) 2020/07/19 v 1.3.1 for 11x Current: 2023/03/26 v 1.3.2 on 14x ' > $P-locale.tcz.info echo 'Title: pcmanfm.tcz Description: Graphical File Manager Version: 1.3.2 Author: Hong Jen Yee Original-site: https://downloads.sourceforge.net/pcmanfm Copying-policy: GPL v2 Size: 124K Extension_by: aus9 Tags: file manager gtk2 fm Comments: online manual https://man.archlinux.org/man/pcmanfm.1.en Config will auto-create at ~/.config/pcmanfm/default/pcmanfm.conf Original /etc/xdg/pcmanfm/pcmanfm.conf Change by pulldown Edit -> Preferences. If pcmanfm run in desktop mode, other preferences can be activated see https://tinyurl.com/y3ouvb94 Recommend change preferences to not allow volume management automount of volumes on startup. FM preferences can also change libfm (dependency) config. FM Bookmarks at ~/.gtk-bookmarks gvfs and trash can support disabled. pcmanfm has trashcan/network settings but do not try to use please. FM can integrate with either xarchiver, file-roller or engrampa to unpack common archives types but no dependencies set. Load your preferred archive tool and various archive format TCEs then run $ update-desktops Read update-desktops info please. If you load an extra GUI run $ update-desktops to get mime handling please Change-log: 2014/01/18 First version, 1.1.2.2 (bmarkus) 2015/08/20 v1.2.3 (gordon64) 2019/02/10 v1.3.0 for 10x(aus9) 2020/07/19 v 1.3.1 for 11x change install script 2020/08/04 add update-desktops to dep and info Current: 2023/03/27 v 1.3.2 on 14x ' > $P.tcz.info readelf -d $P/usr/local/bin/$P | grep 'NEEDED' ############################################### # 0x0000000000000001 (NEEDED) Shared library: [libX11.so.6] libX11 pixbuf libfm # 0x0000000000000001 (NEEDED) Shared library: [libfm-gtk.so.4] libfm # 0x0000000000000001 (NEEDED) Shared library: [libgtk-x11-2.0.so.0] " # 0x0000000000000001 (NEEDED) Shared library: [libgdk-x11-2.0.so.0] " # 0x0000000000000001 (NEEDED) Shared library: [libpangocairo-1.0.so.0] " # 0x0000000000000001 (NEEDED) Shared library: [libatk-1.0.so.0] " # 0x0000000000000001 (NEEDED) Shared library: [libcairo.so.2 ] " # 0x0000000000000001 (NEEDED) Shared library: [libgdk_pixbuf-2.0.so.0]" # 0x0000000000000001 (NEEDED) Shared library: [libpangoft2-1.0.so.0] " # 0x0000000000000001 (NEEDED) Shared library: [libpango-1.0.so.0] " # 0x0000000000000001 (NEEDED) Shared library: [libharfbuzz.so.0] " # 0x0000000000000001 (NEEDED) Shared library: [libfontconfig.so.1] " # 0x0000000000000001 (NEEDED) Shared library: [libfreetype.so.6] " # 0x0000000000000001 (NEEDED) Shared library: [libfm.so.4] " # 0x0000000000000001 (NEEDED) Shared library: [libgthread-2.0.so.0] " # 0x0000000000000001 (NEEDED) Shared library: [libgio-2.0.so.0] " # 0x0000000000000001 (NEEDED) Shared library: [libgobject-2.0.so.0] " # 0x0000000000000001 (NEEDED) Shared library: [libglib-2.0.so.0] " # 0x0000000000000001 (NEEDED) Shared library: [libm.so.6] TCB # 0x0000000000000001 (NEEDED) Shared library: [libpthread.so.0] " # 0x0000000000000001 (NEEDED) Shared library: [libc.so.6] " ########################################################### echo 'pcmanfm.tcz ' > $P-locale.tcz.dep echo 'libfm.tcz update-desktops.tcz ' > $P.tcz.dep submitqc --libs