How is this different from just reverting the commit that stopped this from working? I'm all for this, don't get me wrong, but if a package can just explicitly define a file as "this overwrites whatever" how is that any different from before?
If I remember correctly it was this one: commit 021b96d7c5c668fbcb5375c65cee90832bb2854f Author: Matthias Schiffer <mschif...@universe-factory.net> Date: Mon Sep 26 15:25:38 2016 +0200 rootfs: remove unnecessary and potentially harmful force flags from opkg call Especially --force-overwrite and --force-depends will often lead to broken images; it's better to fail the build in such cases than to silently ignore the errors. Instead, ignore errors in the per-device rootfs opkg remove command, so the build doesn't break when packages can't be removed because of dependencies. Signed-off-by: Matthias Schiffer <mschif...@universe-factory.net> Perhaps putting --force-overwrite back on? Cheers, Karl Palsson Rafał Miłecki <zaj...@gmail.com> wrote: > From: Rafał Miłecki <ra...@milecki.pl> > > This adds support for install-overlay define. When used in > package it allows installing files to a special directory that > gets copied to the root when installing it. It allows > overwriting files provided by other packages. > > Signed-off-by: Rafał Miłecki <ra...@milecki.pl> > --- > include/package-ipkg.mk | 9 +++++++++ > package/base-files/files/lib/functions.sh | 5 +++++ > 2 files changed, 14 insertions(+) > > diff --git a/include/package-ipkg.mk b/include/package-ipkg.mk > index afd2d4e..e168eb3 100644 > --- a/include/package-ipkg.mk > +++ b/include/package-ipkg.mk > @@ -96,7 +96,14 @@ ifeq ($(DUMP),) > KEEP_$(1):=$(strip $(call Package/$(1)/conffiles)) > > ifeq ($(BUILD_VARIANT),$$(if $$(VARIANT),$$(VARIANT),$(BUILD_VARIANT))) > + do_install= > ifdef Package/$(1)/install > + do_install=yes > + endif > + ifdef Package/$(1)/install-overlay > + do_install=yes > + endif > + ifdef do_install > ifneq ($(CONFIG_PACKAGE_$(1))$(DEVELOPER),) > IPKGS += $(1) > compile: $$(IPKG_$(1)) $(PKG_INFO_DIR)/$(1).provides > $(STAGING_DIR_ROOT)/stamp/.$(1)_installed > @@ -178,6 +185,8 @@ $(_endef) > @rm -rf $$(IDIR_$(1)) $$(call opkg_package_files,$(1)) > mkdir -p $(PACKAGE_DIR) $$(IDIR_$(1))/CONTROL $(PKG_INFO_DIR) > $(call Package/$(1)/install,$$(IDIR_$(1))) > + $(if $(Package/$(1)/install-overlay),mkdir -p $(PACKAGE_DIR) > $$(IDIR_$(1))/rootfs-overlay) > + $(call Package/$(1)/install-overlay,$$(IDIR_$(1))/rootfs-overlay) > -find $$(IDIR_$(1)) -name 'CVS' -o -name '.svn' -o -name '.#*' -o -name > '*~'| $(XARGS) rm -rf > @( \ > find $$(IDIR_$(1)) -name lib\*.so\* -or -name \*.ko | awk -F/ > '{ print $$$$NF }'; \ > diff --git a/package/base-files/files/lib/functions.sh > b/package/base-files/files/lib/functions.sh index > b3bf221..b68db6b 100755 > --- a/package/base-files/files/lib/functions.sh > +++ b/package/base-files/files/lib/functions.sh > @@ -230,6 +230,11 @@ default_postinst() { > ret=$? > fi > > + if [ -d "$root/rootfs-overlay" ]; then > + cp -R $root/rootfs-overlay/. $root/ > + rm -fR $root/rootfs-overlay/ > + fi > + > if [ -z "$root" ] && grep -q -s "^/etc/uci-defaults/" > "/usr/lib/opkg/info/${pkgname}.list"; then > . /lib/functions/system.sh > [ -d /tmp/.uci ] || mkdir -p /tmp/.uci > -- > 2.10.1 > > > _______________________________________________ > Lede-dev mailing list > Lede-dev@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/lede-dev
signature.asc
Description: OpenPGP Digital Signature
_______________________________________________ Lede-dev mailing list Lede-dev@lists.infradead.org http://lists.infradead.org/mailman/listinfo/lede-dev