Compare commits

..

44 Commits

Author SHA1 Message Date
clrbuilder cc16065a09 Update packages file for version 21790
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2018-04-11 13:01:37 +00:00
clrbuilder 45f2185a25 Update packages file for version 21780
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2018-04-10 19:05:07 +00:00
clrbuilder 9ffc0b9640 Update packages file for version 21770
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2018-04-10 13:03:01 +00:00
clrbuilder 98c5937801 Update packages file for version 21760
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2018-04-09 20:56:43 +00:00
clrbuilder a50450212c Update packages file for version 21720
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2018-04-08 13:28:18 +00:00
clrbuilder ab77a99a47 Update packages file for version 21710
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2018-04-07 17:41:19 +00:00
clrbuilder 090bb77f92 Update packages file for version 21690
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2018-04-06 15:50:48 +00:00
clrbuilder f2b7a30d12 Update packages file for version 21670
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2018-04-05 13:07:37 +00:00
clrbuilder c26e27ce65 Update packages file for version 21640
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2018-04-03 20:07:19 +00:00
clrbuilder 6fa010e10b Update packages file for version 21610
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2018-04-03 13:25:42 +00:00
clrbuilder 173673b5c6 Update packages file for version 21600
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2018-04-02 19:07:05 +00:00
clrbuilder eea34ccd7f Update packages file for version 21590
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2018-04-02 13:49:46 +00:00
clrbuilder fa58b00fb7 Update packages file for version 21580
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2018-03-30 19:24:39 +00:00
Patrick McCarty cd9b9c1319 user-setup: remove suggestion to run 'newgrp kvm'
If you run `newgrp kvm` after the user-setup script completes, and then
proceed to run `make build`, `make autospec`, etc. within a package
repo, mock will fail because it tries to `groupadd mockbuild` in the
package chroot with the wrong group ID. Logging out and logging back in
results in correct behavior, so leave that as the sole recommendation.

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2018-03-29 10:52:16 -07:00
Patrick McCarty d22e4f985d Minor style fix in Makefile.toplevel
In my previous commit, one of the changed lines used a combination of
tabs and spaces, but it should have used tabs only.

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2018-03-28 22:19:37 -07:00
clrbuilder eb58950c17 Update packages file for version 21540
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2018-03-28 16:51:30 +00:00
Patrick McCarty 8ff80b0be2 Sync options for 'autospec' and 'autospecnew' commands
Over time, the autospec options used for 'autospec' and 'autospecnew'
commands have diverged. They are meant to be in sync, so do that here,
and format the recipe in a way that eases future changes.

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2018-03-26 14:12:38 -07:00
Patrick McCarty 05634010e9 Disable recipe echo and set -x for 'pullrebase'
The echo commands at key points of the pullrebase should be sufficient
for users to know what action pullrebase performed.

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2018-03-23 16:42:20 -07:00
Patrick McCarty f6442a0e7f Improve behavior of 'make autospec' for new repos
If a new package repo is created with make autospecnew, and then make
autospec is run immediately afterward, a git fetch is performed, but
the remote repo is not likely to exist yet.

Address this issue by only running the git fetch if the remote origin is
initialized locally via a git push, git pull, etc.

In addition to properly supporting the workflow described above, this
change also enables developers to build packages that are *not* intended
to be included in Clear Linux OS, thus not destined to appear in the
'packages' file. Package repos of this nature might have different,
manually configured remotes, or the remote may never be initialized at
all if builds are only run locally.

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2018-03-23 11:59:56 -07:00
clrbuilder d6250a68cd Update packages file for version 21500
Signed-off-by: clrbuilder <david.j.klimesh@intel.com>
2018-03-23 06:01:38 -07:00
clrbuilder a0208a0509 Update packages file for version 21490
Signed-off-by: clrbuilder <david.j.klimesh@intel.com>
2018-03-22 12:48:08 -07:00
clrbuilder 7ff122463b Update packages file for version 21480
Signed-off-by: clrbuilder <david.j.klimesh@intel.com>
2018-03-22 07:16:18 -07:00
clrbuilder 08498361a4 Update packages file for version 21470
Signed-off-by: clrbuilder <david.j.klimesh@intel.com>
2018-03-22 06:01:51 -07:00
clrbuilder 1b8c8d250d Update packages file for version 21440
Signed-off-by: clrbuilder <david.j.klimesh@intel.com>
2018-03-20 12:03:00 -07:00
clrbuilder 4eccb104d5 Update packages file for version 21420
Signed-off-by: clrbuilder <david.j.klimesh@intel.com>
2018-03-19 12:04:45 -07:00
clrbuilder 4ac2b829d3 Update packages file for version 21410
Signed-off-by: clrbuilder <david.j.klimesh@intel.com>
2018-03-19 06:51:50 -07:00
clrbuilder 052fa48e83 Update packages file for version 21400
Signed-off-by: clrbuilder <david.j.klimesh@intel.com>
2018-03-16 15:00:30 -07:00
clrbuilder 382ed28176 Update packages file for version 21390
Signed-off-by: clrbuilder <david.j.klimesh@intel.com>
2018-03-16 08:16:43 -07:00
Patrick McCarty e695db8c80 Fix 'make pull' to honor the autospec pushurl
A 'make clone' sets the proper git pushurl for autospec, but a
subsequent 'make pull' does not honor override. Fix by adding a special
condition for 'make pull'.

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2018-03-14 17:30:10 -07:00
clrbuilder f12e7e48ea Update packages file for version 21340
Signed-off-by: clrbuilder <david.j.klimesh@intel.com>
2018-03-14 12:01:52 -07:00
clrbuilder f269683632 Update packages file for version 21310
Signed-off-by: clrbuilder <david.j.klimesh@intel.com>
2018-03-13 15:52:23 -07:00
clrbuilder a2c4413083 Update packages file for version 21220
Signed-off-by: clrbuilder <david.j.klimesh@intel.com>
2018-03-08 17:29:54 -08:00
Patrick McCarty cc6e70bb29 Enable local repo notice for autospec commands
Similar to how a notice is printed for 'make build', enable the same
notice for 'make autospec' and 'make autospecnew'.

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2018-03-08 14:01:48 -08:00
Patrick McCarty f3989c0d5a Enable local repo support for autospec
Local repo support was recently added for 'make build', so do the same
for 'make autospec' and 'make autospecnew'.

Note that to make mock invocations work at both package-level and
toplevel, I am resolving MOCK_CONFIG_VAL with the realpath function.

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2018-03-07 16:36:41 -08:00
Patrick McCarty f697b227e8 Rename Makefile.functions to Makefile.shared
The name "shared" makes more sense at this point, since the makefile
does not contain only functions, and it is meant to be shared between
Makefile.common and Makefile.toplevel.

Also, reorder the makefile includes, since Makefile.shared should be
able to use variables defined in Makefile.config.

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2018-03-07 16:00:24 -08:00
clrbuilder 01e548b268 Update packages file for version 21180
Signed-off-by: clrbuilder <david.j.klimesh@intel.com>
2018-03-07 12:02:02 -08:00
Patrick McCarty 128799fa02 local repo: unhide local repo conf files
To make sure the conf files are more visible in the local repo
directory, unhide them by installing them without a leading dot
character.

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2018-03-06 16:56:47 -08:00
Patrick McCarty ad77e695dc local repo: instantiate repo after creating the directory
DNF seems to ignore an uninitialized repo, but Yum does not. To fix,
make sure to run createrepo immediately after creating the local repo
directory.

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2018-03-06 16:56:47 -08:00
Patrick McCarty 8bf6c59e96 Enable local repo support for 'make build'
With this change, 'make build' will automatically use the local repo, if
enabled. A notice is printed in case the user didn't want to use the
local repo and wishes to disable it with 'make repodisable'.

Another functional change here is that 'make build' will use the in-tree
mock config (clear.cfg) instead of the /etc/mock/clear.cfg. If this
behavior is not desired, then MOCK_CONF can be modified in
Makefile.config, or overridden by a Makefile.config.site_local.

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2018-03-06 16:56:47 -08:00
Patrick McCarty ac3f1898f6 local repo: forcibly remove RPMs from the local dir
In case the user runs 'make repoclean' followed by 'make repoadd' in a
package repo dir, 'rm' will complain. Add the -f option to silence those
warnings.

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2018-03-06 16:56:47 -08:00
Patrick McCarty 905b1d1c06 local repo: add toplevel 'repoclean' command
In case the user wants to remove all RPMs from the local repo, they can
now run 'make repoclean' at toplevel.

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2018-03-06 16:56:47 -08:00
Patrick McCarty e3b1adedd8 local repo: add 'repostatus' command
This new command displays a helpful summary of what packages exist in
the local RPM repo and whether it is enabled for Yum/DNF, Mock, or both.

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2018-03-06 16:56:47 -08:00
Patrick McCarty ab142ead38 local repo: run createrepo after 'repodel' removes RPMs
To ensure that RPM repo metadata is always up-to-date for the local
repo, make sure createrepo is run after removing the RPMs.

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2018-03-06 16:56:47 -08:00
Patrick McCarty a9982b4064 local repo: add Mock support and enable/disable commands
An interface for a local RPM repository already exists, so extend it by
adding Mock support and the ability to enable and disable the
repository, at package level and at toplevel.

Integration for commands that use Mock will be added in separate
commits.

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2018-03-06 16:56:47 -08:00
6 changed files with 590 additions and 26 deletions
+49 -20
View File
@@ -4,8 +4,8 @@ all: build
TOPLVL = ../..
include $(TOPLVL)/projects/common/Makefile.functions
include $(TOPLVL)/projects/common/Makefile.config
include $(TOPLVL)/projects/common/Makefile.shared
SHELL = /bin/bash
@@ -19,7 +19,9 @@ RPMS ?= $(LATEST_RPMS)
WITH_SUDO = $(shell cmp /usr/bin/mock /usr/sbin/mock &> /dev/null && echo sudo )
MOCK ?= $(WITH_SUDO) /usr/bin/mock -r clear
# MOCK_CONFIG_VAL is set in Makefile.shared
MOCK ?= $(WITH_SUDO) /usr/bin/mock -r $(MOCK_CONFIG_VAL)
ifneq ($(wildcard upstream),)
__allsources := $(notdir $(strip $(shell cat upstream)))
@@ -113,21 +115,29 @@ shell:
# Always rebuild the source rpm
.PHONY: $(SRPMFILE)
$(SRPMFILE): $(SPECFILE) $(__allsources)
$(SRPMFILE): $(SPECFILE) $(__allsources) localreponotice
@$(MAKE) spdxcheck
$(MOCK) --buildsrpm --source=./ --spec=$(SPECFILE) --result=results/ --no-cleanup-after --uniqueext=$(PKG_NAME)
# Do a git fetch and a git rebase rather than a git pull so aborting
# the git pull at a password prompt doesn't leave local changes stashed
# Do the the git status dance so we only apply a stash we create
# Do a git fetch and a git rebase to apply local commits on top of latest
# commits from the remote. A git fetch/rebase is used rather than a git pull so
# aborting the git pull at a password prompt doesn't leave local changes
# stashed. Do the git status dance so we only apply a stash we create. Note
# that a fetch/rebase is not attempted if the remote 'origin' is not
# initialized locally, or if the remote contains no commits.
pullrebase:
if [ -z "$$SKIP_GIT" ] && [ -e .git ]; then \
set -x ; \
@if [ -z "$$SKIP_GIT" ] && [ -e .git ]; then \
if ! git rev-parse --verify --quiet origin/master > /dev/null; then \
echo "Remote not yet initialized. Continuing."; \
exit 0; \
fi; \
echo "Fetching origin"; \
git fetch; \
if ! git rev-parse --verify --quiet FETCH_HEAD > /dev/null; then \
echo "No commits exist in remote. Continuing."; \
exit 0; \
fi; \
echo "Rebasing to origin/master"; \
if git status --porcelain | grep -q '^.[^?]'; \
then \
git stash save; \
@@ -142,17 +152,23 @@ pullrebase:
#help already a specfile, it will be overwritten. Several files used by
#help autospec will be created in the process. For more information, see
#help the project at https://github.com/clearlinux/autospec
autospec: pullrebase
autospec: pullrebase localreponotice
rm -f results/*src.rpm
@if [ -e $(SPECFILE) ] && ! grep -q "# Generated by: autospec.py" $(SPECFILE) ; then \
echo "Specfile already exists and was not created by autospec.py! Aborting."; \
exit 1; \
fi
@printf 'PKG_NAME := %s\nURL = %s\nARCHIVES = %s\n\ninclude ../common/Makefile.common\n' $(PKG_NAME) '$(firstword $(value NEWURL) $(value URL))' '$(value ARCHIVES)' > Makefile
python3 $(TOPLVL)/projects/autospec/autospec/autospec.py -t . --integrity \
${NON_INTERACTIVE} --config "$(AUTOSPEC_CONF)" ${SKIP_GIT} \
$(firstword $(NEWURL) $(URL)) --name $(PKG_NAME) ${CLEANUP} \
$${SETVERSION:+ -v $${SETVERSION}} -a $(ARCHIVES)
python3 $(TOPLVL)/projects/autospec/autospec/autospec.py \
--target . \
--integrity \
--config "$(AUTOSPEC_CONF)" \
--name $(PKG_NAME) \
--archives $(ARCHIVES) \
--mock-config $(MOCK_CONFIG_VAL) \
$${SETVERSION:+ --version $${SETVERSION}} \
${NON_INTERACTIVE} ${SKIP_GIT} ${CLEANUP} \
$(firstword $(NEWURL) $(URL));
@$(MAKE) spdxcheck
@$(MAKE) checkblacklist
@if [ -e update_changelog.sh ] && [ -z "$$SKIP_GIT" ] ; then \
@@ -275,8 +291,11 @@ logcheck:
$(TOPLVL)/repo:
@echo "Creating local RPM repository $(TOPLVL)/repo"
mkdir $(TOPLVL)/repo
$(MAKE) localrepocreate
#help repoadd: Creates a local Yum repository in the $(TOPLVL)/repo directory.
#help repoadd: Adds locally-built RPMs for this package to the local RPM
#help repository. If this repository does not yet exist, it is created and
#help enabled.
repoadd: results/build.log $(TOPLVL)/repo
@if [ -z "`grep '^Wrote: .*$(shell basename $(SRPMFILE))$$' results/build.log`" ]; then \
echo "You have not yet succesfully built this release yet"; exit 1; \
@@ -285,17 +304,16 @@ repoadd: results/build.log $(TOPLVL)/repo
echo "Cleaning old rpms:"; \
for r in `cat .repo-index`; do \
echo "-$$r"; \
rm $(TOPLVL)/repo/$$r; \
rm -f $(TOPLVL)/repo/$$r; \
done; \
rm .repo-index; \
fi
for r in $(LATEST_RPMS); do echo "+$$r"; echo $$(basename $$r) >> .repo-index; cp $$r $(TOPLVL)/repo; done
( cd $(TOPLVL)/repo ; if type createrepo_c 1>/dev/null 2>&1; then createrepo_c .; else createrepo .; fi );
@cp $(TOPLVL)/projects/common/image-creator/yum.conf $(TOPLVL)/repo/.yum.conf
@printf "\n\n[local]\nname=Local\nfailovermethod=priority\nenabled=1\ngpgcheck=0\n" >> $(TOPLVL)/repo/.yum.conf
@printf "baseurl=file://$$(realpath $(TOPLVL))/repo/\n\n" >> $(TOPLVL)/repo/.yum.conf
$(MAKE) localrepocreate
$(call localrepoenable,${PM_CONF},${MOCK_CONF})
#help repodel: Removes package from local Yum repository.
#help repodel: Removes RPMs from the local RPM repository that were
#help previously added by 'make repoadd' for this package.
repodel:
@if [ -f .repo-index ]; then \
echo "Cleaning old rpms:"; \
@@ -304,8 +322,19 @@ repodel:
rm -f $(TOPLVL)/repo/$$r; \
done; \
rm .repo-index; \
$(MAKE) localrepocreate; \
fi
#help repoenable: Enables the local RPM repository for use with Yum/DNF and
#help Mock. If this repository does not yet exist, it is created.
repoenable: $(TOPLVL)/repo ; $(call localrepoenable,${PM_CONF},${MOCK_CONF})
#help repodisable: Disables the local RPM repository.
repodisable: localrepodisable ;
#help repostatus: Summarizes the local RPM repository status.
repostatus: localrepostatus ;
loop-up:
$(loopup)
+7
View File
@@ -54,6 +54,13 @@ AUTOSPEC_CONF = $(TOPLVL)/projects/common/autospec.conf
# in "pkg-mapping" for cloning/pulling package repos.
USE_PACKAGE_MAPPING = yes
# Package manager config file. Default to the in-tree copy.
PM_CONF = $(TOPLVL)/projects/common/image-creator/yum.conf
# Mock configuration file. Default to the in-tree copy.
MOCK_CONF = $(TOPLVL)/projects/common/koji-client-files/clear.cfg
# Include any site local configuration variables. These variables may override
# the definitions given above.
-include $(TOPLVL)/projects/common/Makefile.config.site_local
+76
View File
@@ -62,6 +62,82 @@ define remotepkgname
$(if $(USE_PACKAGE_MAPPING),$$(awk -v P="$(1)" '$$1 == P { res=$$2 } END { print res ? res : P }' $(TOPLVL)/projects/common/pkg-mapping),$(1))
endef
# Enables the local RPM repo by installing package manager and Mock configs.
# First argument is the path to the package manager config, and the second
# argument is the path to the mock config. Each of these config files is
# augmented for local repo support.
define localrepoenable
@cp $(1) $(TOPLVL)/repo/yum.conf
@printf "\n\n[local]\nname=Local\nfailovermethod=priority\nenabled=1\ngpgcheck=0\n" >> $(TOPLVL)/repo/yum.conf
@printf "baseurl=file://$$(realpath $(TOPLVL))/repo/\n\n" >> $(TOPLVL)/repo/yum.conf
@cp $(2) $(TOPLVL)/repo/clear.cfg
@printf "\n\n[localrepo]\nname=Local repo\nfailovermethod=priority\nenabled=1\ngpgcheck=0\n" >> $(TOPLVL)/repo/clear.cfg
@printf "baseurl=file://$$(realpath $(TOPLVL))/repo/\n\n" >> $(TOPLVL)/repo/clear.cfg
@sed -i '/^"""/d; $$a"""' $(TOPLVL)/repo/clear.cfg
endef
# Disables the local RPM repo by removing the installed package manager and
# Mock configuration files.
localrepodisable:
@rm -f $(TOPLVL)/repo/yum.conf
@rm -f $(TOPLVL)/repo/clear.cfg
# Runs createrepo_c (or createrepo) for the local RPM repo
localrepocreate:
( cd $(TOPLVL)/repo ; if type createrepo_c 1>/dev/null 2>&1; then createrepo_c .; else createrepo .; fi );
# Remove all RPMs from the local RPM repo
localrepoclean:
@find $(TOPLVL)/repo -maxdepth 1 -name '*.rpm' -delete
# Summarizes the local RPM repo status
localrepostatus:
@if [ ! -d $(TOPLVL)/repo ]; then \
echo '** Local repo not found'; \
exit 0; \
fi; \
if [ -f $(TOPLVL)/repo/yum.conf ]; then \
echo '** Local repo enabled for Yum/DNF.'; \
else \
echo '** Local repo not enabled for Yum/DNF.'; \
fi; \
if [ -f $(TOPLVL)/repo/clear.cfg ]; then \
echo '** Local repo enabled for Mock.'; \
else \
echo '** Local repo not enabled for Mock.'; \
fi; \
echo -n '** Local repo package list: '; \
( \
cd "$(TOPLVL)/repo"; \
LC_COLLATE="C"; \
shopt -s nullglob; \
set -- *.rpm; \
if [ -n "$$1" ]; then \
printf '\n'; printf '%q\n' "$$@"; \
else \
printf 'none found\n'; \
fi; \
)
# Detection of whether to use the local RPM repo occurs on-the-fly. Normally,
# variable definitions appear in Makefile.config, but these variables are not
# intended to be user-modifiable.
ifeq ($(wildcard $(TOPLVL)/repo/clear.cfg),)
MOCK_CONFIG_VAL = $(realpath $(MOCK_CONF))
else
MOCK_CONFIG_VAL = $(realpath $(TOPLVL)/repo/clear.cfg)
USE_LOCAL_REPO = 1
endif
localreponotice:
@if [ -n "${USE_LOCAL_REPO}" ]; then \
printf '\n\n** NOTICE: Using local repo for the build. Continuing after 3 seconds.\n'; \
printf '** If this is not desired, run `make repodisable`.\n'; \
printf '** The repo can be re-enabled later with `make repoenable`.\n'; \
printf '** Run `touch $(TOPLVL)/repo/opt-in-build` to prevent the 3 second delay.\n\n\n'; \
[ -f $(TOPLVL)/repo/opt-in-build ] || sleep 3; \
fi >&2
.PHONY: help
##### Code
# Make sure that HELPSPACE has exactly HELPLEN spaces in it
+36 -4
View File
@@ -4,8 +4,8 @@ all: clone
TOPLVL = .
include $(TOPLVL)/projects/common/Makefile.functions
include $(TOPLVL)/projects/common/Makefile.config
include $(TOPLVL)/projects/common/Makefile.shared
SHELL = /bin/bash
@@ -80,7 +80,11 @@ ${PULL_PKGS}:
fi ; \
git --no-pager log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit $$O..$$N; echo; \
fi ; \
$(call gitoliteurl,$$p); \
if [ "$$p" = "projects/autospec" ] ; then \
git remote set-url --push origin https://github.com/clearlinux/autospec.git; \
else \
$(call gitoliteurl,$$p); \
fi ; \
else \
echo "$$p: no such remote 'origin'"; \
fi ; \
@@ -188,7 +192,7 @@ provides:
#help autospecnew: Creates a new autospec package with for a given URL=$(URL)
#help with NAME=$(NAME). Several files used by autospec will be created in the
#help process. For more information about autospec, see the project page on Github https://github.com/clearlinux/autospec
autospecnew:
autospecnew: localreponotice
@if [ -z $(NAME) ] || [ -z $(URL) ]; then \
echo "Please specify NAME and URL. The ARCHIVES variable is optional."; \
exit 1; \
@@ -204,12 +208,40 @@ autospecnew:
$(call subjectprefix,$(NAME)); \
); \
printf 'PKG_NAME := %s\nURL = %s\nARCHIVES = %s\n\ninclude ../common/Makefile.common\n' $(NAME) '$(value URL)' '$(value ARCHIVES)' > $(TOPLVL)/packages/$(NAME)/Makefile; \
python3 $(TOPLVL)/projects/autospec/autospec/autospec.py --integrity -t packages/$(NAME) --config $(AUTOSPEC_CONF) $(URL) --name $(NAME); \
python3 $(TOPLVL)/projects/autospec/autospec/autospec.py \
--target packages/$(NAME) \
--integrity \
--config "$(AUTOSPEC_CONF)" \
--name $(NAME) \
--archives $(ARCHIVES) \
--mock-config $(MOCK_CONFIG_VAL) \
$${SETVERSION:+ --version $${SETVERSION}} \
${NON_INTERACTIVE} ${SKIP_GIT} ${CLEANUP} \
$(URL); \
$(TOPLVL)/projects/common/checkblacklist.sh $(TOPLVL)/projects/common/blacklist $(TOPLVL)/packages/${NAME}/results/*.rpm; \
else \
echo "$(NAME) already exists at $(TOPLVL)/packages/$(NAME)"; \
exit 1; \
fi
$(TOPLVL)/repo:
@echo "Creating local RPM repository $(TOPLVL)/repo"
mkdir $(TOPLVL)/repo
$(MAKE) localrepocreate
#help repoenable: Enables the local RPM repository for use with Yum/DNF and
#help Mock. If this repository does not yet exist, it is created.
repoenable: $(TOPLVL)/repo ; $(call localrepoenable,${PM_CONF},${MOCK_CONF})
#help repodisable: Disables the local RPM repository.
repodisable: localrepodisable ;
#help repoclean: Removes all RPMs from the local RPM repository.
repoclean: localrepoclean localrepocreate ;
#help repostatus: Summarizes the local RPM repository status.
repostatus: localrepostatus ;
# Define site local toplevel targets in a separate makefile
-include $(TOPLVL)/projects/common/Makefile.toplevel.site_local
+421 -1
View File
@@ -31,124 +31,461 @@ Pygments
QtAwesome
QtPy
R
R-AER
R-BH
R-Brobdingnag
R-CVST
R-Cairo
R-CircStats
R-ClustVarLV
R-Cubist
R-DAAG
R-DBI
R-DBItest
R-DEoptim
R-DEoptimR
R-DRR
R-DT
R-DendSer
R-DistributionUtils
R-Ecdat
R-Ecfun
R-EnvStats
R-FNN
R-Formula
R-GGally
R-GPArotation
R-GeneralizedHyperbolic
R-GlobalOptions
R-Hmisc
R-ICS
R-ICSNP
R-IRdisplay
R-IRkernel
R-ISwR
R-Lahman
R-LearnBayes
R-Matching
R-MatrixModels
R-ModelMetrics
R-NADA
R-NLP
R-NMF
R-NMOF
R-PKI
R-R.methodsS3
R-R.oo
R-R.utils
R-R2Cuba
R-R2HTML
R-R6
R-RANN
R-RColorBrewer
R-RCurl
R-RJSONIO
R-ROCR
R-RSQLite
R-RSclient
R-RUnit
R-RandomFields
R-RandomFieldsUtils
R-Rcpp
R-RcppArmadillo
R-RcppEigen
R-RcppProgress
R-RcppRoll
R-Rmpfr
R-Rmpi
R-Rtsne
R-SDMTools
R-SQUAREM
R-Sleuth2
R-SnowballC
R-SparseM
R-StanHeaders
R-SuppDists
R-TH.data
R-TRAMPR
R-TSP
R-TTR
R-TeachingDemos
R-VGAM
R-VGAMdata
R-VIM
R-XML
R-abind
R-acepack
R-actuar
R-ade4
R-analogue
R-ape
R-argparse
R-arm
R-assertthat
R-backports
R-base64enc
R-bayesm
R-bayesplot
R-bdsmatrix
R-betareg
R-bibtex
R-bindr
R-bindrcpp
R-bipartite
R-bit
R-bit64
R-bitops
R-blob
R-brew
R-brglm
R-bridgesampling
R-brms
R-broom
R-caTools
R-callr
R-car
R-carData
R-caret
R-cclust
R-cellranger
R-checkmate
R-chron
R-circlize
R-classInt
R-cli
R-clue
R-clustMixType
R-coda
R-coin
R-colorspace
R-colourpicker
R-combinat
R-commonmark
R-compositions
R-corpcor
R-corrplot
R-cowplot
R-crayon
R-crosstalk
R-curl
R-cvTools
R-data.table
R-dbarts
R-dbplyr
R-ddalpha
R-deSolve
R-debugme
R-deepnet
R-deldir
R-dendextend
R-desc
R-devtools
R-dfoptim
R-dichromat
R-diffusionMap
R-digest
R-dimRed
R-diptest
R-dlm
R-doMC
R-doMPI
R-doParallel
R-doRNG
R-doSNOW
R-dotCall64
R-dplyr
R-drc
R-dtw
R-dygraphs
R-dynlm
R-e1071
R-earth
R-ellipse
R-energy
R-evaluate
R-expint
R-expm
R-fastICA
R-fastcluster
R-fastmatch
R-fda
R-ff
R-fields
R-findpython
R-fitdistrplus
R-flashClust
R-flexmix
R-forcats
R-foreach
R-formatR
R-fpc
R-futile.logger
R-futile.options
R-gam
R-gamm4
R-gbm
R-gclus
R-gdata
R-geometry
R-getopt
R-ggjoy
R-ggplot2
R-ggplot2movies
R-ggridges
R-git2r
R-glmnet
R-glue
R-gmodels
R-gmp
R-goftest
R-gower
R-gplots
R-gridBase
R-gridExtra
R-gtable
R-gtools
R-haven
R-hexbin
R-highr
R-hms
R-htmlTable
R-htmltools
R-htmlwidgets
R-httpuv
R-httr
R-ica
R-igraph
R-inline
R-inum
R-ipred
R-irlba
R-iterators
R-jpeg
R-jsonlite
R-kernlab
R-klaR
R-knitr
R-labeling
R-labelled
R-laeken
R-lambda.r
R-lars
R-latticeExtra
R-lava
R-lazyeval
R-lda
R-leaps
R-lfe
R-libcoin
R-lle
R-lme4
R-lmtest
R-locfit
R-loo
R-lpSolve
R-lubridate
R-magic
R-magrittr
R-manipulate
R-mapproj
R-maps
R-maptools
R-markdown
R-matrixStats
R-matrixcalc
R-maxLik
R-mclust
R-mda
R-memisc
R-memoise
R-mi
R-microbenchmark
R-mime
R-miniUI
R-minpack.lm
R-minqa
R-miscTools
R-mixtools
R-mlbench
R-mnormt
R-mockery
R-modelr
R-modeltools
R-mondate
R-multcomp
R-multiwayvcov
R-munsell
R-mvoutlier
R-mvtnorm
R-network
R-neuralnet
R-nleqslv
R-nloptr
R-nortest
R-numDeriv
R-nycflights13
R-openssl
R-openxlsx
R-optparse
R-packrat
R-pamr
R-party
R-partykit
R-pbapply
R-pbdZMQ
R-pbkrtest
R-pcaPP
R-pdfCluster
R-permute
R-phylogram
R-pillar
R-pkgconfig
R-pkgmaker
R-plm
R-plogr
R-plotly
R-plotmo
R-plotrix
R-pls
R-plyr
R-pmml
R-png
R-polspline
R-polyclip
R-polycor
R-prabclus
R-pracma
R-praise
R-prettyunits
R-princurve
R-prodlim
R-profileModel
R-progress
R-proto
R-proxy
R-pryr
R-psych
R-purrr
R-pxweb
R-qap
R-quadprog
R-quantmod
R-quantreg
R-questionr
R-randomForest
R-ranger
R-raster
R-rasterVis
R-readr
R-readxl
R-recipes
R-registry
R-rematch
R-repr
R-reprex
R-reshape
R-reshape2
R-reticulate
R-rgenoud
R-rgl
R-rio
R-rlang
R-rmarkdown
R-rms
R-rngtools
R-robCompositions
R-robustbase
R-rootSolve
R-roxygen2
R-rprojroot
R-rrcov
R-rsconnect
R-rstan
R-rstanarm
R-rstantools
R-rstudioapi
R-rversions
R-rvest
R-sROC
R-sampling
R-sandwich
R-scales
R-scatterplot3d
R-segmented
R-selectr
R-sem
R-seriation
R-setRNG
R-sfsmisc
R-sgeostat
R-shape
R-shiny
R-shinyjs
R-shinystan
R-shinythemes
R-slam
R-sm
R-smoother
R-sn
R-sna
R-snow
R-snowfall
R-som
R-sourcetools
R-sp
R-spData
R-spam
R-spatstat
R-spatstat.data
R-spatstat.utils
R-spdep
R-spls
R-statmod
R-statnet.common
R-stringi
R-stringr
R-strucchange
R-subselect
R-superpc
R-survey
R-systemfit
R-tau
R-tclust
R-tensor
R-tensorA
R-testit
R-testthat
R-threejs
R-tibble
R-tidyr
R-tidyselect
R-tidyverse
R-timeDate
R-tis
R-tm
R-topicmodels
R-treatSens
R-tree
R-trimcluster
R-truncnorm
R-tseries
R-tsne
R-utf8
R-uuid
R-vcd
R-vegan
R-viridis
R-viridisLite
R-visNetwork
R-whisker
R-withr
R-xml2
R-xtable
R-xts
R-yaml
R-zCompositions
R-zoo
Remmina
SDL
SDL2
SDL2_gfx
@@ -176,12 +513,15 @@ WebOb
WebTest
Werkzeug
Whoosh
Z3
abireport
absl-py
accountsservice
acl
acme
acpica-unix2
acrn-devicemodel
acrn-hypervisor
adwaita-icon-theme
aeon
alabaster
@@ -208,7 +548,9 @@ asio
asn1crypto
aspell
aspell-en
astor
astroid
astunparse
at
at-spi2-atk
at-spi2-core
@@ -223,6 +565,7 @@ augeas
authconfig
autoconf
autoconf-archive
autoconf213
autofs
autogen
automake
@@ -230,9 +573,11 @@ awscli
azure-configs
babeltrace
babl
backcall
backports.functools_lru_cache
backports.ssl_match_hostname
backports.weakref
baobab
bash
bash-completion
bash_kernel
@@ -260,6 +605,7 @@ boto
boto3
botocore
bridge-utils
brotli
bsdiff
btrfs-progs
bundle-chroot-builder
@@ -273,6 +619,8 @@ cabextract
cached-property
cairo
cairomm
cantarell-fonts
capnproto
cargo
caribou
catch2
@@ -319,6 +667,7 @@ clr-systemd-config
clr-update-triggers
clr-wallpapers
clrtrust
clucene-core
clutter
clutter-gst
clutter-gtk
@@ -338,14 +687,18 @@ compat-efivar-soname0
compat-fuse-soname2
compat-gegl
compat-glew-soname1
compat-gtksourceview-soname3
compat-guile-soname20
compat-ipset-soname10
compat-libical-soname2
compat-libpng-soname12
compat-libwebp-soname6
compat-llvm-soname4
compat-llvm-soname5
compat-mpfr-soname4
compat-opencv-soname32
compat-opencv-soname33
compat-protobuf-soname14
compat-readline
component
compositeproto
@@ -368,6 +721,7 @@ cpuid
cracklib
crcmod
createrepo_c
cri-containerd
cri-o
cri-tools
cryptography
@@ -413,6 +767,7 @@ docbook-xml
docker
docker-py
docutils
dogtail
dos2unix
dosfstools
double-conversion
@@ -477,6 +832,7 @@ flex
flmsg
flnet
fltk
folks
font-adobe-100dpi
font-adobe-75dpi
font-bitstream-type1
@@ -493,6 +849,7 @@ functools32
fuse
futures
garcon
gast
gawk
gc
gcab
@@ -514,6 +871,7 @@ geocode-glib
gettext
gevent
gexiv2
gfbgraph
gflags
ghostscript
gimp
@@ -542,6 +900,7 @@ gnome-bluetooth
gnome-calculator
gnome-calendar
gnome-characters
gnome-color-manager
gnome-common
gnome-control-center
gnome-desktop
@@ -550,17 +909,26 @@ gnome-font-viewer
gnome-icon-theme
gnome-initial-setup
gnome-keyring
gnome-logs
gnome-maps
gnome-menus
gnome-music
gnome-online-accounts
gnome-panel
gnome-photos
gnome-screenshot
gnome-session
gnome-settings-daemon
gnome-shell
gnome-shell-extensions
gnome-system-monitor
gnome-terminal
gnome-themes-standard
gnome-todo
gnome-tweak-tool
gnome-user-docs
gnome-video-effects
gnome-weather
gnu-efi
gnupg
gnuplot
@@ -568,6 +936,7 @@ gnutls
go
gobject-introspection
golang-github-cpuguy83-go-md2man
gom
goocanvas
google-api-python-client
google-apitools
@@ -580,6 +949,7 @@ gpredict
gptfdisk
gradle
gradle-dep
graphene
graphviz
greenlet
grep
@@ -587,9 +957,11 @@ grig
grilo
grilo-plugins
groff
grpcio
grub
gsettings-desktop-schemas
gsl
gsound
gspell
gst-plugins-bad
gst-plugins-base
@@ -629,8 +1001,10 @@ httpd
httplib2
httpretty
hub
hugo
hunspell
hwloc
hyperscan
hyperstart
hypothesis
i2c-tools
@@ -642,6 +1016,7 @@ icon-naming-utils
icu4c
idna
imagesize
imapfilter
indent
infiniband-diags
iniparse
@@ -649,6 +1024,7 @@ init-rdahead
inotify-tools
inputproto
intltool
invm-frameworks
ioping
iotop
ipaddr
@@ -678,11 +1054,13 @@ ister
itstool
iw
ixpdimm_sw
jansson
jedi
jedi-vim
jemalloc
jmespath
joe
josepy
jq
json-c
json-glib
@@ -694,6 +1072,8 @@ jupyter-notebook-gist
jupyter_client
jupyter_console
jupyter_core
jupyterlab
jupyterlab_launcher
kafka-dep
kbd
kbproto
@@ -701,6 +1081,7 @@ kexec-tools
keyring
keyutils
khal
kiwisolver
kmod
koji
krb5
@@ -755,11 +1136,13 @@ libcap
libcap-ng
libcdio
libcgroup
libchamplain
libcomps
libconfig
libcroco
libcryptui
libdatrie
libdazzle
libdmx
libdnf
libdrm
@@ -773,6 +1156,7 @@ libgcrypt
libgd
libgdata
libgee
libgepub
libgfortran-avx
libgfortran-compat-soname3
libgit2
@@ -820,7 +1204,9 @@ libpthread-stubs
libpwquality
librepo
librsvg
librtlsdr
libsamplerate
libsass
libseccomp
libsecret
libsigc++
@@ -828,6 +1214,7 @@ libsndfile
libsolv
libsoup
libspectre
libsrtp
libssh
libssh2
libstoragemgmt
@@ -898,6 +1285,7 @@ lzip
lzo
m4
make
makedepend
man-db
man-pages
mariadb
@@ -932,6 +1320,7 @@ motd-update
motif
mozjs
mozjs38
mozjs52
mpc
mpfr
mpg123
@@ -955,7 +1344,6 @@ nbconvert
nbformat
nbsphinx
ncurses
ncurses-compat
ndctl
ndg_httpsclient
neofetch
@@ -1024,6 +1412,7 @@ openvswitch
opus
opusfile
orc
orca
ordereddict
ostree
ovirt-guest-agent
@@ -1059,7 +1448,9 @@ perl-B-Hooks-EndOfScope
perl-CPAN-Meta-Check
perl-Capture-Tiny
perl-Class-Data-Inheritable
perl-Class-Inspector
perl-Class-Singleton
perl-Class-Tiny
perl-Crypt-SSLeay
perl-DBI
perl-DateTime
@@ -1075,7 +1466,13 @@ perl-Error
perl-Eval-Closure
perl-Exception-Class
perl-Exporter-Tiny
perl-ExtUtils-Config
perl-ExtUtils-Helpers
perl-ExtUtils-InstallPaths
perl-File-Copy-Recursive
perl-File-Listing
perl-File-ShareDir
perl-File-ShareDir-Install
perl-File-Slurp
perl-HTML-Parser
perl-HTML-Tagset
@@ -1100,6 +1497,7 @@ perl-MIME-Base64
perl-MRO-Compat
perl-Math-BigInt-GMP
perl-Module-Build
perl-Module-Build-Tiny
perl-Module-Implementation
perl-Module-Install
perl-Module-Pluggable
@@ -1112,6 +1510,7 @@ perl-Package-Stash
perl-Params-Validate
perl-Params-ValidationCompiler
perl-Path-Class
perl-Path-Tiny
perl-Role-Tiny
perl-Scope-Guard
perl-Specio
@@ -1119,10 +1518,14 @@ perl-Sub-Exporter-Progressive
perl-Sub-Identify
perl-Sub-Info
perl-Sub-Quote
perl-Sub-Uplevel
perl-TAP-Harness-Archive
perl-Term-Table
perl-Test-Deep
perl-Test-Exception
perl-Test-Fatal
perl-Test-File
perl-Test-File-ShareDir-Dist
perl-Test-Needs
perl-Test-NoWarnings
perl-Test-Output
@@ -1130,7 +1533,9 @@ perl-Test-Pod
perl-Test-Requires
perl-Test-Simple
perl-Test-Taint
perl-Test-Warn
perl-Test-Warnings
perl-Test-utf8
perl-Test2-Suite
perl-Text-Autoformat
perl-Text-CSV_XS
@@ -1195,6 +1600,7 @@ pyOpenSSL
pyaml
pyasn1
pyasn1-modules
pyatspi
pycairo
pycodestyle
pycparser
@@ -1272,12 +1678,14 @@ qtsvg
qttools
qttranslations
qtvirtualkeyboard
qtwayland
qtwebchannel
qtwebsockets
qtx11extras
qtxmlpatterns
quagga
quilt
ragel
randrproto
rdma-core
re2c
@@ -1296,6 +1704,7 @@ rng-tools
rope
rpcbind
rpm
rr
rsa
rsync
ruby
@@ -1306,6 +1715,7 @@ rxvt-unicode
s2tc
s3transfer
samba
sassc
satyr
sbc
sbsigntools
@@ -1320,6 +1730,7 @@ screen
scripttest
scrnsaverproto
seaborn
seahorse
secretstorage
sed
setproctitle
@@ -1367,6 +1778,7 @@ strace
subunit
sudo
sure
suricata
swig
swupd-client
swupd-overdue
@@ -1421,6 +1833,7 @@ tqdm
traceback2
traceroute
tracker
tracker-miners
traitlets
tree
typed-ast
@@ -1446,17 +1859,20 @@ util-linux
util-macros
uwsgi
v4l-utils
vala
valgrind
vcversioner
videoproto
vim
vim-go
vinagre
vino
virt-manager
virt-viewer
virtualenv
vlc
volume_key
vorbis-tools
vsqlite
vte
vulkan-sdk
@@ -1469,11 +1885,14 @@ webencodings
webkitgtk
websocket_client
websockify
weechat
weston
wget
wheel
which
widgetsnbextension
wireless-regdb-master
woff2
wol
wpa_supplicant
wrapt
@@ -1492,6 +1911,7 @@ xclip
xcmiscproto
xcursor-themes
xcursorgen
xdg-desktop-portal
xdg-user-dirs
xdg-user-dirs-gtk
xdg-utils
+1 -1
View File
@@ -149,4 +149,4 @@ fi
echo -en "\n************************\n"
echo 'Workspace has been set up in the "clearlinux" directory'
echo 'NOTE: logout and log back in or run "newgrp kvm" to finalize the setup process'
echo 'NOTE: logout and log back in to finalize the setup process'