Post

Replies

Boosts

Views

Activity

Reply to swift with ES?
Well, you can, but it's not really ideal. Of course, you also can't make a product without Apple's permission, and we're at 8 months of "sorry, they'll let you know if they ever make a decision, and there is no escalation," so...
Topic: Privacy & Security SubTopic: General Tags:
Jul ’22
Reply to Very basic question: diagnosing DNS issues
The TPP looks for specific flow types (using the application and destination), sends them up to the daemon if they're interesting, and then the daemon modifies them if necessary and sends them out to the internet. I'm thinking not just DNS at this point -- that is definitely failing, but I think almost all networking is blocked by something -- I see mdns traffic, but nothing else. And if we restart the TPP, it gets maybe one or two flows, which it then sends off to the daemon, and then nothing else. Whereas if we restart the daemon, everything starts working properly. For a while, before repeating. I haven't been able to reproduce it! But several other people can do so, fairly reliably.
Jul ’22
Reply to Manually lipoing and codesigning
Ok, so it's been a while: I did get it to work! I grepped the codesign commands from the build output, wrote a script that, given two source .app directories, copies one of them to a new bundle, and then runs codesign on each of the bundles (including, at the end, the whole enclosing bundle). I also (cleverly, I think) extract the entitlements using codesign rather than using the ones from the project directory, and apply those. It seems to work! This is, I think, about the best I can do until and unless uSoft or MacPorts makes progress on their respective tools/environments. This is one of the reasons I always like being an OS engineer, so we don't have to (in general) rely on third party libraries/tools. Now I got a hankering to write a copyfile class in Swift.
Jul ’22
Reply to Manually lipoing and codesigning
The way the build works -- and this isn't just us, it's standard with vcpkg and cmake building on macos -- is that you tell vcpkg the packages you need, it deals with all of the dependencis, and builds them. You then have CMakeLists.txt files that specify your targets, and what packages they link with (and, in my case, I ensured they were static libraries). You then generate a builder (xcodeproj in this case) using CMake; this causes vcpkg to build everything, and then CMake goes and constructs an xcodeproj bundle that has all of the targets you specified, and has all the libraries/header files you said they need as external dependencies used for linking. Then you build, and this basically runs xcodebuild. The end result is the targets signed the way I told it to sign, put into bundles where applicable. Because vcpkg does not support (yet?) universal binaries, I have to do it twice -- once for arm64, once for x86_64. These are completely separate build environments. So I don't have xcodebuild doing "the final step" -- it's actually building everything except the vcpkg-managed dependencies. And I then have one complete bundle for each architecture. So what I want to do is then take those two bundles, and somehow merge them together. I assume this has to be done manually (well, scriptedly) using lio, and then signed again using codesign. I had (as stated originally) thought I'd just grep for the codesign commands from the xcodebuild output, and use those to re-sign after my script uses lipo to put everything together. (I do apparently need to also grab the processed entitlements files.) If there's a way to get Xcode to do this (and this would be a separate xcodeproj bundle, I'm sure), that'd be great. I couldn't find one, since the inputs would be two different bundles. Does that make my question, problem, and dilemma clearer?
Jun ’22