|
|
|
@ -2,14 +2,24 @@
|
|
|
|
|
# -*- coding: UTF-8 -*-
|
|
|
|
|
import os, sys
|
|
|
|
|
import json
|
|
|
|
|
|
|
|
|
|
from io import StringIO
|
|
|
|
|
from utils.utils import get_list_overlays
|
|
|
|
|
from GenRecovers import ScanRecoverFile
|
|
|
|
|
# создаём разширеную базу пактов с предлизительно структурой
|
|
|
|
|
#pkg_list ={"category": [{name: name_pkg, versions:[list_version]}]}
|
|
|
|
|
# и клладём это всё в json
|
|
|
|
|
#
|
|
|
|
|
#
|
|
|
|
|
|
|
|
|
|
AliaseCategory ={"www-client": "Браузеры",
|
|
|
|
|
"www-server": "Сервера",
|
|
|
|
|
"game":"Игры",
|
|
|
|
|
"dev-lang":"Програмироыввние",
|
|
|
|
|
"media-video": "Видео",
|
|
|
|
|
"media-sound": "Аудио"
|
|
|
|
|
}
|
|
|
|
|
def create_db():
|
|
|
|
|
overlays = get_list_overlays()
|
|
|
|
|
recovers = ScanRecoverFile()
|
|
|
|
|
pkg_list ={}
|
|
|
|
|
port_dir =["/var/lib/layman/", "/usr/portage"]
|
|
|
|
|
if not os.path.exists('./pkgs.json'):
|
|
|
|
@ -33,24 +43,27 @@ def create_db():
|
|
|
|
|
except Exception as e:
|
|
|
|
|
print(e)
|
|
|
|
|
|
|
|
|
|
if not pkg_name[:-1] in all_pkgs:
|
|
|
|
|
if not pkg_name[:-1] in all_pkgs:
|
|
|
|
|
|
|
|
|
|
print(str(d.split("/")[-2] +"/" + d.split("/")[-1] +"\n"))
|
|
|
|
|
all_pkgs.append(str(d.split("/")[-2] +"/" + d.split("/")[-1]))
|
|
|
|
|
#print(str(d.split("/")[-2] +"/" + d.split("/")[-1] +"\n"))
|
|
|
|
|
if pkg_name[:-1] in AliaseCategory:
|
|
|
|
|
all_pkgs.append(AliaseCategory[pkg_name[:-1]])
|
|
|
|
|
else:
|
|
|
|
|
all_pkgs.append(str(d.split("/")[-2] +"/" + d.split("/")[-1]))
|
|
|
|
|
|
|
|
|
|
if d.split("/")[-2] not in pkg_list.keys():
|
|
|
|
|
pkg_list[str(d.split("/")[-2])] = []
|
|
|
|
|
pkg_list[d.split("/")[-2]].append(d.split('/')[-1])
|
|
|
|
|
print([d.split("/")[-2]])
|
|
|
|
|
#print([d.split("/")[-2]])
|
|
|
|
|
else:
|
|
|
|
|
if d.split('/')[-1] not in pkg_list[d.split('/')[-2]]:
|
|
|
|
|
pkg_list[d.split("/")[-2]].append(d.split('/')[-1])
|
|
|
|
|
print([d.split('/')[-1]])
|
|
|
|
|
#print([d.split('/')[-1]])
|
|
|
|
|
|
|
|
|
|
fn.write(json.dumps({"all_pkgs": all_pkgs,"Catalog": pkg_list}))
|
|
|
|
|
#print(len(pkg_list))
|
|
|
|
|
fn.write(json.dumps({"all_pkgs": all_pkgs,"Catalog": pkg_list, "aliases": AliaseCategory, "overlays": overlays, "recovers": recovers}))
|
|
|
|
|
print(len(pkg_list))
|
|
|
|
|
|
|
|
|
|
print("Found:\t"+ str(len(pkg_list.keys())) + " category\n" + str(len(all_pkgs)) +"packages\n")
|
|
|
|
|
#print("Found:\t"+ str(len(pkg_list.keys())) + " category\n" + str(len(all_pkgs)) +"packages\n")
|
|
|
|
|
|
|
|
|
|
def on_find(p_v):
|
|
|
|
|
if not os.path.exists('./pkgs.json'):
|
|
|
|
|