Hacking [RELEASE]Corbenik CFW Updater: RE

gnmmarechal

Well-Known Member
OP
Member
GBAtemp Patron
Joined
Jul 13, 2014
Messages
6,039
Trophies
2
Age
25
Location
https://gs2012.xyz
Website
gs2012.xyz
XP
5,991
Country
Portugal
banner.png


Complete REwrite of the original Corbenik and Skeith CFW Updaters. The original projects can be found here:https://github.com/gnmmarechal/corbenik-updater
https://github.com/gnmmarechal/skeith-updater
http://gs2012.xyz/3ds/corbenikupdater
This project aims to replace both of them by writing it from scratch, as opposed to doing patchwork jobs like I was doing before to try and merge a tool that wasn't designed to be merged.

As such, the code of this app is much cleaner than before. Though a lot of the code (like the updater function) is the exact same or very similar to the original, this is slightly better organised.

What is it?

Corbenik CFW Updater: RE is a tool designed to install or update Corbenik CFW (https://github.com/chaoskagami/corbenik) and its nightly release Skeith CFW (https://github.com/chaoskagami/skeith). It is written in Lua and runs on Lua Player Plus 3DS by Rinnegatamante (https://github.com/Rinnegatamante/lpp-3ds and http://rinnegatamante.it). Its official website is GS2012 Homebrew (http://gs2012.xyz), more specifically its own page (http://gs2012.xyz/3ds/corbenikupdaterre)

Features:

Corbenik CFW Updater: RE is capable of updating both Corbenik CFW and Skeith CFW. It detects for the existence of a proper installation of Corbenik CFW or Skeith. If one or both aren't found, it'll show the option to install that (those) CFW(s). You can set a custom payload path for both Corbenik and Skeith ARM9LoaderHax payloads by writing said path to the config files.

Ex. for the path

SDMC:/somedir/anotherdir/arm9payload.bin

you can do:

For Corbenik: Create/Edit the file

/corbenik-updater-re/settings/corbenik.cfg

For Skeith: Create/Edit the file

/corbenik-updater-re/settings/skeith.cfg

Enter the path to the payload in the file like this:

/somedir/anotherdir/arm9payload.bin

Corbenik CFW Updater: RE directly supports the /arm9loaderhax_si.bin path as standard if you use that as well, so you won't need to set it yourself with a config file. Corbenik CFW Updater: RE will always fetch the latest updater script from my server, so you can expect few user-side updates. As for updates that require a new CIA file to be installed (like an update to the Lua Player Plus binary), they'll be automatically installed if needed. You'll need to exit and restart the app for this to take effect though.

This app can do two kinds of updates (for either Skeith of Corbenik). Dirty and Clean updates. Clean updates will erase your configuration and cache (you'll have to reconfigure Corbenik/Skeith upon boot). Dirty updates will keep your configuration and cache. Regardless of you choosing dirty or clean updates, any splash screen/wallpaper you set (top.bin and bottom.bin) will be kept.

This app requires you to have a Corbenik/Skeith installation compatible with the new Unix-like directory structure. The old updater supported directly migrating data from an older installation. As that tool is now deprecated, and most Corbenik/Skeith users are on a recent-enough version, I didn't include the migration function in this updater. I will release an auto-migration tool separate of this, though, to save you the work while keeping this tool free from unnecessary code.

This app can also do fresh installs, in which case you needn't have a Corbenik or Skeith installation already. Those options will show up if you don't have Corbenik, Skeith, or both, installed.

This app supports BGMs. One of the releases includes a BGM (and you can set a custom BGM by placing it at /corbenik-updater-re/resources/bgm.wav on both releases), to listen to it you need a DSP dump (you can use the DSP dumper by Rinnegatamante found at http://rinnegatamante.it). You also need to change the setting for the BGM to play. You can do this by either creating a new file at /corbenik-updater-re/settings/usebgm or by hitting SELECT on the main menu and exiting/entering the app to apply the settings.

scr.jpg

Usage:

1 - Launch the updater. 2 - Select whether you want Dirty or Clean update mode by hitting R. 3 - Press A to update Corbenik or X to update Skeith. 4 - Press A to reboot or B to exit. 5 - ????? 6 - Profit

@Rinnegatamante - for Lua Player Plus 3DS and help with Lua programming.
@chaoskagami - for Corbenik/Skeith CFW and for telling me before releasing updates that would break my updater.
@Crystal the Glaceon - for the help with testing the updaters, especially the original ones.

Download:

http://gs2012.xyz/3ds/corbenikupdaterre
 
Last edited by gnmmarechal,

gnmmarechal

Well-Known Member
OP
Member
GBAtemp Patron
Joined
Jul 13, 2014
Messages
6,039
Trophies
2
Age
25
Location
https://gs2012.xyz
Website
gs2012.xyz
XP
5,991
Country
Portugal
Giving another test!
You should also remove Corbenik Updater from your CFW thread and replace it with this one, as the other is now officially discontinued.

Sent from my Motorola DynaTAC 8000x using Tapatalk
 

The Catboy

GBAtemp Official Catboy™: Boywife
Member
Joined
Sep 13, 2009
Messages
27,948
Trophies
4
Location
Making a non-binary fuss
XP
39,342
Country
Antarctica
You should also remove Corbenik Updater from your CFW thread and replace it with this one, as the other is now officially discontinued.

Sent from my Motorola DynaTAC 8000x using Tapatalk
I think there is an error in the config files because it just deletes them and doesn't set to the custom paths.
 

gnmmarechal

Well-Known Member
OP
Member
GBAtemp Patron
Joined
Jul 13, 2014
Messages
6,039
Trophies
2
Age
25
Location
https://gs2012.xyz
Website
gs2012.xyz
XP
5,991
Country
Portugal
I think there is an error in the config files because it just deletes them and doesn't set to the custom paths.
Huh, will check it out and fix asap.

Sent from my Motorola DynaTAC 8000x using Tapatalk
 

gnmmarechal

Well-Known Member
OP
Member
GBAtemp Patron
Joined
Jul 13, 2014
Messages
6,039
Trophies
2
Age
25
Location
https://gs2012.xyz
Website
gs2012.xyz
XP
5,991
Country
Portugal
I think there is an error in the config files because it just deletes them and doesn't set to the custom paths.
I reimplemented the function in the devmode script, and it works for me. Make sure the file actually exists. If it doesn't, the Updater will remove the config and use default values.

Sent from my Motorola DynaTAC 8000x using Tapatalk
 

The Catboy

GBAtemp Official Catboy™: Boywife
Member
Joined
Sep 13, 2009
Messages
27,948
Trophies
4
Location
Making a non-binary fuss
XP
39,342
Country
Antarctica
I reimplemented the function in the devmode script, and it works for me. Make sure the file actually exists. If it doesn't, the Updater will remove the config and use default values.

Sent from my Motorola DynaTAC 8000x using Tapatalk
I am still getting crashes when trying to update the stable with a custom path and still deleting the "corbenik.cfg" and "skeith.cfg"
 
Last edited by The Catboy,

gnmmarechal

Well-Known Member
OP
Member
GBAtemp Patron
Joined
Jul 13, 2014
Messages
6,039
Trophies
2
Age
25
Location
https://gs2012.xyz
Website
gs2012.xyz
XP
5,991
Country
Portugal
I am still getting crashes when trying to update the stable with a custom path and still deleting the "corbenik.cfg" and "skeith.cfg"
Huh. I'll check that out when I get home.

Sent from my Motorola DynaTAC 8000x using Tapatalk
 

gnmmarechal

Well-Known Member
OP
Member
GBAtemp Patron
Joined
Jul 13, 2014
Messages
6,039
Trophies
2
Age
25
Location
https://gs2012.xyz
Website
gs2012.xyz
XP
5,991
Country
Portugal
I am still getting crashes when trying to update the stable with a custom path and still deleting the "corbenik.cfg" and "skeith.cfg"
Huh. I'll check that out when I get home.

Sent from my Motorola DynaTAC 8000x using Tapatalk
 

gnmmarechal

Well-Known Member
OP
Member
GBAtemp Patron
Joined
Jul 13, 2014
Messages
6,039
Trophies
2
Age
25
Location
https://gs2012.xyz
Website
gs2012.xyz
XP
5,991
Country
Portugal
Last edited by gnmmarechal,

gnmmarechal

Well-Known Member
OP
Member
GBAtemp Patron
Joined
Jul 13, 2014
Messages
6,039
Trophies
2
Age
25
Location
https://gs2012.xyz
Website
gs2012.xyz
XP
5,991
Country
Portugal
I am still getting crashes when trying to update the stable with a custom path and still deleting the "corbenik.cfg" and "skeith.cfg"
I'm still on the train, so I don't have a reliable connection, but I can't find issues with the code tbh. That and the fact that it works fine for me (at least it reads config properly as I've tested printing the path to the screen) is confusing me a lot. I haven't attempted to update with a custom path though. Where does it crash?
It's confusing as it should be the same code as the previous implementation which was in Corbenik CFW Updater originally, that did create a config file if the payload was arm9loaderhax_si, so I can say it worked then (as I used that payload path). If it deletes the config file, it means it can't find the file the config points to.
What did you write in the config? Does the file exist? Are you running devmode? Ill be releasing another CIA shortly as well, that will be an opportunity to test out the self updater. The new CIA simply adds a value to check if running a dev or stable script and if dev, adds a -D to the version string.

Sent from my Motorola DynaTAC 8000x using Tapatalk
 

gnmmarechal

Well-Known Member
OP
Member
GBAtemp Patron
Joined
Jul 13, 2014
Messages
6,039
Trophies
2
Age
25
Location
https://gs2012.xyz
Website
gs2012.xyz
XP
5,991
Country
Portugal
All right, seems the auto CIA Updater has some issues (or it might be my crap internet). As such, and because CORE script/Binary (aka CIA script) updates won't be frequent, I'm removing the auto updater until I fix it. This only affects the devmode update anyway. @Crystal the Glaceon you can get the latest CIA manually at
http://gs2012.xyz/3ds/corbenikupdaterre/update.cia or updateBGM.cia depending on which you use.


Sent from my Motorola DynaTAC 8000x using Tapatalk
 

gnmmarechal

Well-Known Member
OP
Member
GBAtemp Patron
Joined
Jul 13, 2014
Messages
6,039
Trophies
2
Age
25
Location
https://gs2012.xyz
Website
gs2012.xyz
XP
5,991
Country
Portugal
Updates from devmode script will be merged to the release script.


This is an update of both CORE and CURE.

As I've ran into issues with the auto-updater, I'm disabling it for now, and replacing it with an error call that makes it impossible to boot the app without updating.

As such, CORE (aka the CIA) will have to be updated manually (or though FBI/TitleDB or Homebr3w anyway).

CURE update brings minor bugfixes, fixes to minor graphical glitches and a fresh CFW installer. If no compatible CFW is detected, you'll be given an option to auto-install Corbenik/Skeith.

You can expect this update tomorrow.
 

gnmmarechal

Well-Known Member
OP
Member
GBAtemp Patron
Joined
Jul 13, 2014
Messages
6,039
Trophies
2
Age
25
Location
https://gs2012.xyz
Website
gs2012.xyz
XP
5,991
Country
Portugal
Good news! I've managed to fix all issues with the new feature (fresh install).

This means you can expect an update to come soon. Don't forget, I'll provide a new CIA build of the CORE portion of the updater.


I'll only need a few people to test it and confirm it to work fine as well!


@Crystal the Glaceon could you give it a shot? Don't forget to use devmode if you do. Thank you!
 

The Catboy

GBAtemp Official Catboy™: Boywife
Member
Joined
Sep 13, 2009
Messages
27,948
Trophies
4
Location
Making a non-binary fuss
XP
39,342
Country
Antarctica
Good news! I've managed to fix all issues with the new feature (fresh install).

This means you can expect an update to come soon. Don't forget, I'll provide a new CIA build of the CORE portion of the updater.


I'll only need a few people to test it and confirm it to work fine as well!


@Crystal the Glaceon could you give it a shot? Don't forget to use devmode if you do. Thank you!
Where is it? I can't seem to find it?
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    SylverReZ @ SylverReZ: @OctoAori20, Thank you. Hope you're in good spirits today like I am. :)