Compare commits
1
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
8c8947b099 |
No files matched your search
@@ -11,4 +11,12 @@ if [ "$(id -u)" = 0 ]; then
|
||||
exec su "${TESTUSER:-pmos}" -c "sh -e $0"
|
||||
fi
|
||||
|
||||
# Wrap pmbootstrap to use this repository for --aports
|
||||
pmaports="$(cd "$(dirname "$0")"/..; pwd -P)"
|
||||
_pmbootstrap="$(command -v pmbootstrap)"
|
||||
pmbootstrap() {
|
||||
"$_pmbootstrap" --aports="$pmaports" "$@"
|
||||
}
|
||||
|
||||
.ci/lib/apkbuild_linting.py
|
||||
|
||||
+1
-2
@@ -43,7 +43,7 @@ update_linux_next() {
|
||||
# shellcheck source=/dev/null
|
||||
pkgver=$(. device/testing/linux-next/APKBUILD; echo "$pkgver")
|
||||
|
||||
curl -s https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/refs/tags/ | grep -oE "<a href='.*'>(.*)</a>.*\.tar\.gz</a>" | awk -F'[<>]' '{print $3}' > /tmp/tags
|
||||
curl -s "https://gitlab.com/linux-kernel/linux-next/-/tags?format=atom" | grep -oP "(?<=<title>)[^<]+" | tail -n +2 > /tmp/tags
|
||||
|
||||
latest=$(grep -v "v" < /tmp/tags | head -n1)
|
||||
if [ -z "$latest" ]; then
|
||||
@@ -71,7 +71,6 @@ update_linux_next() {
|
||||
|
||||
echo "Updating linux-next from $pkgver to $new_pkgver..."
|
||||
sed -i -e "s/pkgver=$pkgver/pkgver=$new_pkgver/" device/testing/linux-next/APKBUILD
|
||||
sed -i -e "s/^pkgrel=.*/pkgrel=0/" device/testing/linux-next/APKBUILD
|
||||
|
||||
# Update the checksums
|
||||
pmbootstrap checksum linux-next
|
||||
|
||||
@@ -1,80 +0,0 @@
|
||||
image: alpine:latest
|
||||
stages:
|
||||
- build
|
||||
|
||||
workflow:
|
||||
rules:
|
||||
- if: $CI_PIPELINE_SOURCE == "parent_pipeline"
|
||||
|
||||
{% if archs|length == 0 %}
|
||||
# Needed because gitlab fails if no jobs are created, e.g: nothing should be
|
||||
# built: https://gitlab.com/gitlab-org/gitlab/-/issues/368248
|
||||
placeholder:
|
||||
stage: build
|
||||
script:
|
||||
- 'true'
|
||||
{% endif %}
|
||||
|
||||
.build:
|
||||
stage: build
|
||||
interruptible: true
|
||||
before_script:
|
||||
# upgrade is mostly needed for "qemu" runners that run edge based on a VM
|
||||
# The other build jobs run natively in docker on latest alpine stable and
|
||||
# those should always have whatever we need
|
||||
- apk upgrade -U
|
||||
- .ci/lib/gitlab_prepare_ci.sh
|
||||
after_script:
|
||||
- cp -r /home/pmos/.local/var/pmbootstrap/packages/ packages/ || true
|
||||
- .ci/lib/move_logs.sh $CI_PROJECT_DIR
|
||||
artifacts:
|
||||
expire_in: 1 week
|
||||
paths:
|
||||
- packages/
|
||||
timeout: 10 h
|
||||
|
||||
{% if ('x86_64' in archs) %}
|
||||
build-x86_64:
|
||||
extends: .build
|
||||
script:
|
||||
- .ci/build-x86_64.sh
|
||||
{% endif %}
|
||||
|
||||
{% if ('x86' in archs) %}
|
||||
build-x86:
|
||||
extends: .build
|
||||
script:
|
||||
- .ci/build-x86.sh
|
||||
{% endif %}
|
||||
|
||||
{% if ('aarch64' in archs) %}
|
||||
build-aarch64:
|
||||
extends: .build
|
||||
tags: [arm64]
|
||||
script:
|
||||
- .ci/build-aarch64.sh
|
||||
{% endif %}
|
||||
|
||||
{% if ('armv7' in archs) %}
|
||||
build-armv7:
|
||||
extends: .build
|
||||
tags: [qemu]
|
||||
script:
|
||||
- .ci/build-armv7.sh
|
||||
{% endif %}
|
||||
|
||||
{% if ('armhf' in archs) %}
|
||||
build-armhf:
|
||||
extends: .build
|
||||
tags: [qemu]
|
||||
script:
|
||||
- .ci/build-armhf.sh
|
||||
{% endif %}
|
||||
|
||||
{% if ('riscv64' in archs) %}
|
||||
build-riscv64:
|
||||
extends: .build
|
||||
tags: [qemu]
|
||||
script:
|
||||
- .ci/build-riscv64.sh
|
||||
{% endif %}
|
||||
Executable
+43
@@ -0,0 +1,43 @@
|
||||
#!/bin/sh -e
|
||||
# Description: verify CODEOWNERS file is sane
|
||||
# https://postmarketos.org/pmb-ci
|
||||
|
||||
# TODO Future improvements:
|
||||
# * Check that all devices in main/community have someone in CODEOWNERS
|
||||
# * Check that GitLab user actually exists (e.g. deleted account, account with
|
||||
# changed user name)
|
||||
|
||||
if grep -q " " CODEOWNERS; then
|
||||
echo
|
||||
echo "ERROR: Found space indentation in CODEOWNERS."
|
||||
echo "ERROR: Please indent with tab characters."
|
||||
grep " " CODEOWNERS
|
||||
echo
|
||||
exit 1
|
||||
fi
|
||||
|
||||
fail=0
|
||||
tmppipe=$(mktemp -u)
|
||||
mkfifo "$tmppipe"
|
||||
grep -v "^#" CODEOWNERS | cut -d' ' -f1 > "$tmppipe" &
|
||||
while IFS= read -r line; do
|
||||
[ -z "$line" ] && continue
|
||||
|
||||
# Check if entry generally exists
|
||||
# shellcheck disable=SC2086
|
||||
ls $line >/dev/null 2>&1 || { fail=1; echo "Non-existing: $line"; }
|
||||
|
||||
# Check that directories end with a slash
|
||||
# shellcheck disable=SC2086
|
||||
if test -d "$(ls -d $line)"; then
|
||||
echo "$line" | grep -q '/$' || { fail=1; echo "Missing trailing slash: $line"; }
|
||||
fi
|
||||
done < "$tmppipe"
|
||||
rm "$tmppipe"
|
||||
|
||||
if [ "$fail" = 1 ]; then
|
||||
echo
|
||||
echo "ERROR: Invalid CODEOWNERS entries, see above."
|
||||
echo
|
||||
exit 1
|
||||
fi
|
||||
@@ -24,6 +24,23 @@ def build_strict(packages, arch):
|
||||
"--arch", arch, ] + list(packages))
|
||||
|
||||
|
||||
def verify_checksums(packages, arch):
|
||||
# Only do this with one build-{arch} job
|
||||
arch_verify = "x86_64"
|
||||
if arch != arch_verify:
|
||||
print(f"NOTE: doing checksum verification in build-{arch_verify} job,"
|
||||
" not here.")
|
||||
return
|
||||
|
||||
if len(packages) == 0:
|
||||
print("no packages changed, not doing any checksums verification")
|
||||
return
|
||||
|
||||
common.run_pmbootstrap(["build_init"])
|
||||
common.run_pmbootstrap(["--details-to-stdout", "checksum", "--verify"] +
|
||||
list(packages))
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
# Architecture to build for (as in build-{arch})
|
||||
if len(sys.argv) != 2:
|
||||
@@ -76,31 +93,31 @@ if __name__ == "__main__":
|
||||
# No packages: skip build
|
||||
if len(packages) == 0:
|
||||
print(f"no packages changed, which can be built for {arch}")
|
||||
sys.exit(0)
|
||||
|
||||
build_strict(packages, arch)
|
||||
else:
|
||||
verify_only = common.commit_message_has_string("[ci:skip-build]")
|
||||
if verify_only:
|
||||
# [ci:skip-build]: verify checksums and stop
|
||||
print("WARNING: not building changed packages ([ci:skip-build])!")
|
||||
print("verifying checksums: " + ", ".join(packages))
|
||||
verify_checksums(packages, arch)
|
||||
else:
|
||||
# Build packages
|
||||
print(f"building in strict mode for {arch}: {', '.join(packages)}")
|
||||
build_strict(packages, arch)
|
||||
|
||||
# Build packages in extra-repos/systemd
|
||||
# FIXME: this should probably be more generic, if other repos are added later?
|
||||
if systemd_pkgs:
|
||||
common.run_pmbootstrap(["config", "systemd", "always"])
|
||||
# To fix the ERROR: Chroot 'native' is for the 'edge' channel, but you are on the
|
||||
# 'systemd-edge' channel. Run 'pmbootstrap zap' to delete your chroots and try again.
|
||||
# To do this automatically, run 'pmbootstrap config auto_zap_misconfigured_chroots yes'.
|
||||
common.run_pmbootstrap(["config", "auto_zap_misconfigured_chroots", "yes"])
|
||||
|
||||
# filter out packages that can't be built for arch
|
||||
# (Iterate over copy of `systemd_pkgs`, because we modify it in this loop)
|
||||
for package in systemd_pkgs.copy():
|
||||
apkbuild_path = pmb.helpers.pmaports.find(package, True, True, with_extra_repos="enabled")
|
||||
apkbuild = pmb.parse._apkbuild.apkbuild(pathlib.Path(apkbuild_path, "APKBUILD"))
|
||||
if not pmb.helpers.pmaports.check_arches(apkbuild["arch"], arch):
|
||||
print(f"(extra-repos/systemd) {package}: not enabled for {arch}, skipping")
|
||||
systemd_pkgs.remove(package)
|
||||
|
||||
# No packages: skip build
|
||||
if len(systemd_pkgs) == 0:
|
||||
print(f"no packages changed, which can be built for {arch}")
|
||||
sys.exit(0)
|
||||
|
||||
build_strict(systemd_pkgs, arch)
|
||||
verify_only = common.commit_message_has_string("[ci:skip-build]")
|
||||
if verify_only:
|
||||
# [ci:skip-build]: verify checksums
|
||||
print("WARNING: not building changed packages for extra-repos/systemd: ([ci:skip-build])!")
|
||||
print("verifying checksums: " + ", ".join(systemd_pkgs))
|
||||
verify_checksums(systemd_pkgs, arch)
|
||||
else:
|
||||
# Build packages
|
||||
print(f"building in strict mode for {arch}, from extra-repos/systemd: {', '.join(systemd_pkgs)}")
|
||||
build_strict(systemd_pkgs, arch)
|
||||
+7
-18
@@ -41,9 +41,7 @@ def add_upstream_git_remote():
|
||||
|
||||
|
||||
def commit_message_has_string(needle):
|
||||
base_commit = get_base_commit()
|
||||
|
||||
return needle in run_git(["log", "--pretty=format:%B", f"{base_commit}..HEAD"])
|
||||
return needle in run_git(["show", "-s", "--format=full", "HEAD"])
|
||||
|
||||
|
||||
def run_pmbootstrap(parameters):
|
||||
@@ -88,10 +86,12 @@ def get_upstream_branch():
|
||||
return ret
|
||||
|
||||
|
||||
def get_base_commit() -> str:
|
||||
"""Get the base commit that can be compared with HEAD to get all commits in the
|
||||
given branch/merge request."""
|
||||
|
||||
def get_changed_files(removed=True):
|
||||
""" Get all changed files and print them, as well as the branch and the
|
||||
commit that was used for the diff.
|
||||
:param removed: also return removed files (default: True)
|
||||
:returns: set of changed files
|
||||
"""
|
||||
branch_upstream = f"upstream/{get_upstream_branch()}"
|
||||
commit_head = run_git(["rev-parse", "HEAD"])[:-1]
|
||||
commit_upstream = run_git(["rev-parse", branch_upstream])[:-1]
|
||||
@@ -107,17 +107,6 @@ def get_base_commit() -> str:
|
||||
commit = run_git(["merge-base", branch_upstream, "HEAD"])[:-1]
|
||||
print("comparing HEAD with: " + commit)
|
||||
|
||||
return commit
|
||||
|
||||
|
||||
def get_changed_files(removed=True):
|
||||
""" Get all changed files and print them, as well as the branch and the
|
||||
commit that was used for the diff.
|
||||
:param removed: also return removed files (default: True)
|
||||
:returns: set of changed files
|
||||
"""
|
||||
commit = get_base_commit()
|
||||
|
||||
# Changed files
|
||||
ret = set()
|
||||
print("changed file(s):")
|
||||
|
||||
@@ -1,56 +0,0 @@
|
||||
#!/usr/bin/env python3
|
||||
# Copyright 2025 Pablo Correa Gomez
|
||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
from pathlib import Path
|
||||
import shutil
|
||||
import sys
|
||||
|
||||
from jinja2 import Template
|
||||
import add_pmbootstrap_to_import_path
|
||||
import pmb.parse
|
||||
import pmb.helpers.logging
|
||||
from pmb.core.arch import Arch
|
||||
|
||||
# Same dir
|
||||
import common
|
||||
|
||||
if __name__ == "__main__":
|
||||
# Needs input to output if we should create the jobs
|
||||
if len(sys.argv) != 3:
|
||||
print("usage: generate_build_jobs.py TEMPLATE CHILD_PIPELINE")
|
||||
print(sys.argv)
|
||||
sys.exit(1)
|
||||
template = sys.argv[1]
|
||||
child_pipeline = sys.argv[2]
|
||||
|
||||
# pmb logging has to be initialized for later pmb commands to work, setting
|
||||
# to /dev/null since we don't care about the output. Later this could
|
||||
# be changed to a file and added as a CI artifact if we need to debug
|
||||
# something.
|
||||
pmb.logging.init(Path("/dev/null"), False)
|
||||
archs = set()
|
||||
# Get and print modified packages
|
||||
common.add_upstream_git_remote()
|
||||
for file in common.get_changed_files():
|
||||
path = Path(file)
|
||||
if path.name != "APKBUILD":
|
||||
continue
|
||||
elif not path.exists():
|
||||
continue # APKBUILD was deleted
|
||||
apkbuild = pmb.parse.apkbuild(path)
|
||||
archs.update(apkbuild["arch"])
|
||||
|
||||
if common.commit_message_has_string("[ci:skip-build]"):
|
||||
print("User requested skipping build, not creating child pipeline file")
|
||||
archs = set()
|
||||
|
||||
# This ignores things like !armv7, that could be a follow-up optimization
|
||||
if 'noarch' in archs or 'all' in archs:
|
||||
archs = set([str(arch) for arch in Arch.supported()])
|
||||
|
||||
print(archs)
|
||||
with open(template) as f:
|
||||
rendered = Template(f.read()).render(archs=archs)
|
||||
with open(child_pipeline, "w") as fw:
|
||||
fw.write(rendered)
|
||||
@@ -1,199 +0,0 @@
|
||||
#!/bin/sh
|
||||
# Unit testing framework for shell scripts
|
||||
# Invoke with the path to a tests/ subdir of a package and the
|
||||
# package name as arguments. Or source it with the following
|
||||
# variables set:
|
||||
# * results_dir - second argument to the test script
|
||||
|
||||
set -e
|
||||
|
||||
# Colors :D
|
||||
RED="\e[31m"
|
||||
GREEN="\e[32m"
|
||||
YELLOW="\e[33m"
|
||||
BLUE="\e[34m"
|
||||
BOLDBLUE="\e[1;34m"
|
||||
RESET="\e[0m"
|
||||
|
||||
testlib_path="$(realpath "$0")"
|
||||
|
||||
_test_assert_failed=""
|
||||
_test_testn=1
|
||||
_test_passedn=0
|
||||
_test_failedn=0
|
||||
_test_current_test=""
|
||||
_test_statefile="$(mktemp)"
|
||||
# Set by each test
|
||||
results_dir="${results_dir:-}"
|
||||
|
||||
test_log() {
|
||||
# ash supports echo -e
|
||||
# shellcheck disable=SC3037
|
||||
echo -e "$*" >&2
|
||||
}
|
||||
|
||||
test_info() {
|
||||
# shellcheck disable=SC3037
|
||||
echo -e "${BLUE}$*${RESET}" >&2
|
||||
}
|
||||
|
||||
test_debug() {
|
||||
# shellcheck disable=SC3037
|
||||
echo -e "${YELLOW}$*${RESET}" >&2
|
||||
}
|
||||
|
||||
assert_strequal() {
|
||||
# $1: first string
|
||||
# $2: second string
|
||||
if [ -z "$1" ] || [ -z "$2" ]; then
|
||||
test_log "ERROR: assert_equal: not enough arguments given"
|
||||
exit 1
|
||||
fi
|
||||
if [ "$1" != "$2" ]; then
|
||||
_test_assert_failed="$1 != $2"
|
||||
test_log " ❌ $_test_assert_failed"
|
||||
return
|
||||
fi
|
||||
test_log " ✅ $1 == $2"
|
||||
}
|
||||
|
||||
assert_equal() {
|
||||
# $1: name of variable
|
||||
# $2: value to compare
|
||||
if [ -z "$1" ] || [ -z "$2" ]; then
|
||||
test_log "ERROR: assert_equal: not enough arguments given"
|
||||
exit 1
|
||||
fi
|
||||
val="$(eval echo "\$$1")"
|
||||
if [ "$val" != "$2" ]; then
|
||||
_test_assert_failed="\$$1 != $2 (got $val)"
|
||||
test_log " ❌ $_test_assert_failed"
|
||||
return
|
||||
fi
|
||||
test_log " ✅ \$$1 == $2"
|
||||
}
|
||||
|
||||
assert_unset() {
|
||||
if [ -z "$1" ]; then
|
||||
test_log "ERROR: assert_unset: not enough arguments given"
|
||||
exit 1
|
||||
fi
|
||||
val="$(eval echo \$"$1")"
|
||||
if [ -n "$val" ]; then
|
||||
_test_assert_failed="\$$1 should be unset (has value '$val')"
|
||||
test_log " ❌ $_test_assert_failed"
|
||||
return
|
||||
fi
|
||||
test_log " ✅ \$$1 is unset"
|
||||
}
|
||||
|
||||
# Log some expression and evaluate it
|
||||
logeval() {
|
||||
eval "$*"
|
||||
test_log "${YELLOW}+ $*${RESET}"
|
||||
}
|
||||
|
||||
# Start a test. Shell scripts involved in the test should be sourced AFTER calling this function!
|
||||
start_test() {
|
||||
if [ -n "$_test_current_test" ]; then
|
||||
test_log "ERROR: multiple calls to start_test without calling end_test first!"
|
||||
test_log "Current test: $_test_current_test"
|
||||
exit 1
|
||||
fi
|
||||
test_log "==> Test $_test_testn: $1"
|
||||
_test_current_test="$1"
|
||||
set > "$_test_statefile"
|
||||
}
|
||||
|
||||
# End a test and reset the environment.
|
||||
end_test() {
|
||||
local msg
|
||||
local save_assert_failed
|
||||
|
||||
# Restore environment
|
||||
save_assert_failed="$_test_assert_failed"
|
||||
|
||||
# Splitting is intentional
|
||||
# shellcheck disable=SC2046
|
||||
unset $(set | grep "='" | cut -d= -f1 | grep -vE "(PATH|IFS|TERM|LANG|HOME|PWD|SHELL|USER|save_assert_failed|_test_statefile)" )
|
||||
|
||||
# shellcheck disable=SC1090
|
||||
. "$_test_statefile"
|
||||
_test_assert_failed="$save_assert_failed"
|
||||
|
||||
if [ -n "$_test_assert_failed" ]; then
|
||||
msg="${RED}Failed! ❌ ${_test_assert_failed}${RESET}"
|
||||
echo "Test $_test_testn: $_test_assert_failed" >> "$results_dir/failed"
|
||||
_test_failedn=$((_test_failedn+1))
|
||||
echo "$_test_failedn" > "$results_dir/failedn"
|
||||
unset _test_assert_failed
|
||||
else
|
||||
msg="${GREEN}Passed!${RESET}"
|
||||
_test_passedn=$((_test_passedn+1))
|
||||
echo "$_test_passedn" > "$results_dir/passedn"
|
||||
fi
|
||||
test_log "<== Test $_test_testn: $msg $_test_current_test\n"
|
||||
_test_testn=$((_test_testn+1))
|
||||
_test_current_test=""
|
||||
}
|
||||
|
||||
# Call at the end of each testsuite shell script
|
||||
end_testsuite() {
|
||||
if [ -n "$_test_current_test" ]; then
|
||||
test_log "${RED}ERROR: end_testsuite called without calling end_test first!${RESET}"
|
||||
test_log "${RED}Current test: $_test_current_test${RESET}"
|
||||
exit 1
|
||||
fi
|
||||
if [ -f "$results_dir/failed" ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
exit 0
|
||||
}
|
||||
|
||||
run_tests() {
|
||||
local failed test_results_base
|
||||
local test name total passedn failedn t_passed t_failed
|
||||
|
||||
test_results_base="$(mktemp -d)"
|
||||
test_log "Running tests for $2"
|
||||
|
||||
# FIXME: yeah this isn't quite the best way to iterate the files
|
||||
# shellcheck disable=SC2010
|
||||
for name in $(ls "$1" | grep "\.sh$"); do
|
||||
test="$1/$name"
|
||||
mkdir "$test_results_base/$name"
|
||||
echo 0 > "$test_results_base/$name/passedn"
|
||||
echo 0 > "$test_results_base/$name/failedn"
|
||||
test_log
|
||||
test_log "${BOLDBLUE}# Test suite ${name}${RESET}"
|
||||
$test "$testlib_path" "$test_results_base/$name" || failed="$failed $name"
|
||||
t_passed=$(cat "$test_results_base/$name/passedn")
|
||||
t_failed=$(cat "$test_results_base/$name/failedn")
|
||||
passedn=$((passedn+t_passed))
|
||||
failedn=$((failedn+t_failed))
|
||||
total=$((total+t_passed+t_failed))
|
||||
done
|
||||
if [ -n "$failed" ]; then
|
||||
test_log
|
||||
test_log "Some tests failed:"
|
||||
for test in $failed; do
|
||||
test_log "❌ $test"
|
||||
test_log " ${RED}$(cat "$test_results_base/$test/failed")${RESET}"
|
||||
done
|
||||
fi
|
||||
|
||||
if [ $passedn -lt $total ]; then
|
||||
test_log "[${RED}$passedn/$total tests passed${RESET}]"
|
||||
else
|
||||
test_log "[${GREEN}$passedn/$total tests passed!${RESET}]"
|
||||
fi
|
||||
test_log
|
||||
|
||||
if [ -n "$failed" ]; then exit 1; else exit 0; fi
|
||||
}
|
||||
|
||||
# FIXME: probably not the best way to determine if this was sourced
|
||||
if [ $# -gt 0 ]; then
|
||||
run_tests "$1" "$2"
|
||||
fi
|
||||
@@ -1,82 +0,0 @@
|
||||
#!/usr/bin/env python3
|
||||
# Copyright 2025 Pablo Correa Gomez
|
||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||
import os
|
||||
import sys
|
||||
|
||||
# Same dir
|
||||
import common
|
||||
|
||||
# pmbootstrap
|
||||
import add_pmbootstrap_to_import_path
|
||||
import pmb.core
|
||||
from pmb.core.context import get_context
|
||||
|
||||
|
||||
def verify_checksums(packages):
|
||||
if len(packages) == 0:
|
||||
print("no packages changed, not doing any checksums verification")
|
||||
return
|
||||
|
||||
print("verifying checksums: " + ", ".join(packages))
|
||||
common.run_pmbootstrap(["build_init"])
|
||||
common.run_pmbootstrap(["--details-to-stdout", "checksum", "--verify"] +
|
||||
list(packages))
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
# Get and print modified packages
|
||||
common.add_upstream_git_remote()
|
||||
packages = common.get_changed_packages()
|
||||
|
||||
# Load context
|
||||
sys.argv = ["pmbootstrap.py", "chroot"]
|
||||
args = pmb.parse.arguments()
|
||||
context = get_context()
|
||||
|
||||
# Get set of all buildable packages for the enabled repos, for skipping unbuildable
|
||||
# aports later. We might be given a changed aport from e.g. extra-repos/systemd when
|
||||
# that repo is not enabled
|
||||
buildable_pkgs = set()
|
||||
for path in pmb.core.pkgrepo.pkgrepo_iter_package_dirs():
|
||||
buildable_pkgs.add(os.path.basename(path))
|
||||
|
||||
# To store a list of packages from extra-repos/systemd for special handling
|
||||
# later:
|
||||
systemd_pkgs = list()
|
||||
|
||||
# Filter out packages are not found in enabled repos
|
||||
# (Iterate over copy of packages, because we modify it in this loop)
|
||||
for package in packages.copy():
|
||||
if package not in buildable_pkgs:
|
||||
print(f"{package}: not in current repo, skipping")
|
||||
packages.remove(package)
|
||||
# FIXME: this should probably be more generic, if other repos are added
|
||||
# later?
|
||||
# This just tosses the package into the list of packages to try
|
||||
# building later w/ systemd enabled, and assumes it'll be found
|
||||
# there.
|
||||
print(f"{package}: adding to list of packages to check in systemd repo")
|
||||
systemd_pkgs.append(package)
|
||||
continue
|
||||
|
||||
# No packages: skip build
|
||||
if len(packages) == 0:
|
||||
print("no packages to check for the current repo")
|
||||
else:
|
||||
verify_checksums(packages)
|
||||
|
||||
# FIXME: this should probably be more generic, if other repos are added later?
|
||||
if systemd_pkgs:
|
||||
common.run_pmbootstrap(["config", "systemd", "always"])
|
||||
# To fix the ERROR: Chroot 'native' is for the 'edge' channel, but you are on the
|
||||
# 'systemd-edge' channel. Run 'pmbootstrap zap' to delete your chroots and try again.
|
||||
# To do this automatically, run 'pmbootstrap config auto_zap_misconfigured_chroots yes'.
|
||||
common.run_pmbootstrap(["config", "auto_zap_misconfigured_chroots", "yes"])
|
||||
|
||||
# No packages: skip build
|
||||
if len(systemd_pkgs) == 0:
|
||||
print("no packages to check for the systemd repo")
|
||||
|
||||
else:
|
||||
verify_checksums(systemd_pkgs)
|
||||
+3
-3
@@ -15,6 +15,7 @@ fi
|
||||
# Shell: shellcheck
|
||||
sh_files="
|
||||
./main/mdss-fb-init-hack/mdss-fb-init-hack.sh
|
||||
./main/postmarketos-base/rootfs-usr-lib-firmwareload.sh
|
||||
./main/postmarketos-base-ui/rootfs-usr-lib-NetworkManager-dispatcher.d-50-dns-filter.sh
|
||||
./main/postmarketos-base-ui/rootfs-usr-lib-NetworkManager-dispatcher.d-50-tethering.sh
|
||||
./main/postmarketos-installkernel/installkernel-pmos
|
||||
@@ -23,7 +24,7 @@ sh_files="
|
||||
./main/postmarketos-mkinitfs-hook-netboot/netboot.sh
|
||||
./main/ttyescape/*.post-install
|
||||
./main/unl0kr/unlock.sh
|
||||
./device/community/soc-qcom/call_audio_idle_suspend_workaround.sh
|
||||
./device/community/soc-qcom-sdm845/call_audio_idle_suspend_workaround.sh
|
||||
|
||||
$(find . -path './main/postmarketos-ui-*/*.sh')
|
||||
$(find . -path './main/postmarketos-ui-*/*.pre-install')
|
||||
@@ -38,11 +39,10 @@ sh_files="
|
||||
$(find . -path './main/postmarketos-mvcfg/*.sh')
|
||||
|
||||
$(find . -path './.ci/**.sh')
|
||||
$(find . -path '**/tests/*.sh')
|
||||
"
|
||||
|
||||
for file in $sh_files; do
|
||||
echo "Test with shellcheck: $file"
|
||||
cd "$DIR/$(dirname "$file")"
|
||||
shellcheck -S warning -e SC1008 -e SC3043 -x "$(basename "$file")"
|
||||
shellcheck -e SC1008 -e SC3043 -x "$(basename "$file")"
|
||||
done
|
||||
@@ -14,6 +14,9 @@ import pmb.parse._apkbuild
|
||||
from pmb.core.pkgrepo import pkgrepo_default_path, pkgrepo_iglob, pkgrepo_relative_path
|
||||
from pmb.core.arch import Arch
|
||||
|
||||
# Cache for codeowners_parse
|
||||
codeowners_parsed = {}
|
||||
|
||||
# Don't complain if these nicknames are the only maintainers of an APKBUILD,
|
||||
# because they are actually a group of people
|
||||
gitlab_groups = [
|
||||
@@ -99,12 +102,72 @@ def test_aports_device_kernel():
|
||||
f" <https://postmarketos.org/devicepkg>): {path}")
|
||||
|
||||
|
||||
def codeowners_parse():
|
||||
global codeowners_parsed
|
||||
|
||||
pattern_prev = None
|
||||
aports = pkgrepo_default_path()
|
||||
|
||||
with open(aports / "CODEOWNERS") as h:
|
||||
for line in h:
|
||||
line = line.rstrip()
|
||||
if not line or line.startswith("#"):
|
||||
continue
|
||||
|
||||
pattern_nicks = line.split()
|
||||
assert len(pattern_nicks) > 1, f"CODEOWNERS line without nicks: {line}"
|
||||
|
||||
pattern = pattern_nicks[0]
|
||||
if pattern.endswith("/"):
|
||||
pattern += "*"
|
||||
|
||||
nicks = []
|
||||
for word in pattern_nicks[1:]:
|
||||
if word.startswith("@"):
|
||||
nicks += [word]
|
||||
codeowners_parsed[pattern] = nicks
|
||||
|
||||
if pattern_prev:
|
||||
assert pattern_prev <= pattern, "CODEOWNERS: please order entries alphabetically"
|
||||
pattern_prev = pattern
|
||||
|
||||
|
||||
def require_enough_codeowners_entries(path, maintainers):
|
||||
"""
|
||||
:param path: full path to an APKBUILD (e.g. /home/user/…/APKBUILD)
|
||||
:param maintainers: list of one or more maintainers
|
||||
"""
|
||||
|
||||
_, path = pkgrepo_relative_path(path)
|
||||
|
||||
nicks = set()
|
||||
for pattern, pattern_nicks in codeowners_parsed.items():
|
||||
if fnmatch.fnmatch(path, pattern):
|
||||
for nick in pattern_nicks:
|
||||
nicks.add(nick)
|
||||
|
||||
print(f"{path}:")
|
||||
print(f" APKBUILD: {maintainers}")
|
||||
print(f" CODEOWNERS: {nicks}")
|
||||
|
||||
if len(nicks) < len(maintainers):
|
||||
for nick in nicks:
|
||||
if nick in gitlab_groups:
|
||||
print(f" -> {nick} is a group")
|
||||
return
|
||||
|
||||
assert len(nicks) >= len(maintainers), \
|
||||
f"{path}: make sure that each maintainer is listed in CODEOWNERS!"
|
||||
|
||||
|
||||
# @pytest.mark.xfail # Not all aports have been updated yet
|
||||
def test_aports_maintained():
|
||||
"""
|
||||
Ensure that aports in /device/{main,community} have "Maintainer:" and
|
||||
"Co-Maintainer:" (only required for main) listed in their APKBUILDs.
|
||||
"Co-Maintainer:" (only required for main) listed in their APKBUILDs. Also
|
||||
check that at least as many are listed in CODEOWNERS.
|
||||
"""
|
||||
codeowners_parse()
|
||||
|
||||
for path in pkgrepo_iglob("device/main/*/APKBUILD"):
|
||||
if 'firmware-' in path.parent.name:
|
||||
@@ -112,21 +175,23 @@ def test_aports_maintained():
|
||||
maintainers = pmb.parse._apkbuild.maintainers(path)
|
||||
assert maintainers and len(maintainers) >= 2, \
|
||||
f"{path} in main needs at least 1 Maintainer and 1 Co-Maintainer"
|
||||
require_enough_codeowners_entries(path, maintainers)
|
||||
|
||||
for path in pkgrepo_iglob("device/community/*/APKBUILD"):
|
||||
if 'firmware-' in path.parent.name:
|
||||
continue
|
||||
maintainers = pmb.parse._apkbuild.maintainers(path)
|
||||
assert maintainers, f"{path} in community needs at least 1 Maintainer"
|
||||
require_enough_codeowners_entries(path, maintainers)
|
||||
|
||||
|
||||
def test_aports_archived():
|
||||
def test_aports_unmaintained():
|
||||
"""
|
||||
Ensure that aports in /device/archived have an "Archived:" comment
|
||||
that describes why the aport is archived.
|
||||
Ensure that aports in /device/unmaintained have an "Unmaintained:" comment
|
||||
that describes why the aport is unmaintained.
|
||||
"""
|
||||
|
||||
for path in pkgrepo_iglob("device/archived/*/APKBUILD"):
|
||||
archived = pmb.parse._apkbuild.archived(path)
|
||||
assert archived, f"{path} should have an Archived: " +\
|
||||
"comment that describes why the package is archived"
|
||||
for path in pkgrepo_iglob("device/unmaintained/*/APKBUILD"):
|
||||
unmaintained = pmb.parse._apkbuild.unmaintained(path)
|
||||
assert unmaintained, f"{path} should have an Unmaintained: " +\
|
||||
"comment that describes why the package is unmaintained"
|
||||
@@ -74,8 +74,7 @@ def test_deviceinfo():
|
||||
name = info.name
|
||||
manufacturer = info.manufacturer
|
||||
if not name.startswith(manufacturer) and \
|
||||
not name.startswith("Google") and \
|
||||
not name.startswith("Jolla"):
|
||||
not name.startswith("Google"):
|
||||
raise RuntimeError("Please add the manufacturer in front of"
|
||||
" the deviceinfo_name, e.g.: '" +
|
||||
manufacturer + " " + name + "'")
|
||||
|
||||
@@ -25,7 +25,6 @@ def test_aports_firmware():
|
||||
"firmware-samsung-maguro", # Depends on firmware-aosp-broadcom-wlan
|
||||
"firmware-xiaomi-ferrari", # Depends on soc-qcom-msm8916
|
||||
"firmware-xiaomi-willow", # Doesn't build, source link is dead (pma#1212)
|
||||
"firmware-samsung-i9105p", # Depends on firmware-aosp-broadcom-wlan
|
||||
]
|
||||
|
||||
for path in pkgrepo_iglob("**/firmware-*/APKBUILD", recursive=True):
|
||||
|
||||
@@ -23,7 +23,7 @@ def test_aports_kernel():
|
||||
apkbuild = pmb.parse.apkbuild(path)
|
||||
aport_name = os.path.basename(os.path.dirname(path))
|
||||
|
||||
if aport_name == "linux-pam-pmos":
|
||||
if aport_name == "linux-pam":
|
||||
continue # This package isn't a linux kernel!
|
||||
|
||||
if "pmb:cross-native" not in apkbuild["options"]:
|
||||
|
||||
@@ -105,8 +105,7 @@ def test_aports_unreferenced_files():
|
||||
if os.path.basename(rel_file_path) not in sources_chk \
|
||||
and rel_file_path not in apkbuild["install"] \
|
||||
and rel_file_path not in subpackage_installs \
|
||||
and rel_file_path not in trigger_sources \
|
||||
and not rel_file_path.startswith("tests/"):
|
||||
and rel_file_path not in trigger_sources:
|
||||
raise RuntimeError(f"{apkbuild_path}: found unreferenced file: {rel_file_path}")
|
||||
|
||||
|
||||
|
||||
@@ -1,19 +0,0 @@
|
||||
#!/bin/sh -e
|
||||
# Description: run unit-tests for packages
|
||||
# https://postmarketos.org/pmb-ci
|
||||
#
|
||||
# This script only exists to allow running unit-tests locally.
|
||||
# In actual CI the package tests/ subdir has it's own YAML
|
||||
# fine defining a job which calls testlib for that package.
|
||||
# This way we can run all the package unit-tests locally but
|
||||
# have them be individual jobs in GitLab.
|
||||
|
||||
if [ "$(id -u)" = 0 ]; then
|
||||
set -x
|
||||
exec su "${TESTUSER:-build}" -c "sh -e $0"
|
||||
fi
|
||||
|
||||
find . -type d -name "tests" | while read -r testdir; do
|
||||
pkg="$(basename "$(dirname "$testdir")")"
|
||||
.ci/lib/testlib.sh "$testdir" "$pkg"
|
||||
done
|
||||
@@ -1,16 +0,0 @@
|
||||
#!/bin/sh -e
|
||||
# Description: verify checksums of modified packages
|
||||
# Options: native
|
||||
# Use 'native' because it requires running pmbootstrap.
|
||||
# https://postmarketos.org/pmb-ci
|
||||
|
||||
if [ "$(id -u)" = 0 ]; then
|
||||
set -x
|
||||
wget "https://gitlab.postmarketos.org/postmarketOS/ci-common/-/raw/master/install_pmbootstrap.sh"
|
||||
sh ./install_pmbootstrap.sh
|
||||
exec su "${TESTUSER:-pmos}" -c "sh -e $0"
|
||||
fi
|
||||
|
||||
export PYTHONUNBUFFERED=1
|
||||
|
||||
.ci/lib/verify_checksums.py
|
||||
@@ -37,30 +37,13 @@ prepend_msg() {
|
||||
[ -z "$SOURCE" ] || exit 0
|
||||
|
||||
lcp=$(git diff-index --name-only --cached HEAD | longest_common_prefix)
|
||||
prefix=""
|
||||
|
||||
case "$lcp" in
|
||||
extra-repos/systemd/systemd/*)
|
||||
prefix="systemd"
|
||||
;;
|
||||
extra-repos/systemd/*)
|
||||
prefix="systemd/$(echo "$lcp" | cut -d/ -f3)"
|
||||
;;
|
||||
device/*/*)
|
||||
prefix="$(echo "$lcp" | cut -d/ -f3)"
|
||||
;;
|
||||
device/*)
|
||||
# Multiple packages touched for same device category. More
|
||||
# logic could be added to detect if they all belong to same
|
||||
# device.
|
||||
;;
|
||||
[^.]*/*)
|
||||
prefix="$(echo "$lcp" | cut -d/ -f1-2)"
|
||||
;;
|
||||
device/*/*) prepend_msg "$(echo "$lcp" | cut -d/ -f3): ";;
|
||||
# Multiple packages touched for same device category
|
||||
# More logic could be added to detect if they all belong to same device
|
||||
device/*) ;;
|
||||
[^.]*/*) prepend_msg "$(echo "$lcp" | cut -d/ -f1-2): ";;
|
||||
esac
|
||||
|
||||
if [ -n "$prefix" ]; then
|
||||
prepend_msg "$prefix: "
|
||||
fi
|
||||
|
||||
exit 0
|
||||
@@ -118,6 +118,3 @@ ENV/
|
||||
|
||||
# Allow having untracked packages in aports using a custom-something directory
|
||||
/custom-*/
|
||||
|
||||
# child pipeline
|
||||
.ci/build-jobs.yaml
|
||||
+44
-59
@@ -8,16 +8,14 @@ after_script:
|
||||
- .ci/lib/move_logs.sh $CI_PROJECT_DIR
|
||||
stages:
|
||||
- lint
|
||||
- prepare
|
||||
- build
|
||||
- autoupdate
|
||||
- test
|
||||
variables:
|
||||
# Default of 20 is pretty small, sometimes MRs have >20 commits in them. 100
|
||||
# seems like a reasonable balance. If this is too low, git merge-base (from ci/
|
||||
# common.py) can fail
|
||||
GIT_DEPTH: 100
|
||||
|
||||
|
||||
# This defines the rules for when a pipeline should run.
|
||||
workflow:
|
||||
rules:
|
||||
@@ -29,10 +27,6 @@ workflow:
|
||||
# Run scheduled pipeline for autoupdate or manually triggered pipeline
|
||||
- if: $CI_PIPELINE_SOURCE == "schedule" || $CI_PIPELINE_SOURCE == "web"
|
||||
|
||||
# Some packages have their own yaml files defining tests. All of these should contain
|
||||
# only jobs which extend the .package-test job!
|
||||
include: "**/.gitlab-ci.yml"
|
||||
|
||||
# device documentation
|
||||
wiki:
|
||||
stage: lint
|
||||
@@ -69,6 +63,7 @@ shellcheck-grep:
|
||||
- .ci/lib/gitlab_prepare_ci.sh
|
||||
- .ci/shellcheck.sh
|
||||
- .ci/grep.sh
|
||||
- .ci/codeowners.sh
|
||||
|
||||
editor-config:
|
||||
stage: lint
|
||||
@@ -121,15 +116,6 @@ kernel-kconfig:
|
||||
- .ci/lib/gitlab_prepare_ci.sh
|
||||
- .ci/kconfig.sh
|
||||
|
||||
# Verify checksums
|
||||
verify-checksums:
|
||||
stage: lint
|
||||
rules:
|
||||
- if: *mr_rule
|
||||
script:
|
||||
- .ci/lib/gitlab_prepare_ci.sh
|
||||
- .ci/verify-checksums.sh
|
||||
|
||||
# MR settings
|
||||
# (Checks for "Allow commits from members who can merge to the target branch")
|
||||
mr-settings:
|
||||
@@ -143,44 +129,51 @@ mr-settings:
|
||||
- wget -q "https://gitlab.postmarketos.org/postmarketOS/ci-common/-/raw/master/check_mr_settings.py"
|
||||
- python3 ./check_mr_settings.py
|
||||
|
||||
# Calculate build of changed aports using a dynamic downstream pipelines:
|
||||
# https://docs.gitlab.com/ci/pipelines/downstream_pipelines/#dynamic-child-pipelines
|
||||
# For those to work, we need two jobs:
|
||||
# * First one (this one) that generates a valid yaml file with the job yaml as
|
||||
# an artifact
|
||||
# * Second one (build-jobs) that has a "trigger" key with the yaml file from
|
||||
# which to trigger pipelines
|
||||
# To avoid reworking the whole CI file, for now we are re-using this same file
|
||||
# to trigger the downstream pipeline. In that case, $CI_PIPELINE_SOURCE will
|
||||
# be set to "parent_pipeline", and only the jobs that extend .build will run
|
||||
generate-build-jobs:
|
||||
stage: prepare
|
||||
before_script:
|
||||
- .ci/lib/gitlab_prepare_ci.sh
|
||||
needs: []
|
||||
script:
|
||||
- wget "https://gitlab.postmarketos.org/postmarketOS/ci-common/-/raw/master/install_pmbootstrap.sh"
|
||||
- sh ./install_pmbootstrap.sh py3-jinja2
|
||||
- .ci/lib/generate_build_jobs.py .ci/build-jobs.yaml.j2 .ci/build-jobs.yaml
|
||||
|
||||
artifacts:
|
||||
paths:
|
||||
- .ci/build-jobs.yaml
|
||||
rules:
|
||||
- if: *mr_rule
|
||||
|
||||
build-jobs:
|
||||
# build changed aports
|
||||
.build:
|
||||
stage: build
|
||||
trigger:
|
||||
include:
|
||||
- artifact: .ci/build-jobs.yaml
|
||||
job: generate-build-jobs
|
||||
strategy: depend
|
||||
forward:
|
||||
# So that we don't have to duplicate GIT_DEPTH
|
||||
pipeline_variables: true
|
||||
rules:
|
||||
- if: *mr_rule
|
||||
before_script:
|
||||
- *global_before_scripts
|
||||
- .ci/lib/gitlab_prepare_ci.sh
|
||||
after_script:
|
||||
- cp -r /home/pmos/.local/var/pmbootstrap/packages/ packages/ || true
|
||||
artifacts:
|
||||
expire_in: 1 week
|
||||
paths:
|
||||
- packages/
|
||||
timeout: 10 h
|
||||
|
||||
build-x86_64:
|
||||
extends: .build
|
||||
script:
|
||||
- .ci/build-x86_64.sh
|
||||
|
||||
build-x86:
|
||||
extends: .build
|
||||
script:
|
||||
- .ci/build-x86.sh
|
||||
|
||||
build-aarch64:
|
||||
extends: .build
|
||||
script:
|
||||
- .ci/build-aarch64.sh
|
||||
|
||||
build-armv7:
|
||||
extends: .build
|
||||
script:
|
||||
- .ci/build-armv7.sh
|
||||
|
||||
build-armhf:
|
||||
extends: .build
|
||||
script:
|
||||
- .ci/build-armhf.sh
|
||||
|
||||
build-riscv64:
|
||||
extends: .build
|
||||
script:
|
||||
- .ci/build-riscv64.sh
|
||||
|
||||
auto-update:
|
||||
stage: autoupdate
|
||||
@@ -200,11 +193,3 @@ auto-update:
|
||||
- log.txt
|
||||
- log_testsuite_pmaports.txt
|
||||
- pmbootstrap.cfg
|
||||
|
||||
# Template for package test jobs defined per-package
|
||||
.package-test:
|
||||
stage: test
|
||||
rules:
|
||||
- if: *mr_rule
|
||||
before_script:
|
||||
- .ci/lib/gitlab_prepare_ci.sh
|
||||
@@ -34,7 +34,6 @@
|
||||
|
||||
### On what environment did you encounter the issue?
|
||||
#### Environments
|
||||
* [ ] COSMIC
|
||||
* [ ] GNOME Shell on Mobile
|
||||
* [ ] Phosh
|
||||
* [ ] Plasma Mobile
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
{
|
||||
"subject_format": {
|
||||
"pass": [
|
||||
"^(([a-z]+\\/[a-z\\-0-9*{}]+),?)+: [A-Za-z\\/\\-0-9*{}\\(\\)\\.,_&:=' ]+( \\(MR \\d+\\)|)$",
|
||||
"^CI: [a-z-0-9*{}\\(\\)\\.,_ ][A-Za-z\\/\\-0-9*{}\\(\\)\\.,_ ]+( \\(MR \\d+\\)|)$",
|
||||
"^mrhlpr.json: [a-z-0-9*{}\\(\\)\\.,_ ][A-Za-z\\/\\-0-9*{}\\(\\)\\.,_ ]+( \\(MR \\d+\\)|)$",
|
||||
"^pmaports.cfg: [a-z-0-9*{}\\(\\)\\.,_ ][A-Za-z\\/\\-0-9*{}\\(\\)\\.,_ ]+( \\(MR \\d+\\)|)$"
|
||||
],
|
||||
"unknown": [
|
||||
"^[a-z-0-9_.*{}\\/]+: [a-z-0-9*{}\\(\\)\\.,_ ][A-Za-z\\/\\-0-9*{}\\(\\)\\.,_ ]+( \\(MR \\d+\\)|)$"
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
https://postmarketos.org/funding.json
|
||||
+156
@@ -0,0 +1,156 @@
|
||||
# https://docs.gitlab.com/ee/user/project/code_owners.html
|
||||
# Put groups like @sdm845-mainline into test_device.py:gitlab_groups.
|
||||
# Order lines alphabetically!
|
||||
|
||||
device/*/*-amlogic-s905*/ @funderscore
|
||||
device/*/*-arrow-db410c/ @Minecrell
|
||||
device/*/*-asus-me176c/ @Minecrell
|
||||
device/*/*-ayn-odin/ @jenneron
|
||||
device/*/*-bq-paella/ @Minecrell
|
||||
device/*/*-bq-tenshi/ @fossdd
|
||||
device/*/*-google-gru/ @jenneron
|
||||
device/*/*-google-kukui/ @jenneron @binarycraft
|
||||
device/*/*-google-oak/ @jenneron @adamthiede
|
||||
device/*/*-google-trogdor/ @jenneron
|
||||
device/*/*-google-veyron/ @jenneron
|
||||
device/*/*-google-x64cros/ @jenneron @JustSoup321 @alpernebbi
|
||||
device/*/*-htc-golfu/ @Newbyte
|
||||
device/*/*-htc-m8qlul/ @Newbyte
|
||||
device/*/*-kobo-clara/ @akemnade
|
||||
device/*/*-lenovo-21bx/ @craftyguy @jane400
|
||||
device/*/*-lenovo-a6000/ @jenneron @Minecrell
|
||||
device/*/*-lenovo-a6010/ @jenneron @Minecrell
|
||||
device/*/*-librecomputer-lafrite/ @funderscore
|
||||
device/*/*-librecomputer-lepotato/ @funderscore
|
||||
device/*/*-librecomputer-solitude/ @Newbyte @funderscore
|
||||
device/*/*-motorola-harpia/ @Minecrell
|
||||
device/*/*-nokia-n900/ @sicelo @Danct12
|
||||
device/*/*-pine64-pinebookpro/ @QC8086
|
||||
device/*/*-pine64-pinephone/ @craftyguy @milesalan @proycon @anjandev @StacyHarper @Arnavion @PsychoGame
|
||||
device/*/*-pine64-pinephonepro/ @PsychoGame
|
||||
device/*/*-pine64-rockpro64/ @PureTryOut
|
||||
device/*/*-purism-librem5/ @craftyguy @alistair23 @Newbyte
|
||||
device/*/*-qcom-msm8916/ @Minecrell @TravMurav
|
||||
device/*/*-qcom-msm8953/ @barni2000 @alikates @vipaoL @jiaxyga
|
||||
device/*/*-qcom-sdm670/ @flamingradian
|
||||
device/*/*-qcom-sdm845/ @sdm845-mainline
|
||||
device/*/*-qcom-sm6350/ @z3ntu
|
||||
device/*/*-qcom-sm8250/ @jianhua
|
||||
device/*/*-samsung-a3/ @Mis012 @TravMurav @Minecrell
|
||||
device/*/*-samsung-a5/ @Minecrell @minlexx
|
||||
device/*/*-samsung-a51/ @manoedinata
|
||||
device/*/*-samsung-e7/ @wonderfulShrineMaidenOfParadise
|
||||
device/*/*-samsung-espresso10/ @MightyM17
|
||||
device/*/*-samsung-espresso7/ @MightyM17 @antoni.aloytorrens
|
||||
device/*/*-samsung-fortuna/ @wonderfulShrineMaidenOfParadise
|
||||
device/*/*-samsung-fortunaltezt/ @bolilingmeng89006
|
||||
device/*/*-samsung-grandmax/ @wonderfulShrineMaidenOfParadise
|
||||
device/*/*-samsung-gt510/ @TravMurav
|
||||
device/*/*-samsung-gt58/ @TravMurav
|
||||
device/*/*-samsung-j3ltetw/ @bolilingmeng89006
|
||||
device/*/*-samsung-j4lte/ @manoedinata
|
||||
device/*/*-samsung-j5/ @wonderfulShrineMaidenOfParadise
|
||||
device/*/*-samsung-j5x/ @wonderfulShrineMaidenOfParadise
|
||||
device/*/*-samsung-rossa/ @wonderfulShrineMaidenOfParadise
|
||||
device/*/*-samsung-serranove/ @Minecrell
|
||||
device/*/*-tolino-shine2hd/ @akemnade
|
||||
device/*/*-videostrong-kii-pro/ @funderscore
|
||||
device/*/*-wileyfox-crackling/ @TravMurav @Minecrell
|
||||
device/*/*-xiaomi-beryllium/ @joelselvaraj
|
||||
device/*/*-xiaomi-daisy/ @joelselvaraj @alikates
|
||||
device/*/*-xiaomi-elish/ @jianhua
|
||||
device/*/*-xiaomi-markw/ @vipaoL
|
||||
device/*/*-xiaomi-mido/ @barni2000
|
||||
device/*/*-xiaomi-scorpio/ @Tooniis
|
||||
device/*/*-xiaomi-tissot/ @jiaxyga @barni2000
|
||||
device/*/*-xiaomi-vince/ @M0Rf30
|
||||
device/*/*-xiaomi-wt88047/ @Minecrell
|
||||
device/*/*-xiaomi-ysl/ @barni2000
|
||||
device/*/alsa-ucm-conf-cros/ @WeirdTreeThing
|
||||
device/*/alsa-ucm-conf-qcom-sdm670/ @flamingradian
|
||||
device/*/device-apple-n61/ @JustSoup321
|
||||
device/*/device-fairphone-*/ @z3ntu
|
||||
device/*/device-generic-x86_64/ @craftyguy @ollieparanoid
|
||||
device/*/device-google-nyan-big/ @jenneron
|
||||
device/*/device-google-nyan-blaze/ @jenneron
|
||||
device/*/device-google-peach-pi/ @jenneron
|
||||
device/*/device-google-peach-pit/ @jenneron
|
||||
device/*/device-google-sargo/ @flamingradian
|
||||
device/*/device-google-snow/ @jenneron
|
||||
device/*/device-huawei-plank/ @gtrxAC
|
||||
device/*/device-lg-judyln/ @Newbyte
|
||||
device/*/device-lg-judyp/ @jenneron
|
||||
device/*/device-microsoft-surface-rt/ @jenneron @jethrob
|
||||
device/*/device-nvidia-tegra-armv7/ @clamor-s @okias @mschwalm @nokun
|
||||
device/*/device-odroid-xu4/ @Grimler
|
||||
device/*/device-oneplus-enchilada/ @calebccff
|
||||
device/*/device-oneplus-fajita/ @calebccff
|
||||
device/*/device-postmarketos-trailblazer/ @calebccff
|
||||
device/*/device-qcom-msm8909/ @wonderfulShrineMaidenOfParadise
|
||||
device/*/device-qemu-aarch64/ @Minecrell @ollieparanoid
|
||||
device/*/device-qemu-amd64/ @Minecrell @ollieparanoid
|
||||
device/*/device-qemu-riscv64/ @Minecrell @z3ntu
|
||||
device/*/device-qualcomm-sdm845/ @calebccff
|
||||
device/*/device-raspberry-pi3/ @fossdd
|
||||
device/*/device-samsung-chagallwifi/ @Grimler
|
||||
device/*/device-samsung-coreprimevelte/ @legolivesmatter @balejk
|
||||
device/*/device-samsung-j5y17lte/ @andrisas
|
||||
device/*/device-samsung-klimtlte/ @Grimler
|
||||
device/*/device-samsung-lt01/ @knuxify
|
||||
device/*/device-samsung-m0/ @Newbyte
|
||||
device/*/device-samsung-manta/ @jenneron @alexmrqt
|
||||
device/*/device-shift-axolotl/ @amartinz @calebccff @dylanvanassche
|
||||
device/*/device-solidrun-cubox/ @longnoserob
|
||||
device/*/firmware-google-sargo/ @flamingradian
|
||||
device/*/firmware-google-veyron-brcm/ @jenneron
|
||||
device/*/firmware-motorola-osprey/ @Minecrell
|
||||
device/*/firmware-odroid-xu4/ @Grimler
|
||||
device/*/firmware-oneplus-sdm845/ @calebccff
|
||||
device/*/firmware-powervr-gx6250/ @jenneron
|
||||
device/*/kobo-epdc-extractor/ @akemnade
|
||||
device/*/linux-google-nyan/ @jenneron
|
||||
device/*/linux-google-veyron/ @jenneron
|
||||
device/*/linux-huawei-plank/ @gtrxAC
|
||||
device/*/linux-next/ @calebccff
|
||||
device/*/linux-postmarketos-allwinner/ @Arnavion @PsychoGame
|
||||
device/*/linux-postmarketos-amlogic/ @funderscore @exkc
|
||||
device/*/linux-postmarketos-apple/ @JustSoup321
|
||||
device/*/linux-postmarketos-exynos4/ @Newbyte @Grimler @knuxify
|
||||
device/*/linux-postmarketos-exynos5/ @jenneron @Grimler
|
||||
device/*/linux-postmarketos-grate/ @clamor-s @jenneron @jethrob
|
||||
device/*/linux-postmarketos-imx-ereader/ @akemnade
|
||||
device/*/linux-postmarketos-marvell/ @longnoserob @exkc
|
||||
device/*/linux-postmarketos-mediatek-mt8173/ @jenneron @adamthiede
|
||||
device/*/linux-postmarketos-mediatek-mt8183/ @jenneron @binarycraft
|
||||
device/*/linux-postmarketos-omap/ @MightyM17 @Sicelo
|
||||
device/*/linux-postmarketos-qcom-laptop/ @craftyguy @calebccff
|
||||
device/*/linux-postmarketos-qcom-msm8939/ @Newbyte
|
||||
device/*/linux-postmarketos-qcom-msm8953/ @M0Rf30 @Ultra-azu @barni2000
|
||||
device/*/linux-postmarketos-qcom-msm8996/ @Tooniis
|
||||
device/*/linux-postmarketos-qcom-sc7180/ @jenneron
|
||||
device/*/linux-postmarketos-rockchip/ @QC8086
|
||||
device/*/linux-postmarketos-stericsson/ @Newbyte
|
||||
device/*/linux-samsung-chagallwifi/ @Grimler
|
||||
device/*/linux-samsung-coreprimevelte/ @legolivesmatter @balejk
|
||||
device/*/linux-samsung-j5y17lte/ @andrisas
|
||||
device/*/linux-samsung-klimtlte/ @Grimler
|
||||
device/*/oem-amd/ @craftyguy
|
||||
device/*/oem-intel/ @craftyguy
|
||||
device/*/oem-nvidia/ @craftyguy
|
||||
device/*/soc-mediatek-mt8183/ @jenneron
|
||||
device/*/soc-qcom-msm8953/ @barni2000
|
||||
device/*/soc-qcom-msm8996/ @Tooniis
|
||||
device/*/soc-qcom-sc7180/ @jenneron
|
||||
device/*/soc-rockchip-rk3399/ @jenneron
|
||||
device/*/soc-samsung-exynos4412/ @Newbyte
|
||||
device/*/u-boot-librem5/ @craftyguy @alistair23 @Newbyte
|
||||
device/*/u-boot-pinebookpro/ @QC8086
|
||||
device/*/u-boot-pinephone/ @Arnavion @PsychoGame
|
||||
device/*/wl1251-cal/ @Danct12
|
||||
main/postmarketos*gnome*/ @pabloyoyoista @Newbyte @fossdd
|
||||
main/postmarketos-initramfs/ @calebccff @craftyguy
|
||||
main/postmarketos-ui-i3wm/ @fossdd
|
||||
main/postmarketos-ui-phosh/ @pabloyoyoista @Newbyte @fossdd
|
||||
main/postmarketos-ui-plasma-mobile/ @PureTryOut
|
||||
main/shutdown-clear-rtc-wakealarm/ @Arnavion
|
||||
main/ttyescape/ @calebccff
|
||||
@@ -42,19 +42,6 @@ commit title can opt to use the following format:
|
||||
|
||||
manufacturer-codename: description of change
|
||||
|
||||
### Changes to packages inside of the systemd directory
|
||||
|
||||
We also shorten the prefixes for packages in `extra-repos/systemd`.
|
||||
When the `systemd` package itself gets changed, use `systemd: ` as
|
||||
prefix. For example:
|
||||
|
||||
systemd: add triggers for reloading/restarting services
|
||||
|
||||
When another package inside the systemd directory gets changed, use
|
||||
`systemd/$pkgname: ` as prefix. For example:
|
||||
|
||||
systemd/cups: restart on upgrade
|
||||
|
||||
### Moving devices between categories
|
||||
|
||||
As we do not include directory prefixes in device-related commits,
|
||||
|
||||
+1
-1
@@ -15,7 +15,7 @@ branch_aports=3.21-stable
|
||||
mirrordir_alpine=v3.21
|
||||
|
||||
[v24.06]
|
||||
description=Old release (unsupported)
|
||||
description=Old release (supported until 2025-01-23)
|
||||
branch_pmaports=v24.06
|
||||
branch_aports=3.20-stable
|
||||
mirrordir_alpine=v3.20
|
||||
|
||||
@@ -8,7 +8,7 @@ fi
|
||||
|
||||
pkgname=busybox-static-aarch64
|
||||
pkgver=1.37.0
|
||||
pkgrel=16
|
||||
pkgrel=10
|
||||
|
||||
_arch="aarch64"
|
||||
_mirror="http://dl-4.alpinelinux.org/alpine/"
|
||||
@@ -32,5 +32,5 @@ package() {
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
6ff297733e1c89429cb0b667a5cda1cad1e2085b4ea071d6247034313c2e0a0963d44158ef5b651f212ea3fa99e16fdc7901152317cd5a07b1e76c2ed5aa47b2 busybox-static-1.37.0-r16-aarch64-edge.apk
|
||||
b71a091d7ae6ee459dd0c51409793214a2285ee83c2621e289e198187ed642222d6f842f08661a8c72f96c9a0dc7271d5a47ab6794e2551f185d68f515bde598 busybox-static-1.37.0-r10-aarch64-edge.apk
|
||||
"
|
||||
@@ -8,7 +8,7 @@ fi
|
||||
|
||||
pkgname=busybox-static-armhf
|
||||
pkgver=1.37.0
|
||||
pkgrel=16
|
||||
pkgrel=10
|
||||
|
||||
_arch="armhf"
|
||||
_mirror="http://dl-4.alpinelinux.org/alpine/"
|
||||
@@ -32,5 +32,5 @@ package() {
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
ea3b5afb3b1d73835fec42960fca06c144e84d926beec7774fcd873a701fca22f31fc03417ac0cdef0533f8948cbf971484bbd9a5d00f4dae0ade386a7027739 busybox-static-1.37.0-r16-armhf-edge.apk
|
||||
88abaead7eace4910199e0cc76bc16bce762d61b2e10e1bc2a631d38e56458f5cb95f98f09d09f346229f9c6c982d3b0b3f907315f54e0e92b83dcc3b839d8bf busybox-static-1.37.0-r10-armhf-edge.apk
|
||||
"
|
||||
@@ -8,7 +8,7 @@ fi
|
||||
|
||||
pkgname=busybox-static-armv7
|
||||
pkgver=1.37.0
|
||||
pkgrel=16
|
||||
pkgrel=10
|
||||
|
||||
_arch="armv7"
|
||||
_mirror="http://dl-4.alpinelinux.org/alpine/"
|
||||
@@ -32,5 +32,5 @@ package() {
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
f3c12760357b4a702a97393ba54a22b34eeb874d7442c6ef1f45eeb954786daefcfc8565992f30f4d417203e2aa9a4df6d7862ccccef1101064ce23e6fef7366 busybox-static-1.37.0-r16-armv7-edge.apk
|
||||
5bbeb8a0331f25569acc32d574290ec430f0a2a74190550b3913f3e7366082a76b9755c0d52bec57659a2bbd1af3f4fe5928ec988b283a2e731c902cd5e7aa85 busybox-static-1.37.0-r10-armv7-edge.apk
|
||||
"
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
pkgname=ccache-cross-symlinks
|
||||
pkgver=3
|
||||
pkgrel=1
|
||||
pkgrel=0
|
||||
pkgdesc="Enable ccache for cross-compilers with symlinks"
|
||||
url="https://ccache.samba.org/"
|
||||
arch="noarch"
|
||||
@@ -15,7 +15,7 @@ options="!check"
|
||||
|
||||
package() {
|
||||
# Keep in sync with pmb.config.build_device_architectures
|
||||
local _archs="armhf armv7 aarch64 x86_64 x86 riscv64"
|
||||
local _archs="armhf armv7 aarch64 x86_64 x86"
|
||||
|
||||
local _bins="c++ cc cpp g++ gcc clang clang++"
|
||||
mkdir -p "$pkgdir/usr/lib/ccache/bin"
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
|
||||
pkgname=crossdirect
|
||||
pkgver=5.2.0
|
||||
pkgrel=1
|
||||
pkgrel=0
|
||||
pkgdesc="Wrappers to launch native cross compilers in foreign chroots"
|
||||
url="https://postmarketOS.org"
|
||||
arch="all"
|
||||
@@ -31,7 +31,7 @@ source="cargo.sh crossdirect.c rustc.sh rust-qemu-linker.sh"
|
||||
build() {
|
||||
cd "$srcdir"
|
||||
# Architectures and binaries
|
||||
_archs="x86_64 armhf armv7 aarch64 riscv64"
|
||||
_archs="x86_64 armhf armv7 aarch64"
|
||||
for _arch in $_archs; do
|
||||
[ "$_arch" == "$CARCH" ] && continue
|
||||
_hostspec="$(arch_to_hostspec $_arch)"
|
||||
@@ -48,7 +48,7 @@ build() {
|
||||
|
||||
package() {
|
||||
# Architectures and binaries
|
||||
_archs="x86_64 armhf armv7 aarch64 riscv64"
|
||||
_archs="x86_64 armhf armv7 aarch64"
|
||||
_bins="c++ cc cpp g++ gcc clang clang++"
|
||||
|
||||
# Rust wrappers
|
||||
|
||||
@@ -8,7 +8,7 @@ fi
|
||||
|
||||
pkgname=musl-aarch64
|
||||
pkgver=1.2.5
|
||||
pkgrel=10
|
||||
pkgrel=9
|
||||
arch="x86_64"
|
||||
subpackages="musl-dev-aarch64:package_dev"
|
||||
|
||||
@@ -57,6 +57,6 @@ package_dev() {
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
8276aa0ce7368b87bf97f37d600639d475c059b984061125c6b648d2fecb838d87c8de9f19af32bad5862845c05368ccec0b328af3beb0fedc89a7ec0fb3babb musl-1.2.5-r10-aarch64-edge.apk
|
||||
2da7a285fee8a1f2386d4a75cbf3c75cfbbaf88c617d50af0e0440fcd5d9825183772bb13f55f885137d6519c606791d3a8c576c5202818b2289f0db4c98720d musl-dev-1.2.5-r10-aarch64-edge.apk
|
||||
0f874d6c7be3a69a69553d99c4b50ede6e3b92811052c13a36d8dd35955817f437f77e185d624804526d36e8cc6e99be4eedf8c2d3bcf09340068b1e41da5a49 musl-1.2.5-r9-aarch64-edge.apk
|
||||
2b85e131b5b8829a02ca5d6ab9bf3e897468834e6db9e5d54127037b5951f5c3ca06964d225d7d4376637ae77467c4001cbcc7f179705a6a206587ac8d7cd266 musl-dev-1.2.5-r9-aarch64-edge.apk
|
||||
"
|
||||
@@ -8,7 +8,7 @@ fi
|
||||
|
||||
pkgname=musl-armhf
|
||||
pkgver=1.2.5
|
||||
pkgrel=10
|
||||
pkgrel=9
|
||||
arch="x86_64"
|
||||
subpackages="musl-dev-armhf:package_dev"
|
||||
|
||||
@@ -57,6 +57,6 @@ package_dev() {
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
18e90cbe16c8084cbf8d91b36decde0d520778946258d4c84908e639741843d21b7e9e610f007e5126dcc6a3ba2289a862bc18cfd9b21d3bc64161483a5704cf musl-1.2.5-r10-armhf-edge.apk
|
||||
7b46a6eb791beb511d9d40c5de3fc08d9b2fbf82b0538dfb171cdafd16d719687d3bb55e718a0f1eefcd0a8342d81fcb258928a3209ab1a874015054f5ffe501 musl-dev-1.2.5-r10-armhf-edge.apk
|
||||
10f462174d0fa0caaa4e4b767848b2d3a89c70617aca562cf0cd310ee2119eee8638b9eb2909a0756ee8e8952236624c1bacaac314b2d1146cf1c47b4c9b409d musl-1.2.5-r9-armhf-edge.apk
|
||||
b9305bbe13d94de869d354f3657f59f1e08e897c2b6b0d0419a1dc384f00160dbf56df52b75196f238bcee62dd2e7e613755a91ee6e28776f6df38e5e9203de1 musl-dev-1.2.5-r9-armhf-edge.apk
|
||||
"
|
||||
@@ -8,7 +8,7 @@ fi
|
||||
|
||||
pkgname=musl-armv7
|
||||
pkgver=1.2.5
|
||||
pkgrel=10
|
||||
pkgrel=9
|
||||
arch="x86_64"
|
||||
subpackages="musl-dev-armv7:package_dev"
|
||||
|
||||
@@ -57,6 +57,6 @@ package_dev() {
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
cfd51c4655b612815af1e888228244640a4516dd8edd7a75131d6634c96d8ea6028e780b3c3e870dd22c4f89788f9f12594b4900a8df287161059687f1630857 musl-1.2.5-r10-armv7-edge.apk
|
||||
88f482c389479817700a5b2c8609bae9d152303b92b1a9c7bd464aa990975b7bd0990c7b185d6c66ecd0c3c0c5f7579fc52a618d4393e511e112c8992d682693 musl-dev-1.2.5-r10-armv7-edge.apk
|
||||
874994ef577a9651b444ddab90f8ac248b7b2ef8c4b0b7dda38d4ff2200e76a737e9dc27b63da5e7fd4022d18829badcdf99969cc52752d710ec598460cbe03d musl-1.2.5-r9-armv7-edge.apk
|
||||
945a53e8ac24889bcc1bee2b9235fa743c6f653ca0f1611176797ae242eb26c19d3521ead290e9a759ffff38135073c6d2677879c891499c3a50f7f23ab0cead musl-dev-1.2.5-r9-armv7-edge.apk
|
||||
"
|
||||
@@ -8,7 +8,7 @@ fi
|
||||
|
||||
pkgname=musl-riscv64
|
||||
pkgver=1.2.5
|
||||
pkgrel=10
|
||||
pkgrel=9
|
||||
arch="x86_64"
|
||||
subpackages="musl-dev-riscv64:package_dev"
|
||||
|
||||
@@ -57,6 +57,6 @@ package_dev() {
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
4c76e3c4e94ab96d49c51ad01205e846280f851cff06b8c6ab8269d2ac99bbede29da9600fa60130c266d95da21bccdb00ad4b18123964774835e8014611e53e musl-1.2.5-r10-riscv64-edge.apk
|
||||
27e6923fb43b1cd87b15e42edec6c658b7983b4e8c001bb67f5fc79cb124a46af92440e75676460eb3bed3a7acdd5ad142f03ba7dd040aae056431b8cc56818d musl-dev-1.2.5-r10-riscv64-edge.apk
|
||||
eb1e36d35decc8df6c383845e73a703bb5e0f322ca4ba8c346a54652f6d3c9c46d1eef901031ccfaa3a52a132963a67f35f791480f5918c091f3141775e1b1b9 musl-1.2.5-r9-riscv64-edge.apk
|
||||
0cfa1711bc803674fb6504ed7466d73c2e35b735cbd78a5348bafd48973ed89afb877d966202d822f5e7d1064e99c1cc8452672478e3c6f30bac611328462c57 musl-dev-1.2.5-r9-riscv64-edge.apk
|
||||
"
|
||||
@@ -8,7 +8,7 @@ fi
|
||||
|
||||
pkgname=musl-x86
|
||||
pkgver=1.2.5
|
||||
pkgrel=10
|
||||
pkgrel=9
|
||||
arch="x86_64"
|
||||
subpackages="musl-dev-x86:package_dev"
|
||||
|
||||
@@ -57,6 +57,6 @@ package_dev() {
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
7d53c9b8d328860e09e5e5835be9632e9ee6effb6ce4203817b12139a1c4c69ac71495bb575e696b16e9a1dde830729af1b5b4d9308bf2e4be0995f2d7e2843b musl-1.2.5-r10-x86-edge.apk
|
||||
5d048109d3360c526216a6f47446c5e9315fed76ae24bc8238d08dcac80edd22ac3de9ae4fda8fc42fd2c70c676e8673811eddb991bf08ea500bf4ccd10e2a3e musl-dev-1.2.5-r10-x86-edge.apk
|
||||
809a21a20c1c0558c717b566c2fa53af05bb5eab0ca44bc1616b746f89fb4bf9ea05a733a6f4d6b674cd8d531c2734d3d44e38460c4939ac8e24423c91ad8e57 musl-1.2.5-r9-x86-edge.apk
|
||||
be193ac93468095cbecd9fbc84ee16b9fc2f5e7f5181b6759669cb180cdd31daf1b094eb9585e1ddc9b27be7cedc931a51eaca09c1dce191826f8b6f1c15587d musl-dev-1.2.5-r9-x86-edge.apk
|
||||
"
|
||||
@@ -8,7 +8,7 @@ fi
|
||||
|
||||
pkgname=musl-x86_64
|
||||
pkgver=1.2.5
|
||||
pkgrel=10
|
||||
pkgrel=9
|
||||
arch="aarch64"
|
||||
subpackages="musl-dev-x86_64:package_dev"
|
||||
|
||||
@@ -57,6 +57,6 @@ package_dev() {
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
5d8ee4ca49019bf728f855cd296e36ac8ba9c16dc85f56c7b8bb6804788656584464ed9828f1eb5a14c1da1ca77906fae9d93174c44d03e003b6e1c2d1f445a6 musl-1.2.5-r10-x86_64-edge.apk
|
||||
788290a474910e15611f8a9165470fd5a633a579ca3a6f89f5f550864303949dedb286c6f0108db5490e8e05d0ce0dcfd749555b63b624ea8fcaffd9a0b201b9 musl-dev-1.2.5-r10-x86_64-edge.apk
|
||||
b762a06e161cfbdf3a62c155dd6b0d11d81b81543a2381b7ea0ccd56320f9ed14c52a19dd76033594cfefd3b5da20517a2fda3a7c94d7e43c0f378912237b62f musl-1.2.5-r9-x86_64-edge.apk
|
||||
396a982f454b377df901bc465ec5e5ba8b91c2e9e9b6cd52ae28f83f4b5fbd673e7c79657ffa94d0d164e80d77dac813c5b7c51914fabcae3167d0bbc182b01a musl-dev-1.2.5-r9-x86_64-edge.apk
|
||||
"
|
||||
@@ -1,26 +0,0 @@
|
||||
# Archived: Downstream port, only for testing. Use mainline port (asus-x00td)!
|
||||
# This kernel is mostly used for bringing up new features on mainline, thus unmaintained
|
||||
# Reference: <https://postmarketos.org/devicepkg>
|
||||
pkgname=device-asus-x00td-downstream
|
||||
pkgdesc="Asus Zenfone Max Pro M1 downstream"
|
||||
pkgver=0.1
|
||||
pkgrel=0
|
||||
url="postmarketos.org"
|
||||
arch="aarch64"
|
||||
license="MIT"
|
||||
options="!check !archcheck"
|
||||
depends="linux-asus-x00td-downstream mkbootimg msm-fb-refresher postmarketos-base"
|
||||
makedepends="devicepkg-dev"
|
||||
source="deviceinfo"
|
||||
|
||||
build() {
|
||||
devicepkg_build $startdir $pkgname
|
||||
}
|
||||
|
||||
package() {
|
||||
devicepkg_package $startdir $pkgname
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
dee8129a078693d5c5b13da6247615f1b9720d7268e16280ef5d5111b07cd96f534eee91893a20935d182cf6205598d283308f91bc1d7cc7b701907b33090ae8 deviceinfo
|
||||
"
|
||||
@@ -1,32 +0,0 @@
|
||||
# Reference: <https://postmarketos.org/deviceinfo>
|
||||
# Please use double quotes only. You can source this file in shell scripts.
|
||||
|
||||
deviceinfo_format_version="0"
|
||||
deviceinfo_name="Asus ZenFone Max Pro M1"
|
||||
deviceinfo_manufacturer="Asus"
|
||||
deviceinfo_codename="asus-x00td-downstream"
|
||||
deviceinfo_year="2018"
|
||||
deviceinfo_append_dtb="false"
|
||||
deviceinfo_arch="aarch64"
|
||||
|
||||
# Device related
|
||||
deviceinfo_chassis="handset"
|
||||
deviceinfo_keyboard="false"
|
||||
deviceinfo_external_storage="true"
|
||||
deviceinfo_screen_width="1080"
|
||||
deviceinfo_screen_height="2160"
|
||||
|
||||
# Bootloader related
|
||||
deviceinfo_flash_method="fastboot"
|
||||
deviceinfo_flash_fastboot_partition_vbmeta="vbmeta"
|
||||
deviceinfo_kernel_cmdline="console=ttyMSM0,115200,n8 androidboot.console=ttyMSM0 earlycon=msm_serial_dm,0xc170000 androidboot.hardware=qcom user_debug=31 msm_rtb.filter=0x37 ehci-hcd.park=3 lpm_levels.sleep_disabled=1 sched_enable_hmp=1 sched_enable_power_aware=1 service_locator.enable=1 swiotlb=1 firmware_class.path=/vendor/firmware_mnt/image loop.max_part=7 buildvariant=userdebug"
|
||||
deviceinfo_generate_bootimg="true"
|
||||
deviceinfo_bootimg_qcdt="false"
|
||||
deviceinfo_flash_offset_base="0x00000000"
|
||||
deviceinfo_flash_offset_kernel="0x00008000"
|
||||
deviceinfo_flash_offset_ramdisk="0x01000000"
|
||||
deviceinfo_flash_offset_second="0x00f00000"
|
||||
deviceinfo_flash_offset_tags="0x00000100"
|
||||
deviceinfo_flash_pagesize="4096"
|
||||
deviceinfo_flash_sparse="true"
|
||||
deviceinfo_usb_network_function="rndis_bam.rndis"
|
||||
@@ -1,5 +1,4 @@
|
||||
# Reference: <https://postmarketos.org/devicepkg>
|
||||
# Archived: Downstream port, only for testing. Use mainline port (samsung-j6lte)!
|
||||
pkgname=device-samsung-j6lte-downstream
|
||||
pkgdesc="Samsung Galaxy J6 (2018)"
|
||||
pkgver=1
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# Archived: unmaintained port, only for testing. Use generic/mainline port (qcom-msm8953)
|
||||
# Maintainer: Alejandro Tafalla <alikates@dnyon.com>
|
||||
# Reference: <https://postmarketos.org/devicepkg>
|
||||
pkgname=device-xiaomi-daisy
|
||||
pkgdesc="Xiaomi Mi A2 Lite"
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# Archived: unmaintained port, only for testing. Use generic/mainline port (qcom-msm8953)
|
||||
# Maintainer: Victor Pavlov (vipaoL) <vipaolmail@gmail.com>
|
||||
# Reference: <https://postmarketos.org/devicepkg>
|
||||
pkgname=device-xiaomi-markw
|
||||
pkgdesc="Xiaomi Redmi 4 Prime"
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# Archived: unmaintained port, only for testing. Use generic/mainline port (qcom-msm8953)
|
||||
# Maintainer: Barnabas Czeman <trabarni@gmail.com>
|
||||
pkgname=device-xiaomi-mido
|
||||
pkgdesc="Xiaomi Redmi Note 4X"
|
||||
pkgver=9
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# Archived: unmaintained port, only for testing. Use generic/mainline port (qcom-msm8953)
|
||||
# Maintainer: Barnabas Czeman <trabarni@gmail.com>
|
||||
# Reference: <https://postmarketos.org/devicepkg>
|
||||
|
||||
pkgname=device-xiaomi-onclite
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# Archived: unmaintained port, only for testing. Use generic/mainline port (qcom-msm8953)
|
||||
# Maintainer: Barnabas Czeman <trabarni@gmail.com>
|
||||
# Reference: <https://postmarketos.org/devicepkg>
|
||||
|
||||
pkgname=device-xiaomi-rosy
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
# Archived: unmaintained port, only for testing. Use generic/mainline port (qcom-msm8953)
|
||||
# Maintainer: Danila Tikhonov (JIaxyga) <danila@jiaxyga.com>
|
||||
# Co-Maintainer: Barnabas Czeman <trabarni@gmail.com>
|
||||
# Reference: <https://postmarketos.org/devicepkg>
|
||||
|
||||
pkgname=device-xiaomi-tissot
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# Archived: unmaintained port, only for testing. Use generic/mainline port (qcom-msm8953)
|
||||
# Maintainer: m0rf30 <morf3089@gmail.com>
|
||||
# Reference: <https://postmarketos.org/devicepkg>
|
||||
pkgname=device-xiaomi-vince
|
||||
pkgdesc="Xiaomi Redmi 5 Plus"
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# Archived: unmaintained port, only for testing. Use generic/mainline port (qcom-msm8953)
|
||||
# Maintainer: Barnabas Czeman <trabarni@gmail.com>
|
||||
# Reference: <https://postmarketos.org/devicepkg>
|
||||
pkgname=device-xiaomi-ysl
|
||||
pkgdesc="Xiaomi Redmi S2/Y2"
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
# Archived: Downstream port, only for testing. Use mainline port (samsung-j6lte)!
|
||||
pkgname=firmware-samsung-j6lte-downstream
|
||||
pkgver=1
|
||||
pkgrel=0
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# Archived: unmaintained port, only for testing. Use generic/mainline port (qcom-msm8953)
|
||||
# Maintainer: Alejandro Tafalla <alikates@dnyon.com>
|
||||
pkgname=firmware-xiaomi-daisy
|
||||
pkgver=2
|
||||
pkgrel=2
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
# Archived: unmaintained port, only for testing. Use generic/mainline port (qcom-msm8953)
|
||||
# Maintainer: vipaoL <vipaolmail@gmail.com>
|
||||
|
||||
pkgname=firmware-xiaomi-markw
|
||||
pkgver=2
|
||||
pkgrel=2
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# Archived: unmaintained port, only for testing. Use generic/mainline port (qcom-msm8953)
|
||||
# Maintainer: Barnabas Czeman <trabarni@gmail.com>
|
||||
pkgname=firmware-xiaomi-mido
|
||||
pkgver=3
|
||||
pkgrel=1
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# Archived: unmaintained port, only for testing. Use generic/mainline port (qcom-msm8953)
|
||||
# Maintainer: Barnabas Czeman <trabarni@gmail.com>
|
||||
pkgname=firmware-xiaomi-onclite
|
||||
pkgver=2
|
||||
pkgrel=2
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# Archived: unmaintained port, only for testing. Use generic/mainline port (qcom-msm8953)
|
||||
# Maintainer: Barnabas Czeman <trabarni@gmail.com>
|
||||
pkgname=firmware-xiaomi-rosy
|
||||
pkgver=1
|
||||
pkgrel=1
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
# Archived: unmaintained port, only for testing. Use generic/mainline port (qcom-msm8953)
|
||||
# Maintainer: Danila Tikhonov (JIaxyga) <danila@jiaxyga.com>
|
||||
# Co-Maintainer: Barnabas Czeman <trabarni@gmail.com>
|
||||
|
||||
pkgname=firmware-xiaomi-tissot
|
||||
pkgver=2
|
||||
pkgrel=2
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# Archived: unmaintained port, only for testing. Use generic/mainline port (qcom-msm8953)
|
||||
# Maintainer: m0rf30 <morf3089@gmail.com>
|
||||
pkgname=firmware-xiaomi-vince
|
||||
pkgver=4
|
||||
pkgrel=2
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# Archived: unmaintained port, only for testing. Use generic/mainline port (qcom-msm8953)
|
||||
# Maintainer: Barnabas Czeman <trabarni@gmail.com>
|
||||
pkgname=firmware-xiaomi-ysl
|
||||
pkgver=3
|
||||
pkgrel=2
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
# Reference: <https://postmarketos.org/vendorkernel>
|
||||
# Archived: Downstream port, only for testing. Use mainline port (linux-postmarketos-exynos7870)!
|
||||
# Kernel config based on: arch/arm64/configs/j5y17lte_defconfig
|
||||
# Maintainer: andrisas <sebokandris2009@gmail.com>
|
||||
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
# Reference: <https://postmarketos.org/vendorkernel>
|
||||
# Archived: Downstream port, only for testing. Use mainline port (linux-postmarketos-exynos7870)!
|
||||
|
||||
pkgname=linux-samsung-j6lte-downstream
|
||||
pkgver=3.18.14
|
||||
|
||||
@@ -1,26 +0,0 @@
|
||||
# Maintainer: Danila Tikhonov <danila@jiaxyga.com>
|
||||
# Co-Maintainer: Jens Reidel <adrian@travitia.xyz>
|
||||
# Co-Maintainer: David Wronek <david@mainlining.org>
|
||||
pkgname=alsa-ucm-conf-qcom-sm7150
|
||||
pkgver=1.2.11_git20240810
|
||||
pkgrel=1
|
||||
pkgdesc="ALSA UCM configuration for SM7150 devices"
|
||||
url="https://github.com/sm7150-mainline/alsa-ucm-conf"
|
||||
arch="aarch64"
|
||||
license="BSD-3-Clause"
|
||||
provides="alsa-ucm-conf"
|
||||
provider_priority=1
|
||||
_commit="30ff4bed580e0c24f235409069c5f798866897e0"
|
||||
source="$pkgname-$_commit.tar.gz::https://github.com/sm7150-mainline/alsa-ucm-conf/archive/$_commit.tar.gz"
|
||||
options="!check"
|
||||
builddir="$srcdir/alsa-ucm-conf-$_commit"
|
||||
|
||||
package() {
|
||||
# install audio config files
|
||||
mkdir -p "$pkgdir"/usr/share/alsa
|
||||
cp -r ucm2 "$pkgdir"/usr/share/alsa/
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
9a722c6c8090242ac3914e270931a27f241bb616d25b0964e9402805577362939c4dfd973da20df8d9fab75ae9e77656987c6c9b3cd9e59a74d5cb10b1eae052 alsa-ucm-conf-qcom-sm7150-30ff4bed580e0c24f235409069c5f798866897e0.tar.gz
|
||||
"
|
||||
@@ -1,27 +0,0 @@
|
||||
# Maintainer: Caleb Connolly (kalube) <caleb@connolly.tech>
|
||||
# Co-Maintainer: Joel Selvaraj <joelselvaraj.oss@gmail.com>
|
||||
pkgname=alsa-ucm-conf-sdm845
|
||||
pkgver=1
|
||||
pkgrel=0
|
||||
pkgdesc="ALSA UCM configuration for Qualcomm SDM845 devices"
|
||||
url="https://postmarketos.org"
|
||||
arch="aarch64"
|
||||
license="BSD-3-Clause"
|
||||
provides="alsa-ucm-conf"
|
||||
provider_priority=1
|
||||
replaces="soc-qcom-sdm845-ucm"
|
||||
_commit="70d89261a7d30273fba9c6e67a072699f9f88151"
|
||||
source="$pkgname-$_commit.tar.gz::https://gitlab.com/sdm845-mainline/alsa-ucm-conf/-/archive/$_commit/alsa-ucm-conf-$_commit.tar.gz"
|
||||
options="!check"
|
||||
builddir="$srcdir/$pkgname-$_commit"
|
||||
|
||||
package() {
|
||||
# install audio config files
|
||||
mkdir -p "$pkgdir"/usr/share/alsa
|
||||
cp -r "$srcdir/alsa-ucm-conf-$_commit"/ucm2 \
|
||||
"$pkgdir"/usr/share/alsa/
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
f6d03f3b03f944b29b588464e2e26f4f4cc185368714f9e623c1211174ea172efb81a765980c9a289112f5bf8c5c4aafdfd87c0094890069fc3d7c73b29456bc alsa-ucm-conf-sdm845-70d89261a7d30273fba9c6e67a072699f9f88151.tar.gz
|
||||
"
|
||||
@@ -3,7 +3,7 @@
|
||||
pkgname=device-fairphone-fp4
|
||||
pkgdesc="Fairphone 4"
|
||||
pkgver=4
|
||||
pkgrel=1
|
||||
pkgrel=0
|
||||
url="https://postmarketos.org"
|
||||
license="MIT"
|
||||
arch="aarch64"
|
||||
@@ -19,7 +19,7 @@ depends="
|
||||
firmware-fairphone-fp4-modem
|
||||
firmware-fairphone-fp4-wlan
|
||||
firmware-qcom-adreno-a630
|
||||
hexagonrpcd>=0.3.2-r3
|
||||
hexagonrpcd
|
||||
hexagonrpcd-openrc
|
||||
linux-firmware-ath10k
|
||||
linux-postmarketos-qcom-sm6350
|
||||
@@ -38,6 +38,7 @@ depends="
|
||||
tqftpserv-openrc
|
||||
"
|
||||
makedepends="devicepkg-dev"
|
||||
replaces="hexagonrpcd-openrc"
|
||||
subpackages="$pkgname-openrc"
|
||||
source="
|
||||
81-libssc-fairphone-fp4.rules
|
||||
@@ -59,13 +60,12 @@ package() {
|
||||
install -Dm644 "$srcdir"/90-feedbackd-aw8695.rules \
|
||||
"$pkgdir"/usr/lib/udev/rules.d/90-feedbackd-aw8695.rules
|
||||
install -Dm644 "$srcdir"/hexagonrpcd.confd \
|
||||
"$pkgdir"/usr/share/hexagonrpcd/hexagonrpcd-adsp-sensorspd.conf
|
||||
"$pkgdir"/etc/conf.d/hexagonrpcd-adsp-sensorspd
|
||||
}
|
||||
|
||||
openrc() {
|
||||
install_if="$pkgname=$pkgver-r$pkgrel openrc"
|
||||
install="$subpkgname.post-install $subpkgname.post-upgrade"
|
||||
depends="hexagonrpcd-openrc"
|
||||
|
||||
mkdir -p "$subpkgdir"
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
# Co-Maintainer: Oliver Smith <ollieparanoid@postmarketos.org>
|
||||
pkgname=device-generic-x86_64
|
||||
pkgdesc="Generic x86_64 system, with EFI"
|
||||
pkgver=18
|
||||
pkgver=16
|
||||
pkgrel=0
|
||||
url="https://postmarketos.org"
|
||||
license="MIT"
|
||||
@@ -12,7 +12,6 @@ depends="
|
||||
alsa-ucm-conf
|
||||
postmarketos-base
|
||||
systemd-boot
|
||||
unl0kr-fbforcerefresh
|
||||
"
|
||||
makedepends="devicepkg-dev"
|
||||
source="
|
||||
@@ -70,7 +69,7 @@ kernel_lts() {
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
c8a4b2dc32aa43e574e9fdb2d95ac50ee00e26703ae00f6f57cd8ab43cc16999d0da064d2af4c07f5f37a9d01691835a79a12a70cb4c09455ba276ffbbd14310 deviceinfo
|
||||
7f0e1dab2eaf0616220a06a658245a297f2627f1b6a492ccf3bb9922c5b40aa6fd320c4ec5f909557bfc9b38985ef6bc58a67dd87fc46e0d9d35addbcfb2683d modules-initfs
|
||||
e9dfcd70ccfb9a0fdaa0cdc52faf3be96d6de8af8c60a758bb703c515b0648cec4552e0eaf56e5168b0004cd3fc4b28118abb05dad2c581d3579a2e9134862cb deviceinfo
|
||||
e464ef0ad4a4c34d2d53f69c4612b612ea878a77c9efdef69b0f842edf701036c8218809fd63aac286d6a08ae07f39e568199fc3e38d145e716c1723e7215019 modules-initfs
|
||||
9599a10679a43929e4ed2ea22269a0716219163817574d48db4dc1cb21a0fcf17ea54d77d5fd8efd034905c421ecb3eaa600a72927d683983ce48d1159329881 30-gpu-i915-firmware.files
|
||||
"
|
||||
@@ -18,7 +18,7 @@ deviceinfo_gpu_accelerated="true"
|
||||
|
||||
# Bootloader related
|
||||
deviceinfo_flash_method="none"
|
||||
deviceinfo_kernel_cmdline="PMOS_FORCE_PARTITION_RESIZE psi=1 quiet"
|
||||
deviceinfo_kernel_cmdline="PMOS_FORCE_PARTITION_RESIZE quiet"
|
||||
deviceinfo_partition_type="gpt"
|
||||
deviceinfo_boot_filesystem="fat32"
|
||||
deviceinfo_generate_systemd_boot="true"
|
||||
@@ -12,7 +12,6 @@ mbcache
|
||||
mmc_block
|
||||
mmc_core
|
||||
nvme
|
||||
psmouse
|
||||
scsi_mod
|
||||
sd
|
||||
sd_mod
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
pkgname=device-google-gru
|
||||
pkgdesc="Google Gru Chromebooks"
|
||||
pkgver=8
|
||||
pkgrel=2
|
||||
pkgrel=0
|
||||
url="https://postmarketos.org"
|
||||
license="MIT"
|
||||
arch="aarch64"
|
||||
@@ -11,13 +11,14 @@ options="!check !archcheck"
|
||||
depends="
|
||||
alsa-ucm-conf-google-gru
|
||||
depthcharge-tools
|
||||
eudev-hwids>=3.2.12-r0
|
||||
linux-postmarketos-rockchip
|
||||
postmarketos-base
|
||||
postmarketos-cros-common
|
||||
soc-rockchip-rk3399
|
||||
"
|
||||
makedepends="devicepkg-dev"
|
||||
subpackages="$pkgname-nonfree-firmware:nonfree_firmware $pkgname-openrc"
|
||||
subpackages="$pkgname-nonfree-firmware:nonfree_firmware"
|
||||
source="deviceinfo modules-initfs"
|
||||
|
||||
# provides and replaces to switch old installations to this package
|
||||
@@ -50,11 +51,6 @@ nonfree_firmware() {
|
||||
mkdir "$subpkgdir"
|
||||
}
|
||||
|
||||
openrc() {
|
||||
install_if="$pkgname=$pkgver-r$pkgrel openrc"
|
||||
depends="eudev-hwids>=3.2.12-r0"
|
||||
mkdir "$subpkgdir"
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
d0d5e47e7bc6f63f92669a315611c36972e2f06a32c1339ac551f23db023331fb6e1cdbbe4dc2022596aaf8083967951c43585a3aa32c4fddc8d8987bc20c092 deviceinfo
|
||||
|
||||
File renamed without changes.
@@ -2,7 +2,7 @@
|
||||
# Maintainer: Richard Acayan <mailingradian@gmail.com>
|
||||
pkgname=device-google-sargo
|
||||
pkgdesc="Google Pixel 3a"
|
||||
pkgver=10
|
||||
pkgver=7
|
||||
pkgrel=0
|
||||
url="https://postmarketos.org"
|
||||
license="MIT"
|
||||
@@ -10,71 +10,83 @@ arch="aarch64"
|
||||
options="!check !archcheck"
|
||||
depends="
|
||||
alsa-ucm-conf-qcom-sdm670
|
||||
firmware-google-sargo
|
||||
hexagonrpcd
|
||||
linux-firmware-ath10k
|
||||
linux-firmware-qca
|
||||
linux-firmware-qcom
|
||||
linux-postmarketos-qcom-sdm670
|
||||
make-dynpart-mappings
|
||||
mkbootimg
|
||||
postmarketos-base
|
||||
soc-qcom
|
||||
soc-qcom-modem
|
||||
soc-qcom-qbootctl
|
||||
unl0kr-fbforcerefresh
|
||||
soc-qcom-sdm845
|
||||
soc-qcom-sdm845-qbootctl
|
||||
"
|
||||
makedepends="devicepkg-dev"
|
||||
source="
|
||||
10-unl0kr-msm.conf
|
||||
81-libssc-google-sargo.rules
|
||||
90-feedbackd-drv2624.rules
|
||||
deviceinfo
|
||||
hexagonrpcd.confd
|
||||
hexagonrpcd-adsp-sensorspd.confd
|
||||
modules-initfs
|
||||
no-hexagonrpcd-on-suspend.sh
|
||||
q6voiced.conf
|
||||
"
|
||||
subpackages="$pkgname-openrc"
|
||||
subpackages="
|
||||
$pkgname-nonfree-firmware:nonfree_firmware
|
||||
$pkgname-nonfree-firmware-openrc:nonfree_firmware_openrc
|
||||
"
|
||||
|
||||
build() {
|
||||
devicepkg_build $startdir $pkgname
|
||||
}
|
||||
|
||||
package() {
|
||||
replaces="$pkgname-nonfree-firmware"
|
||||
devicepkg_package $startdir $pkgname
|
||||
|
||||
install -Dm644 "$srcdir"/90-feedbackd-drv2624.rules \
|
||||
-t "$pkgdir"/usr/lib/udev/rules.d
|
||||
# Sensors depend on ADSP firmware and the sensors registry served over FastRPC.
|
||||
install -Dm644 "$srcdir"/hexagonrpcd.confd \
|
||||
"$pkgdir"/usr/share/hexagonrpcd/hexagonrpcd-adsp-sensorspd.conf
|
||||
install -Dm644 "$srcdir"/81-libssc-google-sargo.rules \
|
||||
"$pkgdir"/usr/lib/udev/rules.d/81-libssc-google-sargo.rules
|
||||
|
||||
# The q6voiced configuration can only be used if the ADSP is brought up
|
||||
# via non-free firmware.
|
||||
install -Dm644 "$srcdir"/q6voiced.conf "$pkgdir"/etc/conf.d/q6voiced
|
||||
install -Dm644 "$srcdir"/10-unl0kr-msm.conf \
|
||||
"$pkgdir"/etc/unl0kr.conf.d/10-unl0kr-msm.conf
|
||||
}
|
||||
|
||||
openrc() {
|
||||
install_if="$pkgname=$pkgver-r$pkgrel openrc"
|
||||
nonfree_firmware() {
|
||||
pkgdesc="Proprietary firmware blobs for the Google Pixel 3a"
|
||||
depends="
|
||||
firmware-google-sargo
|
||||
hexagonrpcd
|
||||
linux-firmware-ath10k
|
||||
linux-firmware-qca
|
||||
linux-firmware-qcom
|
||||
soc-qcom-sdm845-modem
|
||||
soc-qcom-sdm845-nonfree-firmware
|
||||
"
|
||||
# Sensors depend on ADSP firmware and the sensors registry served over FastRPC.
|
||||
install -Dm644 "$srcdir"/81-libssc-google-sargo.rules \
|
||||
"$subpkgdir"/usr/lib/udev/rules.d/81-libssc-google-sargo.rules
|
||||
}
|
||||
|
||||
nonfree_firmware_openrc() {
|
||||
replaces="hexagonrpcd-openrc"
|
||||
install_if="$pkgname-nonfree-firmware=$pkgver-r$pkgrel openrc"
|
||||
# Enable HexagonRPCD by default, but not if the user installed this
|
||||
# package then disabled it.
|
||||
install="$subpkgname.post-install"
|
||||
depends="hexagonrpcd-openrc"
|
||||
|
||||
replaces="hexagonrpcd-openrc"
|
||||
# The FastRPC service is only enabled when non-free firmware is installed.
|
||||
install -Dm755 "$srcdir"/no-hexagonrpcd-on-suspend.sh \
|
||||
"$subpkgdir"/etc/elogind/system-sleep/no-hexagonrpcd-on-suspend.sh
|
||||
# The q6voiced configuration can only be used if the ADSP is brought up
|
||||
# via non-free firmware.
|
||||
install -Dm644 "$srcdir"/q6voiced.conf "$subpkgdir"/etc/conf.d/q6voiced
|
||||
# Sensors depend on ADSP firmware and the sensors registry served over FastRPC.
|
||||
install -Dm644 "$srcdir"/hexagonrpcd-adsp-sensorspd.confd \
|
||||
"$subpkgdir"/etc/conf.d/hexagonrpcd-adsp-sensorspd
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
f700af3145b79d1ef9edfb22982899b25cabfb212f9620dcbd3a2e6f44b5ad591e0a66056c6fcd66c3fde89a2b5f551e8a8fe2e65cf0e2a48adec57c027d7825 10-unl0kr-msm.conf
|
||||
089ce0acba4e1d789e337bedfca7570796a6416e7230ae9b8fc6b625747a40dbb064b1a707877cd6b7bdc73844c6571316e2ec0746a77060f13d98c52fdbfc00 81-libssc-google-sargo.rules
|
||||
016d398155f2344417f5e5649a361719ba6e53e593c501b5df39114cdd284302b9bf8686a39817aee0c08fec95b3ab613c181d6cc9596299aaf7fd05dbe0c3dd 90-feedbackd-drv2624.rules
|
||||
ad032b1a35cfcd4fc0c8df988430ee97b711e785b86cca68b7552b23a9a2e2b6b97c327e3415a575db47ad6c1f86ded18df5553acaae63010057d89b8c16135e deviceinfo
|
||||
b6208c254b6e44ac4f6d748a38cc6b05da0db2c90235ada2011b138b82ccc3372687df2f5ad97e885e9eea135216a3c52266a08a7f4eb323e62e799f6f82ec7b hexagonrpcd.confd
|
||||
925d8b176a8f1b47a86a1026cc920ffae99ceb35c3e52c222654c15078907579d23c4d68ed65a98ab937f59aaba2bbdd74da8d273e8b9c1ac87a52f718d383d6 modules-initfs
|
||||
b6208c254b6e44ac4f6d748a38cc6b05da0db2c90235ada2011b138b82ccc3372687df2f5ad97e885e9eea135216a3c52266a08a7f4eb323e62e799f6f82ec7b hexagonrpcd-adsp-sensorspd.confd
|
||||
3213a3586c25cef843a47e2446179ff73acad6421826a64bedb6b9800d30673503d0ea6b3fcc8cfbdcdcaf0926755a489323fce9d14d4411799e6988144b3518 modules-initfs
|
||||
2972005a9cf6ca57061965075593dddfa8ee479bc6c21cd41851b1a14768cb1cddbd31a17975ae17adc36d40d294ccbc6bf83defbd69fc7b363f638d8564fbbc no-hexagonrpcd-on-suspend.sh
|
||||
3a4a9322839d4b3ef9d79668a37840a9f444954759ae3c512e694051d2f9a2573db42ad6c4c1a5c75eeb861232a27ba1a8cef9b503decd54ead25a96e3dd6f98 q6voiced.conf
|
||||
"
|
||||
File renamed without changes.
File renamed without changes.
@@ -1,4 +1,10 @@
|
||||
dispcc_sdm845
|
||||
drm_exec
|
||||
gpu_sched
|
||||
i2c_qcom_geni
|
||||
mdt_loader
|
||||
msm
|
||||
panel_samsung_s6e3fa7
|
||||
rmi_core
|
||||
rmi_i2c
|
||||
gpi
|
||||
@@ -3,7 +3,7 @@
|
||||
pkgname=device-google-trogdor
|
||||
pkgdesc="Google Trogdor Chromebooks"
|
||||
pkgver=4
|
||||
pkgrel=1
|
||||
pkgrel=0
|
||||
url="https://postmarketos.org"
|
||||
license="MIT"
|
||||
arch="aarch64"
|
||||
@@ -11,6 +11,7 @@ options="!check !archcheck"
|
||||
depends="
|
||||
alsa-ucm-conf
|
||||
depthcharge-tools
|
||||
eudev-hwids
|
||||
linux-postmarketos-qcom-sc7180
|
||||
postmarketos-base
|
||||
postmarketos-cros-common
|
||||
@@ -41,11 +42,6 @@ nonfree_firmware() {
|
||||
mkdir "$subpkgdir"
|
||||
}
|
||||
|
||||
openrc() {
|
||||
install_if="$pkgname=$pkgver-r$pkgrel openrc"
|
||||
depends="eudev-hwids"
|
||||
mkdir "$subpkgdir"
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
f94dcb175e49cbaadce524586ed1c3e3b0182e414c84c495a5585b49ed40ca6f7fa9c73544d19cbad236333f9fd997f150f836452b47a271f99b7b059972c4bc deviceinfo
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
# Maintainer: Jenneron <jenneron@protonmail.com>
|
||||
pkgname=device-google-veyron
|
||||
pkgdesc="Google Veyron Chromebooks"
|
||||
pkgver=8
|
||||
pkgver=7
|
||||
pkgrel=0
|
||||
url="https://postmarketos.org"
|
||||
license="MIT"
|
||||
@@ -53,6 +53,6 @@ nonfree_firmware() {
|
||||
|
||||
|
||||
sha512sums="
|
||||
d6a214d98ef6502ebed97dd2b774d9d7de1ac969d6d17513f413234e9698bd860248345520eb15f6b54fb0e06a793ba974f8548d397c9a72db31ecd506038008 deviceinfo
|
||||
abeebda841ae33d50008b891b4a29ccf4a7cf7be240b5913b701409e8621aa7210f685543b8ab7a9778b311359a197b4429af2b559716fa130d3af8447bef61d deviceinfo
|
||||
be3e804fa538d9d377c637094dcf95e503e8a156fa71676a9e78abc0e290595dfdaa70b5642df721ebcdd3daa04d14e0c61d9bab6f78cb1dbd669404abc3a56d modules-initfs
|
||||
"
|
||||
@@ -27,4 +27,3 @@ deviceinfo_cgpt_kpart_size="32768"
|
||||
deviceinfo_depthcharge_board="veyron"
|
||||
deviceinfo_generate_depthcharge_image="true"
|
||||
deviceinfo_generate_extlinux_config="true"
|
||||
deviceinfo_create_initfs_extra="true"
|
||||
@@ -4,7 +4,7 @@
|
||||
# Co-Maintainer: Jenneron <jenneron@protonmail.com>
|
||||
pkgname=device-google-x64cros
|
||||
pkgdesc="Google Chromebooks with x64 CPU"
|
||||
pkgver=13
|
||||
pkgver=11
|
||||
pkgrel=0
|
||||
url="https://postmarketos.org"
|
||||
license="MIT"
|
||||
@@ -80,6 +80,6 @@ firmware_intel() {
|
||||
sha512sums="
|
||||
38c53d91a60d0402d4cc5428d65e1e8c26360c481c70b34593b1812c87241c32e91904a3bd31fbfe507f7fdb8b50c909eaad8c4c3a37ca962760567329f7f6ee 00-amdgpu-firmware.files
|
||||
c17f5c505e0e280a9e51ac1b4264e7703b744fd3831d75ce95f41be4755ae4ccd24b7ca09ba1e236df499a5e748c64a0d2054c9d55d8c8c713fa8c5646ed9a3c 00-i915-firmware.files
|
||||
d14992ad384d762452b28a8c5b93be67fb6bc03d0dd3e68d24c3373d466260a5e1a07338eb8fc5090edc735fd70b43017128c27962ebf4b7a5e3fa2fba66c18f deviceinfo
|
||||
a6e5a9de9fe010966523606f2fcab1c44004228b4e050f777dcb1160fb3e32cda8096925543522216c2eb354f8ce2f8d4e206d98b077fbd6fb840de94e84c706 modules-initfs
|
||||
514ff5c946633dccaa569fed51743c669ea9942af4dd891ad001ba08bba07fca92503e29304f3eb71c16bc2f2436e1879ff0bf56d99666e4dcf9635c8605da2e deviceinfo
|
||||
1b3bbfcdc6642488304653aef996dddf7a354e7279f2c735ac7aec404e598948423630fcaa2cac87e2c0aef033ecfc57a7a91154f9dac9a85411db7bad62e677 modules-initfs
|
||||
"
|
||||
@@ -18,7 +18,6 @@ deviceinfo_create_initfs_extra="true"
|
||||
|
||||
# Bootloader related
|
||||
deviceinfo_flash_method="none"
|
||||
deviceinfo_kernel_cmdline="psi=1"
|
||||
deviceinfo_boot_filesystem="fat32"
|
||||
deviceinfo_cgpt_kpart="/boot/vmlinuz.kpart"
|
||||
deviceinfo_cgpt_kpart_start="8192"
|
||||
|
||||
@@ -16,5 +16,3 @@ xhci_pci
|
||||
ehci_pci
|
||||
sdhci_pci
|
||||
mmc_block
|
||||
nvme
|
||||
nvme_core
|
||||
@@ -4,8 +4,8 @@
|
||||
# Reference: <https://postmarketos.org/devicepkg>
|
||||
pkgname=device-lenovo-21bx
|
||||
pkgdesc="Lenovo ThinkPad X13s"
|
||||
pkgver=13
|
||||
pkgrel=0
|
||||
pkgver=12
|
||||
pkgrel=1
|
||||
url="https://postmarketos.org"
|
||||
license="MIT"
|
||||
arch="aarch64"
|
||||
@@ -63,7 +63,7 @@ usbguard() {
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
d2c2266c7db3b018cb1324ad4259fec664fa9d500f701795c6198b2318cec6466a9ad908c7217bb43c03d236dfdf3fb84280faf0cfa484bbdf90bda680822309 deviceinfo
|
||||
9cb08de5748b0339005a910cc0475ad344dc6e912e477c5bd6b370784af6309719524f8fa7a39e7565586e47968a35c344ea853cddd716cc3e1e483efaae7ff0 deviceinfo
|
||||
5f4e6a80455c8a2ed879bfd457a89f81790824657ed4101e03b7ec288a274e63340f48e2ad5028cf83744263a4529584b1e94c36d10b98912e5b31804fa98ff0 firmware.files
|
||||
27705e998db262602b50004083fe160dbcde88e9fdcaeb43e3d1d79be0b7af371f84855bb93ba16ada3cf5fa8ff8da6ca159cda4b1de08fb54ac451c57169c57 modules-initfs
|
||||
52bbb9564ec713db5d46937701b121afe0c6c644fffe189a05766f491b4997b1bbc4c1f90229efb5764d795df8d40a57d4c840ee4b32d426e7a84520364b8bf5 pipewire.conf
|
||||
|
||||
@@ -15,7 +15,7 @@ deviceinfo_gpu_accelerated="true"
|
||||
deviceinfo_chassis="laptop"
|
||||
deviceinfo_keyboard="true"
|
||||
deviceinfo_external_storage="true"
|
||||
deviceinfo_kernel_cmdline="quiet loglevel=2 quiet clk_ignore_unused pd_ignore_unused arm64.nopauth pmos.force-partition-resize"
|
||||
deviceinfo_kernel_cmdline="quiet loglevel=2 quiet clk_ignore_unused pd_ignore_unused arm64.nopauth"
|
||||
|
||||
# Bootloader related
|
||||
deviceinfo_flash_method="none"
|
||||
|
||||
@@ -2,15 +2,14 @@
|
||||
# Maintainer: Sicelo <absicsz@gmail.com>
|
||||
# Co-Maintainer: Danct12 <danct12@disroot.org>
|
||||
pkgname=device-nokia-n900
|
||||
pkgver=42
|
||||
pkgrel=1
|
||||
pkgver=37
|
||||
pkgrel=0
|
||||
pkgdesc="Nokia N900"
|
||||
url="https://postmarketos.org"
|
||||
arch="armv7"
|
||||
license="MIT"
|
||||
depends="
|
||||
alsa-utils
|
||||
evtest
|
||||
kbd
|
||||
kbd-bkeymaps
|
||||
linux-firmware-ti-connectivity
|
||||
@@ -20,14 +19,9 @@ depends="
|
||||
postmarketos-mvcfg
|
||||
u-boot-tools
|
||||
wl1251-cal
|
||||
wl1251-cal-openrc
|
||||
"
|
||||
makedepends="
|
||||
devicepkg-dev
|
||||
u-boot-tools
|
||||
kbd
|
||||
kbd-bkeymaps
|
||||
postmarketos-mvcfg
|
||||
"
|
||||
makedepends="devicepkg-dev u-boot-tools kbd kbd-bkeymaps"
|
||||
install="$pkgname.post-install $pkgname.pre-upgrade"
|
||||
subpackages="
|
||||
$pkgname-x11
|
||||
@@ -49,10 +43,9 @@ source="
|
||||
device-nokia-n900.start
|
||||
deviceinfo
|
||||
modules-initfs
|
||||
i3wm/config-checker
|
||||
i3wm/i3blocks.conf
|
||||
i3wm/i3wm.conf
|
||||
i3wm/pwr-key-handler.sh
|
||||
i3wm/protip_shell.sh
|
||||
i3wm/scripts/battery-bq27200
|
||||
i3wm/scripts/calendar
|
||||
i3wm/scripts/ofono
|
||||
@@ -68,6 +61,7 @@ source="
|
||||
modem-opts.conf
|
||||
modules.blocklist
|
||||
pointercal
|
||||
proxishot.sh
|
||||
uboot-script.cmd
|
||||
udev/10-nokia-modem.rules
|
||||
udev/15-bq27k.rules
|
||||
@@ -75,8 +69,8 @@ source="
|
||||
udev/90-touchscreen-dev.rules
|
||||
upower.conf
|
||||
x11-keymap
|
||||
xdefaults
|
||||
xorg.conf
|
||||
xresources
|
||||
"
|
||||
options="!check !archcheck"
|
||||
|
||||
@@ -154,7 +148,7 @@ package() {
|
||||
|
||||
x11() {
|
||||
install_if="$pkgname=$pkgver-r$pkgrel xorg-server"
|
||||
depends="unclutter-xfixes scrot xdotool xinput xrdb xset"
|
||||
depends="xset xinput scrot"
|
||||
mkdir "$pkgdir"/etc/acpi
|
||||
install -D -m755 "$srcdir"/acpi_handler.sh \
|
||||
"$pkgdir"/etc/acpi/handler.sh
|
||||
@@ -165,9 +159,11 @@ x11() {
|
||||
install -D -m644 "$srcdir"/xorg.conf \
|
||||
"$subpkgdir"/etc/X11/xorg.conf.d/11-n900.conf
|
||||
install -Dm755 "$srcdir"/lock.sh \
|
||||
"$subpkgdir"/usr/bin/lock.sh
|
||||
install -Dm644 "$srcdir"/xresources \
|
||||
"$subpkgdir"/usr/share/X11/Xresources-mobile
|
||||
"$pkgdir"/usr/bin/lock.sh
|
||||
install -Dm755 "$srcdir"/proxishot.sh \
|
||||
"$pkgdir"/usr/bin/proxishot.sh
|
||||
install -D -m644 "$srcdir"/xdefaults \
|
||||
"$subpkgdir"/etc/skel/.Xdefaults
|
||||
}
|
||||
|
||||
xkeyboard_config() {
|
||||
@@ -179,23 +175,21 @@ xkeyboard_config() {
|
||||
|
||||
i3wm() {
|
||||
install_if="$pkgname=$pkgver-r$pkgrel postmarketos-ui-i3wm"
|
||||
depends="brightnessctl i3blocks rxvt-unicode sxmo-dmenu upower"
|
||||
depends="unclutter-xfixes i3blocks rxvt-unicode upower brightnessctl"
|
||||
install -D -m644 "$srcdir"/i3wm.conf \
|
||||
"$subpkgdir"/etc/xdg/i3/config
|
||||
"$subpkgdir"/etc/skel/.config/i3/config
|
||||
install -D -m644 "$srcdir"/i3blocks.conf \
|
||||
"$subpkgdir"/etc/xdg/i3blocks/config
|
||||
"$subpkgdir"/etc/skel/.config/i3blocks/config
|
||||
install -D -m755 "$srcdir"/battery-bq27200 \
|
||||
"$subpkgdir"/usr/share/i3blocks/battery-bq27200
|
||||
"$subpkgdir"/etc/skel/.config/i3blocks/battery-bq27200
|
||||
install -D -m755 "$srcdir"/ofono \
|
||||
"$subpkgdir"/usr/share/i3blocks/ofono
|
||||
"$subpkgdir"/etc/skel/.config/i3blocks/ofono
|
||||
install -D -m755 "$srcdir"/calendar \
|
||||
"$subpkgdir"/usr/share/i3blocks/calendar
|
||||
"$subpkgdir"/etc/skel/.config/i3blocks/calendar
|
||||
install -D -m755 "$srcdir"/wifi \
|
||||
"$subpkgdir"/usr/share/i3blocks/wifi
|
||||
install -D -m755 "$srcdir"/config-checker \
|
||||
"$subpkgdir"/usr/bin/i3-config-checker
|
||||
install -D -m755 "$srcdir"/pwr-key-handler.sh \
|
||||
"$subpkgdir"/usr/bin/pwr-key-handler
|
||||
"$subpkgdir"/etc/skel/.config/i3blocks/wifi
|
||||
install -D -m755 "$srcdir"/protip_shell.sh \
|
||||
"$subpkgdir"/etc/skel/.protip_shell.sh
|
||||
}
|
||||
|
||||
upower() {
|
||||
@@ -208,7 +202,6 @@ upower() {
|
||||
openrc() {
|
||||
install_if="$pkgname=$pkgver-r$pkgrel openrc"
|
||||
install="$subpkgname.post-install"
|
||||
depends="wl1251-cal-openrc"
|
||||
|
||||
mkdir -p "$subpkgdir"
|
||||
}
|
||||
@@ -217,19 +210,18 @@ sha512sums="
|
||||
6b475c12eca8563be48c562a1cb4ad8ca6a05d70fc54b21288b2dd7435a80a6f53351aa870db96d5bbecf1b1c5cb00dfe35f5066e6d3fd0ad0369e66aeef5a21 10-initfs-keymap.files
|
||||
4656d3b3ced0a86e2d6315c89322899f646a689e9cb64609aa8ad5a676b23d93706d8a37f3be6f6b12c6b1e8501b7d26ecafecf27322333850513a6805c61910 10-initfs-keymap.sh
|
||||
2e6c324c2a0627fb37ee2feff249d6c828116a9c1a32d572481dddc12648c98b726eb3a475838398742f76a60e3f2249d7707502360473b8bf2e794bf22f57ce acpi.map
|
||||
b2c2033f8a77a18dc0c5192e0304f60e3c2a2a7d132c2072ab0dd6ee1a5b2a8c7e6396165411534468311a254663ae887cbaf23816f8b17893dd28e99e549790 acpi_handler.sh
|
||||
ff51909873160c2d4c6f0c0119b6d4a02751df29f571b8596b4bc8b04ce2541913c11a583b0e5dabd43f240752a8131da45db0ddff194860f4c11198599686a1 acpi_handler.sh
|
||||
5b87071834313a389f83d29f86f6e3ea108d0921f17dc918be7a46de7e74c73a4418044ef600a0fbf72c8fad22b7730dcd5bfe3d6d01d76bf01556f8540f0b32 asound.state.headset
|
||||
67acc17a33bc75113300393b4a5bba15319014032407e774d079abf310368e75f4f697dbb4856ba2d2d8ea184b056bb33561f42918de3ee91ab6a77df89a133c asound.state.speakers
|
||||
3d55e34b95791636e44a5f41754f3d0de039dbba41f7a556d43a95c9e64afcfa930046b4b96b40020b6f196096ffba93514682927e32fa4488686fdd19c6da5a backlight-enable.sh
|
||||
344ec50cee2a4d864debad12810a83070ab8257f9f07dcfa9be3eea1d8b26f3ab4fbe322fe05a384152b40fc5e1481df51d191624c7062186dd70f95a0784ea8 bq27k-options.conf
|
||||
c5b8e03ca9f720a794f2593a3e938640cbd91ac44dd761079bbf4614a0d288a9d7b72de8ed2493c062dc9f37be580bea529f454d2335f55b7a9f4d14024b42a9 bq27k-monitor.sh
|
||||
e6bbac8de1a198ba716f44ade76606e1e0adcc574156b855ac41be5eb5308389d3277fd89cc34b119fbc33d9801ab9f79a6ff213392596bff40bc17e931c05ef device-nokia-n900.start
|
||||
34b41ddd4d0312cc632087d19ca881f7c75b885e3e977add1b20ad414901f075f3fca12bdfe2ba9b3f24baf1e99f8279f61887db4c4b70b4cb4bac76f358bc99 deviceinfo
|
||||
40aaeb44941a988ab8ec58d331bc6cd42c4a23c6b6e8fc302f9216a38b46baab38d0a0137606a5b7959a51326983c03d684615c5ba9c58b0e36314ec8c49cfbb deviceinfo
|
||||
f48b8dd7297d03008f73e1ecd55b77ace535ecb03f9bdf021123b96fb5f4fb491ff4c532e226b835c8118fa8d505cc4c635a2b604a3e42a162746021552a551c modules-initfs
|
||||
d7d1599a9952fd02d3cfbeaa6b3307251e765f98a9eb723237c94f585831cc8f11d9d30dbc0352e3b008224dec12b820cf86fa28a5e5ac303cfd03d80b8872f5 config-checker
|
||||
a8152e94262629e11abdd8809d187c3b7ed1866a6128fb1f435e17e72120536ac8114262e66df6decb2627743027f2b923ddbe8a94e3e844099b6fad02ec252b i3blocks.conf
|
||||
c95afd02124e53f0de1ef33e7bbee12a15ae2d4d629a201157ed9d428288365241dfc3358fc7055154845f9df986fd975a2ebd4de384b8e175cb45f26b2fa38d i3wm.conf
|
||||
63ec5a88f4385fd944477d0b7ca7061745b061337cba8d3c779826aa96a94dda79bfca4fb3456234f6adbdb483e660d3cf6ccefd8576d23a70f52e3f44f0edb4 pwr-key-handler.sh
|
||||
826a3790b49324c1e61c75b6c0ffc043a2a1d7c13a8c554fb5eae4977af47a1ca93d70ef8c783d712b953b70e18ae58fa4c6a49bf97263398a01a0c4f91ebc8f i3blocks.conf
|
||||
506accabcf9fb3e2a270228ea53fdcb57f51092d6e7126a631af8eed697cd882cc805b19cf255422284bec12c928b58219d173a4a790d784db5335a059b6bb4f i3wm.conf
|
||||
0b80af9fd1f36e6bc06bdfdf48352897234ac7457210649016665da8570a5a64b8a0841b4fbeb64fd7054a5246a64718cf4412f8a53024ce39b28a80984972d8 protip_shell.sh
|
||||
6c6a70667f37807089adbb343c09d1f62d47b8e6c9c0a54f44790b822f8bff3dccae73341ef736b799fd6740bbd6e1f48e6e122c2e08520f71f6ad7434a47d2c battery-bq27200
|
||||
d9ef88c714e9fce8822f63b7a9d7fc3e1ed472c8c876b44ba524d44efea322839f13ddd2fa652420608427ecf7279bfaac302c9b67667f32796ca21da332164d calendar
|
||||
82038d38f94cb975a8d38914afca49b64957446bef7490ab684efa1df47ede2ea1c769045789bb9fded673345eea01911fbbf85fdb54c28685cad8022bfaafac ofono
|
||||
@@ -245,6 +237,7 @@ e440ed7a3070c17e003b86b72dbe6d8194d01b577ca8dd56dd066f216b6dda32bb965c780950f178
|
||||
695feac7f69a0ec8c5e007cdb651adcc3492f1c6236e7fd183edec2a5e25cb957d3ace630ea5fdb87fd703e35ac368f1d097c2f881ecb52c9cfd433564db2a6c modem-opts.conf
|
||||
862ebc7cd2d7a1b3d41b10701b8418308c89eb0732eb99c42ec1091d48e08db9421727f67a3272b7309549798d59afb1b8d7d2fa48d1447b208fcb2329472d4d modules.blocklist
|
||||
143c21f0b18a016d37cb44178e9daea09f128a90769b48353c03c3f245cb9b1f7e773b9ccee084973fc78ddd7a18c2642e54888a85bda7c7daecddc9a8c62eff pointercal
|
||||
134f51d20decc0c63ab08010931a0b410b70d2f85bf6899f2ff137b1680f59f706a6287d01f5fbb41fa5309125df75a430d0783149bd1a6a1bca07d22f4f6a21 proxishot.sh
|
||||
42f916d87dd305111028992a1107bf6fe108bebbd782ae8edd065e76505db2b3a75e57515970c3e40cb0d1b7e83097a1bba92785be13df7c3fd80959a8d9c5c1 uboot-script.cmd
|
||||
465b9a0d2b46d0981c64b47cb1f656c2456a90b91b1751a2efad10af38a96030dd99108b1fd76ce31bf1ea0f236d55bed38b114d6bd712f09f8968de034c946c 10-nokia-modem.rules
|
||||
1acc441b9f83dc91fd65fa3f89b8205bfd72a465286bc181b4e7e92dd4b8c0bc5c20a18dab46ff3ee8ae70940efd7d767b3dfb920edb4c74377bd418b838693d 15-bq27k.rules
|
||||
@@ -252,6 +245,6 @@ e440ed7a3070c17e003b86b72dbe6d8194d01b577ca8dd56dd066f216b6dda32bb965c780950f178
|
||||
c6012aef28b096141b924fced226ec99fb93eb53b69c064a8887d8fecdf8dc08a3ba3db399e18d88374c6ef4c59013a30699c7e4d76e5cb771040582573a0527 90-touchscreen-dev.rules
|
||||
9b99feee42dd6bdd122769994c786d3127c41e0aa3321f19c82a9d3845cf07b522908621a31cbddd9599fe18c5c37127d9b4be4255cd7fa8e0e8983bf73eb41b upower.conf
|
||||
c7837e6688f09c7d650ac7479b8881d4bad709480a71a1dea8b5bba4f4215d6b48a3aebd3f58923bbd48813559478d4ef137dcc9838d321722e141f0aa6a6085 x11-keymap
|
||||
183dfdd545ba05e216209b1abe45e4af4e0ee16b2e73cff0e7ea7b9524ee35a1cf85213a77f32a1a94287aee6546885dbd71c6de1f4f1a1e2961e638ff27cdf6 xdefaults
|
||||
a91f98daa60efa2beb2ff6b405097f92edca5f1bbb9e7675499139be52ca2570712f8f06f9032ef29f636f99c8f8da8b992f746eab6424aac04260c16158bcc2 xorg.conf
|
||||
183dfdd545ba05e216209b1abe45e4af4e0ee16b2e73cff0e7ea7b9524ee35a1cf85213a77f32a1a94287aee6546885dbd71c6de1f4f1a1e2961e638ff27cdf6 xresources
|
||||
"
|
||||
@@ -19,7 +19,7 @@ case $cmd in
|
||||
adjust_keypad_bl 0
|
||||
;;
|
||||
CAM_BTN_DWN)
|
||||
echo "Not implemented yet"
|
||||
USER_USER="$user" /usr/bin/proxishot.sh
|
||||
;;
|
||||
CAM_BTN_UP)
|
||||
echo "Not implemented yet"
|
||||
@@ -37,7 +37,7 @@ case $cmd in
|
||||
echo "Not implemented yet"
|
||||
;;
|
||||
SCRNLCK_DWN)
|
||||
echo "Not implemented yet"
|
||||
su $user -c "DISPLAY=:0 /usr/bin/lock.sh"
|
||||
;;
|
||||
SCRNLCK_UP)
|
||||
echo "Not implemented yet"
|
||||
|
||||
@@ -15,6 +15,8 @@ deviceinfo_arch="armv7"
|
||||
deviceinfo_keyboard="true"
|
||||
deviceinfo_keymaps="us/rx51_us ch/rx51_ch it/rx51_it fi/rx51_fi se/rx51_se"
|
||||
deviceinfo_external_storage="true"
|
||||
deviceinfo_screen_width="800"
|
||||
deviceinfo_screen_height="480"
|
||||
deviceinfo_swap_size_recommended="1024"
|
||||
|
||||
# Bootloader related
|
||||
|
||||
@@ -1,7 +0,0 @@
|
||||
#!/bin/sh
|
||||
if [ ! -f "$HOME"/.config/i3/config ]; then
|
||||
pkill -f i3-config-wizard
|
||||
touch "$HOME"/.config/i3/config
|
||||
pkill -f i3-config-wizard
|
||||
fi
|
||||
exit 0
|
||||
@@ -1,18 +1,20 @@
|
||||
command=/usr/libexec/i3blocks/$BLOCK_NAME
|
||||
|
||||
[battery-bq27200]
|
||||
command=/usr/share/i3blocks/battery-bq27200
|
||||
command=~/.config/i3blocks/battery-bq27200
|
||||
label=BAT:
|
||||
interval=10
|
||||
|
||||
[ofono]
|
||||
command=/usr/share/i3blocks/ofono
|
||||
command=~/.config/i3blocks/ofono
|
||||
label=M:
|
||||
interval=10
|
||||
|
||||
[wifi]
|
||||
command=/usr/share/i3blocks/wifi
|
||||
command=~/.config/i3blocks/wifi
|
||||
label=W:
|
||||
interval=10
|
||||
|
||||
[calendar]
|
||||
command=/usr/share/i3blocks/calendar
|
||||
command=~/.config/i3blocks/calendar
|
||||
interval=10
|
||||
@@ -33,7 +33,7 @@ mode "mpd" {
|
||||
}
|
||||
|
||||
mode "command" {
|
||||
bindsym t exec urxvt; mode "default"
|
||||
bindsym t exec urxvt -e ~/.protip_shell.sh; mode "default"
|
||||
bindsym d exec dmenu_run; mode "default"
|
||||
bindsym q mode "default"
|
||||
bindsym k kill; mode "default"
|
||||
@@ -60,17 +60,12 @@ mode "command" {
|
||||
# Enter command mode
|
||||
bindsym Shift+space mode "command"
|
||||
|
||||
# Mouse actions
|
||||
bindsym --release Shift+Left exec --no-startup-id xdotool click 2
|
||||
bindsym --release Shift+Right exec --no-startup-id xdotool click 3
|
||||
bindsym --release Shift+Up exec --no-startup-id xdotool click 4
|
||||
bindsym --release Shift+Down exec --no-startup-id xdotool click 5
|
||||
|
||||
# Handle screenlock key
|
||||
bindsym --release XF86ScreenSaver exec --no-startup-id lock.sh
|
||||
|
||||
# Pressing the power button offers reboot, shutdown, or suspend choice
|
||||
bindsym XF86PowerOff exec --no-startup-id pwr-key-handler
|
||||
bindsym XF86PowerOff exec --no-startup-id i3-nagbar \
|
||||
-m 'Choose Power Button Action:' \
|
||||
-B 'Reboot' 'loginctl reboot' \
|
||||
-B 'Suspend' 'loginctl suspend' \
|
||||
-B 'Shutdown' 'loginctl poweroff'
|
||||
|
||||
bindsym XF86AudioRaiseVolume exec --no-startup-id amixer set PCM 5%+
|
||||
bindsym XF86AudioLowerVolume exec --no-startup-id amixer set PCM 5%-
|
||||
@@ -94,11 +89,9 @@ bar {
|
||||
}
|
||||
}
|
||||
|
||||
# ensure there is an i3 config in $HOME to prevent the wizard from trying to create one
|
||||
exec --no-startup-id i3-config-checker
|
||||
# Apply Xresources
|
||||
exec --no-startup-id xrdb -merge /usr/share/X11/Xresources-mobile
|
||||
# Hide mouse cursor
|
||||
exec --no-startup-id unclutter-xfixes --fork
|
||||
# Do not handle gpio_key events as they are handled by acpid
|
||||
exec --no-startup-id xinput disable gpio_keys
|
||||
# Turn display off after 2 minutes of idle
|
||||
exec --no-startup-id xset dpms 0 0 120
|
||||
@@ -0,0 +1,8 @@
|
||||
#!/bin/sh
|
||||
|
||||
(
|
||||
green="\033[32m"
|
||||
reset="\033[0m"
|
||||
echo -e "${green}PROTIP:${reset} ^i (ctrl+i) does autocompletion"
|
||||
)
|
||||
exec sh
|
||||
@@ -1,32 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
confirm(){
|
||||
printf "Yes\nNo" | dmenu -l 2 -p "Are you sure?" -H 60
|
||||
}
|
||||
|
||||
CHOICE=$(printf "Close this menu\nTake screenshot\nReboot\nPower Off" | dmenu -l 5 -p "Choose an action" -H 50)
|
||||
|
||||
case "$CHOICE" in
|
||||
*screenshot)
|
||||
mkdir -p "$HOME"/Screenshots
|
||||
# shellcheck disable=SC2016
|
||||
# the variable $f is internal to scrot, see `man 1 scrot`
|
||||
scrot '%Y-%m-%d_%H-%M-%S.png' -e 'mv $f ~/Screenshots/'
|
||||
;;
|
||||
Reboot)
|
||||
CONFIRM=$(confirm)
|
||||
case "$CONFIRM" in
|
||||
Yes)
|
||||
loginctl reboot
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
Power*)
|
||||
CONFIRM=$(confirm)
|
||||
case "$CONFIRM" in
|
||||
Yes)
|
||||
loginctl poweroff
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
@@ -0,0 +1,12 @@
|
||||
#!/bin/sh
|
||||
# Take a screenshot if the proximity sensor is covered.
|
||||
# NB: pass the user's username in USER_USER environment variable when calling
|
||||
# this script.
|
||||
/usr/bin/evtest --query /dev/input/by-path/platform-gpio_keys-event \
|
||||
EV_SW SW_FRONT_PROXIMITY
|
||||
# return value of `10` means the sensor is in the set state, i.e.
|
||||
# proximity = near. see `man 1 evtest`
|
||||
if [ "$?" = "10" ]; then
|
||||
su "$USER_USER" -c "/bin/mkdir -p ~/Screenshots"
|
||||
su "$USER_USER" -c 'cd ~/Screenshots && DISPLAY=:0 /usr/bin/scrot "%Y-%m-%d_%H-%M-%S.png"'
|
||||
fi
|
||||
File renamed without changes.
@@ -3,7 +3,7 @@
|
||||
|
||||
pkgname=device-odroid-xu4
|
||||
pkgdesc="ODROID XU4"
|
||||
pkgver=2
|
||||
pkgver=1
|
||||
pkgrel=0
|
||||
url="https://postmarketos.org"
|
||||
license="MIT"
|
||||
@@ -32,6 +32,6 @@ nonfree_firmware() {
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
4d39e938092318cfc6a6b102e15bfabfec215669c73a6334019e158062760e50ce5957297cdbe309d78b770c26128385bec779d92606b4204e39f305dea70183 deviceinfo
|
||||
bf14f975ee01f8dbc9109444ab408ac0948ae67af267d8f4101f2ca688750761277e793b2800985277d0e91205c13e89bd66e37bfebe3608ea7d29ecdb20c907 deviceinfo
|
||||
9f6c3cc0079e718ef0dfc221fadaf9bc092a8601b62794c2298eab893924af457612bd8a6e852fb2b181bee637e774dd2abea681eb72b1aa9c6672e686454795 modules-initfs
|
||||
"
|
||||
@@ -27,7 +27,3 @@ deviceinfo_sd_embed_firmware_step_size="512"
|
||||
deviceinfo_boot_part_start="3072"
|
||||
deviceinfo_kernel_cmdline="init=/init.sh rw console=tty0 console=ttySAC2,115200 panic=10 consoleblank=0 loglevel=9 cma=256M PMOS_FORCE_PARTITION_RESIZE"
|
||||
deviceinfo_generate_extlinux_config="true"
|
||||
|
||||
# The bl1 embed location in sdcard conflicts with GPT header, so need
|
||||
# to use msdos.
|
||||
deviceinfo_partition_type="msdos"
|
||||
@@ -0,0 +1,2 @@
|
||||
[quirks]
|
||||
fbdev_force_refresh=true
|
||||
@@ -3,55 +3,65 @@
|
||||
|
||||
pkgname=device-oneplus-enchilada
|
||||
pkgdesc="OnePlus 6"
|
||||
pkgver=15
|
||||
pkgrel=1
|
||||
pkgver=14
|
||||
pkgrel=4
|
||||
url="https://postmarketos.org"
|
||||
license="MIT"
|
||||
arch="aarch64"
|
||||
options="!check !archcheck"
|
||||
depends="
|
||||
firmware-oneplus-sdm845>=9
|
||||
hexagonrpcd>=0.3.2-r3
|
||||
linux-postmarketos-qcom-sdm845
|
||||
mkbootimg
|
||||
postmarketos-base
|
||||
alsa-ucm-conf-sdm845
|
||||
soc-qcom
|
||||
soc-qcom-modem
|
||||
soc-qcom-qbootctl
|
||||
unl0kr-fbforcerefresh
|
||||
soc-qcom-sdm845
|
||||
soc-qcom-sdm845-ucm
|
||||
soc-qcom-sdm845-qbootctl
|
||||
"
|
||||
makedepends="devicepkg-dev"
|
||||
source="
|
||||
10-unl0kr.conf
|
||||
deviceinfo
|
||||
hexagonrpcd.confd
|
||||
modules-initfs
|
||||
q6voiced.conf
|
||||
81-libssc-oneplus-enchilada.rules
|
||||
"
|
||||
subpackages="$pkgname-pmtest $pkgname-openrc"
|
||||
subpackages="
|
||||
$pkgname-nonfree-firmware:nonfree_firmware
|
||||
$pkgname-nonfree-firmware-openrc:nonfree_firmware_openrc
|
||||
$pkgname-pmtest
|
||||
"
|
||||
|
||||
build() {
|
||||
devicepkg_build $startdir $pkgname
|
||||
}
|
||||
|
||||
package() {
|
||||
replaces="$pkgname-nonfree-firmware"
|
||||
devicepkg_package $startdir $pkgname
|
||||
|
||||
install -Dm644 "$srcdir"/81-libssc-oneplus-enchilada.rules \
|
||||
-t "$pkgdir"/usr/lib/udev/rules.d/
|
||||
install -Dm644 "$srcdir"/q6voiced.conf \
|
||||
"$pkgdir"/etc/conf.d/q6voiced
|
||||
install -Dm644 "$srcdir"/hexagonrpcd.confd \
|
||||
"$pkgdir"/usr/share/hexagonrpcd/hexagonrpcd-sdsp.conf
|
||||
install -Dm644 "$srcdir"/10-unl0kr.conf \
|
||||
"$pkgdir"/etc/unl0kr.conf.d/10-unl0kr.conf
|
||||
}
|
||||
|
||||
openrc() {
|
||||
install_if="$pkgname=$pkgver-r$pkgrel openrc"
|
||||
nonfree_firmware() {
|
||||
pkgdesc="Modem, WiFi and GPU Firmware, also needed for osk-sdl"
|
||||
depends="
|
||||
firmware-oneplus-sdm845>=9
|
||||
hexagonrpcd
|
||||
soc-qcom-sdm845-nonfree-firmware
|
||||
soc-qcom-sdm845-modem
|
||||
"
|
||||
|
||||
install -Dm644 "$srcdir"/81-libssc-oneplus-enchilada.rules -t "$subpkgdir"/usr/lib/udev/rules.d/
|
||||
install -Dm644 q6voiced.conf "$subpkgdir"/etc/conf.d/q6voiced
|
||||
}
|
||||
|
||||
nonfree_firmware_openrc() {
|
||||
install_if="$pkgname-nonfree-firmware=$pkgver-r$pkgrel openrc"
|
||||
replaces="hexagonrpcd-openrc"
|
||||
install="$subpkgname.post-install $subpkgname.post-upgrade"
|
||||
depends="hexagonrpcd-openrc"
|
||||
mkdir -p "$subpkgdir"
|
||||
|
||||
install -Dm644 "$srcdir"/hexagonrpcd.confd "$subpkgdir"/etc/conf.d/hexagonrpcd-sdsp
|
||||
}
|
||||
|
||||
pmtest() {
|
||||
@@ -63,6 +73,7 @@ pmtest() {
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
e957b7b0ed219eaa56be6c6b976b60886f73970703fdebf045800154ee652affee4e19654b3ac4244b29bcf6760ad3db6cb87143dc9c4673e905800d751103d1 10-unl0kr.conf
|
||||
83fc698ebeda6245abc2a653eeff97b3b996d06dd7731386a07d102937f9b005c7277e0dece05ff359d9ff109a1d9ed7791fc510b146354df179804aadb5642c deviceinfo
|
||||
c8d3026e9f803ea823e35f83dab66fa8545e99af9655576476c194567113084d78200feab46f84983a2dad608ca55c0a4a66e36406c6d64023c0aec59307d146 hexagonrpcd.confd
|
||||
ea8709aa214cffaefb1d486c0c47044537446faebff16efb3b015623f043f730b7121e401c676e43aa8868bd6c630fc8a2d7dbf5fb082490e9b5493e0405b66d modules-initfs
|
||||
|
||||
File renamed without changes.
+1
@@ -0,0 +1 @@
|
||||
device-oneplus-enchilada-nonfree-firmware-openrc.post-install
|
||||
@@ -1 +0,0 @@
|
||||
device-oneplus-enchilada-openrc.post-install
|
||||
@@ -0,0 +1,2 @@
|
||||
[quirks]
|
||||
fbdev_force_refresh=true
|
||||
@@ -3,8 +3,8 @@
|
||||
|
||||
pkgname=device-oneplus-fajita
|
||||
pkgdesc="OnePlus 6T"
|
||||
pkgver=15
|
||||
pkgrel=1
|
||||
pkgver=14
|
||||
pkgrel=3
|
||||
url="https://postmarketos.org"
|
||||
license="MIT"
|
||||
arch="aarch64"
|
||||
@@ -13,13 +13,13 @@ depends="
|
||||
linux-postmarketos-qcom-sdm845
|
||||
mkbootimg
|
||||
postmarketos-base
|
||||
alsa-ucm-conf-sdm845
|
||||
soc-qcom
|
||||
soc-qcom-qbootctl
|
||||
unl0kr-fbforcerefresh
|
||||
soc-qcom-sdm845
|
||||
soc-qcom-sdm845-ucm
|
||||
soc-qcom-sdm845-qbootctl
|
||||
"
|
||||
makedepends="devicepkg-dev"
|
||||
source="
|
||||
10-unl0kr.conf
|
||||
deviceinfo
|
||||
hexagonrpcd.confd
|
||||
modules-initfs
|
||||
@@ -39,28 +39,29 @@ build() {
|
||||
package() {
|
||||
devicepkg_package $startdir $pkgname
|
||||
|
||||
install -Dm644 "$srcdir"/10-unl0kr.conf \
|
||||
"$pkgdir"/etc/unl0kr.conf.d/10-unl0kr.conf
|
||||
}
|
||||
|
||||
nonfree_firmware() {
|
||||
pkgdesc="Modem, WiFi and GPU Firmware, also needed for osk-sdl"
|
||||
depends="
|
||||
firmware-oneplus-sdm845>=9
|
||||
hexagonrpcd>=0.3.2-r3
|
||||
soc-qcom-modem
|
||||
hexagonrpcd
|
||||
soc-qcom-sdm845-nonfree-firmware
|
||||
soc-qcom-sdm845-modem
|
||||
"
|
||||
|
||||
install -Dm644 "$srcdir"/81-libssc-oneplus-fajita.rules -t "$subpkgdir"/usr/lib/udev/rules.d/
|
||||
install -Dm644 q6voiced.conf "$subpkgdir"/etc/conf.d/q6voiced
|
||||
install -Dm644 "$srcdir"/hexagonrpcd.confd \
|
||||
"$subpkgdir"/usr/share/hexagonrpcd/hexagonrpcd-sdsp.conf
|
||||
}
|
||||
|
||||
nonfree_firmware_openrc() {
|
||||
install_if="$pkgname-nonfree-firmware=$pkgver-r$pkgrel openrc"
|
||||
install="$subpkgname.post-install $subpkgname.post-upgrade"
|
||||
depends="hexagonrpcd-openrc"
|
||||
replaces="hexagonrpcd-openrc"
|
||||
|
||||
mkdir -p "$subpkgdir"
|
||||
install -Dm644 "$srcdir"/hexagonrpcd.confd "$subpkgdir"/etc/conf.d/hexagonrpcd-sdsp
|
||||
}
|
||||
|
||||
pmtest() {
|
||||
@@ -72,6 +73,7 @@ pmtest() {
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
e957b7b0ed219eaa56be6c6b976b60886f73970703fdebf045800154ee652affee4e19654b3ac4244b29bcf6760ad3db6cb87143dc9c4673e905800d751103d1 10-unl0kr.conf
|
||||
07e3d79715befccd1e7393908c06f88ac8468d1ce6cb96138e3a04e6f8274889db169f5daf05b04b633bcc9e85d11ea5c2017b84bc0ae86a8fad80b05794d0d8 deviceinfo
|
||||
6b5308471fcbb938ac00d6e9a3f8e61073bda1d608f2edf1a2aba4b256dd3f76b1ccee0873dcaa8dc4a8db304d433360a56fe447d70f57ba068428b75ddea236 hexagonrpcd.confd
|
||||
ea8709aa214cffaefb1d486c0c47044537446faebff16efb3b015623f043f730b7121e401c676e43aa8868bd6c630fc8a2d7dbf5fb082490e9b5493e0405b66d modules-initfs
|
||||
|
||||
@@ -3,13 +3,14 @@
|
||||
pkgname=device-pine64-pinebookpro
|
||||
pkgdesc="PINE64 Pinebook Pro"
|
||||
pkgver=16
|
||||
pkgrel=8
|
||||
pkgrel=7
|
||||
url="https://postmarketos.org"
|
||||
license="MIT"
|
||||
arch="aarch64"
|
||||
options="!check !archcheck"
|
||||
depends="
|
||||
alsa-ucm-conf>=1.2.7
|
||||
eudev-hwids
|
||||
linux-postmarketos-rockchip>=5.14
|
||||
nvme-cli
|
||||
postmarketos-base>=25-r1
|
||||
@@ -57,7 +58,6 @@ nonfree_firmware() {
|
||||
openrc() {
|
||||
install_if="$pkgname=$pkgver-r$pkgrel openrc"
|
||||
install="$subpkgname.post-install $subpkgname.post-upgrade"
|
||||
depends="eudev-hwids"
|
||||
|
||||
mkdir -p "$subpkgdir"
|
||||
}
|
||||
|
||||
@@ -3,14 +3,13 @@
|
||||
# Co-Maintainer: Jan Jasper de Kroon <jajadekroon@gmail.com>
|
||||
pkgname=device-pine64-pinephone
|
||||
pkgver=8
|
||||
pkgrel=3
|
||||
pkgrel=0
|
||||
pkgdesc="PINE64 PinePhone"
|
||||
url="https://postmarketos.org"
|
||||
license="MIT"
|
||||
arch="aarch64"
|
||||
options="!check !archcheck"
|
||||
subpackages="
|
||||
$pkgname-audio
|
||||
$pkgname-gnome
|
||||
$pkgname-kirigami:kirigami
|
||||
$pkgname-nonfree-firmware:nonfree_firmware
|
||||
@@ -24,23 +23,25 @@ subpackages="
|
||||
$pkgname-x11
|
||||
"
|
||||
depends="
|
||||
alsa-ucm-conf>=1.2.6.2
|
||||
atinout
|
||||
eg25-manager
|
||||
eg25-manager-openrc
|
||||
iw
|
||||
linux-postmarketos-allwinner>=5.14
|
||||
megapixels
|
||||
mesa-egl
|
||||
pinephone-callaudiod
|
||||
postmarketos-base
|
||||
postmarketos-base-ui-audio-pipewire
|
||||
postprocessd
|
||||
u-boot-pinephone>=2021.01_git20201228-r2
|
||||
u-boot-tools
|
||||
fwupd>=1.8.6
|
||||
"
|
||||
makedepends="
|
||||
devicepkg-dev
|
||||
dtc
|
||||
u-boot-tools
|
||||
"
|
||||
# FIXME: use upstream alsa-ucm-conf instead, once it works the same (pma#2115)
|
||||
replaces="alsa-ucm-conf"
|
||||
makedepends="devicepkg-dev dtc"
|
||||
install="$pkgname.pre-upgrade"
|
||||
source="
|
||||
00_alsa_pinephone_dshare.conf
|
||||
@@ -135,6 +136,16 @@ package() {
|
||||
"$pkgdir"/usr/lib/udev/rules.d/10-pinephone-proximity.rules
|
||||
install -Dm644 "$srcdir"/60-flashlight.rules -t "$pkgdir"/usr/lib/udev/rules.d/
|
||||
|
||||
# Alsa usecase manager config
|
||||
install -Dm644 -t "$pkgdir"/usr/share/alsa/ucm2/Allwinner/A64/PinePhone \
|
||||
"$srcdir"/HiFi.conf \
|
||||
"$srcdir"/PinePhone.conf \
|
||||
"$srcdir"/VoiceCall.conf
|
||||
|
||||
# Pulseaudio config
|
||||
install -Dm644 "$srcdir"/pulse-pinephone.conf \
|
||||
"$pkgdir"/etc/pulse/daemon.conf.d/89-pinephone.conf
|
||||
|
||||
# Modem
|
||||
install -Dm755 "$srcdir"/setup-modem.sh \
|
||||
"$pkgdir"/usr/bin/pinephone_setup-modem
|
||||
@@ -163,9 +174,8 @@ nonfree_firmware() {
|
||||
}
|
||||
|
||||
openrc() {
|
||||
install_if="$pkgname=$pkgver-r$pkgrel openrc"
|
||||
install_if="$pkgname=$pkgver-r$pkgrel eg25-manager-openrc"
|
||||
install="$subpkgname.post-install $subpkgname.post-upgrade"
|
||||
depends="eg25-manager-openrc"
|
||||
mkdir "$subpkgdir"
|
||||
}
|
||||
|
||||
@@ -229,28 +239,6 @@ x11() {
|
||||
install -Dm644 "$srcdir"/x11-pinephone-keyboard.conf \
|
||||
"$subpkgdir"/etc/X11/xorg.conf.d/pinephone-keyboard.conf
|
||||
}
|
||||
|
||||
audio() {
|
||||
install_if="$pkgname=$pkgver-r$pkgrel postmarketos-base-ui-audio"
|
||||
# FIXME: use upstream alsa-ucm-conf instead, once it works the same (pma#2115)
|
||||
replaces="alsa-ucm-conf"
|
||||
depends="
|
||||
alsa-ucm-conf>=1.2.6.2
|
||||
pinephone-callaudiod
|
||||
postmarketos-base-ui-audio-pipewire
|
||||
"
|
||||
|
||||
# Alsa usecase manager config
|
||||
install -Dm644 -t "$subpkgdir"/usr/share/alsa/ucm2/Allwinner/A64/PinePhone \
|
||||
"$srcdir"/HiFi.conf \
|
||||
"$srcdir"/PinePhone.conf \
|
||||
"$srcdir"/VoiceCall.conf
|
||||
|
||||
# Pulseaudio config
|
||||
install -Dm644 "$srcdir"/pulse-pinephone.conf \
|
||||
"$subpkgdir"/etc/pulse/daemon.conf.d/89-pinephone.conf
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
5736444fd38ab4351d148ae96c479085f469bd1e51a692fb1827f8ac921a584389f7696985e1fba21c2deac88709910531f4ece282f45ff54e590c2b54b84ba3 00_alsa_pinephone_dshare.conf
|
||||
b53cc6f2531854cc9c1e4c334185a20551d64c8675ee8a8eaa03b99d80808fad421a0f6e99e5be212a974d88c85f461a71ba59ac59c29f298c82f211e3be1ef4 10-pinephone-proximity.rules
|
||||
|
||||
Loaded 100 of 1099 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user