snapcraft.yaml 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  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. build-environment:
  60. - PYTHONPATH: "/usr/lib/python3/dist-packages"
  61. build-packages:
  62. - python3
  63. - python3-dev
  64. - python3-wheel
  65. - python3-venv
  66. - python3-pip
  67. stage-packages:
  68. - git
  69. - python3-git
  70. - python3-pyotp
  71. stage:
  72. #- lib64/python3.8
  73. - bin
  74. - include
  75. - lib
  76. - pyvenv.cfg
  77. - settings.conf
  78. - share
  79. override-build: |
  80. snapcraftctl build
  81. cp ${SNAPCRAFT_PART_BUILD}/settings.conf ${SNAPCRAFT_PART_INSTALL}/settings.conf
  82. scripts:
  83. plugin: dump
  84. source: ./scripts
  85. source-type: local
  86. organize:
  87. hooks: snap/hooks
  88. stage-packages:
  89. - uuid
  90. - libossp-uuid16
  91. - libassuan0
  92. - gpg
  93. - gpg-agent