[Nexus 5 Android Development] Dark_Eyes_:
Hi guys,

I'm building an extra lean LineageOS 14.1 ROM for hammerhead with a few added features. A lot of packages have been stripped down, only the bare minimum is built to provide a fast and stable ROM. That gives you much more freedom as you can install exactly what you really want from the Playstore. You can install most of the missing packages manually, they are available in a flashable zip on the server (see second post).

My approach for DARK ROM 14.1 is slightly different than for DARK ROM 13, as I try to add as many Pixel features as possible while keeping a solid LineageOS base.

Key features

- Full OMS support (rootless)

- Signature spoofing support

- Pixel Launcher (with the provided GAPPS package)

- Pixel animated navbar (with on/off switch)

- Pixel sounds

- Pixel accent colors

- Pixel bootanimation with sound

- Rounded icons

- Google Assistant

- Night Light

- Night Light Brightness

- Choose between dialer and voice assistant in lockscreen

- Hide next alarm from expanded status bar and lockscreen

- Disable the boot animation sound

- Secure lockscreen (disables status bar pull down, quick settings tiles, power button and lockscreen shortcuts)

- Double tap the lock icon on the lockscreen to sleep

- Longpress power button while screen off to trigger flashlight

- Hide bluetooth icon when disconnected

- Volume steps

- Quick unlock pin/password

- Remove album art from lockscreen

- Date in status bar

- Battery bar

- Smart pulldown

- Volume button controls media volume anywhere

- Change navbar height

- Screenshot tile

- Caffeine tile

- Sync tile

- Reboot/recovery tile

- Music tile

- USB Tethering tile

- NFC tile

- Quick settings custom rows/columns

- Turn on/off mobile data with single click on collapsed quick settings

- Status bar ticker

- Separate ring and notification volume

- Specific color for 100% charged battery

- Prevent accidental wakeup

- Remove settings suggestions

- Show WiFi SSID in status bar

- Show carrier label in status bar

- Hide carrier label on the lockscreen (or rename to whatever you want)

- Hide the low battery warning notification

- Remove the orange status bar and navigation bar when in battery saver mode

- One hand mode

- Choose doze brightness

- Adjust animation scale precisely with a slider

- Dynamic nav bar color (changes color to the same of status bar)

- In-call vibration options (on connect, on call waiting and on disconnect)

Screenshots

SafetyNet

The ROM is already designed to pass SafetyNet out of the box. No need to lock the bootloader (which I advise you to do ONLY on a pure factory image install) because the kernel has the patch for it. If you want root, you'll need to install Magisk, which comes pre-rooted. Then, enable Magisk Hide in Magisk Manager, hard reboot and you should be good to go. Also, do not enable busybox in Magisk Manager, that will cause you to randomly lose root. You'll get all you need to know on the Magisk thread.

ViPER4Android/ViPER4Arise

The ROM is designed to work with both ViPER4Android and ViPER4Arise out of the box without the need for SuperSU or any Magisk module. The SEPolicy already contains the necessary permissions for them to work even in Enforcing. All you need to do is flash the package of your choice.

Installation

You will need latest radio (2.0.50.2.30) and latest bootloader (HHZ20h)

Latest TWRP recovery is highly recommended

If you want HDR to work, you will need to keep Google Camera 3.2.045 (all newer versions won't work)

If coming from any other ROM

- Backup first... always backup first

- Wipe system, data, cache and dalvik cache

- Install DARK ROM

- Install provided GAPPS (mandatory)

- Install root package of your choice (I recommend Magisk)

Enjoy !

If coming from a previous build of mine

- Backup (you know it)

- Dirty flash DARK ROM

- Install root package of your choice

Enjoy! (if anything goes wrong, clean flash)

Download

To download the whole ROM

Hammerhead

To download GAPPS and Extras

Extras

To download delta updates

Go to Settings/About phone/System updates and use the OpenDelta app to automatically download delta updates.

Delta Updates

Here are a few explanations on how to use delta updates. First, you will need to keep the first full build you downloaded on your sdcard (any full build that have NIGHTLY in the filename will do). I recommend that you keep it on the root of your sdcard until you flash a new build with the OpenDelta app. After that, the OpenDelta app will automatically place a new flashable zip inside the OpenDelta folder that will be used for the next delta updates. At that point you can delete the build on the root of your sdcard, but you will need to keep the (latest) file in the OpenDelta folder at all times to keep the delta updates working.

You will also notice a folder named FlashAfterUpdate in the OpenDelta folder. As its name suggests, any flashable zip files that you put in this folder will be flashed automatically after the update. I recommend that you put all your extra flashable zips there, cause if you use the app to auto-flash the latest build, it will reboot automatically after updating, which means you won't have the opportunity to manually flash other zips. If you want root to survive, you need to put your root package there.

Translations

If you want to help translate the ROM in your language, here are my Crowdin projects. Let me know if you want me to add another language.

SystemUI

Settings

CMParts

Donations

Please consider a donation if you like my work ! I spend a lot of time and effort working on this, so if you can spare a few bucks, please buy me a beer (so I can relax when I'm stuck on a stubborn bug) or a coffee (so I can work on it later in the night). If you decide to do so, I'll gladly add you to the Donation Hall of Fame (see second post) ;)

Source code

GitHub

Thanks and credit

LineageOS

[MENTION=4152171]myfluxi[/MENTION]

[MENTION=5116457]lol4topnz[/MENTION]

[MENTION=3334728]kylon[/MENTION]

[MENTION=2833355]phoval[/MENTION]

[MENTION=6117313]ganachoco[/MENTION]

All the good devs who contributed to the features I added