wmsetup.grid 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. # /dis/sh script
  2. # wm defines "menu" and "delmenu" builtins
  3. load std
  4. prompt='% ' ''
  5. fn % {$*}
  6. autoload=std
  7. home=/usr/^"{cat /dev/user}
  8. if {! {~ wm ${loaded}}} {
  9. echo wmsetup must run under wm >[1=2]
  10. raise usage
  11. }
  12. fn wmrun {
  13. args := $*
  14. {
  15. pctl newpgrp
  16. fn wmrun
  17. $args
  18. } > /chan/wmstdout >[2] /chan/wmstderr &
  19. }
  20. fn cd {
  21. builtin cd $*;
  22. rescue 'bad redir' {} {
  23. echo cwd `{pwd} > /chan/shctl
  24. } >[2] /dev/null
  25. }
  26. autoload=std sexprs
  27. run /lib/sh/sched
  28. bind -a /grid/scripts/Inferno /dis
  29. if{! ftest -f /net/cs}{
  30. ndb/cs
  31. }
  32. mount -a {mntgen} /n
  33. plumber >/chan/wmstdout >[2=1]
  34. menu Shell {wmrun wm/sh}
  35. menu Acme {wmrun acme}
  36. menu Charon {wmrun charon}
  37. menu Manual {wmrun wm/man}
  38. menu Files {if {ftest -d $home} {wmrun wm/ftree $home} {wmrun wm/ftree /}}
  39. menu '' ''
  40. menu Grid 'Node monitor' {wmrun nodemonitor}
  41. menu Grid 'Job monitor' {wmrun jobmonitor}
  42. menu System 'Debugger' {wmrun wm/deb}
  43. menu System 'Task manager' {wmrun wm/task}
  44. menu System 'Memory monitor' {wmrun wm/memory}
  45. menu System 'About' {wmrun wm/about}
  46. menu Games 'Tetris' {wmrun wm/tetris}
  47. menu Games 'Bounce' {wmrun wm/bounce}
  48. # anything else
  49. if {ftest -f $home/lib/wmsetup} {run $home/lib/wmsetup} {}