Hi Zlika.
To me Misalf's suggestion would probably be easiest, strip Xprogs.tcz to include only exittc executable related stuff. Rename it Xprogs_mod.tcz or similar so it's not overwritten in an update check.
However, unsquashing flwm.tcz -> usr/local/bin/flwm_initmenu appears to be the script that builds the menu, this appears to be how the menu gets created:
TARGET="$SYSMENU"/SystemTools && mkdir "$TARGET"
sync
for D in `ls /usr/local/share/applications/tinycore-*`; do
writeFLWMitem "$D"
done
Everything in /usr/local/share/applications/tinycore-* coincidentally is part of Xprogs.tcz unsquashed:
tinycore-apps.desktop tinycore-mnttool.desktop
tinycore-cpanel.desktop tinycore-screenshot.desktop
tinycore-editor.desktop tinycore-services.desktop
tinycore-exittc.desktop tinycore-settime.desktop
tinycore-flrun.desktop
The tinycore-exittc.desktop file requires the exittc executable:
[Desktop Entry]
Name=Exit
Exec=exittc
Icon=exittc
X-FullPathIcon=/usr/local/share/pixmaps/exittc.png
Type=Application
Categories=System;
Although Xprogs contains 18 executables none are critical for backup and shutdown, as the base TC file system appears to contain the following:
/sbin/poweroff
/sbin/halt
/usr/bin/backup
/usr/bin/filetool.sh
So if you absolutely don't want Xprogs you could probably modify flwm.tcz, add this directory and desktop file: /usr/local/share/applications/tinycore-exittc.desktop. Then modify the desktop file to include something like: exec=sudo /sbin/poweroff. Not tested, just best guess.