#!/bin/ash 
#190531 sfs
H="-H" #4UIRD
D(){
[ -d /mnt/live/memory/images ] || return #не porteus-initrd
#for d in $(find $H /mnt/live/memory/images/*/usr/lib/modules/`uname -r`/kernel -type f -wholename "*.ko" |egrep -v '/mnt/live/memory/images/000-kernel') ;do
#for d in $(find $H /mnt/live/memory/images/*/lib/modules/*`uname -r` -type f -wholename "*.ko" |egrep -v '/mnt/live/memory/images/000-kernel') ;do
for d in $(find $H /mnt/live/memory/images/*/lib/modules/*`uname -r` -type f \( -name "*.ko" -o  -name "*.ko.gz"  -o -name "*.ko.xz" \) 2>/dev/null |egrep -v '/mnt/live/memory/images/000-kernel') ;do
#    d1="`basename $d .ko`"
    d1="`basename $d |sed 's/.[gx]z$//'`"
    [ "`cat /etc/modprobe.d/*.conf |awk '/^blacklist / && / '$d1'$/ {print $2}'`" ] && continue 
    [ "`lsmod |egrep '^'$d1' '`" ] && continue #модуль уже загружен -> следующий d
    if [ ! "$dm" ];then #если dm пустой, т.е. depmod не делали
        sudo insmod "$d" && continue
	#sudo depmod -A && dm=1
	sudo depmod  && dm=1
    fi
    sudo modprobe "$d1"
done
}

OldXX(){
gdk-pixbuf-query-loaders --update-cache 2>/dev/null #&
[ "`find $H /mnt/live/memory/images -type d -wholename "*/usr/share/mime/*" |egrep -v '^/mnt/live/memory/images/0'`" ] &&  update-mime-database /usr/share/mime 2>/dev/null #&
#    update-desktop-database 2>/dev/null #&
#    gtk-update-icon-cache /usr/share/icons/hicolor 2>/dev/null #&
  update-desktop-database -q
#  gtk-update-icon-cache -q /usr/share/icons/hicolor
  gtk-update-icon-cache -f -i -q /usr/share/icons/hicolor
[ "`find $H /mnt/live/memory/images -type d -wholename "*/usr/share/glib-2.0/schemas*" |egrep -v '^/mnt/live/memory/images/001-'`" ] && glib-compile-schemas /usr/share/glib-2.0/schemas
}

sudo /usr/local/bin/pfs pfs_update_caches 2>/dev/null &
D
exit 0