Skip to content
Merged
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
11 changes: 8 additions & 3 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,8 @@ jobs:

- name: Install UV
run: |
uv_version=$(cat ./requirement-uv.txt | awk -F'==' '{print $2}' | tr -d ' \n')
curl -LsSf https://astral.sh/uv/${uv_version}/install.sh | sh
UV_VERSION=$(cat ./requirement-uv.txt | awk -F'==' '{print $2}' | tr -d ' \n')
curl -LsSf https://astral.sh/uv/${UV_VERSION}/install.sh | sh

- name: Record original PATH
id: record_original_path
Expand Down Expand Up @@ -78,9 +78,14 @@ jobs:
name: build-artifacts
path: "multi-build"

- name: Install UV
run: |
UV_VERSION=$(cat ./requirement-uv.txt | awk -F'==' '{print $2}' | tr -d ' \n')
curl -LsSf https://astral.sh/uv/${UV_VERSION}/install.sh | sh

- name: Get Current Version
id: version
run: echo "version=$(python3 scripts/common/py/get_version.py)" >> $GITHUB_OUTPUT
run: echo "version=$(uv run scripts/common/py/get_version.py)" >> $GITHUB_OUTPUT

- name: Form Tag
id: tagname
Expand Down
3 changes: 0 additions & 3 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,15 +1,12 @@
FROM debian:bookworm-slim AS base

# variable store
ARG WDIR=/zero_build
ENV CONAN_UPLOAD_CUSTOM 0

# transfer sources from host to container
COPY . ${WDIR}
WORKDIR ${WDIR}
ENV PYTHONPATH ${WDIR}

# install system packages
RUN \
apt-get update \
&& \
Expand Down
2 changes: 0 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -254,6 +254,4 @@ python3 zkb assets --build-env=local --base=los --codename=dumpling --package-ty

## Credits

- [x_kernel_oneplus_msm8998](https://github.com/ederekun/x_kernel_oneplus_msm8998): OnePlus 5/T kernel with many optimizations and improvements;
- [4.14-kernel-oneplus-msm8998](https://github.com/roberto-sartori-gl/4.14-kernel-oneplus-msm8998): a base of 4.14 kernels for OnePlus 5/T, with KernelSU patches;
- [kali-nethunter-kernel](https://gitlab.com/kalilinux/nethunter/build-scripts/kali-nethunter-kernel): official kernel patches from Kali NetHunter project.
4 changes: 2 additions & 2 deletions docs/FLASHING.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ Backup should be made with removed lockscreen passwords/fingerprints/PINs. Other

Listed below files are required:

- compiled kernel, obviously;
- the compiled kernel ZIP;
- ROM;
- Magisk or KernelSU;
- TWRP, the special [build](https://sourceforge.net/projects/op5-5t/files/Android-12/TWRP/twrp-3.7.0_12-5-dyn-cheeseburger_dumpling.img/download) by faoliveira78 (supports operations with encrypted and dynamic partitions);
Expand Down Expand Up @@ -53,7 +53,7 @@ Before doing anything, please ensure that you have:
- if using a Retrofit Dynamic Partitions ROM such as ParanoidAndoid -> untoggle `Unmount System before installing a ZIP` in the Settings;
- flash the ROM;
- flash the kernel;
- **if using Magisk** --> flash Magisk root manager (you must change the `.apk` extension into `.zip` for this);
- **if using Magisk** --> flash Magisk root manager (you can flash the .apk directly, it'll be processed as a ZIP);
- flash DM-Verity and Force Encrypt disabler zip;
- reboot into system via `Reboot -> System` .

Expand Down
4 changes: 2 additions & 2 deletions docs/architecture/clients/classes.puml
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
@startuml classes
set namespaceSeparator none
class "GithubApiClient" as clients.github.GithubApiClient {
direct_url
endpoint
direct_url : str
endpoint : str
file_filter : Optional[str]
project : str
run() -> str | None
Expand Down
8 changes: 4 additions & 4 deletions docs/architecture/core/classes.puml
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
@startuml classes
set namespaceSeparator none
class "AssetsCollector" as core.assets_collector.AssetsCollector {
assets
assets : list
base : str
chroot : Literal['full', 'minimal']
chroot : Optional[Literal['full', 'minimal']]
clean_assets : bool
codename : str
ksu : bool
rom_collector_dto
rom_collector_dto : LineageOsApiClient | ParanoidAndroidApiClient | None
rom_only : bool
check() -> None
run() -> None
Expand All @@ -19,7 +19,7 @@ class "KernelBuilder" as core.kernel_builder.KernelBuilder {
defconfig : Optional[Path]
ksu : bool
lkv : str
lkv_src
lkv_src : str
rmanager : ResourceManager
build() -> None
clean_build() -> None
Expand Down
8 changes: 4 additions & 4 deletions docs/architecture/engines/classes.puml
Original file line number Diff line number Diff line change
Expand Up @@ -3,18 +3,18 @@ set namespaceSeparator none
class "GenericContainerEngine" as engines.generic_container.GenericContainerEngine {
base : str
benv : Literal['docker', 'podman']
builder_cmd
builder_cmd : str
chroot : Optional[Literal['full', 'minimal']]
clean_assets : Optional[bool]
clean_image : Optional[bool]
clean_kernel : Optional[bool]
codename : str
command : Literal['kernel', 'assets', 'bundle']
conan_upload : Optional[bool]
container_options
container_options : list[str]
defconfig : Optional[Path]
dir_bundle_conan
get_container_cmd
dir_bundle_conan : Path
get_container_cmd : str
ksu : Optional[bool]
lkv : Optional[str]
package_type : Optional[str]
Expand Down
12 changes: 6 additions & 6 deletions docs/architecture/interfaces/classes.puml
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
@startuml classes
set namespaceSeparator none
interface "IAssetsCollector" as interfaces.modules.IAssetsCollector {
assets
rom_collector_dto
assets : list
rom_collector_dto : LineageOsApiClient | ParanoidAndroidApiClient | None
{abstract}run() -> None
}
interface "ICommand" as interfaces.commands.ICommand {
{abstract}execute() -> None
}
interface "IGenericContainerEngine" as interfaces.engines.IGenericContainerEngine {
builder_cmd
container_options
dir_bundle_conan
get_container_cmd
builder_cmd : str
container_options : list[str]
dir_bundle_conan : Path
get_container_cmd : str
{abstract}build_image() -> str | None | CompletedProcess
{abstract}check_cache() -> bool
{abstract}create_dirs() -> None
Expand Down
22 changes: 7 additions & 15 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,18 +1,10 @@
[project]
name = "zero-kernel-builder"
version = "0.6.3"
version = "0.6.4"
description = "Advanced Android kernel builder with Kali NetHunter support."
authors = [{name = "seppzer0"}]
readme = "README.md"
requires-python = ">=3.12"
dependencies = [
"argparse",
"conan ~=1.6",
"requests ~=2.31",
"pathlib ~=1.0",
"typing ~=3.7",
"pydantic ~=2.6",
]

[project.urls]
Repository = "https://github.com/seppzer0/zero_kernel"
Expand All @@ -26,17 +18,17 @@ main = [
"conan ~=1.6",
"requests ~=2.31",
"pathlib ~=1.0",
"pydantic ~=2.6",
"pydantic ~=2.12",
]
dev = [
{include-group = "main"},
"bandit ~=1.7",
"pytest ~=8.0",
"pytest-cov ~=4.1",
"pytest ~=8.4",
"pytest-cov ~=7.0",
"pyright ~=1.1",
"pylint ~=3.1",
"ruff ~=0.7",
"pre-commit ~=4.2",
"ruff ~=0.14",
"pre-commit ~=4.3",
"pylint ~=4.0", # for pyreverse
"pip",
]

Expand Down
2 changes: 1 addition & 1 deletion requirement-uv.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
uv==0.9.3
uv==0.9.22
21 changes: 0 additions & 21 deletions scripts/multi_build.py
Original file line number Diff line number Diff line change
Expand Up @@ -68,27 +68,6 @@ def main(args: argparse.Namespace) -> None:
"lkv": "4.4",
"ksu": True
},
{
"command": "kernel",
"rom": "x",
"codename": "dumpling",
"lkv": "4.4",
"ksu": False
},
{
"command": "kernel",
"rom": "x",
"codename": "dumpling",
"lkv": "4.4",
"ksu": True
},
{
"command": "kernel",
"rom": "x",
"codename": "dumpling",
"lkv": "4.14",
"ksu": False
},
{
"command": "assets",
"rom": "los",
Expand Down
Loading