Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
132 changes: 132 additions & 0 deletions CODE-OF-CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,132 @@
# Contributor Covenant Code of Conduct

## Our Pledge

We as members, contributors, and leaders pledge to make participation in our
community a harassment-free experience for everyone, regardless of age, body
size, visible or invisible disability, ethnicity, sex characteristics, gender
identity and expression, level of experience, education, socio-economic status,
nationality, personal appearance, race, caste, color, religion, or sexual
identity and orientation.

We pledge to act and interact in ways that contribute to an open, welcoming,
diverse, inclusive, and healthy community.

## Our Standards

Examples of behavior that contributes to a positive environment for our
community include:

* Demonstrating empathy and kindness toward other people
* Being respectful of differing opinions, viewpoints, and experiences
* Giving and gracefully accepting constructive feedback
* Accepting responsibility and apologizing to those affected by our mistakes,
and learning from the experience
* Focusing on what is best not just for us as individuals, but for the overall
community

Examples of unacceptable behavior include:

* The use of sexualized language or imagery, and sexual attention or advances of
any kind
* Trolling, insulting or derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or email address,
without their explicit permission
* Other conduct which could reasonably be considered inappropriate in a
professional setting

## Enforcement Responsibilities

Community leaders are responsible for clarifying and enforcing our standards of
acceptable behavior and will take appropriate and fair corrective action in
response to any behavior that they deem inappropriate, threatening, offensive,
or harmful.

Community leaders have the right and responsibility to remove, edit, or reject
comments, commits, code, wiki edits, issues, and other contributions that are
not aligned to this Code of Conduct, and will communicate reasons for moderation
decisions when appropriate.

## Scope

This Code of Conduct applies within all community spaces, and also applies when
an individual is officially representing the community in public spaces.
Examples of representing our community include using an official email address,
posting via an official social media account, or acting as an appointed
representative at an online or offline event.

## Enforcement

Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported to the community leaders responsible for enforcement at
[GitHub.CoC](mailto:github.coc@qti.qualcomm.com?subject=GitHub%20Qualcomm%20Code%20of%20Conduct%20Report).
All complaints will be reviewed and investigated promptly and fairly.

All community leaders are obligated to respect the privacy and security of the
reporter of any incident.

## Enforcement Guidelines

Community leaders will follow these Community Impact Guidelines in determining
the consequences for any action they deem in violation of this Code of Conduct:

### 1. Correction

**Community Impact**: Use of inappropriate language or other behavior deemed
unprofessional or unwelcome in the community.

**Consequence**: A private, written warning from community leaders, providing
clarity around the nature of the violation and an explanation of why the
behavior was inappropriate. A public apology may be requested.

### 2. Warning

**Community Impact**: A violation through a single incident or series of
actions.

**Consequence**: A warning with consequences for continued behavior. No
interaction with the people involved, including unsolicited interaction with
those enforcing the Code of Conduct, for a specified period of time. This
includes avoiding interactions in community spaces as well as external channels
like social media. Violating these terms may lead to a temporary or permanent
ban.

### 3. Temporary Ban

**Community Impact**: A serious violation of community standards, including
sustained inappropriate behavior.

**Consequence**: A temporary ban from any sort of interaction or public
communication with the community for a specified period of time. No public or
private interaction with the people involved, including unsolicited interaction
with those enforcing the Code of Conduct, is allowed during this period.
Violating these terms may lead to a permanent ban.

### 4. Permanent Ban

**Community Impact**: Demonstrating a pattern of violation of community
standards, including sustained inappropriate behavior, harassment of an
individual, or aggression toward or disparagement of classes of individuals.

**Consequence**: A permanent ban from any sort of public interaction within the
community.

## Attribution

This Code of Conduct is adapted from the [Contributor Covenant][homepage],
version 2.1, available at
[https://www.contributor-covenant.org/version/2/1/code_of_conduct.html][v2.1].

Community Impact Guidelines were inspired by
[Mozilla's code of conduct enforcement ladder][Mozilla CoC].

For answers to common questions about this code of conduct, see the FAQ at
[https://www.contributor-covenant.org/faq][FAQ]. Translations are available at
[https://www.contributor-covenant.org/translations][translations].

[homepage]: https://www.contributor-covenant.org
[v2.1]: https://www.contributor-covenant.org/version/2/1/code_of_conduct.html
[Mozilla CoC]: https://github.com/mozilla/diversity
[FAQ]: https://www.contributor-covenant.org/faq
[translations]: https://www.contributor-covenant.org/translations
102 changes: 102 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
# Contributing to Packaging repository for qcom-adreno

Hi there!
We’re thrilled that you’d like to contribute to this project.
Your help is essential for keeping this project great and for making it better.

## Branching Strategy

Development happens on distro-specific branches. The active branches are:
- `qcom/ubuntu/resolute` — Ubuntu 26.04 (Resolute Raccoon)
- `qcom/debian/trixie` — Debian Trixie

Open a PR targeting the specific distro branch you are modifying.

## Submitting a pull request

1. Please read our [code of conduct](CODE-OF-CONDUCT.md) and [license](LICENSE.txt).
1. [Fork](https://github.com/qualcomm-linux/pkg-qcom-adreno/fork) and clone the repository.

```bash
git clone https://github.com/qualcomm-linux/pkg-qcom-adreno.git
```

1. Create a new branch based on distro:

```bash
git checkout -b <my-branch-name> qcom/ubuntu/resolute
```

1. Create an upstream `remote` to make it easier to keep your branches up-to-date:

```bash
git remote add upstream https://github.com/qualcomm-linux/pkg-qcom-adreno.git
```

1. Make your changes, verify the package builds successfully with
[docker-pkg-build](https://github.com/qualcomm-linux/docker-pkg-build)
and make sure it works fine.
1. Commit your changes using the [DCO](https://developercertificate.org/). You can
attest to the DCO by committing with the **-s** or **--signoff** options or manually
adding the "Signed-off-by":

```bash
git commit -s -m "Really useful commit message"
```

1. After committing your changes on the distro specific branch, sync it with the
upstream branch:

```bash
git pull --rebase upstream qcom/ubuntu/resolute
```

1. Push to your fork.

```bash
git push -u origin <my-branch-name>
```

The `-u` is shorthand for `--set-upstream`. This will set up the tracking reference
so subsequent runs of `git push` or `git pull` can omit the remote and branch.

1. [Submit a pull request](https://github.com/qualcomm-linux/pkg-qcom-adreno/pulls) from your
branch to the appropriate distro-specific branch (e.g. `qcom/ubuntu/resolute` or
`qcom/debian/trixie`).
1. Pat yourself on the back and wait for your pull request to be reviewed.

## Security Analysis of Pull Requests

To maintain the security and integrity of this project, all pull requests from external
contributors are automatically scanned using [Semgrep](https://github.com/semgrep/semgrep)
to detect insecure coding patterns and potential security flaws.

**Static Analysis with Semgrep:** We use Semgrep to perform lightweight, fast static
analysis on every PR. This helps identify risky code patterns and logic flaws early in
the development process.

**Contributor Responsibility:** If any issues are flagged, contributors are expected to
resolve them before the PR can be merged.

**Continuous Improvement:** Our Semgrep ruleset evolves over time to reflect best
practices and emerging security concerns.

By submitting a PR, you agree to participate in this process and help us keep the
project secure for everyone.

## Pull Request Guidelines

Here are a few things that will increase the likelihood of your pull request being
accepted:

- Follow the [Debian Policy Manual](https://www.debian.org/doc/debian-policy/) for
packaging conventions and use [ShellCheck](https://www.shellcheck.net/) to validate
any shell scripts.
- Update `debian/changelog` with a clear entry describing your change.
- Keep your change as focused as possible. If you want to make multiple independent
changes, please consider submitting them as separate pull requests.
- Write a [good commit message](https://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html)
and sign off with `git commit -s`.
- It's a good idea to arrange a discussion with other developers to ensure there is
consensus on large features, architecture changes, and other core packaging changes.
PR reviews will go much faster when there are no surprises.
26 changes: 26 additions & 0 deletions LICENSE.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following
disclaimer in the documentation and/or other materials provided
with the distribution.
* Neither the name of the copyright holder nor the names of its
contributors may be used to endorse or promote products derived
from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
54 changes: 54 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# pkg-qcom-adreno

This repository has debian packaging rules and scripts for [prebuilt qcom-adreno binaries](https://qartifactory-edge.qualcomm.com/ui/native/qsc_releases/software/chip/component/gfx-adreno.le.0.0).

## Branches

- **qli-ci**: The primary branch containing workflow logic in the `.github/` folder, along with boilerplate documentation files such as license, contribution guidelines, and this README.
- **qcom/ubuntu/resolute**: This branch contains qcom-adreno debian packaging rules and scripts for Ubuntu 26.04 (Resolute Raccoon).
- **qcom/debian/trixie**: This branch contains qcom-adreno debian packaging rules and scripts for Debian Trixie.

## Typical Workflows

1. **Promote New Prebuilt Binary Version**: When new prebuilt binaries are available, the promote workflow updates upstream.conf in the packaging branch and opens a PR.
3. **PR validation**: PRs in this repo are validated against the package build to catch breakages early.
3. **Build Debian Package**: Once PRs get merged, the build debian package workflow builds debian packages for the corresponding packaging branch.
4. **Release Version**: A manual dispatch finalizes the changelog, builds the package, uploads artifacts to S3, and notifies [qcom-distro-images](https://github.com/qualcomm-linux/qcom-distro-images).

## Development

Refer to the [CONTRIBUTING.md](CONTRIBUTING.md) file for guidelines on contributing to this project.

## Usage

Build: To build the the package, go to *Actions* tab, select the *Build Debian Package* workflow, then 'Run workflow'

Upstream Version Promotion: ...

The workflows of this repo use the reusable workflows from qcom-build-utils in the background. To understand more how everything
connects together, see https://github.com/qualcomm-linux/qcom-build-utils

## Installation Instructions

1. Install common package,
- sudo dpkg -i qcom-adreno-common1_x_arm64.deb
2. For OpenCL,
- sudo dpkg -i qcom-adreno-cl1_x_arm64.deb
3. For OpenGLESv1, OpenGLESv2 and EGL,
- sudo dpkg -i qcom-adreno-gles1_x_arm64.deb
- sudo dpkg -i qcom-adreno-gles2_x_arm64.deb
- sudo dpkg -i qcom-adreno-egl1_x_arm64.deb
4. For Vulkan,
- sudo dpkg -i qcom-adreno-vulkan1_x_arm64.deb

## Getting in Contact

How to contact maintainers. E.g. GitHub Issues, GitHub Discussions could be indicated for many cases. However a mail list or list of Maintainer e-mails could be shared for other types of discussions. E.g.

* [Report an Issue on GitHub](../../issues)
* [Open a Discussion on GitHub](../../discussions)
* [E-mail us](mailto:Maintainers.pkg-qcom-adreno@qualcomm.com) for general questions

## License

pkg-qcom-adreno is licensed under the [BSD-3-Clause license](https://spdx.org/licenses/BSD-3-Clause.html). See [LICENSE.txt](LICENSE.txt) for the full license text.
31 changes: 31 additions & 0 deletions SECURITY.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
How to Report a Potential Vulnerability?
========================================

If you would like to report a public issue (for example, one with a released
CVE number), please report it as a
[GitHub issue](https://github.com/qualcomm-linux/pkg-qcom-adreno/issues/new).
If you have a patch ready, submit it following the same procedure as any
other patch as described in [CONTRIBUTING.md](CONTRIBUTING.md).

If you are dealing with a not-yet released or urgent issue, please contact us
via our [Product Security team](mailto:product-security@qualcomm.com) or
see our
[Report a Bug](https://www.qualcomm.com/company/product-security/report-a-bug)
page. Please include the following details while reporting a vulnerability:
- Description of the vulnerability
- Steps to reproduce
- Affected versions
- Potential impact
- Any relevant logs or screenshots

## Coordinated Disclosure

We follow a Coordinated Vulnerability Disclosure (CVD) process:

- **Initial Response**: We will acknowledge your report within 48 hours.

- **Investigation**: Our team will investigate the issue and provide updates.

- **Resolution**: We will work with you to resolve the issue and prepare a fix.

- **Disclosure**: Once the fix is ready, we will disclose the vulnerability and notify affected users.
35 changes: 35 additions & 0 deletions debian/copyright
Original file line number Diff line number Diff line change
Expand Up @@ -2622,3 +2622,38 @@ License: Qualcomm.nologin.binaries.license
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Files:
debian/*
Copyright:
Copyright (c) 2025 Qualcomm Innovation Center, Inc. All rights reserved.
License: BSD-3-Clause-Clear
Redistribution and use in source and binary forms, with or without
modification, are permitted (subject to the limitations in the
disclaimer below) provided that the following conditions are met:
.
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
.
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following
disclaimer in the documentation and/or other materials provided
with the distribution.
.
* Neither the name of Qualcomm Innovation Center, Inc. nor the names of its
contributors may be used to endorse or promote products derived
from this software without specific prior written permission.
.
NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE
GRANTED BY THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT
HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Loading