Giter Site home page Giter Site logo

gnmmarechal / corbenik-updater-re Goto Github PK

View Code? Open in Web Editor NEW
3.0 1.0 0.0 26.2 MB

REwrite of the Corbenik/Skeith CFW Updater.

License: GNU General Public License v3.0

Lua 79.44% Batchfile 12.56% PHP 1.55% HTML 6.46%
cfw corbenik-cfw-updater lua-player cia

corbenik-updater-re's Introduction

Corbenik CFW Updater: RE

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 organized.

##What is this?

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.

##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

##Special Thanks:

*@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 @GBATemp - for the help with testing the updaters, especially the original ones.

corbenik-updater-re's People

Contributors

gnmmarechal avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

corbenik-updater-re's Issues

Add hash checking

Adding hash checking would be good to check if the downloaded script is corrupted. It would be useful to check the script before running it from the bootstrap script.

Make a Makefile

Just like I did for StarUpdater-UN. Makefiles are much more convenient, not to mention they work on other OSes without Wine.

Config file gets deleted

I can't reproduce.

Both users who got it have ShadowNAND, but I seem to be unable to pinpoint the error.

1.0.1 can't auto-update properly

As such, given that I had issues with it, I'll disable the auto-update and simply make it show a screen that tells the user an update is required. The auto-updater will eventually return though, and bootstrap updates aren't frequent anyway.

Code is a mess

Cleanup has started on a separate branch. Variables will use camelCase, constants will be capitalized.

Add SigHax support

Once Corbenik supports SigHax/Boot9Strap, add support for that.

  • Add a way to choose between A9LH and B9S versions.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.