saturnin.skel 1.8KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. #!/bin/bash
  2. . $(ffoom path) || exit 3
  3. ffoo import exit
  4. ffoo import inigrep
  5. ffoo import pretty
  6. #
  7. # =====BEGIN BUILT PART=====
  8. #
  9. FFOO_INIGREP_PATH="$(
  10. inigrep__mkpath \
  11. __SATURNIN_CONFIG_USER__/ini.d \
  12. __SATURNIN_CONFIG_USER__ \
  13. __SATURNIN_CONFIG_LOCAL__ \
  14. __SATURNIN_SHARE__/ini.d
  15. )"
  16. FFOO_PATH="__SATURNIN_FFOO_DIR__"
  17. FFOO_PRETTY_USAGE="subcommand"
  18. SATURNIN_CACHE_HOME="__SATURNIN_CACHE_HOME__"
  19. SATURNIN_LIBEXEC="__SATURNIN_LIBEXEC__"
  20. SATURNIN_VERSION="__VERSION__"
  21. #
  22. # =====END BUILT PART=====
  23. #
  24. ffoo import saturnin_meta
  25. export FFOO_INIGREP_PATH FFOO_PATH FFOO_PRETTY_USAGE \
  26. SATURNIN_VERSION SATURNIN_CACHE_HOME
  27. usage() {
  28. mkusage "[-d|-v] command [args...]" \
  29. "help" \
  30. "--version"
  31. }
  32. version_info() {
  33. echo "$(basename "$0") (Smart and ready desktop helper) $SATURNIN_VERSION"
  34. exit "$FFOO_EXIT_OK"
  35. }
  36. while true; do case $1 in
  37. -d|--debug) export FFOO_DEBUG=true; shift ;;
  38. -v|--verbose) export FFOO_VERBOSE=true; shift ;;
  39. --version) version_info ;;
  40. --version-semver) echo "$SATURNIN_VERSION"; exit ;;
  41. -*) usage; ;;
  42. --*) usage; ;;
  43. --) shift; break ;;
  44. "") usage; ;;
  45. *) break; ;;
  46. esac done
  47. debug -v FFOO_PATH SATURNIN_LIBEXEC FFOO_INIGREP_PATH
  48. debug "\$*='$*'"
  49. export SATURNIN_SUBCOMMAND="$1"
  50. shift
  51. case "$SATURNIN_SUBCOMMAND" in
  52. conf) inigrep "$@" ;;
  53. help) saturnin_help ;;
  54. _ls_subcommands) saturnin_lssc ;;
  55. _lsfun) ffoom lsfun ;;
  56. _lsmod) ffoom lsmod ;;
  57. _ffrun) ffrun "$@" ;;
  58. *) saturnin_runsc "$@" ;;
  59. esac