Merge updates from master

This commit is contained in:
Repository mirror & CI
2022-04-06 19:49:12 +00:00
11 changed files with 196 additions and 1 deletions

39
.github/workflows/emails.yml vendored Normal file
View File

@@ -0,0 +1,39 @@
name: emails
on: [push, pull_request]
jobs:
bugzilla:
runs-on: ubuntu-latest
steps:
- uses: nrwl/last-successful-commit-action@v1
id: last_successful_commit
with:
branch: 'dev'
workflow_id: 'emails.yml'
github_token: ${{ secrets.GITHUB_TOKEN }}
- name: Checkout compare ref
uses: actions/checkout@v2
with:
ref: ${{ steps.last_successful_commit.outputs.commit_hash }}
- name: Checkout code
uses: actions/checkout@v2
- uses: actions/setup-python@v3
with:
python-version: '3.x'
- name: Get changed files
id: changed-files
uses: tj-actions/changed-files@v18.6
with:
base_sha: ${{ steps.last_successful_commit.outputs.commit_hash }}
files: |
**/metadata.xml
- name: Check Emails against bugzilla
run: |
python ./scripts/email-checker.py ${{ steps.changed-files.outputs.all_changed_files }}

View File

@@ -206,7 +206,8 @@ DESCRIPTION="Electrical power consumption measurement agent."
# does not provide this value so instead repository is used
HOMEPAGE="https://github.com/hubblo-org/scaphandre"
SRC_URI="https://github.com/hubblo-org/${PN}/archive/refs/tags/v${PV}.zip -> ${P}.zip $(cargo_crate_uris ${CRATES})"
RESTRICT="mirror"
# restricting test because '/proc/modules' does not appear to be present in the CI
RESTRICT="mirror test"
# License set may be more restrictive as OR is not respected
# use cargo-license for a more accurate license picture
LICENSE="Apache-2.0 Apache-2.0 ISC MIT MPL-2.0 Unlicense"

View File

@@ -99,6 +99,9 @@ RDEPEND=">=dev-python/numpy-1.16.0"
distutils_enable_tests pytest
# Libraries built with rust do not use CFLAGS and LDFLAGS.
QA_FLAGS_IGNORED="usr/lib.*/py.*/site-packages/retworkx/retworkx.*\\.so"
python_test() {
# We have to hide the source code directory so tests
# do not use these, but instead the compiled library.

View File

@@ -0,0 +1 @@
DIST assaultcube-1.3.0.2.tar.gz 51034819 BLAKE2B 61800ed2d7cec797af3bc683a7439d4e8b6dda453bdee4e3f331ab43c973c6d754aacc2e38f4f5535d991c1e755800bc6d178994500f7785a41053d399296756 SHA512 8488c399036532859f7c83d094ac1443c52aa6367d106cc5889b80353ff1d501f7b8ae3b51e34b03215cc88dacc5f29488635047ce90291c601f8f7582498685

View File

@@ -0,0 +1,54 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit desktop xdg-utils
DESCRIPTION="Free multiplayer FPS based on the Cube engine"
HOMEPAGE="https://assault.cubers.net/"
SRC_URI="https://github.com/assaultcube/AC/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/AC-${PV}"
LICENSE="ZLIB assaultcube"
SLOT="0"
KEYWORDS="~amd64"
RDEPEND="sys-libs/zlib media-libs/libsdl2 media-libs/sdl2-image x11-libs/libX11 media-libs/libogg media-libs/libvorbis media-libs/openal"
DEPEND="${RDEPEND}"
BDEPEND="sys-devel/clang"
src_prepare() {
eapply_user
sed -i 's|//#define PRODUCTION|#define PRODUCTION|' "${S}/source/src/cube.h"
rm -rf "${S}/source/include"
}
src_compile() {
cd "${S}/source/src"
emake
}
src_install() {
cd "${S}/source/src"
emake install
install -dm755 "${D}/usr/share/assaultcube"
install -Dm755 "${S}"/{assaultcube.sh,check_install.sh,server.sh,server_wizard.sh} -t "${D}/usr/share/assaultcube"
install -Dm755 "${S}/bin_unix/native_client" -t "${D}/usr/share/assaultcube/bin_unix"
cp -r "${S}"/{bot,config,demos,docs,mods,packages} "${D}/usr/share/assaultcube/"
install -Dm644 "${S}"/{CONTRIBUTING.md,GOVERNANCE.md,README.{html,md},SECURITY.md} -t "${D}/usr/share/assaultcube"
make_desktop_entry \
"/usr/share/assaultcube/assaultcube.sh %u" \
AssaultCube \
/usr/share/assaultcube/packages/misc/icon.png \
Game \
"Keywords=assaultcube;game;fps;\nMimeType=x-scheme-handler/assaultcube"
}
pkg_postinst() {
xdg_desktop_database_update
}
pkg_postrm() {
xdg_desktop_database_update
}

View File

@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
<pkgmetadata>
<maintainer type="person">
<email>duje.mihanovic@skole.hr</email>
<name>Duje Mihanović</name>
</maintainer>
</pkgmetadata>

2
licenses/assaultcube Normal file
View File

@@ -0,0 +1,2 @@
AssaultCube's licensing is very specific, please take a look at:
https://assault.cubers.net/docs/license.html

51
scripts/email-checker.py Executable file
View File

@@ -0,0 +1,51 @@
#!/usr/bin/env python3
from http.client import HTTPSConnection
import json
import sys
from typing import Dict, Iterator, NamedTuple
from urllib.parse import quote_plus
import xml.etree.ElementTree as ET
class Maintainer(NamedTuple):
name: str
email: str
def check_details(self, client: HTTPSConnection):
try:
client.request("GET", f"/rest/user?names={quote_plus(self.email)}")
resp = client.getresponse()
resp.read()
return resp.status == 200
except:
return False
def read_all_maintainers(files: Iterator[str]) -> Iterator[Maintainer]:
for file in files:
try:
tree = ET.parse(file)
for maintainer in tree.findall('./maintainer'):
values = {child.tag: child.text for child in maintainer}
yield Maintainer(name=values.get('name', ''), email=values.get('email', ''))
except FileNotFoundError:
print(file, 'not found')
def check_maintainers(maintainers: Iterator[Maintainer]) -> Iterator[Maintainer]:
try:
client = HTTPSConnection('bugs.gentoo.org')
for m in maintainers:
if m.check_details(client):
print(f'\033[92m\u2713 {m.name} <{m.email}>\033[0m')
else:
print(f'\033[91m\u2717 {m.name} <{m.email}>\033[0m')
yield m
finally:
client.close()
if __name__ == '__main__':
missing_maintainers = len(tuple(check_maintainers(set(read_all_maintainers(sys.argv[1:])))))
sys.exit(int(missing_maintainers != 0))

View File

@@ -0,0 +1 @@
DIST v0.3.tar.gz 20827 BLAKE2B 3973ffceec48105c28f368c14c879f9c1cae1676a5f5134c49249b3db8877418c2e9ac7937a6cacb3c5c2089be9a6e03c96e1988ecb029756c2f404674b9126c SHA512 5ee9af0f2e0d32680d6bc5e5b55ce46b86f01ff47b364a34484a6522035c96b8556c65d3d834ff711fb158ec4f1edbd48a1fea883641dedcbebd40074dc2fc5f

View File

@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
<pkgmetadata>
<maintainer type="person">
<email>duje.mihanovic@skole.hr</email>
<name>Duje Mihanović</name>
</maintainer>
</pkgmetadata>

View File

@@ -0,0 +1,27 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools
DESCRIPTION="Unlock GnuPG keys on login"
HOMEPAGE="https://github.com/cruegge/pam-gnupg"
SRC_URI="https://github.com/cruegge/pam-gnupg/archive/refs/tags/v${PV}.tar.gz"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64"
RDEPEND="
>=sys-libs/pam-1.5.1_p20210622-r1
>=app-crypt/gnupg-2.2.33-r1
"
src_configure() {
eautoreconf
./configure \
--host=${CHOST} \
--prefix=/usr \
--infodir=/usr/share/info \
--with-moduledir=/$(get_libdir)/security \
--mandir=/usr/share/man || die
}