snapcraft.yaml 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. name: home-assistant-configurator
  2. base: core20
  3. version: '0.4.0'
  4. summary: Configuration UI for Home Assistant
  5. description: |
  6. The HASS-Configurator is a small webapp (you access it via web browser) that provides a filesystem-browser and text-editor to modify files on the machine the configurator is running on. It has been created to allow easy configuration of Home Assistant. It is powered by Ace editor, which supports syntax highlighting for various code/markup languages. YAML files (the default language for Home Assistant configuration files) will be automatically checked for syntax errors while editing.
  7. Please configure the snap thout `snap set home-assistant-configurator server.*=`,
  8. see `snap get home-assistant-configurator` after installation.
  9. This snap requires the snap `home-assistant-snap`. Please disable 'acme-sh' before installation, if acme-sh is installed.
  10. grade: stable
  11. confinement: strict
  12. apps:
  13. server:
  14. command: bin/hass-configurator -dH $SNAP_DATA/settings.conf
  15. daemon: simple
  16. restart-condition: always
  17. plugs:
  18. - network
  19. - network-bind
  20. - configurations
  21. certs-daemon:
  22. command: bin/certs-daemon
  23. daemon: oneshot
  24. restart-condition: always
  25. timer: 00:00-24:00/5
  26. slots:
  27. - certs
  28. plugs:
  29. - network
  30. - network-bind
  31. refresh-certs:
  32. command: bin/certs-daemon
  33. slots:
  34. - certs
  35. plugs:
  36. - network
  37. - network-bind
  38. slots:
  39. certs:
  40. interface: content
  41. content: certs
  42. write:
  43. - $SNAP_DATA/certs
  44. plugs:
  45. configurations:
  46. interface: content
  47. target: $SNAP_COMMON/configurations
  48. default-provider: home-assistant-snap
  49. hooks:
  50. prepare-slot-certs:
  51. plugs:
  52. - network
  53. - network-bind
  54. parts:
  55. configurator:
  56. plugin: python
  57. source: https://github.com/danielperna84/hass-configurator.git
  58. source-tag: ${SNAPCRAFT_PROJECT_VERSION}
  59. python-packages:
  60. - GitPython
  61. - pyotp
  62. build-environment:
  63. - PYTHONPATH: "/usr/lib/python3/dist-packages"
  64. build-packages:
  65. - python3
  66. - python3-dev
  67. - python3-wheel
  68. - python3-venv
  69. - python3-pip
  70. stage:
  71. - lib64/python3.8
  72. - bin
  73. - include
  74. - lib
  75. - pyvenv.cfg
  76. - settings.conf
  77. - share
  78. override-build: |
  79. snapcraftctl build
  80. cp ${SNAPCRAFT_PART_BUILD}/settings.conf ${SNAPCRAFT_PART_INSTALL}/settings.conf
  81. scripts:
  82. plugin: dump
  83. source: ./scripts
  84. source-type: local
  85. organize:
  86. hooks: snap/hooks
  87. stage-packages:
  88. - uuid
  89. - libossp-uuid16
  90. - libassuan0
  91. - gpg
  92. - gpg-agent