#tvos-jailbreaks
1 messages · Page 45 of 1
can't imagine your temper when you catch Val scratching the furnature
lol
prefix was orig blank... but I changed it to isSystemApplication = FALSE
which i know is wrong
yeh thats definitely not an acceptable prefix, although it being blank i guess shouldnt hurt anything
wouldn't it be a bool?
ah
i explained it before
its what prefixes the app name for the preference
preference key
ie his prefix in VideoPace is 'VPEnabled-'
so a preference key for TVSystemMenuService would be VPEnabled-TVSystemMenuService
"VPEnabled-VideoSubscriberAccountViewService" = 1;
"VPEnabled-What's New?" = 1;```
see that kinda threw me off.. seeing as that was an enable/disable toggle
yeh its either 1 or 0
oof..
yeah
cuz thats not right either lol
double oof
thats not a proper Info.plist
the plist would be in prefloader/prefs
exactly
and you dont even need a bundle
ie
drwxr-xr-x root/wheel 0 2020-12-13 14:09 ./Library
drwxr-xr-x root/wheel 0 2020-12-13 14:09 Library/MobileSubstrate
drwxr-xr-x root/wheel 0 2020-12-13 14:09 Library/MobileSubstrate/DynamicLibraries
-rw-r--r-- root/wheel 43 2020-12-13 14:09 Library/MobileSubstrate/DynamicLibraries/VideoPace.plist
-rwxr-xr-x root/wheel 69952 2020-12-13 14:09 Library/MobileSubstrate/DynamicLibraries/VideoPace.dylib
drwxr-xr-x root/wheel 0 2020-12-12 20:39 Library/PreferenceLoader
drwxr-xr-x root/wheel 0 2020-12-13 04:54 Library/PreferenceLoader/Preferences
-rw-r--r-- root/wheel 1293 2020-12-12 20:39 Library/PreferenceLoader/Preferences/VideoPace.plist
-rw-r--r-- root/wheel 23390 2020-12-13 04:54 Library/PreferenceLoader/Preferences/VideoPace.png```
so then i'd have to change up ```<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>entry</key>
<dict>
<key>bundle</key>
<string>NoLabelsPrefs</string>
<key>cell</key>
<string>PSLinkCell</string>
<key>detail</key>
<string>AXRootListController</string>
<key>icon</key>
<string>icon.png</string>
<key>isController</key>
<true/>
<key>label</key>
<string>NoLabels</string>
</dict>
</dict>
</plist>
i know
follow his example EXACTLY
you dont define a class
you dont define a new bundle
the bundle is ALWAYS AppList
because it loads HIS AppList bundle to get at the principleclass
which is ALRootListController
if you try to do a different class there it will absolutely crash
i think where you are having the disconnect is how it loads your details from his AppList.
yeah, it was loading the same ui as bfdecrypt in prefloader
oh yeh i forgot that installs a bundle i should see what that looks like again since applist is in there now
loh oh wow that is super broken
haha
so yeh if you want something that works follow ryans example from
now i gotta wrap my head around wtf hes trying to do in bfdecrypt
i do gotta thank you for writing out the cli implementation of Breezy
super helpful
@fleet parcel no problem 🙂
and its actually still a UI app its just hidden
found the pref bundle for bfdecrypt since its not in my repo haha
ok i see what they are doing. something like this COULD potentially work if using the right classes
this definitely highlights another instance i need to sort of cover though.
@fleet parcel upgraded bfdecrypt to work with applist 🙂
nope
so for things that include a bundle.. no longer require one and can just call applist instead?

I actually wonder where the apps are on iOS 7.5 for tv
I never saw em in /applications
/applications/appliances iirc
@fleet parcel you require a bundle if you call any custom code
if you want to make a bundle with custom code & that uses AppList it wont work in the same way bfdecrypt did because they inherited from different classes, if you modified theirs to inherit from the right classes and implemented the loadSettingsGroup stuff as usually it should still work - if you have anything stored in root.plist inside the bundle you'd need to write custom code to load that, it doesnt support anything like that yet.
@fleet parcel if you look at this section of code https://github.com/p0358/bfdecrypt/blob/master/prefs/bfdRootListController.m#L50-L56
that is the iOS Preference.framework equivalent of what we do in loadSettingsGroups it loads the plist rep into its related PSSpecifiers
since we dont use that framework i convert their PSSpecifiers into TSKSettingGroups and *Items respectively
although i you could potentially use the category i add to tskviewcontroller - (NSArray *)menuItemsFromItems:(NSArray *)items from other classes and do something similar yourself to get the proper menu items back in loadSettingsGroup.
anyhow running late and gotta go. added something cool to the last AppList of the day i just released
a long press on an application from that view will bring up a handy little menu
ooo goody
although i think the quitApplication code is broken right now, the open one should work
can't you just killall with nstask?
Is 13.4.6 not jailbreakable according to the pinned message? @fleet parcel
Imagine not reading properly
Can’t imagine
Lol
``Question 1: What versions of tvOS are jailbreakable?
Answer:
tvOS 10.2.2: backr00m.
tvOS 11.x - 13.4.5: unc0ver TV.
tvOS 12.3 - latest: checkra1n (semi-tethered) 14 is still WIP.``
With uncover I meant
Ikr
but that means I can’t turn off my ATV?
you can sleep it
Ah
just don't reboot nor unplug
Yes but you can at least reboot the tv
get Reboot, Oops!
that tweak mentioned above will save you from accidental rebooting
(seeing as there's no build-in reboot warning)
Alright
What are some specialties of using a jailbroken ATV compared to a regular one
*semi-tethered
I said mine
root access
airdrop
emulators
Non App Store apps(without the need of Xcode)
What kind of emulators are there

old retro.. n64 snes, genesis, ps1 ps2
it essentially replaces most of the systems you had as a child
theming is iffy.. but still works
Would PS2 emu work with Xbox controller?
prov
on atv 4?
no
because they have special perms that won't work
Ohh
prov you can sideload
Root related?
but retroarch can't
@fleet parcel I’m bored
Which tv os versions seem interesting for the atv 3,2
May get some more keys

speaking of which.. i still have yet to grab 6,2 keys for 14.3 RC
Lol
i wish checkra1n would work on breakouts
no worries. No-one wants my half-baked cookies
@fleet parcel Lmao
okay there we go haha. okay VideoPace now fully works @jaunty rune
@desert hawk You are seriously The Man! Just read everything since last night and yall dont play around sheesh. Someone spike your coffee? cuz that was a quick turnaround. VideoPace was only tweak i needed, from now on its all cherries. Thank You!
Jtv cant wait for kernbypasstv too
Ah no worries im patient..ish lol but yah even if it doesnt work might lead to something else
Im digging the steam yall got goin right now
@jaunty rune no problem, enjoy and let me know if you have any issues 👍
AppList has been on my todo for a long time and i always said a more modern version shouldnt be that difficult, it also helped highlight some missing pieces in my preferenceloader port so it paid dividends to work on this.
Thats awesome glad i could help hah jp! But yah cool it got a bunch of things rolling.
Did notice something though but maybe its just cause im on 13 still? Although videopace on ios sometimes acts similarly. Anyway, its stuck at 1.3x no matter what i switch too or if i turn off an app.
@desert hawk
Also doesnt seem to work for youtube.. kind of expected that. Youtube ios’ built in speed controls are affected by videopace from time to time, so was holding out hope
it should work with anything that uses AV*.. so that'd be offline play/ethereal/vlc and perhaps the TV app
Netflix? Thats working
that's considered offline play
Ah
Ooooh
Dang
Was gonna say im pretty sure youtube has forgotten theres an apple tv. See an update from september lol and im sure still no speed controls
@fleet parcel so any guesses why videopace interferes with youtube on ios? Sometimes ill have to flip it off because its combining both set speeds
I'm pretty sure YouTube has a lack of everything; including 4K for the Apple TV 4K
added description for the app list and filtering out hidden apps by default, it also supports some rudimentary predicates / filtering in the plist. but it only reads the first object in ALSectionDescriptors right now
time for bed lol
so something like this is possible now
fixed the quit application bug too.
Seems airplay isnt playing nice with videopace. No sound and also still stuck at 1.3x
weird works fine for me. depends on what you AirDrop if it doesnt plsy in AVPlayer it wont work
so if its not an mp4 file it wont play with different speeds
qwerty actually wrote one years ago that he forgot to share amd has since lost i think i dont reemember if anyone else ever tackled it
I mean I don’t think it would be that hard
not on my list personally 🤷♂️
tvOS is a weird candidate for it because of how keyboards work with if.
I guess
But you can always use the mobile remote app
Which makes it easy to copy and paste
@fleet parcel anyway to expand that tweak to also pop up a warning on the reboot option under apple's own menu?
@storm ridge wdym?
updated bfdecrypt again turns out there was some janky logic between how it works and how applist works. was looking for flagged bundleIds but AppList just writes the apps localized display name to the plist so it was never finding any matches 🤣
good times 👍
As Stephen King once said "writing is rewriting". This would also come hand-in-hand with development to get something done right or to improve.
haha indeed. and it gives me ideas on more config options. like giving the user the ability to have it record the bundle id to the plist rather than the prefixed app name.
and it could also be expanded to show the full running process list as another option like the one displayed in nitoTV because i included that code as well in my applist
Still curious of what you mean
Was also going to mention @desert hawk .. Breezy should be updated to set on defaultly upon installation, instead of toggling it in settings
@fleet parcel yeh im pretty sure i fixed that in the latest version
Gotta restore to check 😆
@fleet parcel actually u dont
and it appears its not actually fixed haha
but just FYI @fleet parcel this is a sufficient way to test that
rm /var/mobile/Library/Preferences/com.nito.Breezy.plist ; killall -9 cfprefsd TVSettings
Yeahhh...
I dunno.. Something about that new tvOS smell gets me to revert every time
haha
im just letting you know for reference that is all you need to do to test things like that for settings bundles
but yeh apparently what i thought fixed it, didnt. so i just made another change and that did indeed fix it
Also, i don't know if Steve knows, but the latest checkra1n doesn't work with first (maybe second - revised?) gens of the breakout
It seems to exploit, but nothing appears on-screen
ill poke him about it and see what he says
I'll try to get logs if need be.. Found this out after helping a relative exploit their new 4K
Sadly, it arrived updated.
Not yet
Gotcha thank you
Had a few ideas to test out before even thinking about releasing
Makes sense theres so many apps its hard to get em all working
Yeah, and instead of making an individual tweak for said apps.. It's smarter to make one and toggle it
@analog elk indeed they are
Lol
Because of noisy squeakers flooding Apple's servers
ive given up trying to get back on. fuck that commie cesspool of scientifically and economically illiterate reprobates
thats me putting it nicely 🤣
Imagine getting back on Twitter undercover as a commie
ive thought about it but i wasted enough of my life on that shithole 🤣
would have a million billion of the worlds dumbest followers in like 2 days
well my alt was freeNitoTV
Lmao
Like not Jony Ive
and it got “security locked”
and i have since lost access to related phone number
was from an old work phone
Can you not verify via sec Qs? Or is it just phone number?

17K was nice while it was there...
Scared me at first.. Ngl
Ill sell ya my twitter account lol
Ppl selling Twitter accounts is sus
and all the alternative platforms are run by neo-puritan bitches. you really cant win. commies on the left puritans on the right
lulz indeed
but yeh the gab people are super conservative anti sex/porn/anything fun zealots, and parler isnt any better.
and then on twitter its a hate crime to talk about basic biology
Love how Yalujb ripped my video, re-uploads it and re-announced it for followers/RT
Is this referring to gender neutrality?
thats talking about just stating scientific fact, like gender dysphoria is a mental illness.
the alphabet crowd screeches like howling hyenas if you ever state that incredily basic fact backed up by the DSM
thats what one of the unhinged stalkers reported me about months ago apparently
if ppl take scientific facts as an insult thats not my problem. just hate walking on egg shells because people go out of their way to be offended
This made me cringe..
yep thats the mental patient i was talking abut
about
creepy stalker who hate followed me and responded to literally everything said but i muted him long ago because i wanted him to have same experience as i did
talking to a brick walk
lol
in retrospect i should've blocked him
Only ppl i have muted/blocked are ads
although i dont think he actually had anything to do with getting me banned
No, it was the other guy
Plus Jack was prolly sitting there keeping score
lol probably
Speaking of "disasters" 14.3 is out
lol not touching that right now
But, in the event that you do, you can still get to 13 😉
12.4 was nice...
i just try to have one on each v from 11 up
https://media.discordapp.net/attachments/442825318068256769/787729339708866560/image0.jpg fail on the music app on 14.2
That happens for all tracks (non jailbroken)
thats fun
what was that button for?
shouldn't have to update for fixes
nah uicache shoukd affect the appearance of individual apps
all it does is add apps to a db essentially
Or some cache for the music app
nah not really
they made some weird ui changes
if you dont build with 14+ sdk strange shit happens
I prefer the UI for music on 14.3 it’s a lot bigger
@torn spade and i spent days debugging things related to that
So did Apple fuck up the music app?
oh righg its their app, i guess so?
appletv has always been refheadef stepchild
constant neglect and underutilized resources
F
I have 2 code level support incidents that are expiring in April I think that I need to use
(I have a developer account)
Anyone here had any success using Checkra1n on an TV 4k with Golden eye+DCSD cables and a linux machine?
I've managed to get the device recognized by Checkra1n but I keep getting "whoops, device didn't enter DFU mode"
yes for all part but the linux part
@hard moat but i have heard issues with ppl getting in DFU with that setup
not re: linux
but dcsd+ge
so one of the two cables might be faulty
MIGHT
how are you trying to get in dfu?
have u tried the DCSD in both orientations?
Connecting tv to golden eye and DCSD, reboot via remote
apples way of killing etasonATV so they can unsign 7.6
Yes but Checkra1n only recognizes the TV on one of the orientations
Yes because the DCSD cable is orientation sensative
save blobs folks
I wonder if they encrypted ibec and ibss in 8.4.6
prolly not.. but unsigning is easier
@hard moat so you have tried both tho. thats the important part
try both BEFORE plugging in power
I don't know where it is
Trying now
Might as well update to 8.4.6
because you dont get in DFU with remote on 4@
k
where what is?
4k
Ok
Link for tss1conan
An online easy to use APTicket / SHSH2 blob saver and checker. SHSH2 blobs are used in unsigned iOS upgrades and downgrades. App available on https://repo.1conan.com
With bottom side it just shows normal mode in Checkra1n, with top side it boots normally and then doesn't get recognized by Checkra1n until I flip the cable
wonder if the cable/port is damaged?
Wouldn't Checkra1n not recognize it if it was damaged?
it'd be like a charge cable... if it was damaged, recognition may be intermitted...
well, they cant call it 7.7 seeing as it just patches little things..
cool
Anything I can use the cable for on my iPhone to be sure if the DCSD is not damaged?
There is
Also just saved blobs for my iPad Pro 10.5 inch
Should I buy a new Apple Remote or just search eBay
(the remote for the 3rd gen)
Ebay it is
Actually it looks like most of the remotes on Ebay are knock offs
most of which are, however, any remote will work for the 2/3 (given its paired)
How does the pairing process work on the 2/3 gen
@fleet parcel uhm
But isn't the 2/3rd gen IR
Ah
@hard moat this is the thing. it should START in dfu if both cables are working properly if plugged into a device
no directional buttons mapped
if DCSD is in proper orientation
Is the 3rd gen even worth the $20 for a remote
@somber ivy no
nitoTV just happens to work on it without me changing anything
i give zero attention to work under the 4th gen
I should make an adult toy that's a remote for the hell of it
How does DFU look on atv at all? Black screen with device light blinking?
you have that... phone on viberate 😉
😛
always has been
Until Apple drops it
i don't think they will since airdrop in the pinnacle of offline digital streaming nowadays
You mean Airplay
@somber ivy the TOSlink is actually its best selling point tbh
otherwise its not super useful
Actually i mean air*
@fleet parcel Sorry I meant when you go Settings > System > Restart.... is there a way to get a popup warning on the "Restart" option?
@fleet parcel correct!... anyway to extend that tweak to that part of the tvOS menu?
Bruh.. It's standard on there
Oh, it's not working for me?
It works only in the Nito app
13.5 unc0ver for 4 and 4k
k... pretty sure I did that but will test again and report back, thx
You can kill settings by swiping up in the multi tasker
But a respring should do it too
man i appreciate holding down these forts for me @fleet parcel more than i can express
@fleet parcel unfortunately does not work for me. I get the popup warning in the Nito app but not from Settings > System > Restart. I killed the Settings app (swiped up) and resprung twice. Both times failed. This happens on all my apple tv's 4k unc0ver 13.5.
what doesnt work?
One of my tweaks unfort
Should be an easy fix
Are you able to send a log @storm ridge
ok do you thing then 👍

no need for ssh.. you can send it via airdrop in nitoTV
what tweak do i need to install on the ATV to airdrop
have not airdropped to the box before
ok figured it out
I have a log now, do you want it uploaded here?
yeh youre geared from the start to AirDrop nitoTV depends on Breezy
ooh shoot! Apple changed it in 14.x.. yeah i'll fix it
@desert hawk ya "it just works" haha
perfect... thx as usual to you guys 👍
@fleet parcel gdi it does “just work” 😝
ha
weird works fine for me. depends on what you AirDrop if it doesnt plsy in AVPlayer it wont work
@desert hawk
Oh im talking about airplay/mirroring, not airdrop. Turned off videopace on my phone but that didnt change anything. There a way to turn it off for airplay on the tv maybe?
Seems to just be playing too fast so audio not playing/out of sync. And i cant get it to change from 1.3x
Ill put it to 1.0 but speed stays same
Hate to “complain” its still awesome i have it at all
@jaunty rune thats janky. i only tested it in VLC and Ethereal and after i fixed only issue i found it worked flawlessly as far as i could tell
Hmm and you were able to switch back to normal speed?
@jaunty rune yes
Maybe its tvos13?
i was testing on 13
Damn
everything i test is on 13 and 14
Hmm guess ill have to keep playing around with it. Was there an airplay option when all the system apps were showing for “enabled applications”
@jaunty rune no. it should only show for apps that advertise support
I mean so theres def no way to switch it off for airplay?
not specifically no
Hmm
the crux of it is ‘’’
%hook AVPlayer
-
(void)setRate:(float)rate
{
PrepareSettings();
%orig(rate * rateFactor);
} -
(float)rate
{
PrepareSettings();
return %orig() * inverseRateFactor;
}
%end’’’
damnit cant do that from phone 🤣
but it essentially only disables / enables per app
and from there only relevant point is media format
if AVPlayer doesnt support it it will be innocuous
Yah and it works fine..ish like with netflix. Airplay the only thing not working right. Besides it not changing from 1.3x speed. Was 1.3 set as the default? Because before i did anything it was set to that
yes @jaunty rune that is default but if you adjust it in the UI it should adapt as necessary. you grabbed the latest version right?
because the first release required quitting and repopening the target app for changes to be caught
i didnt fix that issue until yesterday or today. i forget which
I mean im pretty sure it was the newest one from late last night. But ill give it a try in a few again.
but i did verify Ethereal would change playback speed as i modified it
Ok yah ill test it out in ethereal
and audio playback sync isnt something i tested throughly. anything that uses AVPlayer should work.
if its not an mpeg4/h264(or supported codecs) it wont use AVPlayer
and the playback speed wont be adjusted.
that being said the framework i utilize in ethereal may or may not allow adjustment on playback speed, i never dove too deep there
Yah audio was fine for netflix only issue so far is airplay i see. And the 1.3 x stuck speed. Ill do some more testing
yeh with the latest the code should sync properly every time the value is changed
It does act up every now and then on ios so maybe its doing same thing
this code added right here /should/ cover the bases
NSString *tvs = @"/System/Library/Frameworks/TVServices.framework";
NSBundle *b = [NSBundle bundleWithPath:tvs];
[b load];
[%c(TVSPreferences) addObserverForDomain:@"com.rpetrich.videopace" withDistributedSynchronizationHandler:^(id object) {
NSLog(@"[VideoPace] settings changed!");
settingsArePrepared = false;
}];
cuz if settingsArePrepared is false it reads them fresh
and that was the core issue on it grabbing new values into the apps it targeted
Ah nice yah ill redownload newest version see if that helps
cuz as of right now i dont do any of the darwin notification stuff in PL, AL or VP
and just rely on those sync handlers
doing that for cross compat id on my eventual roadmap
but for now i just want to support as much as i can as quick as i can.
@fleet parcel btw we have somewhat perfected loading settings bundles for PL into a run of the mill App. can potentially save on some repeat code for the instances where want identical to the settings bundle with a tiny bit more added
Should u0 or checkra1n matter?
why doesn't 13 have a reboot handler in TVSettingsGeneralViewController
@jaunty rune full disclosure CR is all i can test on right now
For sure yah i was going to update before any of this anyway. Prob just do that before i go testing again
that being said im using a pre-release of substitute for checkra1n so the code injection platform should be an issue
shouldnt*
the jailbreak itself? maybe? but u0 worked exceedingly well for me when i tested it.
especially juxtaposed to the trainwreck electra et al ended up being
Ah naw i meant specifically for videopacw
@jaunty rune it /shouldnt/ matter
Right ok just a shot in the dark
which is why i brought up the substrate v substitute arg
i mean it MIGHT.
but it shouldnt matter
its worth a mention absolutely. but i dont think it should matter
@fleet parcel the answer is because they hate tvOS 🤣
its neglected
u know dis doe
i wonder if its controlled in pineboard
possibly. always a potential target of core func
need 13.x headers
man im so happy im doing applist finally 🤣
time to downgrade
135 is latest i did
@fleet parcel
or i guess 1345
but i doubt they changed completion handlers between there and end of 14 re: rebooting
i mean yeh maybe? but doubt
@desert hawk ok so ethereal works perfectly
Now to try netflix then airplay
And am i tripping or have animations been quickened?
@jaunty rune maybe?
@fleet parcel btw
handy link to bookmark for sdk diffs
found that recently
which utilizes http://codeworkshop.net/objc-diff/sdkdiffs/
also this will be useful i made it into a framework on tvOS for easier runtime subclassing and introspection @fleet parcel https://github.com/mikeash/MAObjCRuntime
com.mikeash.maobjcruntime is the package
iirc
Ok ethereal is perfect but netflix is still stuck at 1.3x and airplay too fast no audio. When i switched youtube on ios to .75x it played at normal speed on airplay but still no sound
weird yeh i got nothing tbh lol
Meh hopefully its u0 for some reason. Ill keep trying diff things. Or maybe petrich will come out of hiding and i can bug him about it
But srsly thanks again i will take netflix 1.3x any day
Too bad no way to flip videopace off alltogether like in icleaner on ios
@jaunty rune it probably wouldnt be a hard change, i just tried to make a 1:1 solution for tvOS to get it done quickly
@fleet parcel btw some fun with the framework i just told u about
(typedef void*)(0x2815bdfb0)
cy# @import com.nito.utils; 0;
0
cy# self = TopSettingView()
#"<TVSettingsMainViewController: 0x101813a00>"
cy# self = TopSettingView()
#"<ALRootListController: 0x1018f6800>"
cy# c = [self class]
ALRootListController
cy# [c rt_properties ]
@[#"<_RTObjCProperty 0x28283cf00: domain @\"NSString\" _domain>",#"<_RTObjCProperty 0x28283cee0: groupTitle @\"NSString\" _groupTitle>",#"<_RTObjCProperty 0x28283f3e0: specifier , @\"NSDictionary\" _specifier>",#"<_RTObjCProperty 0x28283f3a0: sectionDescriptors , @\"NSArray\" _sectionDescriptors>"]```
oh yeh u should probably start messing with cycript scripts @fleet parcel
if u havent already
@desert hawk quick .. and how! Yah man thanks again. Ill take it
np
as i mentioned before AppList was on my very long to-do list
so im glad i got a good excuse to get to it finally
@fleet parcel a good starting point with a script i modified to have more sciency stuff by default BTW
including how i got to the top view of a settings view with one line of code utils.TopSettingView = function(){ var top = [UIApp keyWindow].rootViewController.navigationController.visibleViewController; return top; };
it also adds handy stuff like tryPrintIvars by default
Congrats on getting VideoPace working for tvOS @desert hawk you beat me to it lol
@umbral ingot thanks 🙂 seems like it still has some issues but im glad its at least a start!
the whole crew here nice
im also just really glad to get applist into the mix as well, long overdue
So happy about that too! @desert hawk
oof...
@fleet parcel not sure what the oof is about but okay 😛
Need to update SnowyTV now to support it
🙂
cy not playing nice
@umbral ingot keep in mind that it doesnt have the same 1:1 support of the iOS version yet
but it has enough 😉 if you look at VideoPace or bfdecrypt plists itll be completely sufficient
my forks that is haha
well the OG VideoPace plist is completely sufficient, i didnt change that at all
the bfdecrypt one i had to change
Also just found out that Screen Record Module doesn’t quite work correctly on tvOS 13 got info from one user that said it didn’t
Might be an entitlement issue
but this kind of thing does completely work
Don’t know yet tho
and theres an example plist that works with applist in its current V
my pleasure
im working on it right now to be at least a bit closer 1:1 with its iOS counterpart as far as different sections for System and User apps and whatnot
Awesome
i hate it when apple updates broken stuff.. but then the stuff that works for the latest we have to massage for the broken on lower
I know right?
also if u want to hunt down entitlement issues the log is actually pretty helpful at telling you where you went wrong
Ok thanks will look into that
yeh it generally tells you EXACTLY what you are missing ill try to hunt down an example
I’m just glad I was able to get it to work great with tvOS in general lol
No more QuickTime
Also just found out that Screen Record Module doesn’t quite work correctly on tvOS 13 got info from one user that said it didn’t
@umbral ingot
Haha np. I was gonna tell u to get on the discord too
It’s easier than Twitter since they’re being fascists
I’ll downgrade later on today or tomorrow to try and see what the issue is with the module
hope you saved blobs
No worries. Like i said prob upgrading soon
I did
But im sure having it work on 13 would be good too
Yeah that’s been the goal since day one of its inception lol
Could be a code difference too I’ll have to look
I’m gonna open source it once I get everything working as intended
It’s actually very easy
The tricky part was AirDrop because my moronic self didn’t know you could AirDrop the directory
Only individual files
Or at least I thought
If youre a moron i guess that makes me forrest gump
forrest gump was smart tho
@umbral ingot okay heres the kind of message you want to search for if its an entitlement issue: ```error 15:20:03.013904 -0700 kernel System Policy: screencapture(1171) deny(1) iokit-open IOSurfaceRootUserClient
This must be in your com.apple.security.iokit-user-client-class entitlement.
now it MIGHT lie to you sometimes about what you need
but that will give u a good idea of what to grep for in your logs
Thanks @desert hawk
and what i usually do if i add the one they say and it doesnt work is i look through my entitlements list for some other daemon or app that might have the same functionality to see what they have
and that should be a lot easier with how i dump headers et al now because i include a full list of the entitlements here in each one: https://github.com/lechium/tvOS142Headers/tree/master/entitlements
but if you ever want to make a similar list yourself
i would hold off on 14.3 until people verify it isnt broken in any way with checkra1n etc
Helper scripts to find which frameworks, launch daemons or applications use certain frameworks or entitlements (fuzzy case insensitive search) - entitlementFinder.sh
is how i make those entilement lists, i mount the related DMG for the version and then use that as the target location with that script
com.apple.private.replay-kit
That’s what I think I need
It’s on tvOS 14 but not sure about tvOS 13
maybe - but either way that is how i usually scour entitlements for details if i dont feel like interacting with jon levins site about it, plus hes probably not as active updating them for tvOS as necessary
but yeh the key takeaway is honing in on 'kernel' in your console log if u suspect a missing entitlement is keeping you from your goal
@desert hawk thanks again. I’ll definitely look into it
np
wait can i not pin messages to this channel? dafook
im just surprised that i cant. thats janky as fuck
i blame your discord 2fa troubles
Ouch man
someone needs to update my settings on this channel is what i blame
but me being MIA for so long didnt likely help
@haughty thorn
Anything is still better than Twitter just saying @desert hawk

@umbral ingot i honestly mainly miss the ability to keep people up to date that use my work
I know that’s the sucky part :/
but it did force me to be active here again so theres that benefit
betcha you're on discord mobile with your i12 @umbral ingot
Same yes i am lol
its kind of funny that i missed for as long as i did that wildcards were possible w/ apt
apt-get install *screencapture*
was good seeing you back again, it was either bingner or no-shave hayden here...
lol its honestly good to be back. i was soooo busy w/ guardian stuff for 2.0 i just really didnt have tons of time for any of this
It’s just nice to be able to talk directly you guys
oh for sure
Ok still a noob with tvOS stuff
and by guardian stuff you mean making the icons fancier 
*I am
@fleet parcel u better be joking i did much more than that 😛
the entire UI got a massive overhaul
including widgets too i saw
i re-wrote a complex swift library to straight obj-c which is why im assuming u mentioned the class topic u did
Swift 🤢
re-writing this was no small feat
but not only did i re-write it, i added features the OG didnt have
Nice
and the funniest part about ANYTHING right now is that i got requests for VPN support for the last... kajillion years
and it didnt really matter to me to look into it until i worked here
and was working on the connection sharing feature
through mobileconfig
and was like.. okay why cant this work on tvOS time to figure that shit out
I’m just amazed at the fact that it was done. I’ve looked at some the vpnd and module code it’s astonishing
thanks man @umbral ingot but TBH most of that code is vanilla VPN code that u can find in samples all over. it could totally work inside an app (and was inside of nitoTV the same as it is in guardian) until i decided to split it out into a daemon/xpc service for the potential for it to be more stable and have other people use it as well from their apps if they wanted
You’re welcome
the only code that is different is some of the experimental code i have macrod out or the XPC code
and that was a big motivation to open source it, to see if others wanted to dive in to try and help fix it. its really fucking weird
and its why i did a recursive text seach in my headers folder for ANY instance of the letters "VPN" and copied everything that was found into a "Research" folder as part of the repo
good central source to jump around headers related to VPN
and this was the resulting hits https://github.com/lechium/vpnd/blob/master/Research/VPN.txt
tl;dr i would create a connection with the main payload from the mobileconfig without plucking any details out and it would work the first time but then if i tried to create a new config and use it instead afterwards it would still try to use the config for the prior connection. so itd be a mismash of stuff that didnt work
which is the stuff that is happening here but is currently inactive
NSString *payloadDisplayName = mainPayload[@"PayloadDisplayName"];
//MCVPNPayloadBase is in ManagedConfiguration framework the goal is to make ourselves an NEConfiguration and
//then to create a 'configurationProtocol' from there. this works the first time but then struggles to work subsequent times
id mcPayloadBase = [NSClassFromString(@"MCVPNPayloadBase") NEVPNPayloadBaseDelegateWithConfigurationDict:mainPayload];
NSLog(@"mcPayloadBase: %@", mcPayloadBase);
self.configuration = [[NSClassFromString(@"NEConfiguration") alloc] initWithVPNPayload:mcPayloadBase configurationName: payloadDisplayName grade: 1];
NSLog(@"[vpnd] config : %@ made with name: %@", self.configuration, payloadDisplayName);
[vpnManager setConfiguration:self.configuration];
[self.configuration syncWithSystemKeychain]; //maybe this is wrong because we are owned by mobile and not root?
self.configurationProfile = [self.configuration getConfigurationProtocol];
NSLog(@"[vpnd] config protocol: %@", self.configurationProfile);
[vpnManager setProtocolConfiguration:self.configurationProfile];```
@desert hawk it still amazes how it works tho.
haha @umbral ingot i always had a suspicion it would "just work" tho
the only real hinderance is taking out the macros from the headers to say its possible, same as with the UIWebView stuff
i just never bothered with ANY VPN code until guardian cuz i never really used them
There’s a lot of stuff hidden in tvOS. That I believe one could get working if they put a lot of time and effort into it. I can’t believe a lot of iOS classes still exist in tvOS. I know it’s based on iOS but you would think Apple would’ve removed a lot of iOS frameworks that aren’t needed. But most of it is there.
but this code DOES work the initial times, its just subsequent tries with a new config where it borks, if u dont change the config the original one continues to work. and if u change the setup where it only grabs the EAPUsername, password and hostname and then that will work too
cuz the the username/password/hostname default setup that works consistently between different hosts is pretty much the same code we use in Guardian, which is why i was so surprised they didnt mind me open sourcing any of it
but to circle back to what i said initially, code to use NEPVNManager is plentiful, and we dont do anything special there
It was awesome of them to let you do that. It’s gonna benefit others in the long run.
its going to benefit the entire ecosystem. im even more confident it will happen at some point after ethan arbuckle did such an amazing contribution to Breezy. that was the first time i've had someone join in on a project i open sourced that made a MASSIVE contribution to it.
because yes AirDrop on tvOS was a huge deal, but VPN COULD be an even bigger one potentially with its demand. idk
@desert hawk give it time I feel like it’s gonna be huge
no one ever asked me about AirDrop before i made it work in both directions, i've gotten VPN requests since ever
Airdrop is amazing to have
yeh ngl AirDrop addition is one of the best things re: tvOS ive ever worked on, by far.
Has helped me a lot
the amount that it makes posssible
Especially with AerialChanger and Screen Record Module
just keeps paying dividends, it was the whole reason i tried out the VPN stuff
yeh i havent messed w/ your screen recorder, i guess that means its out now? i lose track of things now that im not on twitter anymore
Yes it’s out now
nice 🙂 did u OS it as well? also i do appreciate how much stuff u have done that with
oh BTW theres a new paradigm for tvOS pref bundles that makes things more uniform if u use the same icon between your bundle and its items. sam helped drastically there this week @umbral ingot @fleet parcel
which is one of the reasons its seen so many updates lately
Yeah thanks I’ve noticed
I have to update a couple of my tweaks icons now
It seems to load faster for me now to
but if you paid close attention going from menu to menu in TVSettings theres no flicker between the images if it stays the same (no reloading/no flicker) and thats because of what he added for it
It’s so much better
tldr its this stuff right here
yeh its really smooth now, and it even applies to stuff loaded w/o bundles purely from plist as well. it also geared me up for things i needed to fix because of applist since i hadnt touched this project in a long time before this
Here it is in action
very nice work
Thanks
np 🙂
Do it
is kernelcache not encrypted :/
tf
@fleet parcel would it be possible that everything is unencrypted besides for ramdisk and rootfs
okay applist_1.1-8 is up and will be the last one for a bit. it supports the same style section specifiers as the iOS version now ie { return @[@{ ALSectionDescriptorTitleKey:@"System Applications", ALSectionDescriptorPredicateKey: @"isSystemApplication = TRUE", ALSectionDescriptorSuppressHiddenAppsKey: (id)kCFBooleanTrue, }, @{ ALSectionDescriptorTitleKey: @"User Applications", ALSectionDescriptorPredicateKey: @"isSystemApplication = FALSE", ALSectionDescriptorSuppressHiddenAppsKey: (id)kCFBooleanTrue, }]; }
and can turn off support for the long press menu if wanted with ALItemSupportsLongPress
turned off
and thats a root level setting
as is ALAllProcessesMode which is experimental - that will list ALL Running processes and takes a hot minute to even load the view
not that bfdecrypt would be helpful for that scenario was just a good test harness lol
Wen eta konami code in tweaks
lol i mean TSKSettingItems have support for them. i havent really messed with setting any though
They really need to change "iphone os"
lol
@fleet parcel youll be sad to know i dont think they ever actually use the konami codes
the internal settings menu is just hidden by a gesture recognizer
#"<UITapGestureRecognizer: 0x10be97450; state = Possible; view = <TSKTableView 0x10c0f0e00>; target= <(action=_toggleInternalSettingsItem:, target=<TVSettingsSoftwareUpdatesViewController 0x10d0d5400>)>; numberOfTapsRequired = 4>"
cy#```
so unfortunately i dont even know how to set a sequence on them
hahaha i got them working anyways @fleet parcel
?
konami codes
i just tried one out to see if i could figure it out
got it on the first try lol
yeah, theres like 4 of em
oh
#"<UITapGestureRecognizer: 0x10be97450; state = Possible; view = <TSKTableView 0x10c0f0e00>; target= <(action=_toggleInternalSettingsItem:, target=<TVSettingsSoftwareUpdatesViewController 0x10d0d5400>)>; numberOfTapsRequired = 4>"
cy#```
that internal settings one is a gesture recognizer
although i guess it makes sense, because it doesnt matter what you have selected when u trigger that menu
and konami codes are per settings item
or group
@fleet parcel creating and adding one was super simple tho
NSArray *sequence = @[@6,@6,@6];
[test setSequence:sequence];
[test setAction:@selector(doRandomAction)];
[item setValue:@[test] forKey:@"_konamiCodes"];```
i wouldn't mind using one for a tweak
guessing the values that will work in that sequence are 4,5,6 and probably not much else
because they correspond to UIPressTypeSelect, UIPressTypeMenu, UIPressTypePlayPause,
happy birthday @analog elk
but yeh i hit the playPause 3 times and ```default 21:30:06.379112 -0700 TVSettings triggered?
and thats all doRandomAction does right now, just wanted to see if it worked
ayee thx
yeah, 'tis your thing @desert hawk
😛
i'm curious as to what that does and "science button"
@fleet parcel no idea 🤣 probably something scientific. 🤷♂️
where does this button live
Good news @storm ridge, I managed to make the "Restart" button respring the device... bad news, it doesn't prompt. But I'll see what i can do

@desert hawk so it seems it does use pineboard
in 14, they changed it to TVSettings
which, was correct
@fleet parcel what uses PineBoard?
oh that. what did it used to do?
no i mean u said it didnt use PineBoard before. curious what it did use
I think 14 does as well, but the function is inside TVSettings is present whereas 13.x, didn't exist
ah i see
reset all contents does
sounds like it was offloaded to an XPC service
probably
i had a hunch that pineboard was the culprit
been looking for that buttons function for a long time...
isnt it just the action of the settings item? @fleet parcel
indeed
gotcha, glad u figured it out 👍
learning from the best 😉
it should be fairly simple to shorhorn in a prompt.
assign a new action to the item and then add a new function, that function shows an alert and the affirmative item calls the old action
thats at least one approach
@fleet parcel
should work
yeah, i have uialertcontroller implementation i can use
it's funny; I tried to use actionsheet.. but it only gave me the regular uialert
yeh i dont think they display any differently on tvOS
i noticed actionsheet will display for reset all contents
but when i did it.. it just prompted
wdym?
when you use reset.. it prompts you to reset and update etc from the bottom of the screen... but doing actionsheet just does regular uialert
ah i see. interesting.
i see what's going on...
ah yes, internal version 8.4.4 but marketing version 8.4.3, makes a lot of sense
The internal version is 7.6.2
Learn about features in Apple TV (2nd and 3rd generation) software updates.
well, this is confusing, because isn't the 7.x actually the marketing version then - you know, the one Apple says it is
and the "internal" version (like on the IPSW) is 8.4.4
I also saw some 8.4.6 though, this is confusing
yeah IPSW seems to be 8.4.6, but OTA is 8.4.4?
I don't even have an ATV3 just thinking about wtf they're doing with the version numbers there 
@fleet parcel that is a great. Looking forward to the update!
@analog elk wanna see the weirdest thing
sure
the version numbers were always weird with 2nd and 3rd gen. there was three versions of 4.3 iirc
@analog elk the versioning is off because it isnt technically iOS, but a mix of macOS combined.
ugh tfw your internet is going slower than dialup 😦
Tfw you miss Kevin's daily political ranting and get flooded by Siguza's odd-ball laughs..
But nowadays its coolstar on with chimera and electra updates..
yeah, i talked with cs a while back.. They're not fond of you either 😝
i could give zero fucks what that mental patient thinks
How was your sleep? Has your back/tooth recovered?
oh my back has been fine for a while, that ended up being a kidney stone. my tooth is mostly fine but i still have something going on that i cant figure out for the life of me. need to go see another dr about it.
Might have to pull it..
everyone says its covid (cuz fucking EVERYTHING is covid nowadays) because its fucked up my taste and smell but i got tested and it wasnt.
although those tests are completely useless, even the guy that invented them said they arent accurate tests for covid lol
but i wont go off on that bullshit in here
Someone told me they're scared to update from my repo because i haven't been tested yet
actually everyone says its covid EXCEPT my drs. they never thought it was lol.
lulz
but my drs are actually competent, unlike the ones that set policy lol.
I don't think that's a symptom.. But then again you can get it with having zero symptoms..
the lack of taste and smell is actually a sympton, supposedly anyways. but thats not even consistent with what im going through. i can test and smell but everythign tastes and smells horrible
well mostly everything
and thats not the same as losing your sense of both, cuz when u lose your sense of both u literally cant taste or smell
so its not the same
lulz
We all love compression.. Where it takes minutes to download and upload but an hour to install...
Meh, easy for you to decipher
I managed to get 4K keys yesterday
So I'll upload them and let adam fix my mistakes
It seems Apple has gotten a tad lazy since the pandemic
And lazy in the sense of carelessness
theyve been on a down slope for years imo.
so i cant think of any smart way to support dynamic konami codes in applist so ill prob just add a default one for double play tap to quickly open the selected app or something. open to ideas @fleet parcel

I had a useless one...
Perhaps adding libcolorpicker to it
I almost compiled that.. But had a few issues with the api being unavailable
.. For tvOS
how would that apply to applications? lol
also how would that even work on tvOS. that kind of stuff kind of requires a touch screen @fleet parcel
You could select the ui view, then manipulate the wheel/bar with the trackpad
trackpad??
Yeah, on the Siri Remote
Lol again.. Useless idea
Well say you have a tweak for changing the colors of an apps elements
Applist would select it
idk how something like that would even work on tvOS the nav paradigm just isnt a good fit
Could applist be incorporated with breezy?
in what capacity
Like if you wanted to transfer a file straight into any app
@astral marten gotta make those reds into blues
@fleet parcel that cant work
the apps themselves need to have code to handle the files
Oof
and dynamically adding that in a way that can work in most apps just wouldnt ne feasible. like for VLC i had to look at the source to see how they handle importing and playing files
plus applist isnt really suited for use outside of preference bundles yet
Yeah, i hate that i can't port most iOS app tweaks because they changed the headers in the tvOS vers
you could query the data but youd need to roll the rest of the ui yourself
i feel like theres more issues than that for porting stuff
but i get the gist haha
I mean, granted the functions would work as intended with valid hooks.. But it seems to be all server based for tvOS
@fleet parcel what is server based?
a lot of checks, ads etc
oh i think i get what you are saying now

lol i love when things like that are called "easy" 😛
Ik
thats not even the kind of thing a theme could support without changes to the theming engine
cuz if a theme does ANY code injection, its doing it wrong
Ye
I was thinking about using a theme from iOS 
Maybe just edit the size and make it compatible for tv os icons
uhhhh yeh no.
lol
icons on iOS are nothing like the tvOS ones. different shape, size and layered
That’s what I’m talking about

unless u have the raw much larger source of the original images
I could easily get em
cuz blowing them up or resizing them would look like trash
yeh if thats the case, different story
thats all i meant really heh
ios themes are drastically smaller, not to mention they include other additives that tvOS simply doesn't have nor support
like settings icons, CC spacers, status bars
yeh that too.
some things just really dont carry over well between platforms (story of my life 🤣🤣)
I remember the good 'ol days when waking up the Apple TV was done by pressing any button such as Play/Pause..
now i find myself pressing an assortment like Menu, TV and trackpad
yeh me too. and itll just straight up not work sometimes even when u button mash
back in 11/12 days
hey @fleet parcel u mind relaying a message to @mdwoolweaver on twitter for me? hes been trying to get in touch with my alt that is “security locked” which i dont have the number for anymore
sure
just tell him and anyone else for that matter (in a more general tweet) that ive given up on that platform, possibly forever.
ty
and if ppl want/need to get in touch with me to come onto this discord server or my class one. either is fine
appreciate it 👍
i think im gonna get more active on my blog to have some kind of online presence still that ppl can periodically check.
I keep thinking this user is significant for some involvement in the jb community... but I can't put my remote on it
lol





