summaryrefslogtreecommitdiffstats
path: root/source/l/shared-mime-info/doinst.sh
blob: 6c596b73248a0f3fb235a10d66c05c7111549874 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#!/bin/sh
if [ -x /usr/bin/update-mime-database ]; then
  /usr/bin/update-mime-database /usr/share/mime 1>/dev/null 2>/dev/null
  cat /etc/passwd | while read passwdline ; do
    homedir=$(echo $passwdline | cut -f 6 -d :)
    if [ -d $homedir/.local/share/mime ]; then
      username=$(echo $passwdline | cut -f 1 -d :)
      # Sorry about the long command line, alienBOB  ;-)
      su $username -c "/usr/bin/update-mime-database $homedir/.local/share/mime 1>/dev/null 2>/dev/null" 2> /dev/null
    fi
  done
  # This is just "cleanup" in case something might be missed in /home/*/
  for homemimedir in /home/*/.local/share/mime ; do
    if [ -d $homemimedir ]; then
      username=$(echo $homemimedir | cut -f 3 -d /)
      su $username -c "/usr/bin/update-mime-database $homemimedir 1>/dev/null 2>/dev/null" 2> /dev/null
    fi
  done
fi