[EOL][ROM][N910F][ALEXNDR] * DRF1 * DevBase v5.9 * Multi CSC, Safe De-Bloat [Aug-11]

Search This thread

haryp2309

Senior Member
Aug 2, 2014
325
55
OnePlus 7 Pro
When I make a twrp backup, does it also backup modem? Im confused cause I tested an S6 rom and flashed bod2 modem but now Im back on this rom and it says boc3 modem

Gesendet von meinem SM-N910F mit Tapatalk
When you make a backup is it a option to backup modem or not
Maybe you choosed to backup it
ZaxHuOB.png

You can se the modem option here^^
 

marliv

Senior Member
Sep 18, 2011
85
34
great work Dev..I'm using the deodex rom with the xposed framework installed..not a single issue..on the contrary..best battery i ever got on a lollipop rom
 

Attachments

  • Screenshot_2015-05-26-15-43-41.png
    Screenshot_2015-05-26-15-43-41.png
    178.1 KB · Views: 748
  • Screenshot_2015-05-26-15-43-49.png
    Screenshot_2015-05-26-15-43-49.png
    112.8 KB · Views: 762
  • Screenshot_2015-05-26-16-33-26.png
    Screenshot_2015-05-26-16-33-26.png
    205 KB · Views: 753
  • Screenshot_2015-05-26-16-33-43.png
    Screenshot_2015-05-26-16-33-43.png
    247.8 KB · Views: 724

v1rtu4l

Senior Member
Jul 18, 2008
323
99
Hi there. Yesterday after successful rooting of SM-910F (running stock 5.01) using CF Auto Root, I decided to flash this ROM. The OP suggested to update bootloader/modem to latest versions prior to flashing the ROM. So I did the same getting the latest versions of bootloader/modem from the links provided by the OP. flashing BL was good but as soon as I flashed the modem, it stuck in bootloop. flashing was done using Odin v3.07 that was provided with CF-Auto-Root for SM-910F. md5 sum of the downloaded modem file was same as shown on the server. I couldn't get what went wrong. I had to download and flash stock firmware to get rid of bootloop.

Can anyone kindly correct me if I did something wrong or suggest me something else to try to get this ROM installed?

PS: Posted in this thread coz apparently modem provided in this thread caused bootloop. Moreover, can anyone enlighten me if I don't update bootloader/modem and after rooting and flashing custom recovery, I directly flash this ROM, what possible issue/disadvantage could I face for not updating bootloader/modem?

I think I had the same. You need to flash the bootloader and or modem afterwards
 
  • Like
Reactions: MusadiqManas

theligu

Member
Jul 18, 2010
42
2
Skåne
Hi

I read the thread and Im confused.
Getting a bootloop.
Background:
Flashed N910FXXU1BOC5_N910FNEE1BOC1_N910FXXU1BOC4_HOME.tar.md5, CF-Auto-Root-trlte-trltexx-smn910f.zip, twrp-2.8.6.0-trltexx.img.tar with odin. Stock rooted works fine.
Flashed N910FXXU1BOD2_Deodexed_alexndr.zip. I get the powered by android screen followed by two vibrations and a restart.
What am I doing wrong?
Not used to Touchwiz roms, I normally run CM on my phones.
Need touchwiz for camera quality and deodexed for xposed.

Glad for all help

Thanks in advance!
 
  • Like
Reactions: MusadiqManas

MusadiqManas

Senior Member
May 14, 2014
176
69
Gujrat
Hi

I read the thread and Im confused.
Getting a bootloop.
Background:
Flashed N910FXXU1BOC5_N910FNEE1BOC1_N910FXXU1BOC4_HOME.tar.md5, CF-Auto-Root-trlte-trltexx-smn910f.zip, twrp-2.8.6.0-trltexx.img.tar with odin. Stock rooted works fine.
Flashed N910FXXU1BOD2_Deodexed_alexndr.zip. I get the powered by android screen followed by two vibrations and a restart.
What am I doing wrong?
Not used to Touchwiz roms, I normally run CM on my phones.
Need touchwiz for camera quality and deodexed for xposed.

Glad for all help

Thanks in advance!

You need to flash latest boot loader and modem. Check post #3 for links.

almost same here as with @theligu ... In first attempt I flashed latest bootloader and modem and it got stuck after modem flash. Then I got back to stock. Tried again, this time direct flashing of the ROM after rooting and flashing TWRP, without updating bootloader and modem.. Again stuck after ROM clean flash (also wiped dalvik n cache after flashing)..

Can't figure out what went wrong.. Any further help..?
 

shieldee

Member
Apr 19, 2011
24
12
Skopje
almost same here as with @theligu ... In first attempt I flashed latest bootloader and modem and it got stuck after modem flash. Then I got back to stock. Tried again, this time direct flashing of the ROM after rooting and flashing TWRP, without updating bootloader and modem.. Again stuck after ROM clean flash (also wiped dalvik n cache after flashing)..

Can't figure out what went wrong.. Any further help..?

I installed the ROM few days ago. The steps that I took were factory reset from TWRP, then ROM flash, then reboot. It failed to boot with two vibrations and auto reboot. After that I flashed the boot loader and modem from Odin and ROM booted.
Flashed super su, let it boot once and installed XPosed afterwards.
 
  • Like
Reactions: MusadiqManas

theligu

Member
Jul 18, 2010
42
2
Skåne
Thank you for your help. Got it working now. Flashed the other version of the deodexed rom and bob's you're uncle :)

Thank you for a great and fast rom!
 

MusadiqManas

Senior Member
May 14, 2014
176
69
Gujrat
I installed the ROM few days ago. The steps that I took were factory reset from TWRP, then ROM flash, then reboot. It failed to boot with two vibrations and auto reboot. After that I flashed the boot loader and modem from Odin and ROM booted.
Flashed super su, let it boot once and installed XPosed afterwards.

Okay.. I'll try again and will tell the outcome..

PS: It worked for me too. Thanks @shieldee
 
Last edited:

Clasimodo

Senior Member
Dec 22, 2006
227
57
Samsung Galaxy A70s
Very satisfied with this Rom. Smooth.. Coming from Note 2.
I always integrated updates of system apps in rom with Titanium backup. Somehow this gives major problems (apps disappear or fc). Does anybody know the reason and solution for this?
 

Gizmundo

Senior Member
May 9, 2013
386
96
+1
Yeah, I agree 100%. I´m also using alexndr´s FULL(REpacked) Unofficial BOD2 and it]s AWESOME. Super-fast & a LOT LESS LAG than BOC5. With BOC5, I was seriously considering installing a Custom Rom. Now, I´m so happy with the performance improvement with BOD2, I think I might just leave it STOCK. Thanks again for your fantastic work alexndr! :D
Added a few screenshots of my baby :cool:

What icon pack is this mate?
 

Top Liked Posts

  • There are no posts matching your filters.
  • 336
    Important notes for Developers / Chefs !!!

    This ROM is NOT based on any other custom ROM. My work contains many original ideas and innovations that I introduced as the first in the ROM development (see "Changelist" in post #2). Of course, it does not mean that I do not need to thank anyone - there are a lot of people who helped / inspired me anyhow (see "Credits").

    I will risk the statement that at this moment my "DevBase" is the most tuned and nuanced custom ROM available at XDA Forum :cool:

    I agree to use any part of my work to create other custom ROMs, but it would be great if you add me to the credits :)

    Hello :)

    I have decided to create a pure base, which can be a pattern for ROM Chefs (not only for beginners) :D ROM is initially safe de-bloated (read below what does it exactly mean), but all features are present and works!

    ROM can be installed by normal users as well. If you like a little de-bloated ROMs, clean, but with all working features - there is no better alternative I think ;)

    ROM contains my extended CSC package, which I called N910FAXX (this is a combination OXX, OXA + some additional). Final list of available CSC is as follows:

    ATO, AUT, BAL, BTU, CYO, DBT, ETL, EUR, H3G, ILO, ITV, LUX, MEO, MET, NEE, ORX, PHE, PHN, ROM, SEE, SIO, VGR, VIA, TPD, TPH, XEF, XEH, XEO (underlined - VoLTE support)

    NEW !!! :D I present you new, unique option: "Keep current CSC", so you can install my DevBase keeping your original CSC even if it is not listed above! Note that in such case this option has some limitations, so read carefully informations below.
    How does it work? Normally, if your current CSC is listed above (contained in my DevBase), this option detects it and automatically applies during install. However, if the detected CSC is not contained in my DevBase, then my new script makes a copy of all known contents associated with CSC (except so-called "CSC bloatware" placed in /system/app & priv-app, e.g brand and/or country specific apps), then installer cleans /system partition as usual, then it flashes new ROM base and then it restores backed up CSC contents instead of my multi CSC pack. It seems to be easy, but was rather laborious - I have analyzed almost all multi CSC packs and most of single CSC packs available in the world (designed to work with N910FXX... base) to make this script as accurate as possible.

    As you probably noticed - in such case your CSC pack will be as complete as it was before, thus if you are currently using any custom ROM - BEFORE the first installation of my DevBase I highly recommend you to flash the latest original stock ROM released for your country, then perform "wipe data" using stock recovery and then CHECK your CSC (chage it if necessary - more information below).

    For further updates you do not need to repeat it every time. You can flash directly the next (newer) version of my DevBase with "Keep current CSC" option untouched in /options.prop - you can repeat such update procedure for a long time. As you probably noticed again - if your CSC is not contained in my DevBase, then your CSC pack will not be updated until you flash a newer original stock ROM for your country. But don't worry - CSC updates usually bring nothing (usually the only updated thing in CSC pack is the whitelist of LTE networks). I'm not trying to say "CSC updates are completely unnecessary". It's good idea to update it occasionally (especially if you noticed that major Android update for your country has been released). When you will decide to do it - just flash temporarily again the newest original stock ROM containing your CSC, and then you can return to my the newest DevBase (this time wipe data will not be necessary).

    NOTE: Do not use so called "Superwipes" and/or additional /system "formats", otherwise "Keep current CSC" option may not work properly (e.g. if detected CSC is NOT included in my multi CSC package, then it will not be possible to keep detected CSC, as there is no CSC related content to backup / restore).

    How can I check my current CSC?
    Install Phone INFO app from Play Store and check your CSC. If you are using stock ROM and everything is ok with your CSC - all CSC fields in Phone Info app should display the same CSC, as below (otherwise, you probably forgot about wipe data when you were installing ROM with another CSC).

    CSC_info1.jpg

    How can I change my current CSC?
    Q: Recently I tested several ROMs, in result of it my CSC has changed. I would like to install your DevBase, but first I want to restore my country's original CSC. What should I do?

    Case 1: Your country's original CSC is available in my DevBase

    No special/additional steps are needed. Just install my DevBase with edited options.prop file placed on internal sdcard or extSdCard -> type CSC=[your_csc] instead of CSC=KCSC. Remember to perform "Wipe data" in the recovery before install. Note that sometimes additional reboot is required after completing pre-configuration steps to display your CSC correctly in Phone Info app).

    Case 2: Your country's original CSC is not available in my DevBase. Your original ROM contains single CSC pack (ommiting parts with model name and incremental version - name of CSC package is same as product code = CSC)

    Example:
    Code:
    Model: SM-N910F
    Model name: GALAXY Note 4
    Country: Montenegro
    Version: Android 4.4.4
    Changelist: 3311829
    Build date: Mon, 17 Nov 2014 05:21:39 +0000
    Product Code: [COLOR="Red"]TMT[/COLOR]
    PDA: N910FXXU1ANK4
    CSC: N910F[COLOR="red"]TMT[/COLOR]1ANK1
    MODEM: N910FXXU1ANK4

    In this case you need to flash your original ROM using PC Odin, then perform wipe data using stock recovery and then check your CSC in Phone Info app (note that sometimes additional reboot is required after completing pre-configuration steps to display your CSC correctly in Phone Info app).

    Now you can install my DevBase - just leave "Keep current CSC" option untouched in /options.prop (it's good idea to perform "Wipe data" again from recovery to remove potential "garbage" from /data partition like e.g app data created by CSC bloatware and CSC bloatware updates).

    Case 3: Your country's original CSC is not available in my DevBase. Your original ROM contains multi CSC pack (ommiting parts with model name and incremental version - name of CSC package differs from product code and usually begins with the letter "O")

    Example:
    Code:
    There is no good example for SM-N910F at the date of writing this guide

    There is no good example for SM-N910F at the date of writing this guide. The only multi CSC package not contained in my DevBase is Vodafone N910FVFG.... but it is BRANDED! Therefore, I recommend to change it to unbranded, from DevBase's supported list (steps same as Case 1). If you really want to know what should you do in such case (in theory) - please read related DevBase threads for Note 3 or S5


    ALEXNDR.N910FXXU1DRF1:

    1. Base:
    - Odexed (original stock files) + stock kernel
    - Multi CSC OXM (list of natively supported CSC as above) (*)
    - Removed SecurityLogAgent.apk (annoying on rooted phones)
    - Removed Rlc.apk (to avoid "OEM unlock issue")
    - Rooted systemlessly (Magisk v16.7 or SuperSU 2.82 SR5) (*)
    - All original features are present and works (except KNOX related apps)
    - No visual changes (100% stock look)

    2. CscFeature MOD (enabled some built-in, hidden features):
    - Added shutter sound menu in Camera app
    - Sending/receiving MMS without data on
    - Show SMS/MMS sending time instead of receiving
    - Added "Call/Message block" option in Settings
    - Added "LTE Only" network mode (NOTE: voice calls may not work in this mode)
    - 4G/3G network support in any CSC (master/slave SIM, applies to dual SIM variants)
    - Call Recording (via "Record" button or "Auto record calls" option)
    - Enabled "Recent App Protection" feature

    3. Xposed framework & Xposed Installer app [optional] (*)

    4. Virtual / physical Safe De-Bloat (more info below) (*)
    What does it mean and why is it called "safe"?

    - ONLY apps available in stores are removed from DevBase, so you can easy (re)install any of these app if you like
    - ONLY pre-installed system apps are removed, DevBase installer never touch any updated app nor app installed manually from store

    Thus, the following conclusions can be drawn:

    1. If you install my DevBase directly over stock ROM without performing "Wipe data" - in most cases almost all these apps will remain untouched, because almost all apps have been updated already (stored on /data). But then you will be able to remove any useless app using the "Application manager", like any other app. Removed manually app will not appear again until you use my DevBase while updating.

    2. If you perform "Wipe data" while installing my DevBase - then all apps listed below will be removed. If you would like to use any of these apps - just install it manually from appropriate store. Installed manually app will not be removed during the next DevBase update.

    Removed apps list:

    Chrome
    Drive
    Dropbox
    Evernote
    Facebook
    FB Messenger
    FB Pages Manager
    Flipboard
    Google+ / Photos
    Hangouts
    Instagram
    PEN.UP
    Play Books
    Play Games
    Play Movies
    Play Music
    Play Newsstand
    Smart Remote
    WhatsApp

    (*) - these options can be controlled by editing options.prop file (you can find such file in ZIP's root directory). Just place modified options.prop file (use e.g. Notepad++ to edit) in the root directory of internal emulated scdard (/data/media/0) or extSdCard (recommended if you plan to format internal emulated sdcard) and then start the installation. More info below:

    #
    # DevBase by ALEXNDR (_alexndr @ XDA)
    #
    # Configuration file to allow customize the installation.
    #
    # File inside the ZIP installer is just for reference - please DO NOT modify it!
    # If you want to change some options listed below - edit the copy of this file, then place
    # modified options.prop file in the root directory of internal emulated scdard (/data/media/0)
    # or in the root directory of extSdCard (recommended if you plan to format internal emulated
    # sdcard) and then start the installation.
    #
    # TIP: You do not need to repeat this step every next update I will release. As long as your
    # customized options.prop file is present in the (ext)SdCard - future DevBase installers will
    # "read in your mind" that you want to install with such options again.
    #
    # NOTE: All below variables and values are case sensitive!

    # Enable root access with the selected method. Allowed values:
    # magisk - install Magisk & MagiskSU as root solution (default)
    # supersu - install SuperSU as root solution, without Magisk
    # noroot - do not root device

    root=magisk

    # Install Xposed framework matched to the ROM (there is also a possibility to detect Xposed profile
    # automatically, but auto-detection will not work if user will perform wipe /system). Allowed values:
    # auto - detect Xposed profile automatically
    # true - force Xposed framework installation
    # false - do not install Xposed framework

    xposed=auto

    # CSC Selection. Allowed values:
    # KCSC - Keep current CSC, recommended in most cases (automatic selection or copy your current CSC contents).
    # You can force the use of natively supported CSC by typing (use UPPERCASE!): ATO, AUT, BAL, BTU, CYO, DBT,
    # ETL, EUR, H3G, ILO, ITV, LUX, MEO, MET, NEE, ORX, PHE, PHN, ROM, SEE, SIO, TPD, TPH, VGR, VIA, XEF, XEH, XEO

    CSC=KCSC

    # Custom CSC Features. Allowed value in each line: <Example_line>value</Example_line>

    <CscFeature_Sip_EnableSymbolInSecondary>en_GB;en_US;az;ca;cs;da;de;et;es;eu;el;fr;gl;ka;hr;it;is;kk;lv;lt;hu;nb;nl;pl;pt;ru;ro;fi;sr;sk;sl;sv;tr;uk;ko;hy;bg;ar;fa;ur;zh_CN;</CscFeature_Sip_EnableSymbolInSecondary>
    <CscFeature_Sip_ConfigOpBranding>SPR</CscFeature_Sip_ConfigOpBranding>
    <CscFeature_Common_SupportWcdmaInSlave>true</CscFeature_Common_SupportWcdmaInSlave>
    <CscFeature_VoiceCall_ConfigRecording>RecordingAllowed</CscFeature_VoiceCall_ConfigRecording>
    <CscFeature_Setting_EnableMenuBlockCallMsg>true</CscFeature_Setting_EnableMenuBlockCallMsg>
    <CscFeature_Setting_CustNetworkSelMenu4>LTEONLY</CscFeature_Setting_CustNetworkSelMenu4>
    <CscFeature_Setting_SupportRealTimeNetworkSpeed>true</CscFeature_Setting_SupportRealTimeNetworkSpeed>
    <CscFeature_SmartManager_DisableAntiMalware>true</CscFeature_SmartManager_DisableAntiMalware>
    <CscFeature_SystemUI_SupportRecentAppProtection>true</CscFeature_SystemUI_SupportRecentAppProtection>
    <CscFeature_Contact_EnableCallButtonInList>true</CscFeature_Contact_EnableCallButtonInList>
    <CscFeature_Message_DisplaySmsTimeAs>server</CscFeature_Message_DisplaySmsTimeAs>
    <CscFeature_Message_DisplayMmsTimeAs>server</CscFeature_Message_DisplayMmsTimeAs>
    <CscFeature_Camera_ShutterSoundMenu>true</CscFeature_Camera_ShutterSoundMenu>
    <CscFeature_Web_AddOptionToTerminate>true</CscFeature_Web_AddOptionToTerminate>
    <CscFeature_Web_EnablePromptToExit>true</CscFeature_Web_EnablePromptToExit>
    <CscFeature_RIL_ForceConnectMMS>true</CscFeature_RIL_ForceConnectMMS>

    # Custom physical debloat list. Allowed value in each line: path to app's directory in /system.
    # (NOTE: wildcards are allowed here)

    /system/app/SecurityLogAgent

    # Custom virtual debloat list. Allowed value in each line: exact app name with .apk extension.
    # (NOTE: without app's path/directory, wildcards are NOT allowed here!)

    Books.apk
    Chrome.apk
    Drive.apk
    Dropbox_zero.apk
    Evernote.apk
    Facebook_latest.apk
    FBAppManager.apk
    FBInstaller.apk
    FBInstagram_stub.apk
    FBPagesManager_stub.apk
    Flipboard.apk
    Hangouts.apk
    Music2.apk
    Newsstand.apk
    PENUP.apk
    Photos.apk
    PlayGames.apk
    PlusOne.apk
    SmartRemote_T.apk
    Videos.apk
    WhatsAppDownloader.apk

    NEW !!! :D Starting from DevBase v3.0 there is a new customization method - you can change frequently switched root options just by renaming installer's ZIP file name (instead of editing options.prop file). Currently supported "strings" in the file name: "magisk", "supersu", "noroot", "rescue", "xposed", "CSC_xxxx.zip":

    Case 1 (default) - install the ROM with Magisk & MagiskSU as root solution
    (just flash ZIP file "as it is")

    Case 2 - install the ROM with SuperSU as root solution, without Magisk
    (place "supersu" string anywhere in the ZIP file name, e.g. "N910Fxxx_DevBase_v5.x_supersu.zip")

    Case 3 - do not root device (NOTE: you will get not rooted ROM!)
    (place "noroot" string anywhere in the ZIP file name, e.g. "N910Fxxx_DevBase_v5.x_noroot.zip")

    In DevBase v4.5+ there is a "rescue" option, which may be especially helpful in case of encrypted device if you experienced bootloop caused by e.g. systemless mod/module/xposed stored on /data (without access to /data from TWRP). In case of bootloop just place "rescue" string anywhere in the ZIP file name, e.g. "N910Fxxx_DevBase_v5.x_rescue.zip" and then (re)install the ROM - should help in case of (probably) all possible bootloop reasons. In addition to the normal (re)installation of the ROM (thus restoring the original /system, kernel, modem, etc.) this option will also force "Core Only Mode" in Magisk and will move all SYSTEMLESS DevBase modifications to /data/devbase/system/.backup, before performing bind mounts, so original files will be used.

    In DevBase v4.6+ there is a possibility to force CSC by renaming ZIP file name - this is the only case-sensitive variable which have to be put at the beginning of ZIP file name and must be folloed by "_" (due to the fact that there is a high risk that ZIP file name may contain CSC code accidentally). Example (to force CSC DBT): "DBT_N910FXXU1xxxx_DevBase.zip"

    In DevBase ROM v5.6+ there is "xposed" option which allows you to force Xposed framework installation. It is NOT forced by default - you need to force it manually while installing ROM with Xposed first time, renaming ZIP's file name to e.g. "N910Fxxx_DevBase_v5.x_xposed.zip". Next ROM's updates will detect and apply Xposed profile automatically, unless you wipe /system - then auto detection is not possible.

    Installation:
    CWM / TWRP recovery (KNOX 0x1) - open file using "Install (Zip)" option and confirm operation. If you want to perform "clean install' - perform "wipe data/factory reset" BEFORE flashing Zip! I highly recommend you to update bootloader/modem also to the newest versions available in post #3, to avoid potential bugs/issues.

    Wipe data is NOT required if you are coming from stock ROM or a previous version of my DevBase (if you leave "Keep current CSC" option untouched in /options.prop or if you choose same CSC as you are currently using). In other cases - wipe data is highly recommended!

    I do not recommend using any additional superwipes or formats before install my DevBase (my installer cleans your system well enough!).


    Credits:
    @Chainfire for systemless SuperSU and a lot of inspiration
    @topjohnwu for Magisk, Xposed, another inspiration
    @rovo89 & @wanam for Xposed framework & Xposed Installer app
    @amarullz for Aroma Installer used in older DevBase versions
    @svadev & @_riddle for deodexed tools/binaries used in older DevBase versions


    Hit Thanks button if you like my work. If you really appreciate my work - feel free to buy me a beer :)
    169
    DOWNLOADS

    Download ROM

    >> N910FXXU1DRF1_DevBase_v5.9.zip << (Android 6.0.1, updated Aug-11-2018, more info in post #3455)

    >> Recent ROM versions for SM-N910F <<

    Note:
    Check MD5 sum BEFORE flash (useful TOOL), because flashing damaged or incomplete ZIP files could (soft) brick your phone! Correct MD5 sum is shown on the AndroidFileHost website while downloading.


    Changelog


    v5.9 (starting from N910FXXU1DRF1 DevBase):

    - Changed device detection method to bootloader's prefix (instead of ro.product.*)
    - Improved support for applying custom mods automatically at each ROM's install/update, introduced in v5.6 (added support for etc, fonts, media & usr directories in {storage}/devbase/system)
    - Added support for custom {storage}/devbase/post-installation.sh script

    v5.8 (starting from N910FXXU1DRD1 DevBase):

    - Improved unzip_flash function in the installer to detect properly more flashing errors (e.g. EXT4 partition mismatch)
    - Changed /odm flashing method to file based due to potential /odm partition mismatch (applies to carrier branded treble devices)
    - Minor optimizations/improvements in the installer (this time mainly to improve installation speed)
    - Busybox has been removed from /system/xbin to run properly some banking apps

    v5.7 (not released for N910F):

    - Improved/expanded built-in RMM lock prevention (thanks to @jesec for idea of overriding properties via factory.prop)
    - OEM unlock status will always be displayed correctly in Developer options (to avoid confusion) with stock kernel included in the DevBase ROM

    v5.6 (not released for N910F):

    - Added "App Lock" feature (Settings -> Advanced features)
    - Added Xposed framework as installation option (it is NOT forced by default - you need to force it manually while installing with Xposed first time, e.g. by "xposed" string in ZIP's file name, but next ROM's updates will detect and apply Xposed profile automatically, unless you wipe /system - then auto detection is not possible)
    - Added support for applying custom mods automatically at each ROM's install/update by placing modded apps in {storage}/devbase/system/(priv-)app or placing modded framework files in {storage}/devbase/system/framework (where {storage} may be: /sdcard, /external_sd or /usb-otg)

    v5.5 (not released for N910F):

    - Added support for flashing optional, CSC related partitions ($OMR, $PRELOAD)
    - Added possibility to update recovery (optional, performs update if exists $NAME/images/recovery.img)
    - Return to using only the original XML files in the CSC package (thanks to @fei-ke for omc-decoder)
    - Partition(s) may be wiped only by writing new block's image
    - Minor optimizations / improvements in the installer

    v5.4 (not released for N910F):

    - Big step forward in DevBase ROM customization ability - almost all current ROM features (hidden up to v5.3) have been moved to options.prop (you will be able to easy add new or remove current feature)
    - Return to dm-verity-opt-encrypt boot patcher if necessary (wherever it works well, there are still devices which need "no_verity" function introduced in v5.1)
    - Initial support for forcing (changing) CSC in case of devices with /odm as CSC location
    - Minor optimizations / improvements in the installer

    v5.3 (not released for N910F):

    - Improved algorithm of search & change "ro.security.vaultkeeper.feature" property to 0 (/system & /vendor)

    v5.2 (not released for N910F):

    - Added support for devices with /odm as CSC location
    - Added support for flashing $ODM, $VENDOR, $KEYSTORAGE, $DQMDBG images
    - Added support for custom debloat list and custom CscFeature list in options.prop
    - options.prop file format has been changed to CR/LF (Windows) - more noob-proof solution, user can edit a copy of options.prop file even in Windows Notepad (the installer still supports ANY text format of options.prop file - Win/Unix/MAC)

    v5.1 (not released for N910F):

    - Created new "no_verity" function in the installer, compatible with Samsung's Oreo, based on @Chainfire's patch tool (no-verity-opt-encrypt has been removed). In case of Oreo & Magisk as root solution - "no_verity" function will be used as additional support for patching fstab* (as long as Magisk does not do it correctly)

    v5.0 (not released for N910F):

    - SYSTEMLESS DevBase has been removed due to the fact, that in case of modern devices/firmwares we need to perform many changes physically in /system anyway, so it loses the sense of use here. If you liked it - you can still install it separately from HERE (it does not need to be re-installed after ROM update as it is installed in /data)
    - Added "skipblcp" option to let users skip BL/CP update (additionally it disables auto-reboot when the installer finished work as it is just not necessary then)
    - Added "phydebloat" option to let users choose beetween virtual and physical debloat (to get more space in /system)
    - Other (minor) optimizations & improvements

    v4.6 (starting from N910FXXU1DQL2 DevBase):

    - Initial support for devices with /system/omc as CSC location
    - SYSTEMLESS DevBase updated to v2.0 (see changelog HERE)
    - Added possibility to force CSC by renamig ZIP filename. Due to the fact that trere are many different CSC and it is possible that $ZIPNAME may contain a CSC accidentally - to force CSC you need to put CSC in $ZIPNAME at the beginning and CSC must be followed by "_". Example $ZIPNAME (to force CSC DBT): "DBT_N910FXXU1xxxx_DevBase.zip"
    - Added auto efs-backup during install. Installer will create first backup (efs_backup.img.gz) and recent backup (efs_recent.img.gz). The installer will prefer external storage as default backup location (/external_sd or /usb-otg) due to encryption support. MD5 sum and restore command will be stored in efs_backup.txt or efs_recent.txt file
    - Other (minor) optimizations & improvements, e.g. added more error messages in case of something went wrong during install

    v4.5 (not released for N910F):

    - Added new "rescue" option (readable only as string in ZIP file name due to the fact, that we will need this option rarely). It can be a potentially very helpful option in case of bootloop @ encrypted device, caused by a systemless mod/module/xposed stored on /data (without access to /data from TWRP) - more info in post #1
    - SYSTEMLESS DevBase updated to v1.14 (see changelog HERE)

    v4.4 (not released for N910F):

    - Added new "encrypt" option (readable only as string in ZIP file name due to the fact, that we need to do it only once). Now you can easy encrypt all data in your device, just during the ROM upgrade (without data loss) - unfortunately, it does not work in older devices (like G900F/N910F and older), it is just a new unified installer's feature
    - SYSTEMLESS DevBase updated to v1.13 (see changelog HERE)

    v4.3 (starting from N910FXXU1DQF7 DevBase):

    - "root.supersu" & "root.magisk" variables in the options.prop file have been replaced by one "root" variable (dropped possibility to install both -
    SuperSU & Magisk - due to the fact that Magisk v13+ does not support SuperSU as root solution)
    - SYSTEMLESS DevBase updated to v1.9 v1.10 (see changelog HERE)

    v4.2 (starting from N910FXXU1DQC7 DevBase):

    - Added possibility to add systemlessly NEW apps to /data/devbase/system/(priv-)app (up to 5 apps in "app" & 5 apps in "priv-app"). The only condition is that you need to rename its directories to CustomApp[1...5] (e.g. CustomApp1, CustomApp2, etc..). These apps will remain even if you flash a new DevBase as corresponding dummy directories will exist in future DevBase updates
    - In case of DevBase update or re-installation - installer will not remove your custom entries in /data/devbase/system/build.prop and in *.xml files placed in /data/devbase/system/csc
    - SYSTEMLESS DevBase updated to v1.6 v1.8 (see changelog HERE)

    v4.1 (starting from N910FXXS1DQC3 DevBase):

    - Added full Magisk support - MagiskSU is now default root solution (ROM should pass SafetyNet with Magisk Hide enabled in settings)
    - Since systemless Xposed does not need to be re-installed every new DevBase I will release (in case of using the same root solution) - it makes no sense to keep it anymore as installation option
    - SYSTEMLESS DevBase updated to v1.5 (see changelog HERE)

    v4.0 (starting from N910FXXS1DQC3 DevBase):

    - A huge step in the systemless direction! DevBase installer now installs pure odexed stock ROM (just slightly debloated), then systemless SuperSU, then systemless DevBase, then (optionally) systemless Xposed
    - All Knox related applications are available again (except SecurityLogAgent, to prevent annoying security alerts)
    - Fake KNOX 0x0 status (check it in PhoneINFO app) - most of Knox related apps should work again, like in case of untouched KNOX flag
    - All mods known from previous DevBase versions (up to v3.x) now are applied systemlessly - all modified files (including modded apps) are placed in /data/devbase/system instead of physical /system partition. Mods section (#4) has been updated to install mods to /data/devbase/system/(priv-)app if systemless DevBase has been detected (otherwise will be installed as usual, to /system)
    - Deodex on-the-fly feature has been removed. If you really need deodexed ROM - you can install someone else's deodexed ROM, then systemless DevBase as an overlay
    - Init.d support has been removed as it is deprecated (use su.d instead)

    v3.8 (starting from N910FXXU1DPH2 DevBase):

    - Added hexpatch to root_from function (support for SM-N930x, thanks to @Chainfire)

    v3.7 (starting from N910FXXS1DPF3 DevBase):

    - Another major improvement/bugfix in deodex_from function (full support for 64 bit OS)

    v3.6 (starting from N910FXXU1DPE1 DevBase):

    - Major improvement/bugfix in deodex_from function (added "-g" switch to zip command - finally no issues in case of deodexed Android 6.0.1)

    v3.5 (starting from N910FXXU1DPE1 DevBase):

    - Improved root_from function (Android 5.1+) - added "setprop selinux.reload_policy 1" removal from init.rc (thanks to @Chainfire)
    - Fixed bug in new alghoritm for checking whether stock recovery should be installed or not (introduced in v3.4)
    - Added new functionality - installer will store a copy of patched stock kernel in /data for those who flashed custom kernel but for some reasons want to revert to the stock kernel (Android 5.1+)

    v3.4 (starting from N910FXXU1DPE1 DevBase):

    - Completely changed alghoritm for checking whether stock recovery should be installed or not (it applies to FlashFire users). Now it depends on previously used recovery (instead of checking KNOX flag which was not 100% reliable across devices/recoveries)

    v3.32 (not released for N910F):

    - Updated set_csc, kcsc_backup, kcsc_restore functions to support more devices
    - Updated partition detection algorithm to support more devices
    - Fixed path to options.prop file placed in external sdcard in case of updating Marshmallow while using FlashFire
    - Minor intaller's optimizations/bugfixes

    v3.31 (starting from N910FXXU1DPD3 DevBase):

    - Potential fix for reported problems with root (rare cases)

    v3.3 (not released for N910F):

    - Improved method of reading options from ZIP file name (previous was directory/path sensitive also)
    - Added support to mod_csc function for other than UNIX text format (it's a little ridiculous, but in case of some CSCs - original /system/csc/other.xml file has Windows or MAC text format!)
    - Initial support for options.prop file in CRLF text format (DOS/Windows)

    v3.21 (starting from N910FXXS1CPD1 DevBase):

    - Fixed installer's issue if there is a [space] present in ZIP filename or a directory containing DevBase (see #1728)

    v3.2 (not released for N910F):

    - Another improvements in add_initd function (details - see v1.3)
    - Improvements in set_perm, set_perm_rec and root_from functions (recovery-independent structure)
    - Improvements in deodex_from function related to Android MM
    - New get_con function in the main sh script (useful for devs)
    - BusyBox updated to 1.22.1 (bionic) [no, this is NOT a mistake!]
    - Minor intaller's optimizations/bugfixes

    v3.1 (starting from N910FXXS1CPC5 DevBase):

    - Significantly improved "add_initd" function in the update-binary shell script. Added support for (probably) all available Samsung's platforms (e.g. Exynos) and all available firmwares (based on Android 4.4+)
    - In case of installation with Xposed framework installer checks if Xposed Installer app is present in /data/app and installs it automatically if necessary
    - Minor intaller's optimizations/improvements

    v3.0 (starting from N910FXXS1CPC1 DevBase):

    - Entire installer has been re-written from the scratch! All "magic" moved to update-binary which is a shell script. It opens up new possibilities never possible before!
    - Introduced new customization method - you can change most frequently switched options just by renaming installer's ZIP file name. Currently supported "strings" in the file name:
    "noroot" (means "do not root"), "deodex", "xposed", "initd" (no other comments are required, I hope..)
    - Starting from v3.0 init.d support is disabled by default

    v2.3 (not released for N910F):

    - Added option to install suitable Xposed framework in one step while installing DevBase (for maximum comfort). There is a new xframework.sh script - device independent structure and full Android 5.1+/6.0+ support. Backup method is compatible with well known Xposed uninstallers (tested with @wanam's)

    v2.2 (not released for N910F):

    - Significantly improved root_supersu.sh script - device independent structure and full Android 5.1+/6.0+ suport including on the fly kernel/ramdisk/sepolicy patching if necessary. SU binaries are still copied to /system as it is the best choice in case of custom ROMs
    - Changed order of performed operations in the updater-script due to new root_supersu.sh script advantages
    - Installer wipes partitions designated for RAW content (e.g. kernel / recovery image) before writing to them
    - Minor additions in dex_injector.sh script related to Android 6.0+

    v2.11 (not released for N910F):

    - Fixed some minor installer's issues ("set_perm" function in set_csc.sh did not work correctly while using wildcards in the path (it was exclusively FlashFire issue! no problem with TWRP / CWM). Fortunately - only /system/etc/csc_*.txt were really "affected" - it didn't cause real issues as these files are empty)

    v2.1 (starting from N910FXXU1POK1 DevBase):

    - As some people felt a bit disapointed / worried about DevBase v2.0 ROM file size - finally I have decided to debloat stock system.img (in same way as in v1.x => "Safe De-Bloat") and remove option to install all available bloatware. ROM file size has been reduced from about ~2GB to about ~1.6GB. Note for Devs / Chefs: Do not use Windows tools - you need Linux with "selinux" package installed (to handle SELinux contexts) to mount (rw) system.img safely. If you want to add / change any system content this way - remember about proper chown/chmod/chcon
    - Added device check during install as flashing directly to EMMC block is potentially more risky for "other" devices. Installer will abort installation if device is not N910F (trlte(xx)). If you want to try this ROM on other N4 devices - you need to remove this check manually from updater-script (it is more conscious procedure)

    v2.0 (starting from N910FXXS1COK2 DevBase):

    - Completely new concept of ROM development that makes it easy to build most tuned and nuanced custom ROMs. No more arduous manual analysis or (often) invalid permissions / SELinux contexts taken from a kitchen. The main idea is to flash original, stock /system image as EMMC block (in same way as PC Odin does) instead of extracting ZIP's contents to mounted partition, then setting permissions, then creating symlinks, etc. However, it requires more knowledge related to sh scripts as ALL necessary changes need to be done on the fly, while installing (e.g. by injecting modified classes.dex and/or modified images/xmls to /res/../* into an apk). There are no limits, all depends on your creativity!
    - One common ZIP installer for Odexed and Deodexed ROM - you can control it by new "deodexed.rom" entry in options.prop (there is new dex_injector.sh script which can deodex on the fly the whole ROM using previously processed classes.dex files)
    - ROM is still Safe De-Bloated by default but removing bloatware during install is not mandatory - you can control it by new "safe.debloat" entry in options.prop (there is new protection included to avoid overfilling /system in case of large size of additional MODs and/or large multi CSC package)
    - Major improvements in csc_detect.sh script - it is able to detect previous CSC even in cases of flashing over e.g. CM based ROM and/or previously formatted system partition. However, if detected CSC is NOT included in my multi CSC package, in both mentioned cases it is still not possible to keep detected CSC (as there is no CSC related content to backup / restore)
    - Improvements in all sh scripts - additional "metadata" entries in updater-script (related to processed contents) are not required
    - Improvements in root_supersu.sh script - it is suitable for 32 and 64 bit OS
    - Added full zip support from the command line

    v1.x (initial version, further improvements, up to N910FXXU1COJ3 DevBase):

    - Built without using a kitchen. All set_metadata* / symlink entries are result of arduous manual analysis. For more info about the method - see hidden content for Devs / Chefs in THIS thread.
    - New customization method without using Aroma (options.prop)
    - Many useful scripts for easy installation: CSC applying/autodetection, backup/restore of security files, backup/restore of existing CSC package, XML modding on the fly, root, init.d support
    - Many small changes and improvements "in the meantime" which I simply do not remember...
    - Safe De-Bloated (see post #1 for details)
    155
    DOWNLOADS

    Useful PC Odin flashable files

    >> Recent bootloader versions for SM-N910F <<

    >> Recent modem versions for SM-N910F <<

    >> Recent kernel versions for SM-N910F <<
    (suitable kernel is already included in my ROM)

    Note:
    To update bootloader and/or modem you have to power off the phone, wait min 10 seconds and then go directly to Download Mode using Vol_down+Home+Power key combination. Load bootloader using BL button and/or modem using CP button in PC Odin. Push "Start".
    146
    DOWNLOADS

    Optional MODs

    I put some of my favorite MOD's - especially for normal users who want to use my rom - as it is. These modifications I have done personally using (bak)smali tools - these are NOT "borrowed" from other custom rom, nor from someone else's thread (thanks to @majdinj & @tdunham for their excellent modding guides). All files are TWRP / CWM / FlashFire flashable ZIPs:

    1. Modified Camera app:
    - Full functionality of the Camera app in low battery

    2. Modified Phone app:
    - Disabled increasing ringtone

    3. Modified Messages app:
    - Disabled SMS to MMS auto-converting
    - Increased SMS/MMS recipient limit (10 -> 1000)
    - Increased SMS/MMS hour limit (100 -> 1000)
    - Disabled SMS / MMS log history in call logs
    - Disabled SMS delivery notifications (*)

    (*) If you long press a message you can still check if the message has been delivered or not, we do not need to see and hear notifications for every sms. It's annoying to me!

    >> MODs for N910F (Marshmallow) <<

    >> MODs for N910F (Lollipop) <<

    In case of MODs installed to /system - you can restore original apk using backup stored in /data/backup/alexndr
    36
    I present you DevBase v3.7 (see changelog in post #2) based on N910FXXS1DPG2 (changelist 7931264) :cool:

    Just to remind - there are 2 customization methods of installation options (these steps are not mandatory, you can skip them and install the ROM with default settings -> odexed / rooted / CscFeature MOD):

    1. Place modified options.prop file in the root directory of internal emulated scdard (/data/media/0) or extSdCard (recommended if you plan to format internal emulated sdcard) and then start the installation. You can find reference file inside the ZIP installer. To view example options.prop file (with explanations) - see hidden content:

    Code:
    #
    # DevBase by ALEXNDR (_alexndr @ XDA)
    #
    # Configuration file to allow customize the installation.
    #
    # File inside the ZIP installer is just for reference - please do not modify it!
    # If you want to change some options listed below - copy this file, then edit it using
    # e.g. Notepad++ (do not use Windows Notepad!), then place your modified options.prop file
    # in the root directory of internal emulated scdard (/data/media/0) or in the root directory
    # of extSdCard (recommended if you plan to format internal emulated sdcard) and then start
    # the installation.
    #
    # TIP: You do not need to repeat this step every next update I will release. As long as your
    # customized options.prop file is present in the (ext)SdCard - future DevBase installers will
    # "read in your mind" that you want to install with such options again.
    #
    # I agree to use any part of my work to create more advanced custom ROM,
    # but it would be great if you add me to the credits
    
    # Enable root access and install the SuperSU app (thanks to @Chainfire)
    # Allowed values: 1 - enable root access, 0 - do not enable root access
    
    root.supersu=1
    
    # Deodex ROM during install (change this value only if you really need it!)
    # Allowed values: 1 - deodex ROM, 0 - leave original (odexed) framework & apps
    
    deodexed.rom=0
    
    # Install suitable Xposed framework. Allowed values:
    # 1 - install Xposed framework, 0 - do not install Xposed framework
    
    xposed.framework=0
    
    # Enable init.d support while running stock kernel. Allowed values:
    # 1 - enable init.d support, 0 - do not enable init.d support
    
    init.d.support=0
    
    # Enable some hidden features (e.g. call recording) by adding <CscFeature> entries.
    # Allowed values: 1 - enable hidden features, 0 - do not enable hidden features
    
    csc.feature.mod=1
    
    # Take care of security-related system files if there are any (SuperSU PIN, Avast Anti-Thelf in root mode).
    # Allowed values: 1 - make a backup and then restore at the end of installation, 0 - skip backup
    
    security.files=1
    
    # Force overwrite your current recovery by stock recovery matched to the ROM version
    # (by default it is overwritten only if custom recovery has not been detected).
    # Allowed values: 1 - force overwrite current recovery, 0 - check previously used recovery
    
    stock.recovery=0
    
    # CSC Selection. Allowed values:
    # KCSC - Keep current CSC, recommended in most cases (automatic selection or copy your current CSC contents).
    # You can force the use of natively supported CSC by typing (use UPPERCASE!): ATO, AUT, BAL, BTU, CYO, DBT,
    # ETL, EUR, ILO, ITV, LUX, MEO, MET, NEE, ORX, PHE, PHN, ROM, SEE, SIO, TPD, TPH, XEF, XEH, XEO
    
    CSC=KCSC
    2. In the DevBase v3.x I introduced possibility to change most frequently switched options (usually controlled by options.prop) by changing ZIP file name - more info in hidden content below:

    Do you need init.d and Xposed? include "initd" and "xposed" strings (not case sensitive) anywhere in the name and then run the installer, e.g. (all below forms are valid):

    - N910FXXS1DPG2_DevBase_v3.7_initd_xposed.zip
    - N910FXXS1DPG2_DevBase_v3.7_INITd.XpOsEd.zip
    - N910FXXS1DPG2_XPOSED_DevBase_v3.7_initd.zip
    - ... and even extremely shortened 'xposedinitd.zip' will work, but I do not recommend it (you will probably forget ZIP's purpose in a few days) ;)

    Do you need deodexed? (all below forms are valid):
    - N910FXXS1DPG2_DevBase_v3.7_deodex.zip
    - N910FXXS1DPG2_DevBase_v3.7_deodexed.zip (as "deodex" string is also present)
    - N910FXXS1DPG2_DevBaseDEODEX_v3.7.zip, etc...

    List of currently supported "options" in the file name:
    "noroot" (means "do not root"), "deodex", "xposed", "initd" (no other comments are required, I hope...)

    Enjoy :cowboy:

    ROM:

    >> N910FXXS1DPG2_DevBase_v3.7.zip <<

    Bootloader & modem:

    >> BL_N910FXXS1DPG2.tar.md5 << (update is mandatory!)
    >> CP_N910FXXU1DPD1.tar.md5 << (recommended, originally included in N910FXXS1DPG2)
    >> CP_N910FXXU1DPE1.tar.md5 << (optional, tested with N910FXXS1DPG2, no issues)
    >> CP_N910FXXU1DPE3.tar.md5 << (optional, tested with N910FXXS1DPG2, no issues)
    >> CP_N910FXXU1DPF1.tar.md5 << (optional, tested with N910FXXS1DPG2, no issues)
    >> CP_N910FXXU1DPG1.tar.md5 << (optional, tested with N910FXXS1DPG2, no issues)


    No wipe data required if you are coming from stock ROM or a previous version of my DevBase :)