r/SwitchHacks • • 13d ago

Tool NSLibrary: a self-hosted library for your own Switch dumps, with a homebrew app that installs over LAN or USB

https://github.com/tuckerwales/nslibrary

Hi all. I've been building this on my own for a while and it's now open source under Apache-2.0.

NSLibrary is a self-hosted server for the NSP, NSZ, XCI, XCZ and homebrew NRO files you've dumped from your own console. It comes with a Switch homebrew app that lets you browse that library on the console and install from it over LAN or USB.

GitHub: https://github.com/tuckerwales/nslibrary

Switch app (.nro): https://github.com/tuckerwales/nslibrary/releases/tag/v0.2.0

Point the server at your dump folders. It mounts them read-only and never writes into them.

It groups each title's base game, updates and DLC, and flags missing updates, duplicates and broken files.

Pair your Switch with a 6-digit code, browse the library on the console, and install straight to SD or NAND. Installs stream directly, with no temporary copy on the SD card first.

You can also click Send to Switch in the web UI and the console will pick the job up.

It has no download sources, no shop scraping, no title keys and no firmware. It only manages files you already have. Requests to add any of that will be closed on GitHub, so please don't ask in the comments either.

This is the first public release. The Switch app went through several private 0.1.x versions first, but expect rough edges on the server and desktop side.

Thanks for taking a look!

54 Upvotes

19 comments sorted by

7

u/Structure-These 9d ago

Thanks! I host my roms on a server so this is helpful. Is it Mac compatible

3

u/ddraigygoch 9d ago

It should be, but I'll preface that I haven't actually tried the electron functionality on a Mac yet. Im on holiday until 8th October but will try then and fix if not!

3

u/ddraigygoch 9d ago

I've just created a GH release with the pre built app binaries for Linux, macOS and Windows available directly on the GitHub release. Give it a go if you'd like and let me know if it works for you!

4

u/SaultyEnjoyer 9d ago

Super nice, i just use romm and ftp server and access it via fbi. Not sure i need this app, but certainly i would give this a go

2

u/ddraigygoch 9d ago

I did that too, but I wanted a simpler way and this is what I ended up building! It's really easy to use, please do give it a go and let me know what you think!

2

u/sislonaco 9d ago

thank you, it looks super nice

1

u/ddraigygoch 9d ago

Thank you!

2

u/Crazy-Newspaper-8523 9d ago

Nice! I always wanted it

2

u/il_ponz 9d ago

tried now, it works like a charm on linux + docker.
i think it would be nice to add sorting to web and client app, something like sort by date added asc, desc etc.
but well, it's very very good software for a 0.2.0!
nice work!

2

u/ddraigygoch 8d ago

Hey, I just created a new release which adds sort functionality to the web and switch client.

2

u/il_ponz 8d ago

just saw that.. too bad i started the same implementation last night with copilot 🤣
btw thank you so much for the effort

1

u/ddraigygoch 8d ago

No problem, thanks again for trying it out!

1

u/ddraigygoch 9d ago

Amazing, thank you for trying it! I'm glad you like it.

Please feel free to open a GitHub issue with any feature requests and I'll get to them when I'm back from holiday.

0

u/DistributionNeat2627 9d ago

if it also can dump via LAN, it will be cool. so i might can avoid the use of fbi completely. and maybe builtin ftp/webdav server on switch client, and ftp/webdav client on pc side might be cool too haha

1

u/ddraigygoch 9d ago

It doesn't support dumping because that isn't the intention of this tool. And I have no desire to add FTP/WebDAV support as there are other better existing solutions (like dedicated FTP servers) for those things.

0

u/Crazy-Newspaper-8523 9d ago

How quick is it though?

1

u/5ifty0 9d ago

I've literally just installed ownfoil in Unraid and I'm now wondering whether the 1-4mbps download speed is due to the software or the ancient hardware I'm running it on. More likely the latter but might try this to see if the download speed increases as I don't have the £ or time to upgrade my microserver.

2

u/ddraigygoch 9d ago

Switch network speed is not great, USB will of course be faster.

0

u/Trompeltier 9d ago

I use aerofoil and cyberfoil