#development

1 messages · Page 55 of 1

acoustic imp
#

/user/me/theos

#

i installed it

radiant idol
#

yikes

#

its supposed to be in /opt/theos

acoustic imp
#

this is mac os?

radiant idol
#

yes

acoustic imp
#

uhhh, this is how its been for me on my other mac os VMs aswell

#

@hasty ruin run echo $THEOS

acoustic imp
radiant idol
#

you have to remove it first

hasty ruin
#

everywhere except checkra1n idevices

radiant idol
#

wha

hasty ruin
radiant idol
#

why is mine in /opt/theos then

hasty ruin
#

skill issue

radiant idol
#

its always been in /opt/theos for me

cloud yacht
hasty ruin
#

the theos docs have said to use ~/theos for as long as i can remember

#

and now it uses an install script

#

which uses ~/theos

radiant idol
#

maybe they changed it or smth

#

because i swear it used to be /opt/theos

hasty ruin
cloud yacht
#

its been ~/theos as long as I've been developing

acoustic imp
#

anyone know how to fix?

#

@cloud yacht ?

cloud yacht
#

install clang++

#

idk

hasty ruin
#

show makefile

acoustic imp
hasty ruin
#

remove line 5

acoustic imp
#

im stupid and blind

#

thx

tepid olive
#

How can i make my app run pip? Do i need to link to anything so that i can use NSString?

frail cedar
#

To run the pip binary you'd need to spawn it somehow

torpid beacon
#

Does anyone here use Zed as their editor?

zenith hatch
#

but i do have it because its unfortunately fast

tepid olive
#

So i have a bool in swift and a bool with the same name in cpp, the swift one gets changed if my toggle gets changed.
I want the cpp bool to also change when the toggle is changed. So i had the idea to make a cpp function which gets called once the swift bool gets changed and then tries to change the cpp bool too. However i want the cpp function take the bool it needs to change as a parameter, because i have a lot of bools and i dont want to create a new function for each of them. How can i do that, or what would be a better method of doing so? In the end i just need to get the value of the bools assigned to the switches

tepid olive
#

Is mach_port_t and task_port_t the same

steady nest
ocean raptor
tepid olive
#

its in kernel

hexed knot
#

googling is a very important skill

#

especially with what ur doing

indigo peak
#

seem different to me

topaz yew
#

how can i make sure my process in my launchdaemon restarts if the process is killed

#

or stops

tepid olive
#

2nd one is in kernel?

#

its in mach?

#

in task in mach ???

#

which file is it

#

Task.h?

#

k thanks, i didnt know xcode has dev docs built in

#

wtf

#

NSObjCRuntime.h doesnt know what a nsstring is

tepid olive
#

i didnt include the header which was task.h

#

where exactly is that header

#

somewhere in foundation i think

hexed knot
#

.

#

capt ur a dumbass for getting ur acct disabled

#

probably bc ur not getting unbanned

#

u need to show them ur id

#

bozo

#

me personally im never showing those furries my id

tepid olive
#

does it matter if i use include or import

hexed knot
#

these are questions u can google big bro

tepid olive
#

i did

#

i didnt find out if it matters tho

hexed knot
#

#import also works on gcc i think for c code

#

its just not recommended

#

use header guards if ur not on apple

#

yea

#

how much

twilit jungle
#

Generally Not Used

tepid olive
#

so i need to include nsstring in the file where i included foundation.h?

#

cuz it still gives the errors

hexed knot
#

no

tepid olive
#

ok

#

where then

#

it doesnt know anything

#

wait i need to extern c

#

dont i

#

ok i dont

tepid olive
#

If i have a toggle in swift, what would be the best way to check if its on or off from my cpp file? I had the idea of making it call a cpp function once the toggle changes, but i dont want to make a new function for each toggle

#

Wouldnt that need a function for each of the toggles?

#

Since the toggles all need a bool, it would just check for the bool right?

#

Hm ok, then ill do what i did now.

#

Ill see which one suits me better tomorrow then, thank you.

vivid dew
#

case 13

frail cedar
#

Have it toggle a bool and check the value in cpp (if you can, the most multi-language I do is like two lines of objc for my Swift app) is how I'd do it. This is most likely not the best way though

snow python
#

iirc newest swift allows straight CPP interop, though that may still be in beta or something

frail cedar
#

That sounds right

twilit jungle
#

case 14?

primal perch
#

case 16?

tepid olive
#

So in including a .h file from my .cpp.
In the .h it includes Foundation.h.
Foundation.h includes NSObjCRuntime.h
But that doenst know what a nsstring is

#

ig its bc i included it in a .cpp file?

ocean raptor
#

NSString is objc

#

So use either .m for objc or .mm for objc++

tepid olive
#

Mm then

tepid olive
#
#import <Foundation/Foundation.h>

void start();

Is this all i need to define my start:

void start() {
    pthread_t myThread;
    pthread_create(&myThread, NULL, myThreadFun, NULL);
}

to call from swift?

#

I imported in the bridging header ofc

ocean raptor
#

idfk

cloud yacht
#

Using switch statements for switches

tepid olive
#

nvm got it working

mortal tulip
#

Does any of you know how some settings for tweaks, aren’t showing up in the settings?

hasty ruin
#

Examples?

twilit jungle
#

Yes

wind ravine
#

mingw makes me want to die

#

bruh why does it keep switching back to 32 bit

late ridge
#

@tacit spade were you working on iMessage RE?

#

I saw beeper finally came out and I was wondering how legit it is

tacit spade
#

yeah! I worked with them during the first few months and laid a lot of the groundwork and got a lot of the research work taken care of

#

I wasn’t a very good developer at the time but boy could I reverse engineer lol

tacit spade
gentle grove
primal perch
#

start doing optimization

late ridge
tacit spade
#

I don’t, contract ran out. Plus school started.

tepid olive
#

what do u think capt

native dune
tacit spade
#

it's quite a large framework

native dune
#

it doesnt even work at all for me

#

and @shrewd smelt had issues iirc

tacit spade
#

and really the guy who took over from me really should have his contract renewed instead

#

sad to hear its not going all that well tho

tacit spade
native dune
#

the 1 thing its good at is locking your apple id

tacit spade
#

that was the one thing between us and being able to virtualize everything

native dune
#

dont know, happened to me but the 2fa prompt showed in somewhere that wasnt the US

#

so maybe thats why

tacit spade
#

oh

#

thats what that was

#

😛

#

that was your login prompt lmao

native dune
#

they just need a better region check

tacit spade
#

one of these days i'll rewrite brooklyn or something

#

maybe let it take advantage of more than one thread

#

dear god

#

ethan

native dune
#

whats that

tacit spade
#

brooklyn?

#

it was my prototype bridge that i opensourced as part of the contract

#

beeper gets to keep its distance by hiring contractors (so there's no single point of legal failure) and in return we got to develop out in the open

shrewd smelt
#

my apple id wasnt locked

#

but imsg integration sucked

tacit spade
#

there's only so much you can do

#

imessage is really rough if you scratch the surface

#

apple does a lot of smoke and mirrors

#

for example, only one device can be listening for imessages at a time

shrewd smelt
#

oh fr

#

that sucks

tacit spade
#

it's actually forwarded to other devices over icloud

#

and over IDS

#

a lot of it is stuff that is not handled by chatkit or imcore but instead the actual imessage client

#

so we can't just hook into it

#

for the smoke and mirrors fixes

#

soooo

#

i have no doubt that beeper's integration is probably a little rough

#

especially ESPECIALLY when it comes to having other devices around

native dune
#

yeahhh i had my real mac connected to imessage too

#

so thats probably why it didnt work

#

oh and my iphone

tacit spade
#

that was the one real benefit of having the jailbroken iphone that we never could really emulate on macos -- kinda activating the Apple Magic stuff

#

because imessage is extremely half-baked on macOS

native dune
#

im not surprised, its apple

tacit spade
#

wdym "didn't work"

#

we had several bridges developed at one point

#

they were at minimum functional

#

well idk. i haven't been in touch with them lately and my contract wasn't renewed because i was turning my attention to school and thus didn't really have the time to continue developing

native dune
#

messages could be recieved but not sent

tacit spade
#

the hell

#

that was like one of the first things we got working

#

did they switch to a new bridge bruh

#

beeper imessage seems to have high turnover 😐

#

hope i didn't curse the position or anything

hasty ruin
#

I’m half paying attention to this convo

#

Could you link the bridge you made

cloud yacht
hasty ruin
#

Ty

tacit spade
#

oh yeah yes

#

it’s shitty code

#

I’m sorry it exists

native dune
#

is this still used for mautrix-imesssge

tacit spade
#

i don think so

#

i stopped updating it a while ago

shrewd smelt
#

everything else is pretty solid (other than discord but thats not a surprise)

#

the app just needs a big ui update

#

ios one

tacit spade
#

no? lol

#

can barely focus on school as it is

#

yeah it was nice

#

honestly i wasn't ready for that kind of work

#

but that was an ethan maturity issue

#

i was in the middle of an identity crisis SOOOO

#

sure why not

#

nah i came out okay

gentle grove
gentle grove
raven maple
#

Hey!

I have a question - does anyone know how to force time synchronization on iOS?

I’ve noticed that when you change the position of your device, the time doesn’t update right away, even when you have “set time automatically” turned on. So I’m wondering if there’s an Objective-C method or C function that can force the synchronization to happen.

tepid olive
#

Which template is for tweaks in xcode? A library?

#

nvm

gaunt helm
#

fair warning: it has 24,862,048 digits

hasty ruin
unkempt magnet
#

#palera1njailbreak #winra1n #ios1577jailbreak
This video is about how to jailbreak iOS 15.7.7 on Windows without using Palen1x or a bootable USB with Palera1n Jailbreak. This method uses Winra1n which is a completely free and legit app. The method showcased in this video along with any apps is completely free for everyone.

Downgrade iOS without...

▶ Play video
#

It says it works on windows.

night rover
#

just boot palen1x instead of using a probable scam

unkempt magnet
#

Thanks

bleak ingot
#

i tried it for fun, don't fr me

#

also the grammar were really broken lol

cloud yacht
shrewd smelt
#

unfortunate

ocean raptor
#

Aren't you like 5 weeks old

primal perch
#

7*

#

i believe he said

fiery monolith
#

Does anyone have an elegant way in a tweak to indicate when a modal view controller is being dismissed?

gentle grove
rain falcon
#

nfr

pine holly
#

Anyone know why when using AltList for rootless it just shows null?

#

root.plist^

primal perch
#

no way

#

minecraft

rain falcon
tepid olive
#

in which language should i make the ui for my tweak

#

objc?

worthy rune
#

objc

tepid olive
#

ok

#

ill look into it

#

where can i get a live preview of the ui

#

so i dont have to build every second and inject

worthy rune
#

idk

lime pivot
#

SwiftUI if you want live previews

tepid olive
#

swift doesnt work that good with cpp tho does it?

#

my actual code is objc++

#

and i want to make some toggles, and if possible add a function to check if the toggle is on or not

#

from objcpp

worthy rune
#

hpp

tepid olive
#

what

worthy rune
#

objc++

#

hpp

#

not php

#

but hpp

tepid olive
#

ok and for the ui objc

worthy rune
#

.h

tepid olive
#

in objc

worthy rune
#

swiftui is optional

serene hawk
#

uhmm how do i fix this? install.exec "install_name_tool -change @rpath/SpotifyiOS.framework/SpotifyiOS /Library/Frameworks/SpotifyiOS.framework/SpotifyiOS /Library/MobileSubstrate/DynamicLibraries/Bea.dylib" install_name_tool: for architecture arm64 object: /Library/MobileSubstrate/DynamicLibraries/Bea.dylib malformed object (unknown load command 5) makefile: ```TARGET := iphone:clang:latest:14.0
INSTALL_TARGET_PROCESSES = BeReal
ARCHS = arm64
FINALPACKAGE = 1
PACKAGE_VERSION = 1.2.2

THEOS_DEVICE_IP = localhost
THEOS_DEVICE_PORT = 2222

export SYSROOT = $(THEOS)/sdks/iPhoneOS15.5.sdk

include $(THEOS)/makefiles/common.mk

TWEAK_NAME = Bea

Bea_FILES = Tweak/Tweak.x
Bea_CFLAGS = -fobjc-arc
Bea_FRAMEWORKS = UIKit MapKit
Bea_EXTRA_FRAMEWORKS = SpotifyiOS

ifeq ($(JAILED), 1)
Bea_CFLAGS += -D JAILED=1
endif

ifeq ($(LEGACY_SUPPORT), 1)
Bea_CFLAGS += -D LEGACY_SUPPORT=1
endif

include $(THEOS_MAKE_PATH)/tweak.mk

after-install::
install.exec "install_name_tool -change @rpath/SpotifyiOS.framework/SpotifyiOS /Library/Frameworks/SpotifyiOS.framework/SpotifyiOS /Library/MobileSubstrate/DynamicLibraries/Bea.dylib"```

lime pivot
#

why after-install? that's a strange place to do it

#

and why change the path of SpotifyiOS.framework, it should already work because /Library/Frameworks will be in the rpaths

serene hawk
#

idk i'm currently confused lol. tried to fix this: ExtensionLoader 1f6762f: Injection of /Library/MobileSubstrate/DynamicLibraries/Bea.dylib failed: 'dlopen(/Library/MobileSubstrate/DynamicLibraries/Bea.dylib, 9): Library not loaded: @rpath/SpotifyiOS.framework/SpotifyiOS Referenced from: /Library/MobileSubstrate/DynamicLibraries/Bea.dylib Reason: image not found'

lime pivot
#

which iOS is this on?

serene hawk
#

14.3

lime pivot
#

this shouldn't be necessary, but try Bea_LDFLAGS = -rpath /Library/Frameworks

#

if that fixes it, we might have a bit of an oversight in how rootful/rootless works in Theos

#

an easy one to fix though

serene hawk
#

seems to have worked

#

dont get an error anymore

#

thanks!

lime pivot
#

ahaaa ok I'll fix that in Theos then

tepid olive
#

why is ui so complicated

worthy rune
#

objc itself is complicated

tepid olive
#

atleast its better than swift

tepid olive
#

So, im trying to create my ui now, first by creating a window and adding 2 rectangles as subviews. But i dont see any rectangles after building the app (ipad 16.0)
this looks as following

#import "Menu.h"
#import <Foundation/Foundation.h>

@interface Menu ()

@property (nonatomic, strong) UIView *rectangle1;
@property (nonatomic, strong) UIView *rectangle2;

@end

@implementation Menu

UIWindow *mainWindow;

- (instancetype)init {
    mainWindow = [UIApplication sharedApplication].keyWindow;
    
    self = [super initWithFrame:CGRectMake(0, 0, mainWindow.bounds.size.width, mainWindow.bounds.size.height)];
    if (self) {
        self.center = mainWindow.center;
        
        self.rectangle1 = [[UIView alloc] initWithFrame:CGRectMake(0, 0, self.bounds.size.width / 2, self.bounds.size.height)];
        self.rectangle1.backgroundColor = [UIColor colorWithRed:0.6 green:0.6 blue:0.6 alpha:1];
        [self addSubview:self.rectangle1];

        self.rectangle2 = [[UIView alloc] initWithFrame:CGRectMake(self.bounds.size.width / 2, 0, self.bounds.size.width / 2, self.bounds.size.height)];
        self.rectangle2.backgroundColor = [UIColor colorWithRed:0.6 green:0.6 blue:0.6 alpha:1];
        [self addSubview:self.rectangle2];
    }
    
    [mainWindow addSubview:self];
    return self;
}

@end
#import "ViewController.h"
#import "menu.h"

@interface ViewController ()



@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    
    Menu *menu = [[Menu alloc] init];
    [self.view addSubview:menu];
}


@end
#
#import "UIKit/UIKit.h"

@interface Menu : UIView

- (instancetype)init;

@end
tepid olive
#

I assume its cause of keywindow?

#

How would i replace it?

tepid olive
steady nest
tepid olive
#

like new stuff

tepid olive
#

nothing you can use

#

True

#

(fuck you)

#

spill

timid briar
snow python
naive kraken
timid briar
#

Oh ok

tepid olive
twilit jungle
#

it would be cool if Tim Apple made me CEO of Apple if possible

tepid olive
#

my problem rather is keywindow

#

there this stackoverflow question

#

but i think its for swift

#

and i cant seem to find an objc solution

serene hawk
tepid olive
#

and it still doest show anything

#

i dont think that was it

serene hawk
# tepid olive i dont think that was it

well i guess it'd be something like that then: UIWindow *window = nil; NSArray<UIWindow *>*windows = [[UIApplication sharedApplication] windows]; for (UIWindow *w in windows) { if (w.isKeyWindow) { window = w; break; } } Edit: replaced window with w in the for loop (for obvious reasons)

tepid olive
serene hawk
#

oh youre building for ios15+

#

sorry

#

so it'd basically be: UIWindow *foundWindow = nil; NSArray *scenes = [[[UIApplication sharedApplication] connectedScenes] allObjects]; NSArray *windows = [[scenes objectAtIndex:0] windows]; for (UIWindow *window in windows) { if (window.isKeyWindow) { foundWindow = window; break; } } (see stackoverflow link above)

acoustic imp
#

this is C and im trying to learn basics, idk dont judge. but idk what i did wrong

#

i set the file to exicutable but idk

tepid olive
#

oh wait

#

why is it in a .h

acoustic imp
#

is supose to be .c ?

tepid olive
tepid olive
acoustic imp
#

oh

tepid olive
#

and you still need to return 0; at main

acoustic imp
#

k

tepid olive
#

since its an int

acoustic imp
#

thx , ik this is probly "childs play" but iv never done this before

acoustic imp
#

i want to learn C/OBJc, where should i start, anygood(free) online courses or videos?

#

the ones iv found are hard to follow for me, i don't get/understand the terminology and the vidoes (not be racist or anything) are mostly by ppl with accents that are hard to listen to

radiant idol
#

objective-c hasnt changed since 2013

#

probably earlier

acoustic imp
#

since ios 7 *

radiant idol
#

some things, but this video series shouldn't teach you the detailed parts, its a detailed overview of how the language works; that hasnt changed since 2006

acoustic imp
radiant idol
#

no, I dont remember

#

i think it was trial and error iirc

#

also this

acoustic imp
#

ik this is probly a dumb question, and i have no clue how ios/itunes/etc signs ipsw/updates, but like an ipsw file is just all the like IOS files or sm for that ios version, right? could you just like swap the like 14.3 ios update files with the 16.5.1(lates signed version) files, but leav the like things so that itunes or what ever would think its signed?

#

(random thought)

steady nest
# acoustic imp ik this is probly a dumb question, and i have no clue how ios/itunes/etc signs i...

Swapping iOS update files from different versions and attempting to make iTunes or any other software believe it is signed is not a feasible or practical approach. The signing process for iOS updates involves cryptographic signatures and certificates that are unique to each version of iOS. These signatures and certificates are used to verify the authenticity and integrity of the software during the update process.

When Apple releases an iOS update, they sign it with their private key, and your device verifies the signature using Apple's public key. If you were to replace the files from one iOS version with those from another, the cryptographic signatures would not match, and the verification process would fail.

Moreover, tampering with the iOS update files can lead to unpredictable and potentially harmful consequences. It could result in a non-functional device, loss of data, or other undesirable outcomes. Additionally, Apple's software and services are designed to prevent unauthorized modifications to the iOS software for security and stability reasons.

If you want to update your device to the latest iOS version, it's best to do it through the official channels provided by Apple, such as iTunes or the Settings app on your device. These methods ensure that the update process is performed correctly and securely, without compromising the integrity of your device's software.

frail cedar
native dune
#

it does

grim sparrow
main apex
#

Question, is there a repo that has a package with the architecture of all? Wanting to know of one for testing of my one project.

frail cedar
#

just explain what it does first

ocean raptor
#

Anybody interested in sponsoring work to add other SSL libraries to ldid?

#

Or detached signature support

#

I would prefer to take your money

primal perch
#

troll

ocean raptor
#

I'll take @primal perch's money

primal perch
#

0.5$/yr

ocean raptor
#

Yes please

tepid olive
#

Does anyone know any open source tweaks which have ui ontop of an app?

#

I want to figure out how they solved the problem i had

primal perch
#

what problem are u having

#

touch passthru?

tepid olive
#

Nope, making the stuff show at all

#

I tried keyWindow but its deprecated

#

And some nice guy here tried to help me find a solution for keyWindow but it doesnt work either.

primal perch
#

is the window level high enough

tepid olive
#

You can see the code here

primal perch
#

ur adding the menu view to window then overwriting it after

#

by doing self.view addsubivew:menu

#

the VC's view isnt in the hierarchy at all

#

dont have any view implementation manage itself

tepid olive
#

whats VC

primal perch
#

view controller

tepid olive
#

after deleting it, still nothing shows up

primal perch
#

is the keywindow even non null

#

cus past ios 13 idk

tepid olive
#

yep thats one of my problems

#

how would i replace it

#

So this is for my tweak, i need to draw it on top of everything right

primal perch
#

are u just tryna draw over one app or system wide

primal perch
#

ok youd be best served making your own ui window then

#

create your own viewcontroller make the windows VC the one you make

#

set its window level to max

#
UIWindow *mainWindow;


%hook SomeShit
-(void)applicationDidFinishLaunching ... {
    mainWindow = [[UIWindow alloc] initWithFrame:UIScreen.mainDevice.bounds];
    mainWindow.rootViewController = [[MyVCClass alloc] init];
    mainWindow.windowLevel = INT32MAX; // cant remember what
}
%end```
#

then mainWindow show

tepid olive
#

so myvcclsss is the the class i need to create myself?

#

can i just copy the 2 files form xcode

primal perch
#

ya

tepid olive
#

didnt work oof

primal perch
#

you dont need to add the subview manually, have the vc add it as a subview

#

you also need to keyWindow.hidden = NO;

primal perch
#

Viewcontroller
-(void)viewDidLoad {
[self.view addSubview: [Menu new]];
}

tepid olive
#

seems to work but everything is grey

primal perch
#

use flex to see what view is grey then make its background color nil or clear

tepid olive
#

ik now

#

My rectangles are too big

tepid olive
primal perch
#

userInteractionEnabled = NO

#

but if you want selective touch you have to implement it on a uiwindow subclass and do some math

#

to either handle it or not

tepid olive
tepid olive
#

also whats selective touch

primal perch
#

just implement viewdidload

#

you make the instance yourself when passing it

stray zenith
#

XinaA15 will likely gain support for iphoneos-arm64 packages in the future.

#

NOPE

stray zenith
tepid olive
#

idk

stray zenith
#

cause technically while yes

#

it can install rootful packages

#

it's really bad pepSip

#

has the word "jank" in it for a reason

tepid olive
stray zenith
#

it can install both rootless and rootful packages

naive kraken
#

yeah it can but it fucks up the dpkg database and once you install one rootless package you will always have to disable dependency resolution when installing or removing something

#

But Saily always does this, so people don't notice

stray zenith
#

jank

zenith hatch
#

gm

#

lol

topaz yew
#

what are you doing with rosetta

#

injecting something?

ocean raptor
#

@grave sparrow can you help me make a binary smaller?

#

It's ldid

#

Currently it's 1.2M

#

I want to get it down to 750K

#

Ideally

ocean raptor
wicked summit
#

There's never been a jailbreak for iOS 5.1 on the 4S?

faint timber
wicked summit
#

Very cool

#

I've gotta get an old device to mess around with

ocean raptor
#

I LOVE LAUNCHD.CONF! WISH IT STILL EXISTED

frail cedar
#

instead of supporting both

tepid olive
#

whats the point of nop when you can ret

elder scaffold
#

RIP launchd.conf iOS7

#

i miss techniques for overriding libmis.dylib

snow python
tepid olive
indigo peak
naive kraken
#

what's the point of eating bananas when you can eat apples

indigo peak
#

it’s common sense 💀

primal perch
radiant idol
#

apologize if this is a stupid question, but is there a way to make an identical copy of an object? I want to make a copy that is initially the exact same as the original object, but for it to noto be related

#

kinda a custom class, it's present in stock iOS

#

yeah I've tried that, it seems to crash, so it's probably not implemented originally

#

using the NSCopying protocol, yeah?

#

hmm

#

okay I'll try that ig

wicked summit
#

memcpy

radiant idol
#

lol

indigo peak
#

how do I do this if it’s a UIButton

#

and I want to change the image and the method it runs

frail cedar
#

Just create a new instance of UIButton and define various attributes

#

I don't remember them off the top of my head

#

UIKit is documented for a reason though

ocean raptor
#

@grave sparrow do you know how I serialize an xpc_object_t back to xml plist?

radiant idol
#

the amount of underscores in that message makes my brain hurt

cursive rampart
#

stop hacking

radiant idol
#

just thought i'd point that out

cursive rampart
#

i’m gonna call the cops

ocean raptor
#

yeah

#

I'm trying to reverse that

#

no bueno

#

that won't work

#

I can't use a symbol finder

#

guess I'll be using CoreFoundation

#

😭

#

no

#

lol

#

there are like 5 different independent xml parsers in iOS

#

CF, xpc, and iokit all have their own separate ones

#

there is also expat

#

and one other iirc

tepid olive
#

yes why do you want to do nothing

frail cedar
#

I think

#

I remember siguza's writeup on psychic paper listed them all

#

OSUnserializeXML in the kernel
IOCFUnserialize in IOKitUser
CFPropertyListCreateWithData in CoreFoundation
xpc_create_from_plist in libxpc (closed-source)
AMFIUnserializeXM in AMFI.kext and amfid, its job is to compare the results of OSUnserializeXML and CFPropertyListCreateWithData to make sure they are the same

#

if they dont match, amfi eats your process

indigo peak
snow python
#

A NOP is most commonly used for timing purposes, to force memory alignment, to prevent hazards, to occupy a branch delay slot, to render void an existing instruction such as a jump, as a target of an execute instruction, or as a place-holder to be replaced by active instructions later on in program development (or to replace removed instructions when reorganizing would be problematic or time-consuming). In some cases, a NOP can have minor side effects; for example, on the Motorola 68000 series of processors, the NOP opcode causes a synchronization of the pipeline.
https://en.wikipedia.org/wiki/NOP_(code)

In computer science, a NOP, no-op, or NOOP (pronounced "no op"; short for no operation) is a machine language instruction and its assembly language mnemonic, programming language statement, or computer protocol command that does nothing.

frail cedar
#

doing nothing is useful

lime pivot
#

didn’t know nop on 68k has side effects, that’s an interesting one

snow python
#

Me neither tbh

ocean raptor
#

nop

indigo peak
ocean raptor
#

What's the bug?

#

Looks like on pre-macOS 13.0 binaries, ftello is not fully conformant

restive ether
#

by the bootstrap, saurik used gnu coreutils so there’s not really a clean way to switch to bsd

#

because too many people now rely on GNU exclusive extensions now

#

apfs is case sensitive

#

to a degree yes

#

i don’t think there’s really anything in /bin anyways

native dune
#

oh boy

restive ether
#

i uh

#

ok

native dune
#

you can but... what ios version

#

and does gentoo touch /var

#

or /private

#

be careful because if you overwrite the wrong file you'll bootloop

restive ether
#

which is a lot of them

native dune
#

i'd just contain gentoo to like /gentoo or something

torn oriole
#

bootloop speedrun

restive ether
#

you’d be better off installing everything in its own prefix definitely

native dune
#

yeah

#

no anything on the rootfs too

#

everything is codesigned

torn oriole
#

/var/gentoo trolley

restive ether
#

i’d probably do something like

native dune
#

id do /gentoo

restive ether
#

yeah that’s probably for the better

#

depends on the jailbreak though

#

you might get some unexpected behavior

native dune
#

installing to / sounds like a disaster

#

do it on a device on close to the latest version or something

#

jailbroken

#

because then it doesnt matter if you have to restore

ocean raptor
#

@frail crater what program are you actually trying to compile?

native dune
#

isnt it on procursus

gentle grove
#

well windows and macos arent

#

so

#

no

#

It might be possible to manually format it and use case sensitive apfs

#

but idk if you could install and stuff

#

it exists but macos doesn't use it

ocean raptor
#

Procursus is just a whole lot of common Unix tools compiled for iOS

#

Use odysseyra1n or palera1n

#

Been there done that

#

Yes

#

Checkra1n and u0 use elucubratus which hasn't been updated since 2006 trol

ocean raptor
gentle grove
#

virgin busybox vs chad gnu coreutils

ocean raptor
#

odyssey or Taurine will work too

#

What phone/iOS version do you have?

native dune
#

odyssey or odysseyra1n

#

both work

#

what jb are you using right now

#

back up anything on the rootfs you want to keep, idk what
restore rootfs in unc0ver, sideload odyssey, and jailbreak

#

you'll have a better experience anyway with odyssey

ocean raptor
#

I promise you that procursus is exactly what you're looking for

#

You can install openssh, then use apt from the command line

#

We have tons of packages

native dune
#

procursus stays winning

ocean raptor
#

Let me know what packages you're missing and I can add them and show you how you can add packages to it yourself

#

apt >>>

#

L for using portage

#

Gentoo L

native dune
#

fr

ocean raptor
#

I'm a Debian man

#

And FreeBSD

native dune
#

apt install

ocean raptor
#

apt search, apt install

#

EZ

native dune
#

i love having apt on my mac

ocean raptor
#

What else are you trying to do besides install, search, and remove? Lol

#

Wrong and L

#

Gentoo ports wishes it could be FreeBSD ports

native dune
#

fr

ocean raptor
#

Procursus has weechat

#

Which iirc can be used as a IRC relay

#

We ported openjdk to iOS and i ran the official server.jar on my iPad for a bit

#

That's lightwork

#

(I do too much cross compiling)

#

I didn't actually do the openjdk port work, that was all hayden, I'm not as much as a masochist as him

#

Procursus has a full development toolchain

#

clang, swift, bison, byacc, flex, make, cmake, ninja, etc

#

Gcc doesn't support darwin arm64

#

We have X11, jdk, and a vncclient

#

Not KDE though

#

I'm an LLVM kinda guy

#

so I don't use gcc

#

somebody else tried to add gcc to procursus though

#

they were struggling to get it to produce valid iOS binaries iirc

#

you should join procursus discord

#

produces runnable binaries?

#

kinda?

#

clang is better though

#

I'm a cross compiling guy which is why I love clang

#

I don't want to have 100 different copies of gcc for each target

#

you'd have to share those

#

GCC and LLVM's optimizers are fairly equal

#

imo

#

not sure if that's backed up by facts KEKW

ocean raptor
#

@grave sparrow AGGHHHHHH

#

I finished my ldid libplist -> CoreFoundation

#

guess how much the binary shrunk

faint timber
#

shrink even more if you use libxpc xml

#

I take it you already had that discussion

restive ether
ocean raptor
faint timber
#

shsh3 blobs are 1.5k

restive ether
#

there is no way you checked if that worked lol

ocean raptor
#

I just merged it

restive ether
#

amazing

#

blame keto anyways

ocean raptor
#

It doesn't matter if it's broken anyways

#

I don't think I'll be making a new release anytime soon

#

Cause @grave sparrow still hasn't given me my $2k to add detached signature support

restive ether
#

i’ll give you $20

#

at least getting rid of libplist would save you a minute per build on the actions

#

30s up to 2 minutes actually

#

broke windows.

#

L

ocean raptor
#

lol

restive ether
ocean raptor
#

15

jolly summit
#

hey is there a way to manipulate the location the device detects to a certain coordinate

ocean raptor
#

It's on GitHub

jolly summit
#

alright thx 💖

#

I plan on jailbreaking an old iPad and letting it update detected location whenever for find my friends so my parents don't know where I'm at

vivid dew
#

im personally a big fan of anything that agitates you

grim sparrow
ocean raptor
#

I don't care about brew

#

Can someone else do that

lime pivot
ocean raptor
#

Cause they use openssl 3, but ldid doesn't support openssl 3 without a patch that's only in procursus fork

#

(Which I did try to upstream, but saurik is anti-patch)

lime pivot
#

sigh

vivid dew
#

trolling

faint timber
#

anyone want to help me fix random uaf's? nslog is uafing too lol

worthy rune
#

HOW DO I FUCKING NAME FOLDERS

#

i swear all my folder names are just bland

gaunt helm
worthy rune
#

like wtfidk, namenamefire, naenae

grim sparrow
worthy rune
indigo peak
#

is there a way to use a palera1n device as a webserver
host a simple webpage, and have said webpage run root commands on the device

restive ether
#

nginx is on procursus

ocean raptor
#

Why would you want your web server to 1. Run as root 2. Be able to run arbitrary commands

indigo peak
#

doesnt need to be root ig
but run arbitrary commands uh i need it to run locsim

#

but i just realized i can use python + flask

#

and i dont need nginx or anything else

#

im slow

#

@ocean raptor whats the best/easiest way to get the current location of another idevice (not jb) through a command without being signed into icloud (cant use find my)

#

unless theres a way to sign into find my on a device that may or may not have been bypassed

ocean raptor
#

I have no idea

indigo peak
#

specifically the signing into find my on a maybe bypassed device

steady nest
#

I may or may not know the response to that question

indigo peak
#

i may or may not need this answer

indigo peak
#

rip

faint stag
faint stag
faint stag
#

since you can't run a daemon

#

find my is just sending location data to apple by connecting to nearby apple devices to send to a server or directly to a server
so just make your own client (an app) and a server

indigo peak
# faint stag why do you need a webserver if you can ssh

well what i want to do is have a webpage that has a map, and a lat/long input box, where i can pick a location, and it runs locsim on the jb phone, which id be signed into life360 on, and when locsim isnt running, it would be copying my main phone's location every 1-3min so it looks real

#

until i start spoofing, then it uses the locsim location

#

idk if thats even close to a efficient/easy way to do that

indigo peak
#

hm that’s not that bad of an idea I think

steady nest
#

if it does, well, you need apple services

#

which may or may not work

indigo peak
#

think i maybe figured it out

#

lmao

#

figured out the geolocation is inside a json object base64 encoded into X-UserContext of a put request to https://iphone.life360.com/v4/locations

#

i just dont know if the Authorization token is static or refreshes after x amount of time

indigo peak
#

@grave sparrow i dont think i can get the auth token on a non jb device

#

tried to use charles but i couldnt view the headers

#

not jailbroken

#

2 phones, main one is not jb, secondary is jb

#

main 16.5

#

not at all lmfao

#

iphone 13 and iphone 7

#

skull

hasty ruin
#

isn't there something in libimobiledevice for location spoofing

indigo peak
#

yeah but i need to be plugged in

#

@grave sparrow got the auth token, took a min for charles to work

#

but i got it

silver rampart
#

life360

ocean raptor
#

Have you considered just uninstalling it troll

hexed knot
#

if i had life360 and i deleted it my dad finna beat my ass

cloud yacht
#

Have you considered turning off locational services

hexed knot
#

same shit bruh

#

u act as if parents have life360 just to have it

cloud yacht
#

Ok just shut off all network connectivity and say your phone died

#

Or shut it down

faint stag
#

lol

silver rampart
#

app checks for those things and notifies the stalker

hexed knot
#

yall are dumb

indigo peak
cloud yacht
#

No like after you turn it back on if they ask say that

primal perch
#

not really

#

server: i didnt get shit, time to alert parent

hexed knot
#

yall are actually so dumb

#

“turn off location” parents alerted

#

“delete app” parents alerted

#

blocking requests would probably error as if you turned off internet

#

so parents also alerted

hasty ruin
#

new parents

hasty ruin
#

ask the palera1n server

cloud yacht
#

Turn precise location off and copy that one flex 3 tweak I wrote like 3 years ago to trick it into thinking it has precise location

primal perch
indigo peak
#

Whenever it detects that my phones location has changed, it sends a put request to the api, but I don’t want it to overwrite my spoofed api request

indigo peak
#

problem is

#

how do i block the requests

#

bc i feel like i can make a siri shortcut

#

that sends the fake request

#

no idea

#

tbh

#

facts

unkempt raft
#

@wind ravine where

wind ravine
#

@unkempt raft this is the returned result whenever i call a libimobile executable
objc[90067]: Class SwiftNativeNSObject is implemented in both /usr/lib/swift/libswiftCore.dylib (0x1ea71cbf8) and /Users/lemin/Library/Developer/Xcode/DerivedData2/Cowabunga_Lite-crwqvgjinkupobeclahqbxnyqtgh/Build/Products/Debug/Cowabunga Lite.app/Contents/Frameworks/libswift_Concurrency.dylib (0x1045f4978). One of the two will be used. Which one is undefined.

#

its breaking icon theming 50% of the time

wind ravine
#

i cant release like this

unkempt raft
#

i don't see why that would fail

wind ravine
#

i cant find it tho

#

the paths seem fine

unkempt raft
#

you obviosuly cleaned deriveddata and build folder, right?

wind ravine
#

obviously

unkempt raft
#

could it be a warning?

wind ravine
#

its a warning

#

but its causing issues

#

i did a hacky workaround for some of the issues like fixing it not connecting but i cant fix it with icon theming

#

should i remove /usr/lib/swift from the search paths?

#

holy heck maybe that did work

faint stag
hexed knot
#

that is what fiore is asking about yes

faint stag
indigo peak
faint stag
#

isn't one device always going to be connected to it

#

unless you're like, carrying both phones then yeah i'd understand

#

another possible solution would just be running android on a pc and spoofing there troll

indigo peak
#

is it possible to send data from a jb phone to a computer so that using like a c program or smth it can detect when a command is sent w/o any networking

#

like specifically a signal from the phone to the computer

cloud yacht
#

so what using like usb or bluetooth or smth?

indigo peak
#

I meant data over usb

#

bc it’s gonna be a raspberry pi that’s brought out into the wild without a hotspot

faint stag
#

If it's already connected to usb then you can just ssh lol

#

could just make a script or two to tie that together

indigo peak
#

unless you mean ssh from the phone to the computer using an app or smth

faint stag
#

you gotta explain it in full

indigo peak
#

I’m tryna make it run fully non jailbroken

#

so I don’t need the jb phone

mighty talon
#

what would be the best way to play sound inside a tweak? Its supposed to overtone the app and maybe even play after closing or something

#

thanks

#

thanks again

gaunt mesa
#

@everyone

#

So sad 😔

serene hawk
#

Hi, i'm hooking a Swift class and I'm wondering if it's possible to add properties to that class. Currently my code is this: ```@interface DoublePhotoView : UIView
@property (nonatomic, retain) BeaButton *downloadButton;
@end

%hook DoublePhotoView

  • (void)layoutSubviews {
    %orig;

    self.button = self.subviews.lastObject;
    NSLog(@"Found Button: %@", self.button);
    }But i'm getting the following error(s):Tweak/Tweak.x:11:7: error: property 'button' not found on object of type '__unsafe_unretained id const'
    self.button = self.subviews.lastObject;
    ^
    Tweak/Tweak.x:11:21: error: property 'subviews' not found on object of type '__unsafe_unretained id const'
    self.button = self.subviews.lastObject;
    ^
    Tweak/Tweak.x:12:34: error: property 'button' not found on object of type '__unsafe_unretained id const'
    NSLog(@"Found Button: %@", self.button);```

radiant idol
#

so something like this

#
@interface DoublePhotoView : UIView
@property (nonatomic, retain) BeaButton *downloadButton;
@end

%hook DoublePhotoView
- (void)layoutSubviews {
    %orig;

    [self setButton:[[self subviews] lastObject]];
    NSLog(@"Found Button: %@", [self button]);
}

%end
#

iirc

serene hawk
radiant idol
#

great!

serene hawk
#

but is there a way to assign something to a property? like self.downloadButton = [BeaButton downloadButton]; afaik its not possible using bracket syntax entirely here

radiant idol
#

uhh

#
UIView *selfView = (UIView *)self;
selfView.downloadButton = [BeaButton downloadButton];

maybe?

#

I haven't exactly done stuff like this before but that might work

serene hawk
#

works if i define the downloadButton property in the UIView interface so: ```@interface UIView (Bea)
@property (nonatomic, retain) BeaButton *downloadButton;
@end

%hook DoublePhotoView

  • (void)layoutSubviews {
    %orig;
    UIView *selfView = (UIView *)self;
    selfView.downloadButton = [BeaButton downloadButton];
    } while without the UIView interface declaration it throws this error:error: property 'downloadButton' not found on object of type 'UIView *'
    selfView.downloadButton = [BeaButton downloadButton];```
radiant idol
#

wait

#

I have an idea

#
%hook DoublePhotoView

- (void)layoutSubviews {
    %orig;
    DoublePhotoView *selfView = (DoublePhotoView *)self;
    selfView.downloadButton = [BeaButton downloadButton];
}

%end
#

try that

serene hawk
#

lol works

#

and makes sense

#

thank you so so much!!

radiant idol
#

yep np :)

snow python
grim sparrow
radiant idol
#

shh

silver rampart
radiant idol
#

there needs to be a space between - and the (

#

otherwise its just not correct

primal perch
radiant idol
#

shut up icraze

primal perch
#

shut up icraze

primal perch
twilit jungle
hasty ruin
radiant idol
#

censored

hasty ruin
radiant idol
#

L

twilit jungle
#

tbf I don't wanna see it either

silver rampart
timid furnace
#

damn this looks interesting

#

nice work

radiant idol
#

oh wow

#

ok yeah this is really cool

primal perch
#

neat

silver rampart
#

ivar thing still my fav it feels like magic

ocean raptor
#

Beautiful

primal perch
next wadi
radiant idol
#

(Theos is fixing it, it’s in a pr iirc)

next wadi
#

but its the same error

#

so im concluding it must be an sdk / framework issue

radiant idol
#

Yeah you need to manually edit CydiaSubstrate.tbd to ios instead of iphoneos

#

for now

next wadi
#

oh thats doable

#

ok

#

thank you

#

😃

radiant idol
#

yep np

next wadi
#

yep that did it

radiant idol
#

kewl

next wadi
#

WHO UP LUZING

#

0.42 seconds is insanity

radiant idol
#

🙄

primal perch
next wadi
#

with what

primal perch
#

apollo custom api credentials

#

source: pulled out of my ass

next wadi
#

oh true

lime pivot
#

gm, this is great, I remember us talking about this a loooong time ago hah

silver rampart
#

its been feature complete since then woeis i just haven't been able to get myself to finish rootless support for the build system

silver rampart
#

morning atwhatcost

misty cradle
#

Wowzers

unkempt raft
#

@tepid olive Hi, I'm thinking of writing a new tweak, and I just remembered about your hooking macros. Would I be able to write a full SpringBoard tweak with it at the current state of HookMacros?

#

I remember it having issues with arm64e, so that's why I'm asking

hasty ruin
#

banswift ?

radiant idol
#

no

#

tell 'im

unkempt raft
gentle grove
radiant idol
unkempt raft
radiant idol
#

I will still continue using objc

unkempt raft
#

press the button

#

at the bottom

radiant idol
#

it got me the first time I saw it

#

not again

unkempt raft
radiant idol
#

RESSET16 IS WRITTEN IN OBJC??

unkempt raft
#

no

radiant idol
#

oh

unkempt raft
#

incorrect

#

it's the exploit

unkempt raft
#

basically the entire app

radiant idol
#

you really dont like objc do you

unkempt raft
#

wdym

radiant idol
#

knew it

#

blackmail fr

unkempt raft
#

is there a way to have a variable that is accessible from multiple processes?

vivid dew
#

wtf

silver rampart
# unkempt raft is there a way to have a variable that is accessible from multiple processes?

In computer science, a semaphore is a variable or abstract data type used to control access to a common resource by multiple threads and avoid critical section problems in a concurrent system such as a multitasking operating system. Semaphores are a type of synchronization primitive. A trivial semaphore is a plain variable that is changed (for e...

faint stag
unkempt raft
#

i needed to know from the Camera app if SpringBoard has a custom variable set to true

faint timber
#

asturian kernel exploit

primal perch
#

Austurian

#

Ass turian

graceful gate
#

How do you decrypt apps on iOS 15 rootless these days?

faint stag
#

obviously that'll just fail on any app with debugger detection tho

graceful gate
#

Any GUI alternatives?

faint stag
# graceful gate Any GUI alternatives?

i mean there weren't many gui ones made to begin with

bfdecrypt is technically a gui one but it also requires you to launch and inject into the app which doesn't always work. doesn't work on 15 but its open source if you care about trying to fix it
iridium is a wrapper for fouldecrypt and is seemingly broken, even on 14. open source (but that's the only static gui one really because it uses kernel r/w)
crackerxi is on a piracy repo, is closed source and def doesn't work on 15 (requires app injection on launch)

flexdecrypt is cli, likely doesn't work on 15 and does not repack into an ipa (only binary decrypt)

shell sphinx
#

bfdecrypt does work on 15

tepid olive
#

not for me on palera1n, idk about dopamine

crackerxi is just a wrapper around bfdecrypt btw

shell sphinx
#

dopamine only ig thishowitis

naive kraken
#

someone should port foulplay to iOS 15 and up

hasty ruin
naive kraken
#

The code has to be updated to reflect some dyld changes

#

alternatively it could maybe get away by calling some private dyld funcs directly but not sure

steep granite
#

can someone help me i installed xcode 15 beta 2 is that a problem

main apex
steep granite
#

yes

steep granite
#

i renamed xcode-beta to xcode and it worked

lime pivot
#

@steep granite you can use sudo xcode-select -switch /Applications/Xcode-Beta.app in future

lime pivot
#

or click the tick button next to the Xcode version in Xcodes.app if you have that

gaunt mesa
#

Xcodes.app fr

topaz yew
#

Hey, it seems that in my NSWindow hook i've interfered with a hook apple has already put in place in their ViewBridge.framework, and so calling the original implementation crashes everything. Do i have any options

#

I was thinking about detecting the presence if the framework but im not sure how often this is getting loaded

indigo peak
#

will this ever be possible to use in wsl + vscode

next wadi
#

Dont hate

#

Actually a genius ass idea

#

I hated having to go to apple's website every time and manually extract the xip and shit

silver rampart
#

just compile it

next wadi
#

not xcode

#

XcodeS

#

plural

#

The app

golden ingot
#

can i run arm64 linux CLI programs on jailbroken iPad terminal?

silver rampart
#

need to recompile them

#

wrong executable fmt + needs to link proper libraries

golden ingot
#

oh yes i understand

faint timber
#

@lime pivot is there a firmware key api or json api for the applewiki? I see the json button but its hard to keep track of codenames and years easilly without hardcoding some data

gaunt mesa
faint timber
#

I mean the way it was set up is non intuitive

#

It would be practical if there was a way to download codename+year json

#

Then you could just plug it into the ask url

#

But there is no data like that unless you hardcode

#

Also year seems wrong? iOS 14 is marked 2018 despite being 2020 unless it’s a counter and not a year? Pure coincidence I doubt it

acoustic imp
#

anyone know the file path to the ios 16 LS music player icons, like the pause/play, track forward and back, airplay icon?

#

trying to recreate the ios16 play for fun ig, i found one sorta made on figma but missing icons and had a few issues when copy pasting the css

#
Figma

Figma Community file - Do you need components for your LockScreen designs? Don't start from scratch – grab the latests styles from iOS16.

Components
Push notifications with Light and Dark mode themes. Media control, While in Focus, Stacked Notifications, and more.20+ Widgets for the LockScreen in small and large sizes...

#

what i got so far

#

i also am gona try to animate it

lime pivot
radiant idol
#

yeesh

acoustic imp
acoustic imp
radiant idol
#

install the sf symbol app on your mac or whatever vm you have

versed fiber
#

Is it possible to have 1 deb file support both rootful and rootless?

versed fiber
#

Okay.

mighty talon
#

Can another library load tweaks instead of the binary? For example an app checks the load commands (if thats possible) how would i load my tweak then

grim sparrow
mighty talon
grim sparrow
#

then change the request...

brave zealot
#

is there any development on 15.5 - 15.6 for a12+

#

also if you start a signed kernal with custom code you can append it onto the running kernal without issue

#

then do whatever you want

grim sparrow
brave zealot
#

idk its a possibility

#

could you rip the keys from the running kernal

#

or redirect the signature check to the signed kernal

grim sparrow
#

and what a private key is

brave zealot
#

yes

#

but sometimes silly people store private keys in protected memory

grim sparrow
brave zealot
#

probably not

grim sparrow
#

good

brave zealot
#

you are gonna need some funky detour

#

maybe an app

grim sparrow
#

realistically its not possible to just load a custom kernel unless you can somehow get tim apple to give you the private key

brave zealot
#

oh

#

also how does jailed memory editing work

grim sparrow
#

silly little exploits

brave zealot
#

because there is this thing called igamegod or something that has a built in cheat engine

grim sparrow
#

oh

#

editing memory of a userland process is significantly easier

#

like

#

very very very very very much easier

brave zealot
#

do you not need to bypass anything

grim sparrow
#

depends on the game

#

some games include protections