Compare commits

..
38 Commits
Author SHA1 Message Date
clrbuilder 312f6398a9 Update packages file for version 36620
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-07-14 04:10:43 -07:00
clrbuilder ee431ed33f Update packages file for version 36610
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-07-12 04:11:32 -07:00
William Douglas 349d8c6645 Add CLEANUP=1 for when update runs autospec 2022-07-08 08:17:29 -07:00
William Douglas 1aecb3dcf5 Add an update target to common
Add an update target to common whose purpose is to be able to check if
a new version exists, update to the new version and push the updated
version to koji.

This target will cause bump.list content to be rebuilt as well.

Signed-off-by: William Douglas <william.douglas@intel.com>
2022-07-08 08:03:07 -07:00
clrbuilder be88b856de Update packages file for version 36600
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-07-07 04:10:52 -07:00
William Douglas e610c46517 Makefile.common: Add bump.list to make koji
Add the ability for make koji to look a bump.list file in the package
directory and make and koji all the packages listed in that file.

This is useful for package's that depend on the updated package and
should be rebuilt after the original package is.

If for some reason this functionality isn't desired make koji-nowait
will not look at the bump.list.

Signed-off-by: William Douglas <william.douglas@intel.com>
2022-07-05 12:01:09 -07:00
Patrick McCarty f78b8dad99 common: add new koji-waitrepo command
This command wraps `koji wait-repo` for convenient use within the common
tooling.

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2022-07-05 18:21:59 +00:00
clrbuilder 19e7a08dee Update packages file for version 36590
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-07-05 04:11:08 -07:00
clrbuilder 3a7b28e5fa Update packages file for version 36580
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-06-30 04:17:23 -07:00
clrbuilder 8997481daf Update packages file for version 36530
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-06-23 04:10:06 -07:00
clrbuilder 896832831f Update packages file for version 36510
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-06-17 09:40:52 -07:00
clrbuilder 1978d3268c Update packages file for version 36460
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-06-09 12:16:28 -07:00
clrbuilder 7d9588c779 Update packages file for version 36440
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-06-07 04:10:08 -07:00
clrbuilder 7794fa715c Update packages file for version 36420
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-05-31 04:09:27 -07:00
clrbuilder 1c79b04db3 Update packages file for version 36400
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-05-24 13:30:28 -07:00
clrbuilder b52570a7ad Update packages file for version 36390
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-05-24 04:09:27 -07:00
clrbuilder 1a0e21943f Update packages file for version 36380
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-05-23 06:36:33 -07:00
clrbuilder c4fe341972 Update packages file for version 36360
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-05-19 04:09:30 -07:00
clrbuilder 23cc04134a Update packages file for version 36340
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-05-17 04:10:06 -07:00
clrbuilder 9614d9e14e Update packages file for version 36290
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-05-12 04:09:28 -07:00
clrbuilder 7f94ad0fc5 Update packages file for version 36280
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-05-10 04:11:21 -07:00
clrbuilder 443c6b9694 Update packages file for version 36270
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-05-05 04:09:25 -07:00
clrbuilder 5d7039fb9a Update packages file for version 36250
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-04-28 04:09:45 -07:00
clrbuilder f2de7b7dc6 Update packages file for version 36230
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-04-26 04:10:30 -07:00
clrbuilder 446c96bf65 Update packages file for version 36220
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-04-21 06:17:20 -07:00
clrbuilder 0e420e434d Update packages file for version 36210
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-04-19 05:29:14 -07:00
clrbuilder be0cdd6c5d Update packages file for version 36200
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-04-18 07:47:06 -07:00
clrbuilder 7111d57d6c Update packages file for version 36170
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-04-14 04:08:26 -07:00
clrbuilder 96850c538a Update packages file for version 36160
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-04-12 04:27:31 -07:00
Patrick McCarty 96fd23e88b Specify branch name of main for git init of package repos
The default package repo branches are now `main`.

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2022-04-11 16:13:18 -07:00
William Douglas 6f5fd11673 Move packages content over to main branch
World has moved to main, start updating accordingly.

Signed-off-by: William Douglas <william.douglas@intel.com>
2022-04-08 01:22:35 -07:00
clrbuilder 7ea85257af Update packages file for version 36140
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-04-06 12:50:53 -07:00
Patrick McCarty 4ccec6a4d0 diff: use git diff --stat instead of requiring diffstat
Using the --stat flag also has the benefit of automatically colorizing
the output when appropriate.

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2022-04-05 12:35:09 -07:00
clrbuilder c76272e46a Update packages file for version 36130
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-04-05 04:10:03 -07:00
Patrick McCarty 1559d4e0b5 log: improve query results
Comparing whether commit hashes for `HEAD` and `origin/master` are not
equal captures three typical scenarios:

1. HEAD is behind origin/master
2. HEAD is ahead of origin/master
3. HEAD is ahead of an older commit in origin/master

The intent of `make log` is to capture cases #2 and #3, and not #1, so
use `git rev-list ...` with the appropriate commit range instead.

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2022-03-31 22:28:23 -07:00
clrbuilder 3ab672318e Update packages file for version 36120
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-03-31 04:09:14 -07:00
Patrick McCarty 890363f65f Handle CLEANUP variable similarly for make autospec
To make the handling of the variable more uniform, set autospec's
cleanup flag using make conditional constructs rather than shell
expansion.

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2022-03-30 11:07:02 -07:00
Patrick McCarty e90b6f8c72 Support CLEANUP environment variable for more commands
Now, whenever the `CLEANUP` variable is set in the environment, `make
build` and `make build-nocheck` will automatically clean up the build
chroot after a build completes. The same feature has been supported by
`make autospec` for many years.

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2022-03-30 11:06:28 -07:00
4 changed files with 162 additions and 32 deletions
+58 -11
View File
@@ -26,6 +26,9 @@ WITH_SUDO = $(shell cmp /usr/bin/mock /usr/sbin/mock &> /dev/null && echo sudo )
MOCK_SMP_FLAGS=$(patsubst -j%, -D_smp_mflags\ -j%,$(filter -j%, $(MAKEFLAGS))) MOCK_SMP_FLAGS=$(patsubst -j%, -D_smp_mflags\ -j%,$(filter -j%, $(MAKEFLAGS)))
MOCK ?= $(WITH_SUDO) /usr/bin/mock -r $(MOCK_CONFIG_VAL) $(MOCK_SMP_FLAGS) $(MOCK_OPTS) MOCK ?= $(WITH_SUDO) /usr/bin/mock -r $(MOCK_CONFIG_VAL) $(MOCK_SMP_FLAGS) $(MOCK_OPTS)
MOCK_CLEANUP_OPT := $(if $(CLEANUP),--cleanup-after,--no-cleanup-after)
AUTOSPEC_CLEANUP_OPT := $(if $(CLEANUP),-C)
ifneq ($(wildcard upstream),) ifneq ($(wildcard upstream),)
__allsources := $(notdir $(strip $(shell cat upstream))) __allsources := $(notdir $(strip $(shell cat upstream)))
__missingsources := $(filter-out $(wildcard ${__allsources}), ${__allsources}) __missingsources := $(filter-out $(wildcard ${__allsources}), ${__allsources})
@@ -71,7 +74,7 @@ mockproper:
$(MOCK) --clean --uniqueext=$(PKG_NAME) $(MOCK) --clean --uniqueext=$(PKG_NAME)
configemail: configemail:
@test -d .git || git init @test -d .git || git init -b main
@$(call subjectprefix,$(PKG_NAME)) @$(call subjectprefix,$(PKG_NAME))
@echo -n "Subject prefix email configured to: " @echo -n "Subject prefix email configured to: "
@git config --get format.subjectPrefix @git config --get format.subjectPrefix
@@ -88,7 +91,7 @@ prebuild-checks:
#help which creates a src.rpm file from the spec file. #help which creates a src.rpm file from the spec file.
#help Use MOCK_OPTS environment varible to pass down arbitrary mock options. #help Use MOCK_OPTS environment varible to pass down arbitrary mock options.
build: prebuild-checks configemail $(SPECFILE) upstream $(SRPMFILE) build: prebuild-checks configemail $(SPECFILE) upstream $(SRPMFILE)
$(MOCK) $(SRPMFILE) --result=results/ --no-cleanup-after --uniqueext=$(PKG_NAME) $(MOCK) $(SRPMFILE) --result=results/ $(MOCK_CLEANUP_OPT) --uniqueext=$(PKG_NAME)
$(MAKE) link-new-rpms PKG_REPO_DIR="." $(MAKE) link-new-rpms PKG_REPO_DIR="."
@perl $(TOPLVL)/projects/common/logcheck.pl results/build.log @perl $(TOPLVL)/projects/common/logcheck.pl results/build.log
@perl $(TOPLVL)/projects/common/count.pl results/build.log &> testresults @perl $(TOPLVL)/projects/common/count.pl results/build.log &> testresults
@@ -96,7 +99,7 @@ build: prebuild-checks configemail $(SPECFILE) upstream $(SRPMFILE)
#help build-nocheck: Same as 'make build', but do not run the package's test suite. #help build-nocheck: Same as 'make build', but do not run the package's test suite.
build-nocheck: configemail $(SPECFILE) upstream $(SRPMFILE) build-nocheck: configemail $(SPECFILE) upstream $(SRPMFILE)
$(MOCK) $(SRPMFILE) --nocheck --result=results/ --no-cleanup-after --uniqueext=$(PKG_NAME) $(MOCK) $(SRPMFILE) --nocheck --result=results/ $(MOCK_CLEANUP_OPT) --uniqueext=$(PKG_NAME)
$(MAKE) link-new-rpms PKG_REPO_DIR="." $(MAKE) link-new-rpms PKG_REPO_DIR="."
@perl $(TOPLVL)/projects/common/logcheck.pl results/build.log @perl $(TOPLVL)/projects/common/logcheck.pl results/build.log
@perl $(TOPLVL)/projects/common/count.pl results/build.log &> testresults @perl $(TOPLVL)/projects/common/count.pl results/build.log &> testresults
@@ -117,7 +120,7 @@ shell:
.PHONY: $(SRPMFILE) .PHONY: $(SRPMFILE)
$(SRPMFILE): $(SPECFILE) $(__allsources) localreponotice clean-old-content $(SRPMFILE): $(SPECFILE) $(__allsources) localreponotice clean-old-content
@$(MAKE) spdxcheck @$(MAKE) spdxcheck
$(MOCK) --buildsrpm --source=./ --spec=$(SPECFILE) --result=results/ --no-cleanup-after --uniqueext=$(PKG_NAME) $(MOCK) --buildsrpm --source=./ --spec=$(SPECFILE) --result=results/ $(MOCK_CLEANUP_OPT) --uniqueext=$(PKG_NAME)
mv results/root.log results/srpm-root.log mv results/root.log results/srpm-root.log
mv results/build.log results/srpm-build.log mv results/build.log results/srpm-build.log
@@ -129,7 +132,7 @@ $(SRPMFILE): $(SPECFILE) $(__allsources) localreponotice clean-old-content
# initialized locally, or if the remote contains no commits. # initialized locally, or if the remote contains no commits.
pullrebase: pullrebase:
@if [ -z "$$SKIP_GIT" ] && [ -e .git ]; then \ @if [ -z "$$SKIP_GIT" ] && [ -e .git ]; then \
if ! git rev-parse --verify --quiet origin/master > /dev/null; then \ if ! git rev-parse --verify --quiet origin/main > /dev/null; then \
echo "Remote not yet initialized. Continuing."; \ echo "Remote not yet initialized. Continuing."; \
exit 0; \ exit 0; \
fi; \ fi; \
@@ -143,7 +146,7 @@ pullrebase:
echo "Current branch up-to-date. Continuing."; \ echo "Current branch up-to-date. Continuing."; \
exit 0; \ exit 0; \
fi; \ fi; \
echo "Rebasing to origin/master"; \ echo "Rebasing to origin/main"; \
if git status --porcelain | grep -q '^.[^?]'; \ if git status --porcelain | grep -q '^.[^?]'; \
then \ then \
git stash save; \ git stash save; \
@@ -179,7 +182,7 @@ autospec: preautospec-checks pullrebase localreponotice clean-old-content
$${SETVERSION:+ --version $${SETVERSION}} \ $${SETVERSION:+ --version $${SETVERSION}} \
$${NON_INTERACTIVE:+ --non_interactive} \ $${NON_INTERACTIVE:+ --non_interactive} \
$${SKIP_GIT:+ --skip-git} \ $${SKIP_GIT:+ --skip-git} \
$${CLEANUP:+ -C} \ $(AUTOSPEC_CLEANUP_OPT) \
$(firstword $(NEWURL) $(URL)); $(firstword $(NEWURL) $(URL));
$(MAKE) link-new-rpms PKG_REPO_DIR="." $(MAKE) link-new-rpms PKG_REPO_DIR="."
@$(MAKE) spdxcheck @$(MAKE) spdxcheck
@@ -307,8 +310,8 @@ prekoji-checks:
koji: prekoji-checks kojidef koji: prekoji-checks kojidef
@$(MAKE) spdxcheck @$(MAKE) spdxcheck
@$(MAKE) checkblacklist @$(MAKE) checkblacklist
@if [ "$(CURRENT_BRANCH)" != "master" ] && [ "$(CURRENT_BRANCH)" != "main" ]; then \ @if [ "$(CURRENT_BRANCH)" != "main" ]; then \
echo "Error: Must be on the \"master\" or \"main\" branch to submit to koji" >&2; \ echo "Error: Must be on the \"main\" branch to submit to koji" >&2; \
exit 1; \ exit 1; \
fi; \ fi; \
if ! git diff --quiet HEAD -- ${SPECFILE}; then \ if ! git diff --quiet HEAD -- ${SPECFILE}; then \
@@ -316,7 +319,7 @@ koji: prekoji-checks kojidef
exit 1; \ exit 1; \
fi; \ fi; \
git fetch; \ git fetch; \
if git rev-parse --verify --quiet origin/master >/dev/null; then \ if git rev-parse --verify --quiet origin/main >/dev/null; then \
git pull --rebase; \ git pull --rebase; \
fi; \ fi; \
if git ls-remote --tags --exit-code origin $(SRPMVERS) >/dev/null; then \ if git ls-remote --tags --exit-code origin $(SRPMVERS) >/dev/null; then \
@@ -324,8 +327,14 @@ koji: prekoji-checks kojidef
exit 1; \ exit 1; \
fi fi
git tag $(SRPMVERS) git tag $(SRPMVERS)
git push origin $(CURRENT_BRANCH):master refs/tags/$(SRPMVERS) git push origin $(CURRENT_BRANCH):main refs/tags/$(SRPMVERS)
$(KOJI_CMD) build $$KOJI_NOWAIT $(KOJI_TAG) $(PKG_BASE_URL)/$(PKG_NAME)?#$(SRPMVERS) $(KOJI_CMD) build $$KOJI_NOWAIT $(KOJI_TAG) $(PKG_BASE_URL)/$(PKG_NAME)?#$(SRPMVERS)
@if [ -f bump.list ]; then \
$(MAKE) koji-waitrepo; \
for bump_dep in $$(cat bump.list); do \
(cd ../"$$bump_dep" && $(MAKE) bump && $(MAKE) koji-nowait) \
done \
fi
#help rekoji: In case a previous 'make koji' failed, trigger a rebuild for the #help rekoji: In case a previous 'make koji' failed, trigger a rebuild for the
#help same tag. #help same tag.
@@ -349,6 +358,44 @@ koji-nowait:
rekoji-nowait: rekoji-nowait:
$(MAKE) KOJI_NOWAIT="--nowait --background" rekoji $(MAKE) KOJI_NOWAIT="--nowait --background" rekoji
#help koji-waitrepo: Wait for current package changes to become available in the
#help koji repo. If PKG_NAME is overridden on the command line, wait on changes for
#help that package instead. This capability allows the developer to "chain" builds
#help for submission to koji according to the state of the package repos on their
#help system. Additional options for `koji wait-repo` can be specified via the
#help WAIT_OPTS variable.
koji-waitrepo: kojidef
@if [[ ! "${PKG_NAME}" =~ ^[A-Za-z0-9._+-]+$$ ]]; then \
echo "[ERROR] Invalid package name \"${PKG_NAME}\""; \
exit 1; \
fi; \
if [[ "${PKG_NAME}" != "$(notdir ${CURDIR})" ]]; then \
$(MAKE) -s -C ../${PKG_NAME} koji-waitrepo; \
else \
koji wait-repo --build=${SRPMVERS} ${WAIT_OPTS} ${KOJI_TAG}-build; \
fi
update-versions:
.PHONY: update
#help update: Tries to run update.sh if it exists. update.sh is expected
#help to check for version updates, exit (successfully) if none are found
#help or update the package and push the update to koji.
#help If no update.sh exists, update the version, autospec and push the
#help update to koji (bumping the bump.list if found).
update:
@if [ -f update.sh ]; then \
./update.sh; \
else \
$(MAKE) -s update-versions && \
$(MAKE) autospec CLEANUP=1 && \
if [ -f bump.list ]; then \
$(MAKE) -s koji; \
else \
$(MAKE) -s koji-nowait; \
fi \
fi \
logcheck: logcheck:
@perl $(TOPLVL)/projects/common/logcheck.pl results/build.log @perl $(TOPLVL)/projects/common/logcheck.pl results/build.log
+17 -12
View File
@@ -68,13 +68,18 @@ ${PULL_PKGS}:
if [ ! -d "$$p/.git" ]; then echo "Nothing to pull for $$p - $$p/.git missing"; exit 0; fi; \ if [ ! -d "$$p/.git" ]; then echo "Nothing to pull for $$p - $$p/.git missing"; exit 0; fi; \
cd "$$p" ; \ cd "$$p" ; \
if git remote | grep origin >/dev/null 2>&1; then \ if git remote | grep origin >/dev/null 2>&1; then \
O=$$(git rev-parse origin/master 2>/dev/null); \ case "$$p" in \
("projects/"*) BRANCH=master ;; \
("packages/"*) BRANCH=main ;; \
(*) BRANCH=master ;; \
esac; \
O=$$(git rev-parse origin/"$$BRANCH" 2>/dev/null); \
git fetch --tags origin >/dev/null 2>&1; \ git fetch --tags origin >/dev/null 2>&1; \
N=$$(git rev-parse origin/master); \ N=$$(git rev-parse origin/"$$BRANCH"); \
if [ "$$O" != "$$N" ]; then \ if [ "$$O" != "$$N" ]; then \
echo "Updating: $$p"; \ echo "Updating: $$p"; \
if ! git merge --ff-only origin/master 2>/dev/null; then \ if ! git merge --ff-only origin/"$$BRANCH" 2>/dev/null; then \
echo "$$p: Cannot fast-forward $$(git rev-parse --abbrev-ref HEAD) to origin/master" ; \ echo "$$p: Cannot fast-forward $$(git rev-parse --abbrev-ref HEAD) to origin/$$BRANCH" ; \
fi ; \ 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; \ 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 ; \ fi ; \
@@ -159,19 +164,19 @@ status: $(PACKAGES_FILE) $(addprefix packages/,$(PKGS_LOCAL))
if [ -d "$$p/.git" ] && [ -n "$$(git -C $$p status -uno --porcelain)" ]; then echo "Uncommitted changes in $$p:"; git -C "$$p" status --short; fi ;\ if [ -d "$$p/.git" ] && [ -n "$$(git -C $$p status -uno --porcelain)" ]; then echo "Uncommitted changes in $$p:"; git -C "$$p" status --short; fi ;\
done done
#help diff: Runs git diff for all package repos and displays the output using #help diff: Runs git diff for all package repos and displays the diffstat using
#help diffstat. Requires that diffstat is installed. #help the --stat flag.
diff: $(PACKAGES_FILE) $(addprefix packages/,$(PKGS_LOCAL)) diff: $(PACKAGES_FILE) $(addprefix packages/,$(PKGS_LOCAL))
@for p in projects/common $(addprefix packages/,$(PKGS_LOCAL)); do \ @for p in projects/common $(addprefix packages/,$(PKGS_LOCAL)); do \
(cd $$p; git status --porcelain | grep -vq '^?? ' && (echo "Uncommitted changes in: $$p"; git diff | diffstat -p1); :) ;\ (cd $$p; git status --porcelain | grep -vq '^?? ' && (echo "Uncommitted changes in: $$p"; git diff --stat); :) ;\
done done
#help log: Run git log origin/master..HEAD for all package repos, thus #help log: Run git log origin/main..HEAD for all package repos, thus
#help displaying any committed but unpushed changes. #help displaying any committed but unpushed changes.
log: $(PACKAGES_FILE) $(addprefix packages/,$(PKGS_LOCAL)) log: $(PACKAGES_FILE) $(addprefix packages/,$(PKGS_LOCAL))
@for p in projects/common $(addprefix packages/,$(PKGS_LOCAL)); do \ @for p in projects/common $(addprefix packages/,$(PKGS_LOCAL)); do \
( cd $$p; if [ "$$(git rev-parse --verify HEAD)" != "$$(git rev-parse --verify origin/master)" ] ; then \ ( cd $$p; if [ -n "$$(git rev-list origin/main..HEAD)" ] ; then \
echo $$p ; git --no-pager log --pretty="format:%s" origin/master..HEAD ; echo ; echo;\ echo $$p ; git --no-pager log --pretty="format:%s" origin/main..HEAD ; echo ; echo;\
fi ; ) \ fi ; ) \
done done
@@ -211,7 +216,7 @@ autospecnew: preautospecnew-checks localreponotice
mkdir -p $(TOPLVL)/packages/$(NAME); \ mkdir -p $(TOPLVL)/packages/$(NAME); \
( \ ( \
cd $(TOPLVL)/packages/$(NAME); \ cd $(TOPLVL)/packages/$(NAME); \
git init; \ git init -b main; \
git remote add origin $(PKG_BASE_URL)/$(NAME); \ git remote add origin $(PKG_BASE_URL)/$(NAME); \
$(call gitoliteurl,packages/$(NAME)); \ $(call gitoliteurl,packages/$(NAME)); \
$(call subjectprefix,$(NAME)); \ $(call subjectprefix,$(NAME)); \
@@ -262,7 +267,7 @@ autospecnewgo: preautospecnew-checks localreponotice
mkdir -p $(TOPLVL)/packages/$(NAME); \ mkdir -p $(TOPLVL)/packages/$(NAME); \
( \ ( \
cd $(TOPLVL)/packages/$(NAME); \ cd $(TOPLVL)/packages/$(NAME); \
git init; \ git init -b main; \
git remote add origin $(PKG_BASE_URL)/$(NAME); \ git remote add origin $(PKG_BASE_URL)/$(NAME); \
$(call gitoliteurl,packages/$(NAME)); \ $(call gitoliteurl,packages/$(NAME)); \
$(call subjectprefix,$(NAME)); \ $(call subjectprefix,$(NAME)); \
+1 -1
View File
@@ -23,7 +23,7 @@ Download the [user setup](user-setup.sh) script and run it on your Clear Linux
system as an unprivileged user. system as an unprivileged user.
``` ```
$ curl -O https://raw.githubusercontent.com/clearlinux/common/master/user-setup.sh $ curl -O https://raw.githubusercontent.com/clearlinux/common/main/user-setup.sh
$ chmod +x user-setup.sh $ chmod +x user-setup.sh
$ ./user-setup.sh $ ./user-setup.sh
``` ```
+86 -8
View File
@@ -49,6 +49,7 @@ QGIS
R R
R-AER R-AER
R-AMORE R-AMORE
R-ATR
R-Amelia R-Amelia
R-AmesHousing R-AmesHousing
R-BB R-BB
@@ -165,6 +166,7 @@ R-Rserve
R-Rsolnp R-Rsolnp
R-Rtsne R-Rtsne
R-Rvmmin R-Rvmmin
R-Ryacas
R-SDMTools R-SDMTools
R-SGP R-SGP
R-SGPdata R-SGPdata
@@ -408,6 +410,7 @@ R-fixest
R-flashClust R-flashClust
R-flexmix R-flexmix
R-flexsurv R-flexsurv
R-flextable
R-float R-float
R-fontBitstreamVera R-fontBitstreamVera
R-fontLiberation R-fontLiberation
@@ -431,6 +434,9 @@ R-future
R-future.apply R-future.apply
R-g.data R-g.data
R-gam R-gam
R-gamlss
R-gamlss.data
R-gamlss.dist
R-gamm4 R-gamm4
R-gargle R-gargle
R-gbRd R-gbRd
@@ -503,6 +509,7 @@ R-influenceR
R-ini R-ini
R-inline R-inline
R-insight R-insight
R-interp
R-inum R-inum
R-invgamma R-invgamma
R-ipred R-ipred
@@ -587,6 +594,7 @@ R-mda
R-measures R-measures
R-memisc R-memisc
R-memoise R-memoise
R-metadat
R-metafor R-metafor
R-mi R-mi
R-mice R-mice
@@ -640,12 +648,14 @@ R-npsurv
R-numDeriv R-numDeriv
R-nws R-nws
R-nycflights13 R-nycflights13
R-officer
R-openssl R-openssl
R-openxlsx R-openxlsx
R-optextras R-optextras
R-optimx R-optimx
R-optparse R-optparse
R-ordinal R-ordinal
R-ordinalCont
R-orthopolynom R-orthopolynom
R-pROC R-pROC
R-packrat R-packrat
@@ -935,6 +945,7 @@ R-tm
R-tmvnsim R-tmvnsim
R-toOrdinal R-toOrdinal
R-topicmodels R-topicmodels
R-tram
R-tree R-tree
R-triebeard R-triebeard
R-trimcluster R-trimcluster
@@ -1059,9 +1070,7 @@ analitza
ansible ansible
ansible-core ansible-core
antlr4-python3-runtime antlr4-python3-runtime
anyio
apache-ant apache-ant
applaunchservices
appstream appstream
appstream-glib appstream-glib
apr apr
@@ -1125,6 +1134,7 @@ bcache-tools
bcc bcc
bcftools bcftools
bdftopcf bdftopcf
bemenu
bijiben bijiben
bind-utils bind-utils
binutils binutils
@@ -1200,7 +1210,6 @@ cdparanoia
ceph ceph
ceph-deploy ceph-deploy
cereal cereal
certbot
cfitsio cfitsio
cgdb cgdb
cgit cgit
@@ -1292,6 +1301,7 @@ compat-lua-53
compat-nettle-soname7 compat-nettle-soname7
compat-pangomm-soname14 compat-pangomm-soname14
compat-poppler-soname112 compat-poppler-soname112
compat-poppler-soname117
compat-protobuf-soname23 compat-protobuf-soname23
compat-readline-soname5 compat-readline-soname5
compat-rest-soname07 compat-rest-soname07
@@ -1364,6 +1374,7 @@ diffutils
digikam digikam
ding-libs ding-libs
dino dino
directx-headers
direwolf direwolf
dist-pam-configs dist-pam-configs
distro distro
@@ -1398,6 +1409,7 @@ dropwatch
dssi dssi
dstat dstat
dtc dtc
duktape
dunst dunst
duperemove duperemove
dvisvgm dvisvgm
@@ -1494,7 +1506,6 @@ fribidi
fritzing-app fritzing-app
fs fs
fsearch fsearch
funcparserlib
fuse fuse
fwupd fwupd
fwupd-efi fwupd-efi
@@ -1503,6 +1514,7 @@ gawk
gc gc
gcab gcab
gcc gcc
gcc11
gcc7 gcc7
gcc8 gcc8
gcc9 gcc9
@@ -2010,6 +2022,7 @@ ledmon
lensfun lensfun
leptonica leptonica
less less
level-zero
leveldb leveldb
lftp lftp
libArcus libArcus
@@ -2068,6 +2081,7 @@ libcomps
libconfig libconfig
libcroco libcroco
libcryptui libcryptui
libcuckoo
libcxx libcxx
libdaemon libdaemon
libdatrie libdatrie
@@ -2323,6 +2337,7 @@ lksctp-tools
llvm llvm
llvm11 llvm11
llvm12 llvm12
llvm13
lm-sensors lm-sensors
lmdb lmdb
logrotate logrotate
@@ -2394,6 +2409,11 @@ mesa
mesa-demos mesa-demos
meson meson
messagelib messagelib
meta-c-basic
meta-desktop-gnome
meta-desktop-kde
meta-os-core
meta-os-core-plus
metacity metacity
metis metis
metrics-discovery metrics-discovery
@@ -2434,7 +2454,6 @@ mosh
mosquitto mosquitto
motd-update motd-update
motif motif
mozjs78
mozjs91 mozjs91
mpc mpc
mpfr mpfr
@@ -2603,6 +2622,7 @@ pbzip2
pciutils pciutils
pcmanfm pcmanfm
pcmanfm-qt pcmanfm-qt
pcp
pcre pcre
pcre2 pcre2
pcs pcs
@@ -3057,6 +3077,7 @@ perl-Metrics-Any
perl-Minion perl-Minion
perl-Mixin-Linewise perl-Mixin-Linewise
perl-Mock-Config perl-Mock-Config
perl-Mock-Sub
perl-Modern-Perl perl-Modern-Perl
perl-Module-Build perl-Module-Build
perl-Module-Build-Tiny perl-Module-Build-Tiny
@@ -3542,6 +3563,7 @@ poppler
poppler-data-clr-rename poppler-data-clr-rename
popt popt
portaudio portaudio
portmidi
postfix postfix
postgis postgis
postgresql postgresql
@@ -3595,17 +3617,22 @@ pypi-aiofiles
pypi-aiohttp pypi-aiohttp
pypi-aiohttp_cors pypi-aiohttp_cors
pypi-aiosignal pypi-aiosignal
pypi-aiosmtpd
pypi-alabaster pypi-alabaster
pypi-altgraph
pypi-ansi2html pypi-ansi2html
pypi-ansible_compat pypi-ansible_compat
pypi-ansible_pygments pypi-ansible_pygments
pypi-anyio
pypi-apacheconfig pypi-apacheconfig
pypi-apipkg pypi-apipkg
pypi-appdirs pypi-appdirs
pypi-applicationinsights pypi-applicationinsights
pypi-argcomplete pypi-argcomplete
pypi-argh
pypi-argon2_cffi pypi-argon2_cffi
pypi-argon2_cffi_bindings pypi-argon2_cffi_bindings
pypi-argparse
pypi-arrow pypi-arrow
pypi-asgiref pypi-asgiref
pypi-asn1crypto pypi-asn1crypto
@@ -3617,9 +3644,13 @@ pypi-astunparse
pypi-asv pypi-asv
pypi-async_generator pypi-async_generator
pypi-async_timeout pypi-async_timeout
pypi-asyncssh
pypi-asynctest pypi-asynctest
pypi-atomicwrites pypi-atomicwrites
pypi-atomicwrites_homeassistant
pypi-atpublic
pypi-attrs pypi-attrs
pypi-automat
pypi-awesomeversion pypi-awesomeversion
pypi-awscrt pypi-awscrt
pypi-awxkit pypi-awxkit
@@ -3637,6 +3668,7 @@ pypi-backcall
pypi-backports.cached_property pypi-backports.cached_property
pypi-backports.entry_points_selectable pypi-backports.entry_points_selectable
pypi-backports.functools_lru_cache pypi-backports.functools_lru_cache
pypi-backports.shutil_get_terminal_size
pypi-backports.ssl_match_hostname pypi-backports.ssl_match_hostname
pypi-backports.weakref pypi-backports.weakref
pypi-bash_kernel pypi-bash_kernel
@@ -3668,8 +3700,11 @@ pypi-cached_property
pypi-cachetools pypi-cachetools
pypi-cachy pypi-cachy
pypi-capturer pypi-capturer
pypi-cattrs
pypi-cchardet pypi-cchardet
pypi-cerberus pypi-cerberus
pypi-certbot
pypi-certbot_dns_google
pypi-certifi pypi-certifi
pypi-cffi pypi-cffi
pypi-cffsubr pypi-cffsubr
@@ -3700,10 +3735,10 @@ pypi-columnize
pypi-commonmark pypi-commonmark
pypi-complete pypi-complete
pypi-compreffor pypi-compreffor
pypi-comtypes
pypi-configargparse pypi-configargparse
pypi-configparser pypi-configparser
pypi-cons pypi-cons
pypi-constantly
pypi-contextlib2 pypi-contextlib2
pypi-contextvars pypi-contextvars
pypi-cookiecutter pypi-cookiecutter
@@ -3745,6 +3780,7 @@ pypi-django_compressor
pypi-django_discover_runner pypi-django_discover_runner
pypi-django_nose pypi-django_nose
pypi-django_pyscss pypi-django_pyscss
pypi-dnacentersdk
pypi-dns_lexicon pypi-dns_lexicon
pypi-dnspython pypi-dnspython
pypi-docker pypi-docker
@@ -3761,8 +3797,10 @@ pypi-enrich
pypi-entrypoints pypi-entrypoints
pypi-envs pypi-envs
pypi-eternalegypt pypi-eternalegypt
pypi-etils
pypi-etuples pypi-etuples
pypi-evdev pypi-evdev
pypi-exceptiongroup
pypi-exdir pypi-exdir
pypi-execnet pypi-execnet
pypi-executing pypi-executing
@@ -3780,14 +3818,18 @@ pypi-flake8_blind_except
pypi-flake8_class_newline pypi-flake8_class_newline
pypi-flake8_docstrings pypi-flake8_docstrings
pypi-flake8_import_order pypi-flake8_import_order
pypi-flaky
pypi-flask pypi-flask
pypi-flatten_json pypi-flatten_json
pypi-flit pypi-flit
pypi-flit_core pypi-flit_core
pypi-flit_scm
pypi-fontmath pypi-fontmath
pypi-freezegun pypi-freezegun
pypi-frozenlist pypi-frozenlist
pypi-fsspec pypi-fsspec
pypi-ftfy
pypi-funcparserlib
pypi-future pypi-future
pypi-gast pypi-gast
pypi-gcs_oauth2_boto_plugin pypi-gcs_oauth2_boto_plugin
@@ -3821,6 +3863,7 @@ pypi-h11
pypi-h2 pypi-h2
pypi-h5py pypi-h5py
pypi-hammock pypi-hammock
pypi-hatch_vcs
pypi-hatchling pypi-hatchling
pypi-heapdict pypi-heapdict
pypi-hkp4py pypi-hkp4py
@@ -3835,6 +3878,7 @@ pypi-hug
pypi-humanfriendly pypi-humanfriendly
pypi-humanize pypi-humanize
pypi-hyperframe pypi-hyperframe
pypi-hyperlink
pypi-hypothesis pypi-hypothesis
pypi-icalendar pypi-icalendar
pypi-identify pypi-identify
@@ -3847,6 +3891,7 @@ pypi-imagesize
pypi-immutables pypi-immutables
pypi-importlib_metadata pypi-importlib_metadata
pypi-importlib_resources pypi-importlib_resources
pypi-incremental
pypi-infi.dtypes.iqn pypi-infi.dtypes.iqn
pypi-infi.dtypes.wwn pypi-infi.dtypes.wwn
pypi-inflect pypi-inflect
@@ -3856,6 +3901,7 @@ pypi-iniconfig
pypi-inspursmsdk pypi-inspursmsdk
pypi-intervaltree pypi-intervaltree
pypi-invoke pypi-invoke
pypi-iocapture
pypi-ipaddress pypi-ipaddress
pypi-ipdb pypi-ipdb
pypi-ipdbplugin pypi-ipdbplugin
@@ -3918,6 +3964,7 @@ pypi-khal
pypi-kiwisolver pypi-kiwisolver
pypi-krb5 pypi-krb5
pypi-kubernetes pypi-kubernetes
pypi-langcodes
pypi-lark_parser pypi-lark_parser
pypi-latexcodec pypi-latexcodec
pypi-lazy_object_proxy pypi-lazy_object_proxy
@@ -3931,6 +3978,8 @@ pypi-logical_unification
pypi-logilab_common pypi-logilab_common
pypi-lxml pypi-lxml
pypi-lz4 pypi-lz4
pypi-m2r
pypi-macholib
pypi-mako pypi-mako
pypi-markdown pypi-markdown
pypi-markdown2 pypi-markdown2
@@ -3947,7 +3996,9 @@ pypi-mkdocs
pypi-mkdocs_material pypi-mkdocs_material
pypi-mkdocs_material_extensions pypi-mkdocs_material_extensions
pypi-mock pypi-mock
pypi-modulegraph
pypi-molecule pypi-molecule
pypi-molecule_docker
pypi-monotonic pypi-monotonic
pypi-more_itertools pypi-more_itertools
pypi-moreorless pypi-moreorless
@@ -3973,18 +4024,21 @@ pypi-nbsphinx
pypi-nbval pypi-nbval
pypi-ncclient pypi-ncclient
pypi-ndg_httpsclient pypi-ndg_httpsclient
pypi-neat_python
pypi-nest_asyncio pypi-nest_asyncio
pypi-netapp_lib pypi-netapp_lib
pypi-netdisco pypi-netdisco
pypi-netifaces pypi-netifaces
pypi-networkx pypi-networkx
pypi-nibabel pypi-nibabel
pypi-nltk
pypi-nocasedict pypi-nocasedict
pypi-nocaselist pypi-nocaselist
pypi-nodeenv pypi-nodeenv
pypi-nose pypi-nose
pypi-nose_timer pypi-nose_timer
pypi-notebook pypi-notebook
pypi-notebook_shim
pypi-numpoly pypi-numpoly
pypi-numpy pypi-numpy
pypi-numpydoc pypi-numpydoc
@@ -3997,11 +4051,13 @@ pypi-openshift
pypi-opt_einsum pypi-opt_einsum
pypi-ouimeaux pypi-ouimeaux
pypi-outcome pypi-outcome
pypi-ovirt_imageio
pypi-packaging pypi-packaging
pypi-paho_mqtt pypi-paho_mqtt
pypi-pandocfilters pypi-pandocfilters
pypi-paramiko pypi-paramiko
pypi-parse pypi-parse
pypi-parse_type
pypi-parsedatetime pypi-parsedatetime
pypi-parso pypi-parso
pypi-partd pypi-partd
@@ -4010,8 +4066,10 @@ pypi-pastedeploy
pypi-pastel pypi-pastel
pypi-pathlib pypi-pathlib
pypi-pathspec pypi-pathspec
pypi-pathtools
pypi-patsy pypi-patsy
pypi-pbr pypi-pbr
pypi-pdm_pep517
pypi-pdocs pypi-pdocs
pypi-pecan pypi-pecan
pypi-ped pypi-ped
@@ -4026,6 +4084,7 @@ pypi-pickleshare
pypi-pid pypi-pid
pypi-pillow pypi-pillow
pypi-pip pypi-pip
pypi-pip_tools
pypi-pkgconfig pypi-pkgconfig
pypi-pkginfo pypi-pkginfo
pypi-platformdirs pypi-platformdirs
@@ -4036,6 +4095,7 @@ pypi-pockets
pypi-poetry pypi-poetry
pypi-poetry_core pypi-poetry_core
pypi-polib pypi-polib
pypi-port_for
pypi-portalocker pypi-portalocker
pypi-portend pypi-portend
pypi-portray pypi-portray
@@ -4083,6 +4143,7 @@ pypi-pydot_ng
pypi-pyelftools pypi-pyelftools
pypi-pyfakefs pypi-pyfakefs
pypi-pyflakes pypi-pyflakes
pypi-pygame
pypi-pygithub pypi-pygithub
pypi-pygments pypi-pygments
pypi-pyicu pypi-pyicu
@@ -4092,6 +4153,7 @@ pypi-pylint
pypi-pyls_black pypi-pyls_black
pypi-pymdown_extensions pypi-pymdown_extensions
pypi-pynacl pypi-pynacl
pypi-pynetbox
pypi-pynsist pypi-pynsist
pypi-pyopengl pypi-pyopengl
pypi-pyopenssl pypi-pyopenssl
@@ -4151,12 +4213,14 @@ pypi-python_slugify
pypi-python_string_utils pypi-python_string_utils
pypi-python_xlib pypi-python_xlib
pypi-pythran pypi-pythran
pypi-pytoolconfig
pypi-pytz pypi-pytz
pypi-pytz_deprecation_shim pypi-pytz_deprecation_shim
pypi-pyu2f pypi-pyu2f
pypi-pyusb pypi-pyusb
pypi-pywavelets pypi-pywavelets
pypi-pywbem pypi-pywbem
pypi-pywinrm
pypi-pyxattr pypi-pyxattr
pypi-pyxdameraulevenshtein pypi-pyxdameraulevenshtein
pypi-pyxdg pypi-pyxdg
@@ -4250,6 +4314,7 @@ pypi-sphinx_last_updated_by_git
pypi-sphinx_notfound_page pypi-sphinx_notfound_page
pypi-sphinx_rtd_theme pypi-sphinx_rtd_theme
pypi-sphinx_thebe pypi-sphinx_thebe
pypi-sphinx_theme_builder
pypi-sphinx_togglebutton pypi-sphinx_togglebutton
pypi-sphinxcontrib_apidoc pypi-sphinxcontrib_apidoc
pypi-sphinxcontrib_applehelp pypi-sphinxcontrib_applehelp
@@ -4262,9 +4327,11 @@ pypi-sphinxcontrib_httpdomain
pypi-sphinxcontrib_jsmath pypi-sphinxcontrib_jsmath
pypi-sphinxcontrib_napoleon pypi-sphinxcontrib_napoleon
pypi-sphinxcontrib_newsfeed pypi-sphinxcontrib_newsfeed
pypi-sphinxcontrib_openapi
pypi-sphinxcontrib_plantuml pypi-sphinxcontrib_plantuml
pypi-sphinxcontrib_programoutput pypi-sphinxcontrib_programoutput
pypi-sphinxcontrib_qthelp pypi-sphinxcontrib_qthelp
pypi-sphinxcontrib_redoc
pypi-sphinxcontrib_seqdiag pypi-sphinxcontrib_seqdiag
pypi-sphinxcontrib_serializinghtml pypi-sphinxcontrib_serializinghtml
pypi-sphinxcontrib_svg2pdfconverter pypi-sphinxcontrib_svg2pdfconverter
@@ -4291,6 +4358,7 @@ pypi-testpath
pypi-text_unidecode pypi-text_unidecode
pypi-textdistance pypi-textdistance
pypi-textfsm pypi-textfsm
pypi-texttable
pypi-theano pypi-theano
pypi-threadpoolctl pypi-threadpoolctl
pypi-three_merge pypi-three_merge
@@ -4303,10 +4371,12 @@ pypi-tomli_w
pypi-tomlkit pypi-tomlkit
pypi-toolz pypi-toolz
pypi-tornado pypi-tornado
pypi-tornado_xstatic
pypi-tox pypi-tox
pypi-tqdm pypi-tqdm
pypi-traitlets pypi-traitlets
pypi-trampolim pypi-trampolim
pypi-trimesh
pypi-trio pypi-trio
pypi-trio_websocket pypi-trio_websocket
pypi-ttp pypi-ttp
@@ -4337,6 +4407,7 @@ pypi-ua_parser
pypi-uamqp pypi-uamqp
pypi-uc_micro_py pypi-uc_micro_py
pypi-ufolib2 pypi-ufolib2
pypi-uharfbuzz
pypi-ujson pypi-ujson
pypi-uncertainpy pypi-uncertainpy
pypi-unicodedata2 pypi-unicodedata2
@@ -4362,11 +4433,13 @@ pypi-webcolors
pypi-webencodings pypi-webencodings
pypi-webob pypi-webob
pypi-websocket_client pypi-websocket_client
pypi-websockets
pypi-webtest pypi-webtest
pypi-werkzeug pypi-werkzeug
pypi-wheel pypi-wheel
pypi-widgetsnbextension pypi-widgetsnbextension
pypi-wikipedia pypi-wikipedia
pypi-wordfreq
pypi-wrapt pypi-wrapt
pypi-wsgiproxy2 pypi-wsgiproxy2
pypi-wsproto pypi-wsproto
@@ -4474,6 +4547,7 @@ qtwebchannel
qtwebengine qtwebengine
qtwebsockets qtwebsockets
qtx11extras qtx11extras
qtxdg-tools
qtxmlpatterns qtxmlpatterns
quagga quagga
quassel quassel
@@ -4549,6 +4623,7 @@ sddm-kcm
seahorse seahorse
seatd seatd
sed sed
seer
serf serf
setserial setserial
setxkbmap setxkbmap
@@ -4660,13 +4735,13 @@ tevent
texinfo texinfo
texlive texlive
texmaker texmaker
texttable
tgt tgt
the_silver_searcher the_silver_searcher
thermal_daemon thermal_daemon
thermal_monitor thermal_monitor
thin-provisioning-tools thin-provisioning-tools
threadweaver threadweaver
thrift
thunar-volman thunar-volman
thunderbird thunderbird
thunderbolt-software-user-space thunderbolt-software-user-space
@@ -4688,7 +4763,6 @@ trace-cmd
traceroute traceroute
tracker tracker
tracker-miners tracker-miners
traefik
tree tree
tree-sitter tree-sitter
tzdata tzdata
@@ -4698,6 +4772,7 @@ udisks2
udunits udunits
uget uget
uhttpmock uhttpmock
umockdev
unbundle unbundle
unibilium unibilium
unifdef unifdef
@@ -4717,6 +4792,7 @@ usrbinjava
usrbinpython usrbinpython
usrbinvi usrbinvi
utf8cpp utf8cpp
utf8proc
util-linux util-linux
util-macros util-macros
uwsgi uwsgi
@@ -4753,6 +4829,7 @@ which
whois whois
wine wine
wireless-regdb-master wireless-regdb-master
wireplumber
wireshark wireshark
wlroots wlroots
wmctrl wmctrl
@@ -4872,3 +4949,4 @@ zopfli
zsh zsh
zstd zstd
zstd-bin zstd-bin
zxing