fix-attrs 764 B

123456789101112131415161718192021222324252627282930
  1. #!/usr/bin/execlineb -P
  2. /usr/bin/export PATH /usr/bin:/bin
  3. /usr/bin/export recfunction "\
  4. foreground { s6-envuidgid ${3} s6-chown -U -- ${1} }
  5. ifelse -- { if { s6-${2} } s6-test -d ${1} }
  6. {
  7. foreground { s6-chmod ${5} ${1} }
  8. forbacktickx -0 subfile { s6-ls -0 ${1} }
  9. multisubstitute
  10. {
  11. import -u subfile
  12. import recfunction
  13. }
  14. execlineb -S5 -c ${recfunction} ${1}/${subfile} true ${3} ${4} ${5}
  15. }
  16. s6-chmod ${4} ${1}"
  17. forstdin -d"\n" -- line
  18. import -u line
  19. if { s6-test -n ${line} }
  20. multidefine -0 -Cd" \t" -- ${line} { globex recurse user fmode dmode }
  21. elglob -0 -- files ${globex}
  22. forx -p -- file { ${files} }
  23. multisubstitute
  24. {
  25. import -u file
  26. import recfunction
  27. }
  28. execlineb -S5 -c ${recfunction} ${file} ${recurse} ${user} ${fmode} ${dmode}