[LEDE-DEV] [PATCH v2 0/4] alternatives support

Yousong Zhou yszhou4tech at gmail.com
Mon Mar 20 04:55:49 PDT 2017


This patch set tries to make it possible that files serving the same purpose
and installed to different locations can be available under the same name
through a symbolic link

The idea is from alternatives of debian system [1,2].  "ip" command is a good
example of the problem it tries to solve [3].   Files provided by different
packages cannot be installed to the same location, so we have busybox ip,
ip-tiny, ip-full all installed to different locations

It works by first adding to CONTROL file of each ipkg a new field "Alternatives",
which is a list of specs of the following form separated by commas to describe
alternatives provided by this package

    <prio>:<path>:<altpath>

<path> is an abolute path and will be a symbolic link to <altpath> of the
highest <prio>

Several patches for uci are also included here to support usage at build-time.
The whole series is available in my staging tree [4]

 [1] https://wiki.debian.org/DebianAlternatives
 [2] https://debian-administration.org/article/91/Using_the_Debian_alternatives_system
 [3] https://bugs.lede-project.org/index.php?do=details&task_id=428
 [4] https://git.lede-project.org/?p=lede/yousong/staging.git;a=shortlog;h=refs/heads/alt

v2 <- v1

 - opkg now plays a central role in the support without depending on host uci
   and update-alternatives shell script

Yousong Zhou (4):
  build: cleanup tmp/ dir of target rootfs
  build: ipkg: new field Alternatives
  busybox: add as an alternative of /sbin/ip
  iproute2: add ip-tiny, ip-full as alternatives of /sbin/ip

 include/package-ipkg.mk                 |  1 +
 include/rootfs.mk                       |  1 +
 package/Makefile                        |  2 +-
 package/network/utils/iproute2/Makefile | 26 ++++++++++++++++----------
 package/utils/busybox/Makefile          |  3 ++-
 5 files changed, 21 insertions(+), 12 deletions(-)

-- 
2.6.4




More information about the Lede-dev mailing list