[Rpm-maint] [rpm] Multi-db /var/lib/rpm and /var/lib/appstore isolation skeleton (#40)

涩兔子 Leslie Zhai notifications at github.com
Mon Jan 4 02:11:13 UTC 2016


# RPM Next
[RPM Next](https://github.com/AOSC-Dev/rpm#rpm-next) Multi-db /var/lib/rpm and /var/lib/appstore isolation skeleton implementation.

## Background
One day [Cjacker](https://github.com/cjacker) had an idea: there are OS layer (/var/lib/rpm) and AppStore layer (/var/lib/appstore) physical isolated. so rpm -ivh/-e only install/erase Apps into/from AppStore layer, OS is totally READ-ONLY. when installing Apps, check dependency in OS layer at first, if unsatisfied depend, then switch to AppStore layer for checking dependency again, if still unsatisfied depend, add dependency problem, otherwise installed Apps successfully.

## NOT container
It is NOT [xdg-app](https://github.com/alexlarsson/xdg-app) nor [limba](https://github.com/ximion/limba), but multi-db isolation try to forbid 3rd-party App pollute the core components of operating system.

## Goal
* keep rpm original command unbroken;                                              
* keep librpm original API unbroken;                                               
* just like Mac ***make install*** is still able to pollute OS layer.

Regards,
Leslie Zhai
You can view, comment on, or merge this pull request online at:

  https://github.com/rpm-software-management/rpm/pull/40

-- Commit Summary --

  * Update README
  * Add a very simple testcase for verifing the implementation.
  * Update README
  * Update README
  * Open source multi-db isolation skeleton implementation.
  * Update testcase and README

-- File Changes --

    A README.md (40)
    M build/rpmbuild.h (8)
    M build/spec.c (14)
    M configure.ac (9)
    A doc/rpm-isolatation-design.png (0)
    M lib/depends.c (262)
    M lib/query.c (126)
    M lib/rpmchecksig.c (65)
    M lib/rpmcli.h (73)
    M lib/rpmdb.c (137)
    M lib/rpmdb.h (42)
    M lib/rpmdb_internal.h (13)
    M lib/rpminstall.c (374)
    M lib/rpmps.c (25)
    M lib/rpmps.h (12)
    M lib/rpmts.c (102)
    M lib/rpmts.h (70)
    M lib/transaction.c (129)
    M lib/verify.c (107)
    M po/id.po (1466)
    M rpmbuild.c (13)
    M rpmkeys.c (12)
    M rpmqv.c (21)
    A tests/rpm-testcase.sh (50)

-- Patch Links --

https://github.com/rpm-software-management/rpm/pull/40.patch
https://github.com/rpm-software-management/rpm/pull/40.diff

---
Reply to this email directly or view it on GitHub:
https://github.com/rpm-software-management/rpm/pull/40
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rpm.org/pipermail/rpm-maint/attachments/20160103/4e233959/attachment.html>


More information about the Rpm-maint mailing list