So long time little updates.
The script is extra functional.
Now including support for all official and community edition desktops, options for overwrite, marking explicit, isolating the mhwd pkglist, reinstalling all local native packages, and maybe most notable a Keyring Assistant for those pesky times a manual download and initialization of pacman keys is required.
As with all the other functions this can be called remotely;
bash <(curl -s https://gitlab.com/cscs/mapare/-/raw/main/mapare) -K
Preview of Key Assistant
$ bash <(curl -s https://gitlab.com/cscs/mapare/-/raw/main/mapare) -K
Manjaro Package Restore
Retrieve and reinstall package lists
Keyring Assistant
To continue enter the password for USER:
Clearing the package cache may be useful to remove corrupted packages.
Cache directory: /var/cache/pacman/pkg/
:: Do you want to remove ALL files from cache? [y/N] n
Database directory: /var/lib/pacman/
:: Do you want to remove unused repositories? [Y/n] n
Remove local pacman keys (y/N)? n
Skipped
Download current keyring packages (y/N)? n
Skipped
Install the downloaded keyring packages (y/N)? n
Skipped
Initialize and populate keys (y/N)? n
Skipped
Reset mirrorlist (y/N)? n
Skipped
Sort mirrors, resync, and update (y/N)? n
Skipped
All done!
EDIT.
And now with the oft-requested “show non-default packages”.
bash <(curl -s https://gitlab.com/cscs/mapare/-/raw/main/mapare) -X
To print any packages that are installed but not found in the default package lists or their dependencies.
Note: The -X or “show non-default packages” function requires pactree (of the pacman-contrib
package). It also can take some extra time due to downloading, iterating, sanitizing, and comparing multiple lists (~1min in my case).