Package Details: salt-onedir 3007.1-5

Git Clone URL: https://aur.archlinux.org/salt-onedir.git (read-only, click to copy)
Package Base: salt-onedir
Description: Central system and configuration manager (onedir installation +[])
Upstream URL: http://saltstack.org/
Licenses: Apache-2.0
Conflicts: salt, salt-raet, salt-zmq
Provides: salt
Replaces: salt-raet, salt-zmq
Submitter: spookfish
Maintainer: spookfish
Last Packager: spookfish
Votes: 3
Popularity: 0.57
First Submitted: 2024-05-20 17:10 (UTC)
Last Updated: 2024-12-16 15:38 (UTC)

Latest Comments

1 2 Next › Last »

spookfish commented on 2024-12-16 15:40 (UTC)

Hi, relnum 5 now builds with static python requirements by default. This improvement was suggested by @cooldiver and matches how salt officially builds their packages.

If you wish to build the package with the previous behavior, set the environment variable SALT_DYNAMIC_REQUIREMENTS=1 for the build.

spookfish commented on 2024-12-05 21:20 (UTC)

Pushed a new version, the build should be working now. For some reason, the default pip version in the relenv dist (23.0.1) simply stopped installing ANY dependencies for the Salt package. I don't know why it behaves like this.

To fix the problem, the PKGBUILD now first upgrades pip within the relenv before using it to install Salt. The build now works fine for me again. Please comment if anything is not working. FYI I didn't get to test whether there are any unwanted interactions between the newer pip version and Salt when using Salt to manage modules within the onedir installation.

spookfish commented on 2024-12-05 11:04 (UTC)

@cooldiver2 Can you please email me the patch at spookfish@ldsoft.dev? I will test & review and update the package soon. Thank you for your contribution!

cooldiver2 commented on 2024-12-04 16:25 (UTC)

I have a new working environment. The changes are to much, to send you with a comment. How would you like to receive the updates? Should I push it to this repository and increase the build number?

cooldiver2 commented on 2024-12-04 14:44 (UTC)

Okay. Thank you for the fast response. But the next problem occurs. This built package is not running. I get different ModuleNotFoundError for required Python packages. It looks, that those requirements needs to be installed separately into the virtual environment, which is used in onedir installation.

At the moment I can not get m2crypto pip compiled. Problem is estimated perhaps the swig binary. This version is current and m2crypto is pinned to 0.38.0.

If it is working again, I can send you the changes.

spookfish commented on 2024-12-04 13:05 (UTC)

I have the suspicion that something changed upstream. I believe the salt python package used to depend on these other packages and pulled them in automatically. Attempting to run the onedir installation without this set of packages fails - salt requires them.

Until I have updated the PKGBUILD, please edit it as @cooldiver2 did or set the additional packages per environment variable:

SALT_ADDITIONAL_PIP_PACKAGES='tempora cheroot cherrypy distro charset-normalizer' makepkg

cooldiver2 commented on 2024-12-04 07:56 (UTC) (edited on 2024-12-04 07:56 (UTC) by cooldiver2)

Hi @spookfish,

thank you for the preparation of this package. I had to make one change to get it build:

diff --git a/PKGBUILD b/PKGBUILD
index 69d81c9..63c181d 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -19,6 +19,7 @@
 #    and validated distribution.
 #

+SALT_ADDITIONAL_PIP_PACKAGES='tempora cheroot cherrypy distro charset-normalizer'
 pkgname=salt-onedir
 provides=('salt')
 pkgver=3007.1

Otherwise the first 5 patches of file 0001-binexec.patch could not be applied. Those patches are related to calc-prorate, cheroot, cherryd, distro, and normalizer.

spookfish commented on 2024-11-17 15:35 (UTC)

Hi @ogarcia

Thank you for your suggestion! I've heard of uv but didn't get to play around with it yet. I'll give this a try as soon as time permits :)

ogarcia commented on 2024-11-17 10:41 (UTC)

Hi @spookfish first of all, I am not a salt user, I just came here because of the topic I have seen on the mailing lists that the package is going to be officially abandoned because of the problem with Python. That said, I just came to tell you that you might be more comfortable using uv to create the package. It would be something like this (I put only the most relevant):

makedepends=('rsync' 'uv')

# create the venv environment into which we will install Salt
uv venv -p 3.10.15 "${onedir}"

# Install salt into the relenv environment
# Note: This must be an absolute path, otherwise pip interprets it as pkg name
uv pip install "${srcdir}/salt-${pkgver}" --directory "${onedir}"
# Add additional python deps for Salt
if [[ -n ${SALT_ADDITIONAL_PIP_PACKAGES} ]]; then
  uv pip install ${SALT_ADDITIONAL_PIP_PACKAGES} --directory "${onedir}"
fi

If you already know uv or have already thought about it, forget what I said, if not, keep an eye on it as you may be able to create the package much faster (and the good thing is that uv is an official Arch package).

Greetings.

spookfish commented on 2024-08-18 14:40 (UTC)

Hi @StefanT,

Thank you for comment. Good to know that there is a relenv distribution for aarch64. I will update the supported architectures accordingly!

Regarding the makedepends: AUR packages assume base-devel is installed as prerequisite (ref: https://wiki.archlinux.org/title/Arch_User_Repository#Prerequisites), which is why packages from that group are not listed in makedepends.