Homebrew WIP HBUpdater Prerelease

What feature would you most like to see in the next update?

  • Tool to verify switch serial number

    Votes: 0 0.0%

  • Total voters
    29
  • Poll closed .

LyfeOnEdge

Well-Known Member
OP
Newcomer
Joined
Feb 24, 2019
Messages
72
Trophies
0
Age
27
XP
482
Country
United States
UPDATE: Release 0.8 is now available, this includes an alpha CFW manager. DO NOT USE THE CFW MANAGER ON SD CARDS YOU CARE ABOUT YET. IT IS STILL IN TESTING.
UPDATE: Release 0.7 is now available, this includes a tool for installing pynx scripts via github, improved image scaling with the optional "pillow" python module (you can install it through the app or manually), the injection gui has been greatly improved, some loops are now better threaded, and a few other improvements. Keep an eye out for versions 0.8 and 0.9 which will feature a custom firmware manager and Homebrew Store compatibility respectively.
UPDATE: Release 0.6 is now available, this includes fluffy.py integration, an improved folder structure to prevent users from the launching of the wrong python script, and the ability to disable the automatic download of the newest repo data on launch via the settings menu. (You still have to run the app once to download the data for it to launch properly)

6JKodb4.png


What is it?
A cross-platform desktop Nintendo Switch multi-tool for managing homebrew, injecting payloads, and installing Switch game backups.


How does it work?
Everything, and I mean EVERYTHING is downloaded via the github api.
This means:
All Homebrew
Payloads
Payload Injector (fusee-launcher.py by ktempkin)
Custom Firmwares
NUT (server.py by blarwar)
Fluffy.py by fourminute
Dependencies for NUT and fusee-launcher​

All curated homebrew has been pre-set to install to the proper location on the sd card
Currently the version of installed homebrew as well as the location of all files installed for the homebrew (such as large numbers of files extracted from a .zip) are tracked in /hbupdater/hbupdater.json. As a safety precaution to prevent folders that were not meant to be deleted from being removed uninstalling an app will only remove files that were copied over at the time of the homebrew's installation. As a side effect, files generated by homebrew and any folders will NOT be removed. Although a bit annoying, this will prevent the unintentional removal of your files or configuration files generated by your homebrew.

Features:
Easily update or remove apps on your Nintendo Switch SD card
Add your own repos to easily manage and update
View github patch notes and homebrew version history
Launch each homebrew's project page at the click of a button (gbatemp thread if available or github)
Inject Payloads with fusee-launcher (this is also a replacement for your current rcm tool)
Manage your backups with blawar's NUT server
Add python scripts to be run by NX-Python​

Compatibility:
This has only been tested on Atmos/Kosmos.
I plan on supporting any bugs found with Reinx (There shouldn't be)
If you find any bugs with SX OS, you can ask for help from team xecuter support. ;)

Goals before official 1.0 release:
Make install tracking compatible with vgmoose's Homebrew Store (some of the code for this has already been written, and I've received vgmoose's approval, but this has not been included yet)
Allow users to add additional payloads, both local and via the github api.
Add a menu for managing kip patches
Integrate Fluffy.py for users who don't use blawar installers (I need to get permission first, if anyone shares a discord with the dev let me know)​

Dangers:
THIS IS A WIP, AND IT HAS PRIMARILY BEEN TESTED BY ME AND A FEW DEDICATED FRIENDS.
THERE WILL BE BUGS, I WOULD BE REMISS IF I DIDN'T PROVIDE THE FOLLOWING WARNING:

What it can do:
The absolute worst thing this can do is wipe your SD card.
It is VERY unlikely, and has never happened in testing.​

What it can't do:
Brick your switch
Steal your certs
Kick your dog
Make change
Cure your crippling depression​

How do I use it?
1. Plug SD card into PC
2. Launch App
3. Click the SD card icon
4. Select the ROOT of your SD card
5. Select the homebrew you'd like to install
6. Click the INSTALL button
7. Your selected homebrew will be downloaded from github and put in the right location on your SD card
8. After your homebrew is installed remove your SD card and insert in your Switch
9. Click the syringe icon
10. Select the payload you wish to inject (future versions will remember your selection between launches)
11. Click inject​

Project Page: https://github.com/LyfeOnEdge/HBUpdater
Download: https://github.com/LyfeOnEdge/HBUpdater/releases

A few people have pm'd me for a discord so here is my dev server: https://discord.gg/cXtmY9M


*Bugs fixed:

Temp solution to bad linux icon bitmap
Improved readme for getting up and running on linux​
*Stuff Added:
Payload injector page now indicates if injector is already downloaded
Title bar now displays app version
Added titles to pages so you know what you are looking at.
Projects missing github links will now get one generated from the github api link to go to the github repo, this applies to user-added homebrew as well.​
 
Last edited by LyfeOnEdge,

switch_bricker

Member
Newcomer
Joined
Sep 11, 2018
Messages
10
Trophies
0
Age
34
XP
275
Country
Austria
Wow, looks nice.
Is it possible to run it on the switch with github[dot]com[slash]nx-python/PyNX
(sorry, cant post the link, need to replace the dot and slash...)
That would be awesome :D
 
Last edited by switch_bricker,
  • Like
Reactions: LyfeOnEdge

LyfeOnEdge

Well-Known Member
OP
Newcomer
Joined
Feb 24, 2019
Messages
72
Trophies
0
Age
27
XP
482
Country
United States
Wow, looks nice.
Is it possible to run it on the switch with github[dot]com[slash]nx-python/PyNX
(sorry, cant post the link, need to replace the dot and slash...)
That would be awesome :D
I wish, however it doesn't include tkinter so pynx isn't useful for guis
 

LyfeOnEdge

Well-Known Member
OP
Newcomer
Joined
Feb 24, 2019
Messages
72
Trophies
0
Age
27
XP
482
Country
United States
Looks dope! But can it get homebrew only hosted on GT?
At the moment yes, this is a version manager primarily, if you have other places with apis I'd be happy to implement them, I've contacted the folks managing bsnx.lavatech, they said they might have an api in the future and if so I'll add the homebrew to one portion and allow it to serve as a launcher for their other apps, the long-term goal is to make this the switch version of usbhelper with a lot of other community creations bundled in one place
 
  • Like
Reactions: klear

stitchxd

Well-Known Member
Member
Joined
Apr 27, 2017
Messages
401
Trophies
0
Location
nope
Website
gnusocial.me
XP
689
Country
United States
At the moment yes, this is a version manager primarily, if you have other places with apis I'd be happy to implement them, I've contacted the folks managing bsnx.lavatech, they said they might have an api in the future and if so I'll add the homebrew to one portion and allow it to serve as a launcher for their other apps, the long-term goal is to make this the switch version of usbhelper with a lot of other community creations bundled in one place
What about GBATemp then? :D I am sure the forums here have an api you can tap into!
 

LyfeOnEdge

Well-Known Member
OP
Newcomer
Joined
Feb 24, 2019
Messages
72
Trophies
0
Age
27
XP
482
Country
United States
GBATemp runs on XenForo, here is an API doc: https://xenforo.com/xf2-docs/dev/rest-api/ (Note GBATemp might have disabled some api end points, but if you are interested in a decent read)
It looks like they either have it disabled or are requiring the api key. Unfortunately attempting to follow the format laid out in the doc just results in a not found error. Thanks for the info though

Accessing the API requires generating a key via the admin control panel. There is no unauthenticated access to the API and users cannot generate their own keys to access the API at this time.
 
  • Like
Reactions: stitchxd

LyfeOnEdge

Well-Known Member
OP
Newcomer
Joined
Feb 24, 2019
Messages
72
Trophies
0
Age
27
XP
482
Country
United States
Apologies to the linux users for the corrupted icon bitmap, special thanks to... ermm... CumCoveredKittyKat... oh my... for the report.

Linux users can prevent the bug from crashing the script by either commenting or removing the line
Code:
self.iconbitmap(homebrewcore.joinpaths(homebrewcore.assetfolder, 'HBUpdater.xbm'))
in HBUpdatergui.py

Alternatively the change has been pushed to github, if you download the SOURCE (not the current release) it should work.
 
Last edited by LyfeOnEdge,
  • Like
Reactions: stitchxd

PRAGMA

Well-Known Member
Member
Joined
Dec 29, 2015
Messages
2,258
Trophies
1
Location
Ireland
Website
github.com
XP
5,036
Country
Ireland
Honest opinion here is that this isnt very useful, heres my points:
If people were to use this to update HOMEBREW, there would be no need for it at all because of HB App Store on the switch itself.
If people were to use this to update CFW, there would also be no need for it because its basically like 2-3 clicks and 1 url to update the CFW, which can also be pretty easily updated by a homebrew app.
Also, the fact ur bundling this essentially as an All-In-One will actually slow down/annoy the general progress, ive learned from experience, I did something similar with kit-kat and it didnt go down well at all.
 
Last edited by PRAGMA,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Xdqwerty @ Xdqwerty: @BakerMan, I have a piano keyboard but I never use it