Homebrew [Announcement] TitleDB.com - 3DS Homebrew Title Database

Sonic Angel Knight

Well-Known Member
Member
Joined
May 27, 2016
Messages
14,397
Trophies
1
Location
New York
XP
12,926
Country
United States
I dunno who is responsibile for this but is nice to have thanks, but can someone maybe collab with the person who created the FBI installer and see if you can make it possible to display the version number of each update so we know that we should download the homebrew again if updates come out for it? I always have to go check comments here of the posted homebrew for news about update when it could be as easy as just listing which version is on the server compared to which is installed on the system.

Maybe even just color code it.

  • Green = Installed
  • Blue = Needs update
  • Red = Not installed
Maybe least add a change log to go with it?:ninja:
 

ksanislo

Well-Known Member
OP
Member
Joined
Feb 23, 2016
Messages
386
Trophies
0
Location
Seattle, WA
XP
512
Country
United States
It says that Content-Range isn't support when I try to add: http://get.freeshop.pw/latest

However, when I check it:
....
I'm not sure how that is happening, but the relevant check on my side is just this:

Code:
	if 'Content-Range' in req.headers:
		<snip>
	else:
		return {'error': 'Content-Range: not supported by remote server'}

So somehow the server actually isn't returning the expected header when hit by the backend. I'll have to dig into it further when I get some time, though it may not be worth the effort as the rewrite is basically ready and doesn't have this same limitation.
 

ksanislo

Well-Known Member
OP
Member
Joined
Feb 23, 2016
Messages
386
Trophies
0
Location
Seattle, WA
XP
512
Country
United States
It says that Content-Range isn't support when I try to add: http://get.freeshop.pw/latest

This should be working as expected now... It seems that cloudflare's support for Content-Range is directly dependent on it getting a User-Agent header that it can map to a browser with known range support, otherwise the feature is apparently disabled. I've updated the TDB backend to better fake being a copy of Firefox, so hopefully this won't show up anywhere else.
 
  • Like
Reactions: TheCruel

ksanislo

Well-Known Member
OP
Member
Joined
Feb 23, 2016
Messages
386
Trophies
0
Location
Seattle, WA
XP
512
Country
United States
I'm redeploying the rewrite into production. The /v1 API is live behind the scenes again, and things should be more stable under full load than the previous attempt.

Please report any problems via GitHub at https://github.com/ksanislo/TitleDB/issues

Update #1: sorry about the service interruption. It seems that we out-of-memory'd the VM and the OOM killer had it's way with some of the services. Systemd should auto-restart things correctly from now on.

Update #2: Everything is now in full multi-threaded operation, memory usage is under control and all appears to be functioning as expected.
 
Last edited by ksanislo,

TheCruel

Developer
Banned
Joined
Dec 6, 2013
Messages
1,350
Trophies
2
XP
3,130
Country
United States
Not sure if you changed this, but the freeShop URL should be HTTP. It's using a cloudflare cert that FBI doesn't recognize properly. *shrug*

It honestly doesn't recognize many certs, FBI should probably disable that validation imo.
 
Last edited by TheCruel,

ksanislo

Well-Known Member
OP
Member
Joined
Feb 23, 2016
Messages
386
Trophies
0
Location
Seattle, WA
XP
512
Country
United States
Not sure if you changed this, but the freeShop URL should be HTTP. It's using a cloudflare cert that FBI doesn't recognize properly. *shrug*

It honestly doesn't recognize many certs, FBI should probably disable that validation imo.

It looks like it's set correctly on this end ( https://api.titledb.com/v1/entry/139 ). Is anyone still reporting problems?
 

TheCruel

Developer
Banned
Joined
Dec 6, 2013
Messages
1,350
Trophies
2
XP
3,130
Country
United States

ksanislo

Well-Known Member
OP
Member
Joined
Feb 23, 2016
Messages
386
Trophies
0
Location
Seattle, WA
XP
512
Country
United States
Hmm URL seems fine now, odd. Someone today just posted this screenshot and so I went to check the site and it had the https:// URL and I assumed that was the problem (because I know FBI gives that error with my cert). Oh well, thanks.
Now that I'm thinking about it, they probably just have a very old version of FBI and scanned the QR from the website. My cert fails the checks when validation is enabled as well, but FBI has had it disabled since I first pointed it out back in 2.2.x or something IIRC.
 

TheCruel

Developer
Banned
Joined
Dec 6, 2013
Messages
1,350
Trophies
2
XP
3,130
Country
United States
Last edited by TheCruel,

Sonic Angel Knight

Well-Known Member
Member
Joined
May 27, 2016
Messages
14,397
Trophies
1
Location
New York
XP
12,926
Country
United States

ksanislo

Well-Known Member
OP
Member
Joined
Feb 23, 2016
Messages
386
Trophies
0
Location
Seattle, WA
XP
512
Country
United States
The TLS cert error is because of this. The signature check verification is a CFW problem.
FWIW, The problem is with the certificate your site is using specifically.... The actual cert validity check in FBI is disabled, which can be verified by installing something from any of my sites via https since LetsEncrypt isn't in the valid provider list built into the 3DS. Somehow that wildcarded SAN cert your site uses still makes the 3DS fail on it however.

I can manually work around things, but to be perfectly honest, you need to take care of this on your end. If you can't get a TLS cert that can play nice with the 3DS, you need to disable any hosting of the installable archive via HTTPS, as people will always try to use it anyway because its "better". Also, if you have the chance, you really should make your site link to a file with the version number and not use that /latest rewrite that you've got going on. I can track by version if you give them distinct URIs to be reached at.
 

ksanislo

Well-Known Member
OP
Member
Joined
Feb 23, 2016
Messages
386
Trophies
0
Location
Seattle, WA
XP
512
Country
United States
How do you determine latest version available?
It depends on how you're looking at the list. For the current web interface as well as FBI/Homebr3w since they're all on the legacy /v0, it's handled as the file most recently added to a preexisting entry with a matching titleid and a new checksum that hasn't been seen before. For things that aren't on GitHub, entry matching is based on the URL path preceding the final /, with version numbers in the string wildcarded out.

--------------------- MERGED ---------------------------

Any reason freeShop keeps erroring out in FBI and locking up Homebr3w? The site is up, so what gives?
This should actually be working now, the problem is due to the certificate for the freeshop.pw website being considered invalid by the 3DS.
 

TheCruel

Developer
Banned
Joined
Dec 6, 2013
Messages
1,350
Trophies
2
XP
3,130
Country
United States
So the new version URL would need to be added every update? Hmm maybe, but I just added /latest so I didn't have to keep updating QR codes, guides, and stuff.

I'll see how much I can mess with cloudflare's cert.
 

ksanislo

Well-Known Member
OP
Member
Joined
Feb 23, 2016
Messages
386
Trophies
0
Location
Seattle, WA
XP
512
Country
United States
So the new version URL would need to be added every update? Hmm maybe, but I just added /latest so I didn't have to keep updating QR codes, guides, and stuff.

I'll see how much I can mess with cloudflare's cert.
You can leave the QR pointed at latest, but you should have the download link itself give a specific version link, since that's the one that gets copied/pasted into the TDB website by users.

edit: An optional half-way point would be to at least have the Content-Disposition header in the result be returning the filename with the version string instead of being freeShop-latest.cia, since that would at least allow parsing of the version number to be displayed, even if it couldn't be linked back to later.
 
Last edited by ksanislo,

Sonic Angel Knight

Well-Known Member
Member
Joined
May 27, 2016
Messages
14,397
Trophies
1
Location
New York
XP
12,926
Country
United States
So is it actually possible to maybe work with @Steveice10 to get fbi to recognize different software versions of each homebrew from the installed on on 3DS and the latest one on titledb? Cause is kinda silly just browsing homebrew there and not knowing if you need to update it, unless you check someones github page for the specific homebrew. :P
 

ksanislo

Well-Known Member
OP
Member
Joined
Feb 23, 2016
Messages
386
Trophies
0
Location
Seattle, WA
XP
512
Country
United States
So is it actually possible to maybe work with @Steveice10 to get fbi to recognize different software versions of each homebrew from the installed on on 3DS and the latest one on titledb? Cause is kinda silly just browsing homebrew there and not knowing if you need to update it, unless you check someones github page for the specific homebrew. :P

Yes, actually. It could have been done even with the /v0 API in the same manner that Homebr3w handled things, however once the full /v1 API is in use it will be more correct since version strings are parsed and provided by the API. Currently the version is taken only from URL or filename, but it can be parsed from the .cia itself if someone wants to figure out the right way to parse the cia headers to locate it. The code to find it from the CIA should go here in the source, setting the value cia.version as a string for whatever value is found. I'll take care of it when I have a bit more time, but I'm currently working on finishing the web admin so I can grant moderator access to volunteers so I can get some help keeping everything clean and organized.
 
  • Like
Reactions: Sonic Angel Knight

Sonic Angel Knight

Well-Known Member
Member
Joined
May 27, 2016
Messages
14,397
Trophies
1
Location
New York
XP
12,926
Country
United States
Yes, actually. It could have been done even with the /v0 API in the same manner that Homebr3w handled things, however once the full /v1 API is in use it will be more correct since version strings are parsed and provided by the API. Currently the version is taken only from URL or filename, but it can be parsed from the .cia itself if someone wants to figure out the right way to parse the cia headers to locate it. The code to find it from the CIA should go here in the source, setting the value cia.version as a string for whatever value is found. I'll take care of it when I have a bit more time, but I'm currently working on finishing the web admin so I can grant moderator access to volunteers so I can get some help keeping everything clean and organized.
Okay, i just wanted to point out if you missed it, i had a idea at the top of the this page about maybe color coding the update notifications.

I also suggest maybe change logs as well but i don't want to sound like is too much or if is not possible, the fbi seem to just list homebrew and download, so i dunno if is capiable of actually viewling a change log for each updated the homebrew gets.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    NinStar @ NinStar: It will actually make it worse