For anyone who wants to re create this list in future, i have attached all my code below.
First you need to get all package list from manjaro and Arch repos’s. You can scrape those from any mirror link or use pacman
. I have used pacman since i had arch VM and manjaro installed an my rig.
To get all manjaro packages by category ( do this in manjaro, duh)
pacman -Sl extra --color=never | awk '{print $2}' > manjaro_extra
pacman -Sl core --color=never | awk '{print $2}' > manjaro_core
pacman -Sl community --color=never | awk '{print $2}' > manjaro_community
pacman -Sl multilib --color=never | awk '{print $2}' > manjaro_multilib
To get all Arch packages by category (do this in arch, duh)
pacman -Sl extra --color=never | awk '{print $2}' > arch_extra
pacman -Sl core --color=never | awk '{print $2}' > arch_core
pacman -Sl community --color=never | awk '{print $2}' > arch_community
pacman -Sl multilib --color=never | awk '{print $2}' > arch_multilib
Now i used a simple python script to get the difference in these files. You can use Bash also.
Note that this script was used for comparing endevourOS and manjaro so you may need to change things here and there.
def repo_compare():
endovour = ['endovour_community', 'endovour_core', 'endovour_extra', 'endovour_multilib', 'endovour_endeavouros']
manjaro = ['manjaro_community', 'manjaro_core', 'manjaro_extra', 'manjaro_multilib']
for i in range(len(manjaro)):
manjaro_apps = []
endovour_apps = []
manjaro_repo_name = manjaro[i]
endo_repo_name = endovour[i]
with open(manjaro_repo_name) as my_file:
manjaro_apps.extend(my_file.readlines())
with open(endo_repo_name) as my_file:
endovour_apps.extend(my_file.readlines())
manjaro_apps.sort()
endovour_apps.sort()
manjaro_apps = [x.strip() for x in manjaro_apps]
endovour_apps = [x.strip() for x in endovour_apps]
not_in_ende = [x for x in manjaro_apps if x not in endovour_apps]
print(not_in_ende)
open_file = 'not_in_endevour_' + manjaro_repo_name
with open(open_file, 'w+') as my_file:
for x in not_in_ende:
my_file.write(x + "\n")
if __name__ == '__main__':
repo_compare()
Just make sure that all above files containing list of packages and this script is in same folder and run this script. You will get some files starting with not_in_endevour_
.