Fixed package showing from saved repos

pull/7/head
parent e0c7a29a15
commit bce80395af

@ -116,33 +116,35 @@ void on_load(){
config_str packs = yon_char_parse(parameter_string,&packsize," ");
GtkTreeIter packIter;
if (!packs){
printf("%s\n",get_saved_package_info_command(path,parameter_string));
FILE *file = popen(get_saved_package_info_command(path,parameter_string),"r");
char *cur_string=g_malloc0(sizeof(char)*4096);
char *packname=NULL, *packver=NULL, *packarch=NULL, *packdepends=NULL;
while (fgets(cur_string,4096,file)){
cur_string = yon_char_divide_search(cur_string,"\n",-1);
char *p = yon_char_divide_search(cur_string,":",-1);
if (strstr(p,"Name")) packname = yon_char_new(cur_string);
else if (strstr(p,"Version")) packver = yon_char_new(cur_string);
else if (strstr(p,"Architecture")) packarch = yon_char_new(cur_string);
else if (strstr(p,"Depends On")) packdepends = yon_char_new(cur_string);
char *steer = yon_char_divide_search(cur_string,"\n",-1);
char *p = yon_char_divide_search(steer,":",-1);
if (strstr(p,"Name")) packname = yon_char_new(steer);
else if (strstr(p,"Version")) packver = yon_char_new(steer);
else if (strstr(p,"Architecture")) packarch = yon_char_new(steer);
else if (strstr(p,"Depends On")) packdepends = yon_char_new(steer);
}
gtk_tree_store_append(main_config.tree_store,&packIter,&iter);
gtk_tree_store_set(main_config.tree_store,&packIter,0,document_no_edits,1,parameter_string,2,path,3,0,4,0,9,packname,10,packver,11,packarch,12,packdepends,-1);
}
else
for (int j=0;j<packsize;j++){
printf("%s\n",get_saved_package_info_command(path,parameter_string));
char *command = get_saved_package_info_command(path,packs[j]);
FILE *file = popen(command,"r");
char *cur_string=g_malloc0(sizeof(char)*4096);
char *packname=NULL, *packver=NULL, *packarch=NULL, *packdepends=NULL;
while (fgets(cur_string,4096,file)){
cur_string = yon_char_divide_search(cur_string,"\n",-1);
char *p = yon_char_divide_search(cur_string,":",-1);
if (strstr(p,"Name")) packname = yon_char_new(cur_string);
else if (strstr(p,"Version")) packver = yon_char_new(cur_string);
else if (strstr(p,"Architecture")) packarch = yon_char_new(cur_string);
else if (strstr(p,"Depends On")) packdepends = yon_char_new(cur_string);
char *steer = yon_char_divide_search(cur_string,"\n",-1);
char *p = yon_char_divide_search(steer,":",-1);
if (strstr(p,"Name")) packname = yon_char_new(steer);
else if (strstr(p,"Version")) packver = yon_char_new(steer);
else if (strstr(p,"Architecture")) packarch = yon_char_new(steer);
else if (strstr(p,"Depends On")) packdepends = yon_char_new(steer);
}
gtk_tree_store_append(main_config.tree_store,&packIter,&iter);
gtk_tree_store_set(main_config.tree_store,&packIter,0,document_no_edits,1,packs[j],2,path,3,0,4,0,9,packname,10,packver,11,packarch,12,packdepends,-1);

@ -39,8 +39,8 @@
#define LocaleName "ubl-settings-repomanager"
typedef char* string;
#define get_package_info_command(filename) yon_char_unite("LC_ALL=EN pacman -Q --info --file ",filename," |sed -e 's/ */ /g' -e 's/ : /:/g' -e 's/:/:/;s/\\n//g' -e 's/ *//g'",NULL)
#define get_saved_package_info_command(path,filename) yon_char_unite("LC_ALL=EN pacman -Q --info --file $(find \"",path,"\" -name \"*",filename,"*\")|sed -e 's/ *//g' -e 's/ : /:/g' -e 's/ -e 's/^ y;y/\t/g' *//g'",NULL)
#define get_package_info_command(filename) yon_char_unite("LC_ALL=EN pacman -Q --info --file ",filename," |sed -e 's/ */ /g' -e 's/ : /:/g' -e 's/:/:/;s/\\n/ /g' -e 's/ *//g'",NULL)
#define get_saved_package_info_command(path,filename) yon_char_unite("LC_ALL=EN pacman -Q --info --file $(find \"",path,"\" -name *",filename,"* -not -name *.sig |head -n 1)|sed -e 's/ */ /g' -e 's/ : /:/g'",NULL)
#define get_gpg_keys_command yon_char_unite("su - ",yon_ubl_root_user_get()," -c \"gpg --list-signatures\" | grep '^sig 3' | cut -d' ' -f10,11,13- | sort -u |sed -e 's/[0-9]*-[0-9]*-[0-9]* //g'",NULL)

Loading…
Cancel
Save