Hi *, I am currently working on an environment for software developers based on openSUSE Leap 15.3 (on WSL, but that should not matter in this context). The aim is to provide developers with a per-configured environment using RPM configuration packages, i. e. packages with add a bunch of environment-specific config files to the existing installation. (The choice to use the package system for configuration delivery is intentional: the package delivery infrastructure is already there and there neither need nor infrastructure for any dynamic configuration service like puppet or ansible, hence no need to blow up the technology stack.) Those configuration packages do not package an existing »foreign« tar ball (towards which rpmbuild seems to be optimized) but are maintained simply in a git repository containing the files according to their place in the file hierarchy. To make rpmbuild work properly, a tar ball has to be generated explicitly first. The current solution is to use a wrapper script that creates the tar ball from the contents of the git working directory and then calls rpmbuild. The problem with that approach is that that wrapper script must either be maintained in every package git simultaneously or by itself provided as an additional build tool in a dedicated package. Both solutions are a little odd. Hence I would prefer a solution which gets along without such auxiliary wrappers, ideally just by calling rpmbuild. (It would be still fine if different build steps rely on auxiliary scripts in the current git working directory or similar). Technically, the necessity to specify (at least) one source in the spec file is the core obstacle: the source, whatever it may be, must be provided somehow by an external script to make rpmbuild not choke on its absence. There might be tools for exactly that purpose, e. g. https://honk.sigxcpu.org/projects/git-buildpackage/manual-html/man.gbp.build... which is surely helpful, but it is difficult to judge what the most »canonical« or »established« tool is. Any hints appreciated. (I am happy to provide an example if needed but would first have to extract one from the existing material.) Cheers, Florian