build process fixes
This commit is contained in:
parent
7bbe3a50ba
commit
ce45f67336
@ -496,8 +496,8 @@ class PamacDBusService(dbus.service.Object):
|
|||||||
def Add(self, pkgname):
|
def Add(self, pkgname):
|
||||||
error = ''
|
error = ''
|
||||||
try:
|
try:
|
||||||
for repo in self.syncdbs:
|
for db in self.syncdbs:
|
||||||
pkg = repo.get_pkg(pkgname)
|
pkg = db.get_pkg(pkgname)
|
||||||
if pkg:
|
if pkg:
|
||||||
self.t.add_pkg(pkg)
|
self.t.add_pkg(pkg)
|
||||||
break
|
break
|
||||||
|
@ -892,10 +892,6 @@ else:
|
|||||||
size_column.set_cell_data_func(size_renderertext, size_column_display_func)
|
size_column.set_cell_data_func(size_renderertext, size_column_display_func)
|
||||||
transaction.get_handle()
|
transaction.get_handle()
|
||||||
transaction.update_dbs()
|
transaction.update_dbs()
|
||||||
# now localdb is defined, populate make_depends
|
|
||||||
for name in transaction.base_devel:
|
|
||||||
if not pyalpm.find_satisfier(transaction.localdb.pkgcache, name):
|
|
||||||
transaction.make_depends.add(name)
|
|
||||||
update_lists()
|
update_lists()
|
||||||
ManagerWindow.show_all()
|
ManagerWindow.show_all()
|
||||||
ManagerWindow.get_window().set_cursor(Gdk.Cursor(Gdk.CursorType.WATCH))
|
ManagerWindow.get_window().set_cursor(Gdk.Cursor(Gdk.CursorType.WATCH))
|
||||||
|
@ -16,7 +16,7 @@ from pamac import config, common, aur
|
|||||||
|
|
||||||
to_remove = set()
|
to_remove = set()
|
||||||
to_add = set()
|
to_add = set()
|
||||||
to_add_as_dep = set()
|
to_mark_as_dep = set()
|
||||||
to_update = set()
|
to_update = set()
|
||||||
to_load = set()
|
to_load = set()
|
||||||
available_updates = (False, [])
|
available_updates = (False, [])
|
||||||
@ -246,9 +246,16 @@ def init_transaction(**options):
|
|||||||
|
|
||||||
def check_to_build():
|
def check_to_build():
|
||||||
global to_build
|
global to_build
|
||||||
global to_add_as_dep
|
global to_add
|
||||||
|
global to_mark_as_dep
|
||||||
global make_depends
|
global make_depends
|
||||||
global build_depends
|
global build_depends
|
||||||
|
make_depends = []
|
||||||
|
builds_depends = []
|
||||||
|
# check if base_devel packages are installed
|
||||||
|
for name in base_devel:
|
||||||
|
if not pyalpm.find_satisfier(localdb.pkgcache, name):
|
||||||
|
make_depends.add(name)
|
||||||
already_checked = set()
|
already_checked = set()
|
||||||
build_order = []
|
build_order = []
|
||||||
i = 0
|
i = 0
|
||||||
@ -302,7 +309,7 @@ def check_to_build():
|
|||||||
build_order.insert(index, raw_makedepend)
|
build_order.insert(index, raw_makedepend)
|
||||||
# add it in already_checked and to_add_as_as_dep
|
# add it in already_checked and to_add_as_as_dep
|
||||||
already_checked.add(raw_makedepend)
|
already_checked.add(raw_makedepend)
|
||||||
to_add_as_dep.add(raw_makedepend)
|
to_mark_as_dep.add(raw_makedepend)
|
||||||
else:
|
else:
|
||||||
if error:
|
if error:
|
||||||
error += '\n'
|
error += '\n'
|
||||||
@ -341,7 +348,7 @@ def check_to_build():
|
|||||||
build_order.insert(index, raw_depend)
|
build_order.insert(index, raw_depend)
|
||||||
# add it in already_checked and to_add_as_as_dep
|
# add it in already_checked and to_add_as_as_dep
|
||||||
already_checked.add(raw_depend)
|
already_checked.add(raw_depend)
|
||||||
to_add_as_dep.add(raw_depend)
|
to_mark_as_dep.add(raw_depend)
|
||||||
else:
|
else:
|
||||||
if error:
|
if error:
|
||||||
error += '\n'
|
error += '\n'
|
||||||
@ -353,11 +360,13 @@ def check_to_build():
|
|||||||
i += 1
|
i += 1
|
||||||
if error:
|
if error:
|
||||||
return error
|
return error
|
||||||
# add pkgname in make_depends and build_depends in to_add_as_dep
|
# add pkgname in make_depends and build_depends in to_add and to_mark_as_dep
|
||||||
for name in make_depends:
|
for name in make_depends:
|
||||||
to_add_as_dep.add(name)
|
to_add.add(name)
|
||||||
|
to_mark_as_dep.add(name)
|
||||||
for name in build_depends:
|
for name in build_depends:
|
||||||
to_add_as_dep.add(name)
|
to_add.add(name)
|
||||||
|
to_mark_as_dep.add(name)
|
||||||
# reorder to_build following build_order
|
# reorder to_build following build_order
|
||||||
to_build.sort(key = lambda pkg: build_order.index(pkg.name))
|
to_build.sort(key = lambda pkg: build_order.index(pkg.name))
|
||||||
print('order:', build_order)
|
print('order:', build_order)
|
||||||
@ -387,11 +396,11 @@ def run():
|
|||||||
while Gtk.events_pending():
|
while Gtk.events_pending():
|
||||||
Gtk.main_iteration()
|
Gtk.main_iteration()
|
||||||
if not error:
|
if not error:
|
||||||
if to_add or to_remove or to_load or to_add_as_dep:
|
if to_add or to_remove or to_load:
|
||||||
trans_flags = {'cascade' : True}
|
trans_flags = {'cascade' : True}
|
||||||
error += init_transaction(**trans_flags)
|
error += init_transaction(**trans_flags)
|
||||||
if not error:
|
if not error:
|
||||||
for name in to_add | to_add_as_dep:
|
for name in to_add:
|
||||||
error += Add(name)
|
error += Add(name)
|
||||||
for name in to_remove:
|
for name in to_remove:
|
||||||
error += Remove(name)
|
error += Remove(name)
|
||||||
@ -422,7 +431,7 @@ def prepare(**trans_flags):
|
|||||||
choose_provides(item)
|
choose_provides(item)
|
||||||
error += init_transaction(**trans_flags)
|
error += init_transaction(**trans_flags)
|
||||||
if not error:
|
if not error:
|
||||||
for name in to_add | to_add_as_dep:
|
for name in to_add:
|
||||||
error += Add(name)
|
error += Add(name)
|
||||||
for name in to_remove:
|
for name in to_remove:
|
||||||
error += Remove(name)
|
error += Remove(name)
|
||||||
@ -602,13 +611,14 @@ def finalize():
|
|||||||
build_next()
|
build_next()
|
||||||
|
|
||||||
def mark_needed_pkgs_as_dep():
|
def mark_needed_pkgs_as_dep():
|
||||||
global to_add_as_dep
|
global to_mark_as_dep
|
||||||
for name in to_add_as_dep.copy():
|
for name in to_mark_as_dep.copy():
|
||||||
|
if get_localpkg(name):
|
||||||
error = SetPkgReason(name, pyalpm.PKG_REASON_DEPEND)
|
error = SetPkgReason(name, pyalpm.PKG_REASON_DEPEND)
|
||||||
if error:
|
if error:
|
||||||
print(error)
|
print(error)
|
||||||
else:
|
else:
|
||||||
to_add_as_dep.discard(name)
|
to_mark_as_dep.discard(name)
|
||||||
|
|
||||||
def get_updates():
|
def get_updates():
|
||||||
while Gtk.events_pending():
|
while Gtk.events_pending():
|
||||||
|
Loading…
Reference in New Issue
Block a user