Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

HBUpdater Switch: Difference between revisions

From GameBrew
(Created page with "{{Infobox Switch Homebrews |title=HBUpdater |image=hbupdaterswitch.png |description=A one-stop-shop for keeping CFWs, Homebrew up-to-date. |author=LyfeOnEdge |lastupdated=2020/01/25 |type=PC Utilities |version=2.4 |license=GPL-3.0 |download=https://dlhb.gamebrew.org/switchhomebrews/hbupdaterswitch.7z |website=https://gbatemp.net/threads/hbupdater-a-one-stop-shop-for-keeping-cfws-homebrew-up-to-date.546116/ |source=https://github.com/LyfeOnEdge/HBUpdater |donation= }} {{#...")
 
No edit summary
Line 1: Line 1:
{{Infobox Switch Homebrews
{{Infobox Switch Homebrews
|title=HBUpdater
|title=HBUpdater
|image=hbupdaterswitch.png
|image=hbupdaternx.png
|description=A one-stop-shop for keeping CFWs, Homebrew up-to-date.
|description=A simple Python app for keeping your switch apps up-to-date using the GitHub API.
|author=LyfeOnEdge
|author=LyfeOnEdge
|lastupdated=2020/01/25
|lastupdated=2020/01/25
Line 8: Line 8:
|version=2.4
|version=2.4
|license=GPL-3.0
|license=GPL-3.0
|download=https://dlhb.gamebrew.org/switchhomebrews/hbupdaterswitch.7z
|download=https://dlhb.gamebrew.org/switchhomebrews/hbupdaternx.7z
|website=https://gbatemp.net/threads/hbupdater-a-one-stop-shop-for-keeping-cfws-homebrew-up-to-date.546116/
|website=https://gbatemp.net/threads/hbupdater-a-one-stop-shop-for-keeping-cfws-homebrew-up-to-date.546116/
|source=https://github.com/LyfeOnEdge/HBUpdater
|source=https://github.com/LyfeOnEdge/HBUpdater
|donation=
|donation=
}}
}}
{{#seo:
HBUpdater is a one-stop-shop for managing and updating your Nintendo Switch Homebrew.
|title=Switch Homebrew PC Tools (PC Utilities) - GameBrew
 
|title_mode=append
It is written in Python and works on Windows/Mac/Linux.
|image=hbupdaterswitch.png
 
|image_alt=HBUpdater
==Features==
}}
*Compatible with the HBAppstore, apps installed by HBUpdater will register in the Appstore.
{{cleanup|article|Needs cleanup}}
*Easily update or remove apps on your Nintendo Switch SD card.
A one-stop-shop for keeping CFWs, Homebrew up-to-date.
*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).
**Injector remembers last selected payload between restarts.
*Manage your backups with blawar's NUT server or fourminute's fluffy.
*Add python scripts to be run by PyNX.
*Switch serial number checker tool to determine if a given SN is vulnerable.
*Simple tool for making and restoring switch SD card backups.
 
==User guide==
===Requirements===
*Works on: macOS, Windows, Linux
*Python 3.6 or greater
 
===How to use===
'''Windows:'''
*Extract HBUpdater.zip.
*Install [https://www.python.org/downloads/release/python-373/ Python].
**If you do a custom installation remember to install tcl/tk, add python to the path, and include pip.
*In a command prompt type pip install -r requirements to install dependencies.
*Double-click startHBUpdater.bat.
 
'''Macintosh:'''
*Extract HBUpdater.zip.
*Mac users may already have a compatible version of python installed, try double-clicking HBUpdater.py --If the file opens in a text reader, close the reader and right-click the file and open it with pylauncher.
*If this still doesn't work, install [https://www.python.org/downloads/release/python-373/ Python].
 
'''Linux:'''
*Extract HBUpdater.zip.
*Navigate to the directory in a terminal
*Type <code>python HBUpdaterGUI.py</code>
**If you are missing dependencies do the following:
**<code>sudo apt install python3 python3-pip python3-tk python3-pil.imagetk</code>
*If you don't know how to do this you should probably be using Windows.
*For access to USB functions you must run python with elevated privledges (sudo).
 
===Troubleshooting===
Mac:
*Error: <code>ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1056)</code>
*Solution: Macintosh HD > Applications > Python3.6 folder (or whatever version of python you're using) > double click on "Install Certificates.command" file.
 
==Screenshots==
https://dlhb.gamebrew.org/switchhomebrews/hbupdaternx02.png
https://dlhb.gamebrew.org/switchhomebrews/hbupdaternx6.png
https://dlhb.gamebrew.org/switchhomebrews/hbupdaternx7.png
 
{| role="presentation" class="wikitable mw-collapsible mw-collapsed"|
! ▼ Old version&nbsp;
|-
|https://dlhb.gamebrew.org/switchhomebrews/hbupdaternx.png
https://dlhb.gamebrew.org/switchhomebrews/hbupdaternx2.png
https://dlhb.gamebrew.org/switchhomebrews/hbupdaternx3.png
https://dlhb.gamebrew.org/switchhomebrews/hbupdaternx4.png
https://dlhb.gamebrew.org/switchhomebrews/hbupdaternx5.png
|}


==Media==
==Media==
'''HBU example with improved details page''' ([https://www.youtube.com/watch?v=NESayHlzOwU LyfeOnEdge]) <br>
<youtube>NESayHlzOwU</youtube>
<youtube>NESayHlzOwU</youtube>


 
==Compatibility==
==Screenshots==
This has only been tested on Atmos/Kosmos.
https://dlhb.gamebrew.org/switchhomebrews/hbupdaterswitch-01.png
https://dlhb.gamebrew.org/switchhomebrews/hbupdaterswitch-02.png
https://dlhb.gamebrew.org/switchhomebrews/hbupdaterswitch-03.png
https://dlhb.gamebrew.org/switchhomebrews/hbupdaterswitch-04.png
https://dlhb.gamebrew.org/switchhomebrews/hbupdaterswitch-05.png
https://dlhb.gamebrew.org/switchhomebrews/hbupdaterswitch-06.png
https://dlhb.gamebrew.org/switchhomebrews/hbupdaterswitch-07.png
https://dlhb.gamebrew.org/switchhomebrews/hbupdaterswitch-08.png


==Changelog==
==Changelog==
'''v.1.0'''
'''v2.4 2020/01/25'''
* First Release.
* Fixed some bugs.
'''v2.3 2019/11/10'''
*Fixed bug displaying injector banner, less bold text.
*Reduced package image pop-in, and fixed images missing on screen load due to insufficient padding.
*Added settings system, settings page, added on-the fly tile size adjustment.
*Updater failing to get update file no longer causes crash.
*Falls back on old repo json when new one unavailable.
*Added multiple maximization settings (Normal/Fullscreen/Maximized).
*Added setting to keep window topmost.
*Fixed searchbar and dropdown padding in main page.
'''v2.2 2019/11/01'''
*Failing to get update no longer calls sys.exit().
*Moved to new repo system.
*Failing to get update file no longer calls sys.exit().
*Removed unneeded build scripts.
'''v2.1 2019/10/21'''
*Fixed fail-to-install due to an issue where <code>with open()</code> on a zip would allow the file to be deleted within the <code>with</code> on linux but not windows, thanks cptWhiskey.
'''v2.0 2019/10/15'''
*New gui, much prettier and user friendly, pulls images from the appstore team's servers.
*Startup is only a few seconds now.
*The repos file is now grabbed from a github release itself, this allows HBUpdater to exceed 60 apps as well as update content offered without having to release a new version of the app.
'''v1.5 2019/08/28'''
*Bug fixes, code reduction, added Mario wars.
*Next version will include a better UI for software list pages using icon buttons akin to those found in the Homebrew Appstore.
'''v1.4 2019/08/24'''
*Added MarioBrosNX C++/SDL2, Created by Lukasz Jakowski 2014, Ported to the Nintendo Switch By Krank/KuranKu 2019.
*Next update will move the repos to json files.
'''v1.3'''
*App now updates itself (with user permission).
*Failing to download gravatars for Lyfe/npprmint dev images no longer results in crash.
*Added more room to the error / message frame for releases info.
'''v1.2 2019/08/16'''
*This can be disabled in the settings menu.
'''v1.1 2019/08/15'''
*Injector now uses pattern system for standardization reasons.
*Broke pattern-based asset finding out into a function.
*Fixed injector page listbox continuing under console.
*Cleaned up some messy copy-pasted app descriptions.
*Tools like nut are now Popen() in a config folder so config files aren't at risk, this is for the future addition of proper version managing for nut and fluffy.
*Serial checker no longer needs download as it has been re-written as a single file.
*Fixed bug with adding forked repos.
*Search now updates with every character typed.
*Users can now set the name of an added repo.
*Improved per-file-type-handling.
*Content:
**Added ComicNX.
**Added Apollo.
**Added hbmenu.
**Removed sdsetup-switch (for now) per authors recommendation.
'''v1.0 2019/07/03'''
*App now implements the [https://github.com/vgmoose/hb-appstore Homebrew Appstore] package system, many thanks to the folks at the 4TU discord for their help and enabling me to make my app compatible with theirs.
*More tweaks, improvements, and bug fixes than I can count.
*Notably the injector now remembers which payload was selected between instances.
'''v0.9 2019/06/05'''
*Added metro home page - The buttons were getting crowded on the standard homebrew page so I've added a new landing page with big icons.
*Improved HBUpdaterGUI.py code layout.
*Software lists are now populated within the page that uses them, this is more flexible and requires far less code.
*HBUpdater will now check for updates, setting available in setting menu to disable it.
*errorpage.py now handles errors and yes/no questions, code reduction in installerhelperpage.py.
*installerhelperpage's functions have been moved to toolhelper.py in modules.
*Improved folder handling, moved all folder definitions to locations.py.
*Removed homebrewcore.py to simplify backend.
*Download-on-demand serial checker.
*nut, fluffy, serial checker, payload injector, etc download into a tools subfolder for better folder structure.
*Bug fixes to the install tracking system.
'''v0.8 2019/06/03'''
*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.
*Added titles to pages so you know what you are looking at.
*Payload injector page now indicates if injector is already downloaded.
*Title bar now displays app version.
'''v0.7 2019/05/26'''
*Most pages with a table now follow a standard template for fast-track page additions and code reduction.
'''v0.6 2019/05/24'''
*fluffy.py has been added for users that don't use blawar installers.
'''v0.5 2019/05/16'''
*Blawar's python version of NUT is now downloaded upon user request and its dependencies are installed via pip.
'''v0.4 2019/05/11'''
*User's can now add their own github repos to be managed by the gui.
'''v0.3b 2019/04/28'''
*Also a preview of user-added repos code.
'''v0.3 2019/04/25'''
*Lots of tweaks, and improvements, this update adds a gui with a list of payloads to the fusee-launcher.py (all downloaded via github of course).
'''v0.2_bat_fix 2019/04/16'''
*Fixed a bug with the bat file causing a failure to start the app.
'''v0.2 2019/04/15'''
*Initial Public Release.
*I've removed a few unfinished features, this is a beta version, please report any bugs except the image not found error (which is due to the way tkinker handles images).


== External links ==
== External links ==
* Gbatemp - https://gbatemp.net/threads/hbupdater-a-one-stop-shop-for-keeping-cfws-homebrew-up-to-date.546116/
* GitHub - https://github.com/LyfeOnEdge/HBUpdater
* Github - https://github.com/LyfeOnEdge/HBUpdater
* GBAtemp - https://gbatemp.net/threads/hbupdater-a-one-stop-shop-for-keeping-cfws-homebrew-up-to-date.546116/
* Reddit -

Revision as of 04:24, 11 Haziran 2023

HBUpdater
Hbupdaternx.png
General
AuthorLyfeOnEdge
TypePC Utilities
Version2.4
LicenseGPL-3.0
Last Updated2020/01/25
Links
Download
Website
Source

HBUpdater is a one-stop-shop for managing and updating your Nintendo Switch Homebrew.

It is written in Python and works on Windows/Mac/Linux.

Features

  • Compatible with the HBAppstore, apps installed by HBUpdater will register in the Appstore.
  • 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).
    • Injector remembers last selected payload between restarts.
  • Manage your backups with blawar's NUT server or fourminute's fluffy.
  • Add python scripts to be run by PyNX.
  • Switch serial number checker tool to determine if a given SN is vulnerable.
  • Simple tool for making and restoring switch SD card backups.

User guide

Requirements

  • Works on: macOS, Windows, Linux
  • Python 3.6 or greater

How to use

Windows:

  • Extract HBUpdater.zip.
  • Install Python.
    • If you do a custom installation remember to install tcl/tk, add python to the path, and include pip.
  • In a command prompt type pip install -r requirements to install dependencies.
  • Double-click startHBUpdater.bat.

Macintosh:

  • Extract HBUpdater.zip.
  • Mac users may already have a compatible version of python installed, try double-clicking HBUpdater.py --If the file opens in a text reader, close the reader and right-click the file and open it with pylauncher.
  • If this still doesn't work, install Python.

Linux:

  • Extract HBUpdater.zip.
  • Navigate to the directory in a terminal
  • Type python HBUpdaterGUI.py
    • If you are missing dependencies do the following:
    • sudo apt install python3 python3-pip python3-tk python3-pil.imagetk
  • If you don't know how to do this you should probably be using Windows.
  • For access to USB functions you must run python with elevated privledges (sudo).

Troubleshooting

Mac:

  • Error: ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1056)
  • Solution: Macintosh HD > Applications > Python3.6 folder (or whatever version of python you're using) > double click on "Install Certificates.command" file.

Screenshots

hbupdaternx02.png hbupdaternx6.png hbupdaternx7.png

Media

HBU example with improved details page (LyfeOnEdge)

Compatibility

This has only been tested on Atmos/Kosmos.

Changelog

v2.4 2020/01/25

  • Fixed some bugs.

v2.3 2019/11/10

  • Fixed bug displaying injector banner, less bold text.
  • Reduced package image pop-in, and fixed images missing on screen load due to insufficient padding.
  • Added settings system, settings page, added on-the fly tile size adjustment.
  • Updater failing to get update file no longer causes crash.
  • Falls back on old repo json when new one unavailable.
  • Added multiple maximization settings (Normal/Fullscreen/Maximized).
  • Added setting to keep window topmost.
  • Fixed searchbar and dropdown padding in main page.

v2.2 2019/11/01

  • Failing to get update no longer calls sys.exit().
  • Moved to new repo system.
  • Failing to get update file no longer calls sys.exit().
  • Removed unneeded build scripts.

v2.1 2019/10/21

  • Fixed fail-to-install due to an issue where with open() on a zip would allow the file to be deleted within the with on linux but not windows, thanks cptWhiskey.

v2.0 2019/10/15

  • New gui, much prettier and user friendly, pulls images from the appstore team's servers.
  • Startup is only a few seconds now.
  • The repos file is now grabbed from a github release itself, this allows HBUpdater to exceed 60 apps as well as update content offered without having to release a new version of the app.

v1.5 2019/08/28

  • Bug fixes, code reduction, added Mario wars.
  • Next version will include a better UI for software list pages using icon buttons akin to those found in the Homebrew Appstore.

v1.4 2019/08/24

  • Added MarioBrosNX C++/SDL2, Created by Lukasz Jakowski 2014, Ported to the Nintendo Switch By Krank/KuranKu 2019.
  • Next update will move the repos to json files.

v1.3

  • App now updates itself (with user permission).
  • Failing to download gravatars for Lyfe/npprmint dev images no longer results in crash.
  • Added more room to the error / message frame for releases info.

v1.2 2019/08/16

  • This can be disabled in the settings menu.

v1.1 2019/08/15

  • Injector now uses pattern system for standardization reasons.
  • Broke pattern-based asset finding out into a function.
  • Fixed injector page listbox continuing under console.
  • Cleaned up some messy copy-pasted app descriptions.
  • Tools like nut are now Popen() in a config folder so config files aren't at risk, this is for the future addition of proper version managing for nut and fluffy.
  • Serial checker no longer needs download as it has been re-written as a single file.
  • Fixed bug with adding forked repos.
  • Search now updates with every character typed.
  • Users can now set the name of an added repo.
  • Improved per-file-type-handling.
  • Content:
    • Added ComicNX.
    • Added Apollo.
    • Added hbmenu.
    • Removed sdsetup-switch (for now) per authors recommendation.

v1.0 2019/07/03

  • App now implements the Homebrew Appstore package system, many thanks to the folks at the 4TU discord for their help and enabling me to make my app compatible with theirs.
  • More tweaks, improvements, and bug fixes than I can count.
  • Notably the injector now remembers which payload was selected between instances.

v0.9 2019/06/05

  • Added metro home page - The buttons were getting crowded on the standard homebrew page so I've added a new landing page with big icons.
  • Improved HBUpdaterGUI.py code layout.
  • Software lists are now populated within the page that uses them, this is more flexible and requires far less code.
  • HBUpdater will now check for updates, setting available in setting menu to disable it.
  • errorpage.py now handles errors and yes/no questions, code reduction in installerhelperpage.py.
  • installerhelperpage's functions have been moved to toolhelper.py in modules.
  • Improved folder handling, moved all folder definitions to locations.py.
  • Removed homebrewcore.py to simplify backend.
  • Download-on-demand serial checker.
  • nut, fluffy, serial checker, payload injector, etc download into a tools subfolder for better folder structure.
  • Bug fixes to the install tracking system.

v0.8 2019/06/03

  • 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.
  • Added titles to pages so you know what you are looking at.
  • Payload injector page now indicates if injector is already downloaded.
  • Title bar now displays app version.

v0.7 2019/05/26

  • Most pages with a table now follow a standard template for fast-track page additions and code reduction.

v0.6 2019/05/24

  • fluffy.py has been added for users that don't use blawar installers.

v0.5 2019/05/16

  • Blawar's python version of NUT is now downloaded upon user request and its dependencies are installed via pip.

v0.4 2019/05/11

  • User's can now add their own github repos to be managed by the gui.

v0.3b 2019/04/28

  • Also a preview of user-added repos code.

v0.3 2019/04/25

  • Lots of tweaks, and improvements, this update adds a gui with a list of payloads to the fusee-launcher.py (all downloaded via github of course).

v0.2_bat_fix 2019/04/16

  • Fixed a bug with the bat file causing a failure to start the app.

v0.2 2019/04/15

  • Initial Public Release.
  • I've removed a few unfinished features, this is a beta version, please report any bugs except the image not found error (which is due to the way tkinker handles images).

External links

Advertising: