Merge "post-umount: add dm-verity-inactivated.umount script" into tizen
[platform/upstream/meta-generic.git] / scripts / generic-base.post
1 #!/bin/sh
2 echo "#################### generic-base.post ####################"
3
4 test ! -e /opt/var && mkdir -p /opt/var
5 test -d /var && cp -arf /var/* /opt/var/
6 rm -rf /var
7 ln -snf opt/var /var
8
9 test ! -e /opt/usr/home && mkdir -p /opt/usr/home
10 test -d /home && cp -arf /home/* /opt/usr/home/
11 rm -rf /home
12 ln -snf opt/usr/home /home
13
14 build_ts=$(date -u +%s)
15 build_date_local=$(date -u --date @$build_ts +%Y%m%d_%H%M%S)
16 build_date=$(echo @BUILD_DATE@ | sed -r -e "s/@BUILD_DATE[@]/$build_date_local/g")
17 build_time=$(date -u --date @$build_ts +%H:%M:%S)
18
19 sed -ri \
20         -e 's|@BUILD_ID[@]|@BUILD_ID@|g' \
21         -e "s|@BUILD_DATE[@]|$build_date|g" \
22         -e "s|@BUILD_TIME[@]|$build_time|g" \
23         -e "s|@BUILD_TS[@]|$build_ts|g" \
24         /etc/tizen-build.conf
25
26 # setup systemd default target for user session
27 cat <<'EOF' >>/usr/lib/systemd/user/default.target
28 [Unit]
29 Description=User session default target
30 EOF
31 mkdir -p /usr/lib/systemd/user/default.target.wants
32
33 # sdx: fix smack labels on /var/log
34 chsmack -a '*' /var/log
35
36 # create appfw dirs inside homes
37 function generic_base_user_exists() {
38         user=$1
39         getent passwd | grep -q ^${user}:
40 }
41
42 function generic_base_user_home() {
43         user=$1
44         getent passwd | grep ^${user}: | cut -f6 -d':'
45 }
46
47 function generic_base_fix_user_homedir() {
48         user=$1
49         generic_base_user_exists $user || return 1
50
51         homedir=$(generic_base_user_home $user)
52         mkdir -p $homedir/apps_rw
53         for appdir in desktop manifest dbspace; do
54                 mkdir -p $homedir/.applications/$appdir
55         done
56         find $homedir -type d -exec chsmack -a User {} \;
57         chown -R $user:users $homedir
58         return 0
59 }
60
61 # fix TC-320 for SDK
62 . /etc/tizen-build.conf
63 [ "${TZ_BUILD_WITH_EMULATOR}" == "1" ] && generic_base_fix_user_homedir developer
64
65 # Add info.ini for system-info CAPI (TC-2047)
66 /etc/make_info_file.sh