
lineageos
Use when working with LineageOS custom ROM development, including syncing sources, building, device trees, repopick, Gerrit contributions, or LineageOS-specific features. Triggers on "LineageOS", "lineage-sdk", "breakfast", "brunch", "repopick", "vendor/lineage", "lineage.dependencies", "mka bacon".
- Installs
- 99
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/hyperb1iss/hyperdroid-skill --skill lineageos- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads lineageos automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
LineageOS Development
This skill covers LineageOS custom ROM development - from syncing sources to building and contributing.
Getting Started
Initialize Source
mkdir ~/lineage && cd ~/lineage
# Install repo (if needed)
mkdir -p ~/.bin
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/.bin/repo
chmod a+x ~/.bin/repo
export PATH="$HOME/.bin:$PATH"
# Init LineageOS 21 (Android 14)
repo init -u https://github.com/LineageOS/android.git -b lineage-21.0 --git-lfs
# Sync
repo sync -c -j$(nproc) --force-sync --no-tags --no-clone-bundle
Build Commands
# Setup environment
source build/envsetup.sh
# Setup device (syncs device repos too)
breakfast <device>
# Build flashable ZIP
brunch <device>
# Or separately:
breakfast <device>
mka bacon
# Output: out/target/product/<device>/lineage-21.0-*-UNOFFICIAL-<device>.zip
Essential Commands
| Command | Purpose |
|---|---|
breakfast <device> | Setup device + sync dependencies |
brunch <device> | breakfast + full build |
mka bacon | Build flashable ZIP |
mka bootimage | Build kernel only |
mka systemimage | Build system only |
repopick <change> | Cherry-pick from Gerrit |
Device Trees
Required Files
device/<vendor>/<device>/
├── lineage_<device>.mk # Product makefile
├── lineage.dependencies # Repo dependencies
├── vendorsetup.sh # Add to lunch
├── BoardConfig.mk # Hardware config
├── device.mk # Packages and configs
└── extract-files.sh # Vendor blob extraction
lineage_<device>.mk
# Inherit device
$(call inherit-product, device/vendor/device/device.mk)
# Inherit LineageOS common
$(call inherit-product, vendor/lineage/config/common_full_phone.mk)
PRODUCT_NAME := lineage_device
PRODUCT_DEVICE := device
PRODUCT_BRAND := Vendor
PRODUCT_MODEL := Device Name
PRODUCT_MANUFACTURER := Vendor
lineage.dependencies
[
{
"repository": "android_kernel_vendor_device",
"target_path": "kernel/vendor/device"
},
{
"repository": "android_device_vendor_device-common",
"target_path": "device/vendor/device-common"
},
{
"repository": "proprietary_vendor_device",
"target_path": "vendor/device"
}
]
repopick - Cherry-picking from Gerrit
# Single change
repopick 12345
# Multiple changes
repopick 12345 12346 12347
# By topic
repopick -t feature-topic
# With dependencies
repopick -Q 12345
# Force overwrite local changes
repopick -f 12345
# Show what would be picked
repopick -n 12345
Find Change Numbers
- Go to
https://review.lineageos.org - Search for changes
- Change number is in the URL or displayed
Vendor Blobs
Extract from Device
cd device/vendor/device
./extract-files.sh
Extract from OTA/Factory Image
./extract-files.sh ~/Downloads/ota.zip
proprietary-files.txt Format
# Audio HAL
vendor/lib64/hw/audio.primary.platform.so
vendor/etc/audio_policy_configuration.xml
# With destination path
vendor/lib64/lib.so:vendor/lib64/libfoo.so
# From another device
vendor/lib64/lib.so|other_device
LineageOS Features
Trust Interface
Security dashboard showing device integrity:
# device.mk
PRODUCT_PACKAGES += \
LineageTrust
LiveDisplay
Hardware-accelerated display tuning:
PRODUCT_PACKAGES += \
lineage.livedisplay@2.0-service-sdm
Styles / Themes
System theming support:
PRODUCT_PACKAGES += \
ThemePicker
Key Directories
| Path | Purpose |
|---|---|
vendor/lineage/ | LineageOS additions |
lineage-sdk/ | LineageOS SDK |
device/<vendor>/<device>/ | Device tree |
kernel/<vendor>/<device>/ | Kernel source |
vendor/<vendor>/ | Proprietary blobs |
Contributing
Setup Gerrit Access
git config --global review.review.lineageos.org.username <username>
Submit Change
# Create branch
repo start my-feature .
# Make changes
git add -A
git commit -m "subsystem: Short description
Detailed explanation.
Change-Id: <auto-generated>"
# Push for review
git push ssh://<username>@review.lineageos.org:29418/<project> HEAD:refs/for/<branch>
Commit Message Format
subsystem: Short description
Longer explanation wrapped at 72 characters.
Explain why, not what.
Change-Id: I1234567890abcdef...
Common Issues
Breakfast Fails - Missing Repos
# Re-sync device tree
repo sync device/vendor/device kernel/vendor/device vendor/device
Build Fails - SELinux
# Find denials
adb shell dmesg | grep "avc: denied"
# Generate policy (on host)
adb shell dmesg | audit2allow -p out/target/product/<device>/root/sepolicy
Missing Blobs
Check logcat for:
E linker: cannot find symbol...
E ServiceManager: Could not find service...
Add missing files to proprietary-files.txt and re-extract.
Quick Reference
# Full workflow
source build/envsetup.sh
breakfast cheeseburger
brunch cheeseburger
# Just kernel
mka bootimage
# Cherry-pick fix
repopick 12345
# Sync everything
repo sync -c -j$(nproc)
# Sync one project
repo sync packages/apps/Settings
# Clean build
m clean && brunch <device>
FAQ
What does the lineageos skill do?
Use when working with LineageOS custom ROM development, including syncing sources, building, device trees, repopick, Gerrit contributions, or LineageOS-specific features. Triggers on "LineageOS", "lineage-sdk", "breakfast", "brunch", "repopick", "vendor/lineage", "lineage.dependencies", "mka bacon".
How do I install lineageos?
Run npx skills add https://github.com/hyperb1iss/hyperdroid-skill --skill lineageos in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/lineageos/ (personal) or .claude/skills/lineageos/ (project).
Which AI agents can use lineageos?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is lineageos safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains lineageos?
It is published by hyperb1iss in hyperb1iss/hyperdroid-skill. It has 99 recorded installs.
More from hyperb1iss/hyperdroid-skill
android-build
hyperb1iss/hyperdroid-skill
Use when building Android apps (Gradle CLI) or ROMs (AOSP, LineageOS). Triggers on "gradle build", "assemble", "AOSP", "LineageOS", "lunch", "mka", "breakfast", "brunch", "compile android", "device tree", "kernel build".
android
hyperb1iss/hyperdroid-skill
Use when working with Android devices via ADB - connecting devices, running shell commands, installing apps, debugging, taking screenshots, UI automation, viewing logs, analyzing crashes, or exploring system internals. Triggers on "adb", "logcat", "install apk", "debug android", "android device", "shell command", "screenshot", "dumpsys", "crash", "ANR".
android-fastboot
hyperb1iss/hyperdroid-skill
Use for fastboot operations, flashing partitions, bootloader unlocking, recovery mode, or partition management. Triggers on "fastboot", "flash boot.img", "unlock bootloader", "recovery mode", "TWRP", "Magisk", "partition", "sideload", "A/B slots". WARNING - These operations can brick devices if done incorrectly.
Popular other skills
hyperframes-cli
heygen-com/hyperframes
The HyperFrames CLI by job - scaffold, check, look at frames, edit the timeline, preview, render locally or in the cloud, publish, project history - plus reading its JSON and recovering from build or render failures.
triage
mattpocock/skills
Move issues and external PRs through a state machine of triage roles, categorise, verify, grill if needed, and write agent-ready briefs.
ask-matt
mattpocock/skills
Ask which skill or flow fits your situation. A router over the skills in this repo.
to-questionnaire
mattpocock/skills
Turn a decision you can't fully answer into a questionnaire for someone else to fill in.
loop-me
mattpocock/skills
Grill me about specs for the workflows I want to build, within this workspace.