You are not logged in.
Project page: http://xyne.archlinux.ca/projects/bacpac/
Bacpac is a pacman-independent package downloader with dependency resolution. It will run on any system with a working Python 3 interpreter. It is meant to aid system recovery if an Arch Linux live CD is unavailable.*
As usual, comments, questions, suggestions and other feedback are welcome.
* Well, that's the official reason. The real reason is that I wanted to do something with the JSON package info interface.
edit: updated after packaging
Last edited by Xyne (2013-03-30 15:13:37)
My Arch Linux Stuff • Forum Etiquette • Community Ethos - Arch is not for everyone
Offline
this script can by used as a backup in case that pacman is broken in any sistem and need reinstall, because not suffer from the
.so bump from curl that can by broken pacman, right??
I like the idea and about the name...
why not tracker because track from the internet the packages
or nameless as THE name
Well, I suppose that this is somekind of signature, no?
Offline
There is already a tracker (something to do with gnome).
vacpac?
CLI Paste | How To Ask Questions
Arch Linux | x86_64 | GPT | EFI boot | refind | stub loader | systemd | LVM2 on LUKS
Lenovo x270 | Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz | Intel Wireless 8265/8275 | US keyboard w/ Euro | 512G NVMe INTEL SSDPEKKF512G7L
Offline
vacpac? What would the tagline be "it sucks more than pacman"?
"UNIX is simple and coherent" - Dennis Ritchie; "GNU's Not Unix" - Richard Stallman
Offline
pacrat
is simple and copy the pacman name whitout being pacman at same time
Well, I suppose that this is somekind of signature, no?
Offline
How about: Blinky? Pinky? Inky? Clyde?
Edit: Never mind, I did not read the OP as throughly as I should have.
Last edited by ewaller (2013-03-22 03:32:22)
Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
Sometimes it is the people no one can imagine anything of who do the things no one can imagine. -- Alan Turing
---
How to Ask Questions the Smart Way
Online
this script can by used as a backup in case that pacman is broken in any sistem and need reinstall, because not suffer from the
.so bump from curl that can by broken pacman, right??
It can be used to download packages for manual installation on a given system if Python 3 works.
If Python 3 is broken then you can run it on a different system (without Pacman) to download the packages.
As for names, I like pacrat so far.
My Arch Linux Stuff • Forum Etiquette • Community Ethos - Arch is not for everyone
Offline
Won't that require a paccat?
CLI Paste | How To Ask Questions
Arch Linux | x86_64 | GPT | EFI boot | refind | stub loader | systemd | LVM2 on LUKS
Lenovo x270 | Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz | Intel Wireless 8265/8275 | US keyboard w/ Euro | 512G NVMe INTEL SSDPEKKF512G7L
Offline
Won't that require a paccat?
and a pacdog too, and a pacowner that own pacdog and paccat, and a pacdoctor for cure paccat and pacdog, and paccheese for pacrat
Enought off pactopic
but I not underestand at all, how pacrat download the package??
Well, I suppose that this is somekind of signature, no?
Offline
but I not underestand at all, how pacrat download the package??
pacmagic
Open it and look at the code.
Basically, it uses the package JSON interface to get the filename and dependencies, then it uses the mirror JSON interface to get a mirror and determine the package URL.
My Arch Linux Stuff • Forum Etiquette • Community Ethos - Arch is not for everyone
Offline
pacboy LOL
I have wasted atleast a second of your time by making you read my signature.
Offline
bacpac
as in the backup pacman.
Offline
bacpac
as in the backup pacman.
I retract my response and second this.
I have wasted atleast a second of your time by making you read my signature.
Offline
.......
Basically, it uses the package JSON interface to get the filename and dependencies, then it uses the mirror JSON interface to get a mirror and determine the package URL.
And now I underestand correctly (look code + your descritpion was enought to know how work
thanks
I remain my Pacrat in the names
Well, I suppose that this is somekind of signature, no?
Offline
I'm heavily leaning towards bacpak... the backup pacman that you can carry around with you.
Pacrat might be better for some sort of package rollback script.
My Arch Linux Stuff • Forum Etiquette • Community Ethos - Arch is not for everyone
Offline
Here is some code if you only have wget, sed, and chmod +x:
# get a static python interpreter with ssl support.
wget -O "stacklessxl3.2-static" "http://pts-mini-gpl.googlecode.com/svn/trunk/staticpython/release/stacklessxl3.2-static"
chmod +x "stacklessxl3.2-static"
wget -O "bacpac.py" "http://xyne.archlinux.ca/scripts/pacman/nameless.py"
sed -i "s/, BrokenPipeError//" bacpac.py # 3.2 doesn't know BrokenPipeError
sed -i "s/python3/.\/stacklessxl3.2-static/" bacpac.py # use static interpreter
chmod +x bacpac.py
# run now bacpac.py PKGNAME ...
Last edited by progandy (2013-03-24 08:50:05)
| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |
Offline
@progandy
Nice, thanks!
I've added two options: --gen-providers and --use-providers
The former creates a JSON database of providers for dependency resolution.
The latter is the option to use it.
Generation requires pyalpm but I intend to keep an up-to-date version of the providers file on my site for those without.
My Arch Linux Stuff • Forum Etiquette • Community Ethos - Arch is not for everyone
Offline
bacpac
as in the backup pacman.
I am wondering if this would cause confusion with backpac although it serves a different function.
Last edited by anonymous_user (2013-03-24 13:24:51)
Offline
vacpac? What would the tagline be "it sucks more than pacman"?
Possibly though I had in mind vacuum packed meals and the like because it sucks down packages which are then ready-to-use...
CLI Paste | How To Ask Questions
Arch Linux | x86_64 | GPT | EFI boot | refind | stub loader | systemd | LVM2 on LUKS
Lenovo x270 | Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz | Intel Wireless 8265/8275 | US keyboard w/ Euro | 512G NVMe INTEL SSDPEKKF512G7L
Offline
This has been packaged now. I've gone with the name "bacpac". The "backpac" project does not appear to be active nor popular enough to risk considerable confusion.
My Arch Linux Stuff • Forum Etiquette • Community Ethos - Arch is not for everyone
Offline
I have added more features to emulate pacman behavior. The main one is that it can extract packages to a given root directory and be used for basic package installation during system recovery.
Check the changelog for details.
My Arch Linux Stuff • Forum Etiquette • Community Ethos - Arch is not for everyone
Offline
Nice. If you want to remove the pyalpm dependency, know that the database is a tar archive of plain text files. You can read that with pythons tarfile module.
| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |
Offline
Nice. If you want to remove the pyalpm dependency, know that the database is a tar archive of plain text files. You can read that with pythons tarfile module.
I'll consider it, but once I start down that route I may as well skip the JSON interface entirely and implement full database parsing, as most of the functionality would be required to get the providers array anyway.
My Arch Linux Stuff • Forum Etiquette • Community Ethos - Arch is not for everyone
Offline
People will confuse it with bacman.
Offline