1 |
commit: 4d105910093b10ca2aa721e1209f75f4fb2b1649 |
2 |
Author: André Erdmann <dywi <AT> mailerd <DOT> de> |
3 |
AuthorDate: Wed Jun 5 18:00:19 2013 +0000 |
4 |
Commit: André Erdmann <dywi <AT> mailerd <DOT> de> |
5 |
CommitDate: Wed Jun 5 18:00:19 2013 +0000 |
6 |
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/R_overlay.git;a=commit;h=4d105910 |
7 |
|
8 |
overlay/pkgdir: fs_destroy() |
9 |
|
10 |
This function removes all ebuilds of a package from the overlay. |
11 |
|
12 |
--- |
13 |
roverlay/overlay/pkgdir/packagedir_base.py | 11 +++++++++++ |
14 |
1 file changed, 11 insertions(+) |
15 |
|
16 |
diff --git a/roverlay/overlay/pkgdir/packagedir_base.py b/roverlay/overlay/pkgdir/packagedir_base.py |
17 |
index 8fb6ca4..62dd7c7 100644 |
18 |
--- a/roverlay/overlay/pkgdir/packagedir_base.py |
19 |
+++ b/roverlay/overlay/pkgdir/packagedir_base.py |
20 |
@@ -105,6 +105,8 @@ class PackageDirBase ( object ): |
21 |
"""Called for each ebuild that is found during scan(). |
22 |
Creates a PackageInfo for the ebuild and adds it to self._packages. |
23 |
|
24 |
+ PackageInfo objects added this way are not affected by package rules. |
25 |
+ |
26 |
arguments: |
27 |
* efile -- full path to the ebuild file |
28 |
* pvr -- version ($PVR) of the ebuild |
29 |
@@ -353,6 +355,15 @@ class PackageDirBase ( object ): |
30 |
return None |
31 |
# --- end of purge_package (...) --- |
32 |
|
33 |
+ def fs_destroy ( self ): |
34 |
+ pvr_list = list ( self._packages.keys() ) |
35 |
+ for pvr in pvr_list: |
36 |
+ self.purge_package ( pvr ) |
37 |
+ |
38 |
+ assert not self.empty() |
39 |
+ self.fs_cleanup() |
40 |
+ # --- end of fs_destroy (...) --- |
41 |
+ |
42 |
def scan ( self, **kw ): |
43 |
"""Scans the filesystem location of this package for existing |
44 |
ebuilds and adds them. |