diff options
Diffstat (limited to 'conf')
-rw-r--r-- | conf/system/CMakeLists.txt | 6 | ||||
-rw-r--r-- | conf/system/afm-user-setup.sh.in | 22 | ||||
-rw-r--r-- | conf/system/afm-user-setup@.service.in | 3 | ||||
l--------- | conf/system/user-runtime-dir@.service.wants/afm-user-setup@.service | 1 |
4 files changed, 25 insertions, 7 deletions
diff --git a/conf/system/CMakeLists.txt b/conf/system/CMakeLists.txt index a49d37f..3cabd0c 100644 --- a/conf/system/CMakeLists.txt +++ b/conf/system/CMakeLists.txt @@ -51,6 +51,12 @@ if(NOT USE_SDK) ${UNITDIR_SYSTEM} ) install( + DIRECTORY + ${CMAKE_CURRENT_SOURCE_DIR}/user-runtime-dir@.service.wants + DESTINATION + ${UNITDIR_SYSTEM} + ) + install( PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/afm-user-setup.sh ${CMAKE_CURRENT_BINARY_DIR}/afm-system-setup.sh diff --git a/conf/system/afm-user-setup.sh.in b/conf/system/afm-user-setup.sh.in index 24795ae..076676f 100644 --- a/conf/system/afm-user-setup.sh.in +++ b/conf/system/afm-user-setup.sh.in @@ -3,18 +3,28 @@ uid=$1 udir=/run/user/$uid -dodir() { +dodir_star() { if ! test -e $1; then mkdir -m 700 $1 chown $uid:$uid $1 - chsmack -a '*' $1 fi + chsmack -a '*' $1 } -dodir $udir -dodir $udir/apis -dodir $udir/apis/ws -dodir $udir/apis/link +dodir_star $udir +dodir_star $udir/apis +dodir_star $udir/apis/ws +dodir_star $udir/apis/link + +dodir_usrshr() { + if ! test -e $1; then + mkdir -m 700 $1 + chown $uid:$uid $1 + fi + chsmack -a User::App-Shared -t $1 +} + +dodir_usrshr $udir/usrshr doln() { if ! test -e $2; then diff --git a/conf/system/afm-user-setup@.service.in b/conf/system/afm-user-setup@.service.in index 86c0422..c1e4f1e 100644 --- a/conf/system/afm-user-setup@.service.in +++ b/conf/system/afm-user-setup@.service.in @@ -1,6 +1,7 @@ [Unit] Description=Initiate afm-user-setup %i -After=user@%i.service +After=user-runtime-dir@%i.service +Before=user@%i.service [Service] Type=oneshot StartLimitInterval=0 diff --git a/conf/system/user-runtime-dir@.service.wants/afm-user-setup@.service b/conf/system/user-runtime-dir@.service.wants/afm-user-setup@.service new file mode 120000 index 0000000..07fe155 --- /dev/null +++ b/conf/system/user-runtime-dir@.service.wants/afm-user-setup@.service @@ -0,0 +1 @@ +../afm-user-setup@.service
\ No newline at end of file |