Experimental system updater.

Discussion in '3DS - Homebrew Development and Emulators' started by dubbz82, Mar 8, 2016.

  1. dubbz82
    OP

    dubbz82 GBAtemp Advanced Maniac

    Member
    1,500
    812
    Feb 2, 2014
    United States
    https://github.com/paulguy/sysUpdater2 This is -UNTESTED-. If someone would be kind enough to test this with a hardmod (there's a line that's intentionally commented out that will need to be uncommented for this to run, this is in effort to keep people that shouldn't be running this out for the moment), it would be more than appreciated. It theoretically should work on both n3ds and o3ds, and theoretically should also be a little bit more stable than the other alternatives out there.

    EDIT: this is memchunkhax2 based (at least for the moment, may or may not ever support the newly discovered svc backdoor). The idea behind this is to improve upon the stability, particularly with n3ds downgrades coming from 10.3 and lower.

    EDIT 2: On second thought, if anyone wants to take a swing running it with that exploit (it'd be up to you to actually implement it though...), then by all means...once again, hardmod only as this is entirely untested.

    EDIT 3: First binary release is up, if anyone's willing to take the plunge and has a contingency plan in case anything happens to go wrong: https://github.com/paulguy/sysUpdater2/releases/tag/0.1
     
    Last edited by dubbz82, Mar 9, 2016


  2. VinsCool

    VinsCool Delusional

    Member
    GBAtemp Patron
    VinsCool is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    11,690
    27,702
    Jan 7, 2014
    Canada
    End of Time
    It begins!
     
  3. dubbz82
    OP

    dubbz82 GBAtemp Advanced Maniac

    Member
    1,500
    812
    Feb 2, 2014
    United States
    To be clear this is NOT for the newly discovered svc backdoor, but rather for the "old" memchunkhax2 exploit.
     
  4. gameking66

    gameking66 GBAtemp Advanced Fan

    Member
    576
    181
    Mar 9, 2010
    United States
    Does this install NATIVE_FIRM nearly last like sysUpdater or somewhere in the middle like safesysupdater (which is exactly what caused safesys to be ironically more dangerous than sysupdater)?
     
  5. paulguy

    paulguy Member

    Newcomer
    22
    16
    Jul 1, 2011
    United States
    It installs firmware files first, though it doesn't differentiate CTR, TWL or AGB FIRM but it's third installed at worst. Then it'll try to install modules, then enough other stuff to be able to get home menu and internet browser. Info on that is in sysInfo.c. The information on 3dbrew.org was used to determine the order in which stuff is read, but that might be outdated or inaccurate or just miss some things so it might not help much. If anyone has some pointers, they would be appreciated. Optimally, any bugs or improvements should be brought up on the github issue tracker, as I'll be much more likely to check that than this thread.
     
    Last edited by paulguy, Mar 8, 2016
  6. gameking66

    gameking66 GBAtemp Advanced Fan

    Member
    576
    181
    Mar 9, 2010
    United States
    That sounds like a TERRIBLE idea.

    You want firmware files installed LAST, because a partial brick can be recovered from as long as NATIVE_FIRM isn't what it's failed on, but it's MUCH more likely to brick if it's one of the first files installed.
     
  7. dubbz82
    OP

    dubbz82 GBAtemp Advanced Maniac

    Member
    1,500
    812
    Feb 2, 2014
    United States

    Being a person that's had firsthand experience with frankenfirmware and recovering thereof, I can tell you that when the current downgraders fail out, it's after several cia's have successfully installed, so having them first actually makes more sense, IMO. That being said, the idea is to improve upon the downgrade process so ideally it DOESN'T crap out.
     
  8. gameking66

    gameking66 GBAtemp Advanced Fan

    Member
    576
    181
    Mar 9, 2010
    United States
    But when it DOES, the majority of people have reported successfully recover when NATIVE_FIRM and the likes are installed LAST, not first. As long as the RISK of failing is there, people will choose to go with installing it last.
     
  9. ArmoredGuns1

    ArmoredGuns1 GBAtemp Regular

    Member
    216
    38
    Sep 27, 2007
    United States
    The current version available of Sysupdater is perfect and guaranteed as long as the user is downgrading form a 10.2 NATIVE_FIRM and doesn't have a crappy SD card. So why fixing what ain't broken?
     
  10. dubbz82
    OP

    dubbz82 GBAtemp Advanced Maniac

    Member
    1,500
    812
    Feb 2, 2014
    United States
    I'd rather deal with recovering from a broken system downgrade of my copy of face raiders than to have a system with no working exploits at all (or only cart based/memchunkhax2 based) exploits functional, but hey, that's just me.

    It's neither perfect nor guaranteed. Source: Basically any n3ds that's sitting on frankenfirmware out there as of right now (hint, it's significantly more than you've been lead to believe)
     
    Last edited by dubbz82, Mar 8, 2016
  11. cpasjuste

    cpasjuste GBAtemp Fan

    Member
    440
    640
    Aug 27, 2015
    France
    Well, like some other people your wrong. SafeSys does install nfirm last.
     
  12. ArmoredGuns1

    ArmoredGuns1 GBAtemp Regular

    Member
    216
    38
    Sep 27, 2007
    United States
    That's because:

    1) Most likely their update packs don't have all the required 106 files (there are only 102 files in most packs and 104 in the iso site)
    2) They downgrade from a firmware version lower than 10.2.
    3) They have a crappy SD card.
     
  13. paulguy

    paulguy Member

    Newcomer
    22
    16
    Jul 1, 2011
    United States
    In the end, it's all just poorly documented superstitions at best. Hard to say what depends on what version of what given the information available. If someone can give me proven information on exactly what is picky about various versions of packages, I'd be happy to know, but otherwise, there's nothing for usable documentation on any of that stuff.

    It appears safesysupdater sorts in reverse order as mine, as far as categories goes, but overall, since the chance of failure is pretty random, either order has a similar effect to screw things up. It's more important that the important stuff be kind "cluimped together", then specifically what order they're installed in, unless it can be specifically proven that an older NATIVE_FIRM would be OK with newer services or a newer home menu would be OK with older services. So far it seems, as long as you can get the important things done as close together as possible, should result in a more reliable install, and this is assuming mine has similar problems with crashing. We'd have to see how tests turn out.
     
  14. ArmoredGuns1

    ArmoredGuns1 GBAtemp Regular

    Member
    216
    38
    Sep 27, 2007
    United States
    There is proven documentation. Have a look at here:
    https://gbatemp.net/threads/potential-reason-for-random-errors-on-n3ds-after-downgrading.410075/
     
  15. paulguy

    paulguy Member

    Newcomer
    22
    16
    Jul 1, 2011
    United States
    That just says which titles need to be present that you can't delete, not really indicative of what specifically needs what.
     
  16. dubbz82
    OP

    dubbz82 GBAtemp Advanced Maniac

    Member
    1,500
    812
    Feb 2, 2014
    United States

    1.okay. Valid point maybe. Although that certainly doesn't explain why the installer craps out mid way through sometimes.

    2.there's been numerous confirmations of successful downgrades on firmware lower than 10.3. There's also been random failures reported from 10.3 downgrades. Care to explain those?

    3. Oh? Such as the (very much real) class 10 card that I purchased from a well known retailer?

    The bricks/frankenfirmware are not as systematic as you might think.
     
    Last edited by dubbz82, Mar 8, 2016
  17. gameking66

    gameking66 GBAtemp Advanced Fan

    Member
    576
    181
    Mar 9, 2010
    United States
    Unless this was changed very recently this is simply untrue.
     
  18. cooroxd
    This message by cooroxd has been removed from public view by Sicklyboy, Mar 14, 2016, Reason: Pointless.
    Mar 8, 2016
  19. paulguy

    paulguy Member

    Newcomer
    22
    16
    Jul 1, 2011
    United States
    I know this is a terrible, awful idea, but to make it easier for people to try this, I made a release with binaries: https://github.com/paulguy/sysUpdater2/releases/tag/0.1

    If you want to test some of the functionality, stick with the DISARMED edition, but if you really want to try it and you know the risks and have some kind of disaster plan, then use the ARMED edition.
     
    Last edited by paulguy, Mar 9, 2016
    dubbz82 likes this.
  20. paulguy

    paulguy Member

    Newcomer
    22
    16
    Jul 1, 2011
    United States
    fixed a potential problem, or at best decreased the amount of potential points of failure.

    https://github.com/paulguy/sysUpdater2/releases/tag/0.2

    Currently trying to get the CIA edition to work. If someone can give me a hint, that'd be great. It's failing at FSUSER_OpenArchive() for the SD card. I don't seem to be doing anything different than safesyusupdater is doing, though I haven't verified that to even work with its own CIA edition.
     
    Last edited by paulguy, Mar 9, 2016
  21. TheDuckMan64

    TheDuckMan64 Chicken nugget.

    Member
    355
    48
    Oct 9, 2015
    nvm that was stupid.