More actions
(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= | |image=hbupdaternx.png | ||
|description=A | |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/ | |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= | ||
}} | }} | ||
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 [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 | |||
|- | |||
|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== | |||
== | This has only been tested on Atmos/Kosmos. | ||
==Changelog== | ==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 <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 == | ||
* | * GitHub - https://github.com/LyfeOnEdge/HBUpdater | ||
* GBAtemp - https://gbatemp.net/threads/hbupdater-a-one-stop-shop-for-keeping-cfws-homebrew-up-to-date.546116/ | |||
Revision as of 04:24, 11 Haziran 2023
HBUpdater | |
---|---|
General | |
Author | LyfeOnEdge |
Type | PC Utilities |
Version | 2.4 |
License | GPL-3.0 |
Last Updated | 2020/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
▼ Old version |
---|
|
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 thewith
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).