Cover photo
Nicholas Chum
Worked at Sony Mobile Communications
875 followers|3,553,399 views



Nicholas Chum

Announcements (DO NOT POST)  - 
Substratum Public Release 550

The changelog for this is massive, I'll go over the main changes:

- No more "Theme is upgrading in the background" toast without a notification, instead, it will let you reset your cache immediately.

- Updated and rebased Profiles configuration system, full credits to +Ivan Iskandar​. This introduces the new Contextual Profiling System where you can automatically apply a profile at night and day.

- Enforced strict AOPT injection to system to attempt to fix system issues. If this process keeps failing, the user will be alerted that it has failed.

- Showcase has been FULLY revamped! It is extremely fast now and we are AGAIN open for applications:

- Imported Portuguese + BR, German, Lithuanian, French, Spanish, Hungarian, Italian, Russian and Chinese (Simplified) translations! They're mostly 99% because I push new commits too quick, haha!

- New Actionbar UI!

- /.substratum/ folder gets automatically cleared now on every single app launch.

- The algorithm for AOPT (Cutting edge) has changed drastically. This is for testing purposes!
- Disable Show outdated themes in Settings and Substratum will speed up and fly!

Full Changelog (wew)
Public Release 550
MainActivity: Profiles are now ready for public release!
SubstratumUI: When the cache breaks, let user wipe immediately
ProfileFragment: Take account for contextual card's bottom margin
References: When a theme is launched, ALWAYS check for AOPT integrity
References: When a user clears data, default AAPT will be force injected
AdvancedManagerFragment: If main theme was uninstalled, no enabling!
AppShortcuts: Properly set Showcase icon to black
MainActivity: Change the overflow icon to a refresh icon
MainActivity: Try a different search filter algorithm
Full translation update
ProfileFragment: Don't use AnimatedEditText anymore
ProfileFragment: Use ExpandableLayout library for card animation
ContextualProfile: Fix it for sure
MainActivity: Search query should not reload fragment on icon click
MainActivity: Configure the searchbar to have a proper null type image
InformationActivity: Do not set automatic dynamic app shortcuts
Update dependencies and add animation for licenses fragment
SubstratumBuilder: Use SharedPrefs to build upon @Surge1223's commit
References: Do not enable AOPT debug by default
Reformat and optimize after cherry-pick
enable shared lib flag for beta AOPT and add checks
update AOPT binaries
update AOPT check for 7.1.1
SettingsFragment: Add System Information for more debugging purposes
MainActivity: Hide Showcase icon with Search
StudioSelector: Also adjust for Play Store Icon in actionbar
Showcase: Remove the boring overflow, and replace with an icon!
MainActivity: Keep default actionbar title at first boot
Import Portuguese Translations
Import German Translations
Import Lithuanian Translations
Import French Translations
Import Spanish Translations
Import Hungarian Translations
Import Italian Translations
Import Russian Translations
Current translation update and translator array update
MasqueradeTile: Completely remove the Masquerade tile
Showcase: Revamp the entire caching algorithm
Showcase: Update repository with localized links
SubstratumSearch: Properly configure the searchbar to be DPI-respectable
AOPTCheck: Reduce constant checks by removing it from fragment
SubstratumSearch: Take account for no themes found
MainActivity: Move variable to local
Reformat and optimize imports
MainActivity: Hide Search when on unsupported fragments
Expose fab color for themers
Update strings after cherry-pick
ContextualProfile: Various fixes
Update strings from cherry-pick
Add settings to disable legacy compiler fallback
SubstratumSearch: Allow search results to filter author as well
SubstratumUI: Introduce theme searching
SettingsFragment: Remove the call to Masquerade
Do not allow translators to translate our mail content
SubstratumUI: Introduce new actionbar design
MainActivity: Clear the /.substratum/ folder when starting the app
Merge pull request #37 from boswelja/dev
Fix even more warnings
Fix more warnings
Fix some more warnings
Fixup RTL mode support * Also switch to sp for text sizing * Fix some extra warnings
Update translators
TeamFragment: Remove close button on dialog for Layers devs
John B (Johnb380)'s profile photoLore Concas's profile photoSai Vemula's profile photoPhilipp Christodoulou's profile photo
+Sai Vemula​ I made a post in Bug Reports section, contains a few of your questions I believe. Just can't find it on mobile right now...
Add a comment...

Nicholas Chum

Shared publicly  - 
Seriously some sick shit +Daniel Huber!

I can finally ditch Snapchat for annotating pics!
New feature coming soon: Text Input - directly on screenshot

This way you can make notes on the screenshot or even be able to make memes.

Get ready :)
6 comments on original post
Add a comment...

Nicholas Chum

Substratum (Teasers)  - 
Char G's profile photoPunya Vashist (Pav)'s profile photoPrerak Bhatt's profile phototɐᗡ Boı's profile photo
+Harvey Holden rich boi
Add a comment...

Nicholas Chum

How to use Substratum FAQ's  - 
x86 users!
A few of our users have asked how to enable a Substratum theme on Bliss-x86, so we made a short video of how :)
2 comments on original post
Add a comment...

Nicholas Chum

Announcements (DO NOT POST)  - 
Substratum Release 522

Profiles MIGHT come on the next update. We just need eyes on it for a bit during alpha/beta testing.

c1c2bd1 Import Portuguese (Brazil) translations
ccade7d Import Chinese (Simplified) translations
79a9cfa TeamFragment: Final touches for the Team fragment!
ce82b3e TeamFragment: Add a button to link to our translate page
56dfa17 TeamFragment: Ensure developers are categorized alphabetically
8c4bd05 ProfileFragment: Extract string resources
66df573 MainActivity: No need to show the refresh button everywhere
926c833 ManageFragment: Workaround for clearing home screen properly
909ad9a ProfileFragment: try to create .nomedia file on backup
dfbcd9b ProfileFragment: Hide keyboard on backup button click
7453971 TeamFragment: Introduce a new dynamic UI
1922d83 SubstratumUI: Fix landscape compilation with blur!
33ae951 MasqueradeService: Restarting SystemUI now works without root
Harvey Holden's profile photoSalomao Abreu's profile photoChar G's profile photoCalypso Banana Puffy-Sleeves's profile photo
Great news! Take your time, guys. 👍🏼☺️
Add a comment...

Nicholas Chum

Shared publicly  - 
DU Certified

A little over a month ago Dirty Unicorns announced that we were stepping away from the CMTE and embracing OMS/Substratum. It was the smarter play for us then and we still believe this. This is not a knock on the CMTE, we still have a soft spot for it. In fact we did a lot of good things with the CMTE to include writing our own per-app-theme qs tile, integrating headers into the CMTE which enabled themers to go wild and even contributing fixes upstream to CM to make it better!

Another good thing we did while using the CMTE was create DU Certified!

DU Certified was created with themers and users in mind! This knocked out two birds with one stone, as they say. This allowed DU users to quickly go in and see which themers have DU fully themed instead of spending time and money on 'one size fits all' type of themes. We've seen them, they have mismatch icons and it just looks tacky. DU Certified also allows us to show themers that have shown us love the recognition that we think they deserve!

So how do I get certified?

- Make sure your theme does not produce any FCs.
Nothing screams janky like a theme that causes FCs due to outdated styles or the themer just not paying attention to what they're doing.

- Make sure all text is visible.
No dark text on dark backgrounds or white text on white background.

- Make sure all quick settings tiles are themed.
This area is very important and must be themed along with the brightness slider and qs editor.

- SmartBar and Fling need to be fully themed.
If your theme is basic than you can leave Smartbar alone. If you do decide to theme the navbar and have the basic 'back/home/recents' themed then you must theme the rest. Theming only the 3 and not the rest looks tacky. Go big or go home!

- Make sure Settings and 'Dirty Tweaks' is fully themed.
If you're tinting icons then make sure is tinted. If you're including your own drawables than make sure all drawables match your theme

- Fill out the form below and notify me or +Edwin Rivera when you do

Once we populate the app with a few themes, we will go ahead and make the app available within DU

#StayDirty   #DUCertified   #DirtyUnicorns  
View original post
Add a comment...

Nicholas Chum

Shared publicly  - 
Oh yes, my baby arrived!
Nicholas Chum's profile photoJeff “skynet11” McIntire's profile photoJannis Liapis's profile photoDe Jan's profile photo
De Jan
I wish I could have one ❤️
Add a comment...

Nicholas Chum

Announcements (DO NOT POST)  - 
Substratum Release 560 - Security Patch Update

This is an urgent security release for users. Please update to the latest source of Android + OMS7 with the latest masquerade 20P.

In other news, this also fixes a problem with the SubstratumRescue archives not being copied over, profiles improvements THANKS AGAIN TO +Ivan Iskandar as well as some UI updates thanks to +Jack Boswell

Urgent security patch release 560
Remove the broken Italian translations till it is complete
Profile: Give user choice for what to backup
SubstratumTrustZone: Form a trusted handshake between Masquerade
BlurDialog: Force remove actionbar/toolbar overlay
SubstratumRescueSystem: Properly check at start up each time
Fragments: Add nullchecks for getView() for every fragment with snackbar
References: Make notification_id_upgrade more unique
operation <3 legacy
References: Add a clear all notifications for substratum method
ThemeEntryAdapter: Properly check if a notification exists or not
Refactor and optimize after cherry pick galore
ScheduledProfileService: Fix notification not showing
ContextualProfile: Add back the tiny bits of profile
ContextualProfile: Directly apply profile after setting up
Merged branch dev into dev
Revert "MainActivity: Clear the /.substratum/ folder when starting the app"
Merge pull request #41 from boswelja/dev
Rework removing actionbar_content when no themes are installed
Expose a new dimen for themers to add elevation to N cards * Also reverts 2dp default elevation
Properly restore theme count text
Add shadow to n-style cards too
Hide action bar theme count if there are no themes

Nicholas Chum's profile photoJack Boswell (boswelja)'s profile photoManish Sharma's profile photoMoshe Barash's profile photo
+Manish Sharma Your ROM developer has to update masquerade 😉
Add a comment...

Nicholas Chum

Announcements (DO NOT POST)  - 

There has been some backlash between Slim not merging masquerade because it allowed any application to call upon Masquerade (as long as you have the correct parameters, which since we are open source, anyone can find out).

To remedy this, I have ported +Randall Rushing's code for our masquerade rebase to the current generation of masquerade with root. This way, the calling package is checked to be Substratum's package name and thus will only validate the commands if verified.

It is CRUCIAL to update both Substratum AND masquerade. The new version of masquerade with added security patches is now called "twenty - procyon". If your ROM developer is not listed in the list of tags, please kindly urge them about this.

Substratum v560 will be out shortly to adapt to this security patch.

+Alex Cruz +Josh Fox +Ivan Iskandar +setiawanjimmy +George G. +cory collins +Nathan Chancellor +Nate Benis +Martin Coulon +Char G +John Brewer +Jon West +Patrick Graber +Joe Maples +Jason Edson +Richard Covington +Ezio Lacandia Bijelkic +Davor Bertovic +Adin K +Akhil Narang +Vatsal Koradia +Shreesha Murthy +Varun Date +Soham Jambhekar +Nick Reuter +RajaMu +Harsh Shandilya +Martincz Gao
Kankesh Aroskar's profile photoJoshua (Orion116)'s profile photoMoshe Barash's profile photoTushar Choudhary's profile photo
Add a comment...

Nicholas Chum

Shared publicly  - 
Just having fun with my new desktop ☺☺☺

Coding on a curved screen is really fun!
Nicholas Harrison's profile photoJon West's profile photoNicholas Chum's profile photoSai Prasanna's profile photo
Oh damn, that looks sexy af
Add a comment...

Nicholas Chum

Substratum (Teasers)  - 
Substratum Speed Test - 3T vs. 6P

OnePlus 3T (left) vs. Nexus 6P (right)

In this video, I demonstrate raw power on each of these devices. They are both freshly flashed ROMs specific and fastest roms in my opinion for each device.

The OnePlus 3T sports Dirty Unicorns w/ Stock Kernel by +Shreesha Murthy while the Nexus 6P sports Flash ROM w/ Flash Kernel by +Nathan Chancellor.

In the video, I ensured that I have cleared the recents and cleared data for both Substratum apps on each of the devices. Both apps have the "Show outdated themes" option DISABLED, to enhance app overall performance.

What I test here is RAW power that steps beyond what Quadrant Standard and Geekbench does, as we utilize the Android Assets/Overlay Packaging Tool to compile Android APKs directly on the device, then signing it with our keys, in an automated fashion.

We first take a look at how fast each device caches the themes. Take account that I am using one hand to record so the small standard deviance of delay for cache record time would be +/- 0.5secs

Then, we begin compiling. Clicked at the same time, compiling the exact SAME overlays (same overlay count) the video for the results :)
brandon hatfield's profile photoJames Torgerson's profile photo
+brandon hatfield thank you for all the help mate! I appreciate it. 
Add a comment...

Nicholas Chum

Substratum (Teasers)  - 
This looks so much better....😍

All pulls directly from each G+ account so we don't have to have improper images from outdated resources! Plus. It will ultimately shrink the size of the APK 😊
Travis Hall's profile photoAdin K's profile photoJeremy Beck's profile photoSimos Katsiaris's profile photo
.... And add network access permissions.....
Add a comment...
Nicholas's Collections
[projekt.] & chummy development team
Android, Java, Python, XML, Photoshop, Illustrator
  • Sony Mobile Communications
    Resource Runtime Overlay, 2014 - 2015
  • Engël & Völkers
    IT Administrator, 2011 - 2013
Android Developer and Themer
If you're reading this, you've probably found the right Nicholas 😋
Bragging rights
the moment you have decided to play a game, you must have also decided to win.
Nicholas Chum's +1's are the things they like, agree with, or want to recommend.
substratum theme engine ★ ROOT – Android Apps on Google Play

Recently our team's efforts have been announced on XDA Portal regarding the official deprecation of Layers, in progress to be overridden by

Theme Rebuilder (CM) ★ ROOT – Android Apps on Google Play


Hangouts Style Boot - CM11/12 – Android Apps on Google Play

The hangout emoticons, whether you like them or not, is a cute and eye-catching representation of the human moods. They contain more emotion

Dark Material - CM12/12.1/13 – Android Apps on Google Play

"dark material // akzent" available on the Play Store today! You can change color accents in that variant of dark material using Arcus! Dona

Dark Material (Donate) - CM12 – Android Apps on Google Play

DONATION VS. FREE Just to clarify, this is JUST a donate version of my free theme available on the Play Store. However, this isn't a necessa

dark material // colors – Android Apps on Google Play

ATTENTION/DISCLAIMER/WARNING To use the app, PLEASE READ THE DIALOG. My themes are quite big and takes a good ONE SECOND to TWO SECONDS on t