snapcraft.yaml 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  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. - openssh-client
  72. stage:
  73. #- lib64/python3.8
  74. - bin
  75. - include
  76. - lib
  77. - pyvenv.cfg
  78. - settings.conf
  79. - share
  80. - usr
  81. override-build: |
  82. snapcraftctl build
  83. cp ${SNAPCRAFT_PART_BUILD}/settings.conf ${SNAPCRAFT_PART_INSTALL}/settings.conf
  84. scripts:
  85. plugin: dump
  86. source: ./scripts
  87. source-type: local
  88. organize:
  89. hooks: snap/hooks
  90. stage-packages:
  91. - uuid
  92. - libossp-uuid16
  93. - libassuan0
  94. - gpg
  95. - gpg-agent