I’m running QubesOS, a Xen-based distro streamlining service/domain separation into individual VMs.
I’m striving to, in an Arch-based template, make AUR-access easy via pamac, which AUR has supplied along with its support library without a hitch.
Turns out, that the QubesOS-supplied Arch template out of the box comprises, in its /etc/pacman.conf file the following line:
Include = /etc/pacman.d/*.conf
which enables them to provide various 90-custom_repo.conf_inactive files in that directory, which are activatable by simply soft-linking them to equivalent paths devoid of the _inactive bit.
pacman (e.g. -Syu) deals just fine with this, but pamac update chokes with the error
I there any way to make this work for pamac? I would very much like to mock as little as possible with the QubesOS-provided template and stick with their config even while layering pamac on top…
This is clearly a pamac-specific question, so I disagree.
Would have preferred to discuss this in the pamac repo, but I do not seem to be able to be granted access to the gitlab instance…
Tried, but as expected counterproductive. The entire premise of the controllable soft-linking breaks and pacman then also breaks, while pamac continues to not work and now reports
QubesOS is indeed a very good implementation of the concept separating different tasks.
For one thing pamac is not build with Arch Linux in mind but Manjaro.
I cannot really imagine why you want to use Pamac inside the Arch template as pacman is the native application.
It also appears quite a strange concept to include everything based on the mere appearance.
The files in question will have a content which - depending on the location of the include line - will inject third party repository and possibly replace system files.
When included like you describe you are per definition including 3rd party repos which is not supported - that goes for Arch and Manjaro.
Looking at the code in the configuration parser it expects a named file not a list of files.
Manjaro itself may be interpreted as just adding additional repos on top of Arch and the QubesOS/Arch team is doing much the same by including a custom repo with the small number of packages required for Arches| seamless integration into the QubesOS ecosystem. They do it in a way that is quite elegant (especially from the perspective of configuration management engines such as salt etc.), as activating/inactivating just requires softlinking and NOT config file editing. Sadly libpamac appears less flexible in this respect than pacman.
The motivation of using pacman within the QubesOS-community provided Arch template is to have a convenient client to deal with AUR packages.
While I maintain a pure Arch template as provided (and obviously using pacman only), another part of Arch’s appeal is the availability of AUR and a AUR-using template (cloned from the pure Arch one) is intended to provide seamless install of packages from their using AUR.
The QubesOS is quite elegant - I have been using it myself - for educational purpose. I believe I have been around version 2 and 3 - perhaps version 4 as RC.
Then there is something you don’t know. Manjaro is not an additional repo on top of Arch Linux.
While the package majority is indeed build by Arch Linux not every package provided within Arch Linux repo is available with Manjaro.
And those which are available is made available within the Manjaro branch structure.
The QubesOS template - is likely to use a customized version of pacman - just as Manjaro uses a customized version.
This will explain why Pamac doesn’t read the pacman.conf correct when presented with a *.conf instruction.
And therefore pamac and libpamac is not compatible with the customised Arch based template available within QubesOS.