Skip to content

Android 内核构建-自定义 #5

Android 内核构建-自定义

Android 内核构建-自定义 #5

Workflow file for this run

name: Android 内核构建-自定义
permissions:
contents: write
actions: write
on:
workflow_dispatch:
inputs:
# ==================== 内核版本配置 ====================
android_version:
description: "Android 版本"
required: true
type: choice
options:
- android12
- android13
- android14
- android15
- android16
default: android12
kernel_version:
description: "内核版本"
required: true
type: choice
options:
- "5.10"
- "5.15"
- "6.1"
- "6.6"
- "6.12"
default: "5.10"
sub_level:
description: "子版本号 (如 66, 198, X)"
required: true
type: string
default: "66"
os_patch_level:
description: "安全补丁级别 (如 2022-01, lts)"
required: true
type: string
default: "2022-01"
revision:
description: "修订版本 (如 r11, 仅 5.10 需要)"
required: false
type: string
default: "r11"
# ==================== KernelSU 配置 ====================
kernelsu_variant:
description: "KernelSU 变体"
required: true
type: choice
options:
- None
- Official
- SukiSU
- ReSukiSU
default: ReSukiSU
kernelsu_branch:
description: "KSU 分支"
required: true
type: choice
options:
- Stable(标准)
- Dev(开发)
- Latest(最新)
- Custom(自定义)
default: Stable(标准)
# ==================== 可选配置 ====================
custom_ref:
description: "自定义引用 (仅在KSU分支为'Custom(自定义)'时使用)"
required: false
type: string
version:
description: "自定义版本名 (可选)"
required: false
type: string
build_time:
description: "自定义构建时间 (可选,N或留空=当前UTC)"
required: false
type: string
default: "Sun Dec 01 08:10:00 UTC 2024"
# ==================== 虚拟化支持配置 ====================
virtualization_support:
description: "虚拟化支持 (5.10~6.6: 槽位补丁, 6.12: 开/关)"
required: false
type: choice
options:
- "off"
- "on"
- "678"
- "123"
- "345"
default: "off"
# ==================== 功能开关 ====================
use_zram:
description: "启用 ZRAM 增强算法"
required: true
type: boolean
default: false
use_bbg:
description: "启用 BBG 防格机"
required: true
type: boolean
default: false
use_ddk:
description: "启用 DDK 防格机 LSM"
required: true
type: boolean
default: false
use_ntsync:
description: "启用 NTsync"
required: false
type: boolean
default: false
use_networking:
description: "启用网络增强(IPSet + BBR)"
required: false
type: boolean
default: false
use_kpm:
description: "启用 KPM 功能"
required: true
type: boolean
default: false
use_rekernel:
description: "启用 Re-Kernel 驱动"
required: false
type: boolean
default: false
cancel_susfs:
description: "禁用 SUSFS"
required: true
type: boolean
default: false
supp_op:
description: "启用一加 8E 支持"
required: false
type: boolean
default: false
# ==================== ZRAM 扩展选项 ====================
zram_full_algo:
description: "启用 ZRAM 完整算法支持(6.12 自动跳过 legacy LZ4K/LZ4KD/LZ4K_OPLUS)"
required: false
type: boolean
default: false
zram_extra_algos:
description: "自定义 ZRAM 算法(逗号分隔,如 lzo,lz4,deflate,zstd;6.12 会忽略 lz4k/lz4kd/lz4k_oplus)"
required: false
type: string
default: ""
# ==================== KPM 扩展选项 ====================
kpm_password:
description: "自定义 KPM 超级密码(留空=使用默认密码)"
required: false
type: string
default: ""
# ==================== 自定义外部模块 ====================
custom_external_modules:
description: "自定义外部模块(兼容旧 repo;stage,也支持 module:repo;stage 与 set:repo#child;stage,用 | 分隔)"
required: false
type: string
default: ""
custom_kernel_options:
description: "自定义内核选项(每行一条 Kconfig/defconfig 片段)"
required: false
type: string
default: ""
jobs:
build-custom-kernel:
name: "${{ inputs.kernel_version }}.${{ inputs.sub_level }}-${{ inputs.android_version }}-${{ inputs.os_patch_level }}"
uses: ./.github/workflows/build.yml
secrets: inherit
with:
android_version: ${{ inputs.android_version }}
kernel_version: ${{ inputs.kernel_version }}
sub_level: ${{ inputs.sub_level }}
os_patch_level: ${{ inputs.os_patch_level }}
revision: ${{ inputs.revision || '' }}
ksu_variant: ${{ inputs.kernelsu_variant }}
ksu_branch: ${{ inputs.kernelsu_branch }}
custom_ref: ${{ inputs.custom_ref || '' }}
version: ${{ inputs.version || '' }}
build_time: ${{ inputs.build_time || '' }}
use_zram: ${{ inputs.use_zram }}
use_bbg: ${{ inputs.use_bbg }}
use_ddk: ${{ inputs.use_ddk }}
use_ntsync: ${{ inputs.use_ntsync || false }}
use_networking: ${{ inputs.use_networking || false }}
use_kpm: ${{ inputs.use_kpm }}
use_rekernel: ${{ inputs.use_rekernel || false }}
supp_op: ${{ inputs.supp_op || false }}
enable_susfs: ${{ !inputs.cancel_susfs }}
virtualization_support: ${{ inputs.virtualization_support || 'off' }}
zram_full_algo: ${{ inputs.zram_full_algo || false }}
zram_extra_algos: ${{ inputs.zram_extra_algos || '' }}
kpm_password: ${{ inputs.kpm_password || '' }}
custom_external_modules: ${{ inputs.custom_external_modules || '' }}
custom_kernel_options: ${{ inputs.custom_kernel_options || '' }}
get-ksu-manager:
uses: ./.github/workflows/get-manager.yml
secrets: inherit
with:
kernelsu_variant: ${{ inputs.kernelsu_variant }}
ksu_branch: ${{ inputs.kernelsu_branch }}
custom_ref: ${{ inputs.custom_ref || '' }}