You are not logged in.
Guys, i would like to share a tool i developed mostly as an exercise. It's name is repac and it somewhat overlaps bacman but it allows you to back up all your installed packages into individual tar bziped files and is multithreaded.
The code is hosted at bitbucket
The code can be run either on python3 or python2 and using any number of threads*
./repac.py options
and currently the options are
-p complete path (example /home/user/packages)
-n int (number of threads to use)
-v verbose mode
-h help message
* it can be a bit stressfull to one's hard disk if -n is set to a high number of threads (consider high n> 6)
[further notes]
For now you dont have the option to backup anything but the whole installation and the code is poorly commented (although most of it should be straight forward).
Constructive criticism, patches and comments are welcome.
Last edited by Duca (2012-07-18 00:27:04)
Offline
That sounds fantastic, kind of arch spin maker of sorts. Can it also do a net install of all packages or does it manually copy the installed binaries off your computer?
Offline
Not sure if i understood your question, but here's my try
it generate .pkg.tar.bz2 off of your installed packages. The easiest way of reinstalling them is to run repo-make inside the destination directory to create a repository from it. Like
> repo-make reponame *.bz2
Add it to your /etc/pacman.conf
[reponame]
Server = file:///path/repo
And install.
It would be nice to generate a list of installed packages so one could easily reinstall them all by name without having to guess what were installed precisely. Perhaps the script could also run repo-make as well.
Offline
Ah that makes sense. How cool.
Offline
Thanks jwele. Please try it out if you have the time
Offline
Will do, I was about to make the switch from debian to arch on my laptop and use all apps from my desktop arch install so this would be the ideal tool.
Offline
Lol nice timing
Offline
I was thinking of making a similar tool as well but one that identifies installed packages and saves that list so that when you build new arch systems it will download the most up to date packages instead of you manually having to check the front page news for what fixes are needed. So that way you could essentially use that and this tool to make arch spins.
Offline
I could almost guarantee I would be reinventing the wheel but what the hell.
Offline
I was thinking of making a similar tool as well but one that identifies installed packages and saves that list so that when you build new arch systems it will download the most up to date packages instead of you manually having to check the front page news for what fixes are needed. So that way you could essentially use that and this tool to make arch spins.
If you only want a list, pacman -Qqe is your friend On your new installation feed that list to pacman -S.
(pacman -Qqe ; pacman -Qqem) | sort | uniq -u > packages.list
pacman -Sy --needed --recursive `cat packages.list`
| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |
Offline
jwele wrote:I was thinking of making a similar tool as well but one that identifies installed packages and saves that list so that when you build new arch systems it will download the most up to date packages instead of you manually having to check the front page news for what fixes are needed. So that way you could essentially use that and this tool to make arch spins.
If you only want a list, pacman -Qqe is your friend
On your new installation feed that list to pacman -S.
(pacman -Qqe ; pacman -Qqem) | sort | uniq -u > packages.list pacman -Sy --needed --recursive `cat packages.list`
Thanks for saving me some man page reading, that is exactly what I'm looking for.
Offline
that's some nice info.
Offline