uhttpd: handle reload after uhttpd-mod-ubus installation using postinst
Use postinst script to reload service instead of uci-defaults hack. It's possible thanks to recent base-files change that executes postinst after uci-defaults. This fixes support for uhttpd customizations. It's possible (again) to adjust uhttpd config with custom uci-defaults before it gets started. Cc: Hauke Mehrtens <hauke@hauke-m.de> Fixes:d25d281fd6("uhttpd: Reload config after uhttpd-mod-ubus was added") Ref:b799dd3c70("base-files: execute package's "postinst" after executing uci-defaults") Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
This commit is contained in:
		| @@ -8,7 +8,7 @@ | |||||||
| include $(TOPDIR)/rules.mk | include $(TOPDIR)/rules.mk | ||||||
|  |  | ||||||
| PKG_NAME:=uhttpd | PKG_NAME:=uhttpd | ||||||
| PKG_RELEASE:=1 | PKG_RELEASE:=2 | ||||||
|  |  | ||||||
| PKG_SOURCE_PROTO:=git | PKG_SOURCE_PROTO:=git | ||||||
| PKG_SOURCE_URL=$(PROJECT_GIT)/project/uhttpd.git | PKG_SOURCE_URL=$(PROJECT_GIT)/project/uhttpd.git | ||||||
| @@ -107,6 +107,13 @@ define Package/uhttpd-mod-ubus/install | |||||||
| 	$(INSTALL_DATA) ./files/ubus.default $(1)/etc/uci-defaults/00_uhttpd_ubus | 	$(INSTALL_DATA) ./files/ubus.default $(1)/etc/uci-defaults/00_uhttpd_ubus | ||||||
| endef | endef | ||||||
|  |  | ||||||
|  | define Package/uhttpd-mod-ubus/postinst | ||||||
|  | #!/bin/sh | ||||||
|  | if [ -z "$${IPKG_INSTROOT}" ]; then | ||||||
|  | 	/etc/init.d/uhttpd reload | ||||||
|  | fi | ||||||
|  | endef | ||||||
|  |  | ||||||
| define Package/uhttpd-mod-ucode/install | define Package/uhttpd-mod-ucode/install | ||||||
| 	$(INSTALL_DIR) $(1)/usr/lib | 	$(INSTALL_DIR) $(1)/usr/lib | ||||||
| 	$(INSTALL_BIN) $(PKG_BUILD_DIR)/uhttpd_ucode.so $(1)/usr/lib/ | 	$(INSTALL_BIN) $(PKG_BUILD_DIR)/uhttpd_ucode.so $(1)/usr/lib/ | ||||||
|   | |||||||
| @@ -1,17 +1,11 @@ | |||||||
| #!/bin/sh | #!/bin/sh | ||||||
|  |  | ||||||
| commit=0 |  | ||||||
|  |  | ||||||
| if [ -z "$(uci -q get uhttpd.main.ubus_prefix)" ]; then | if [ -z "$(uci -q get uhttpd.main.ubus_prefix)" ]; then | ||||||
| 	uci set uhttpd.main.ubus_prefix=/ubus | 	uci set uhttpd.main.ubus_prefix=/ubus | ||||||
| 	commit=1 |  | ||||||
| fi | fi | ||||||
|  |  | ||||||
| [ "$(uci -q get uhttpd.main.ubus_socket)" = "/var/run/ubus.sock" ] && { | [ "$(uci -q get uhttpd.main.ubus_socket)" = "/var/run/ubus.sock" ] && { | ||||||
| 	uci set uhttpd.main.ubus_socket='/var/run/ubus/ubus.sock' | 	uci set uhttpd.main.ubus_socket='/var/run/ubus/ubus.sock' | ||||||
| 	commit=1 |  | ||||||
| } | } | ||||||
|  |  | ||||||
| [ "$commit" = 1 ] && uci commit uhttpd && /etc/init.d/uhttpd reload |  | ||||||
|  |  | ||||||
| exit 0 | exit 0 | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Rafał Miłecki
					Rafał Miłecki