Sideload KDE Connect iOS
For general audience, please use the official App Store/TestFlight releases.
This is intended for contributors outside of K Desktop Environment e.V. development group to test their code on a physical device before opening a merge request. This process should theoretically work even if you don’t have a paid Apple Developer account, though I’ve never tested.
THE INSTRUCTION IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE INSTRUCTION OR THE USE OR OTHER DEALINGS IN THE INSTRUCTION.
- Download KDE Connect iOS source code from GitHub mirror/KDE Invent
- Open
KDE Connect.xcodeprojin Xcode- In
Build Settingsfor targetKDE Connect, deleteCode Signing Entitlements(but do not delete the entitlements file) - In
Singing & Capabilitiesfor targetKDE Connect, change theTeamandBundle Identifierso the project builds forAny iOS Device. - In
Productsfolder, right click onKDE Connect(which shouldn’t be red) and selectShow In Finder
- In
- In terminal, navigate to the folder containing
KDE Connect.xcodeproj - In terminal, type the following commands line by line (other than comments starting with
#). See References section about what each of these lines do:1
2
3
4
5
6
7
8build=#drag the KDE Connect.app here from Finder
security cms -D -i "$build/embedded.mobileprovision" > provision.plist
name=$(basename "`pwd`")
/usr/libexec/PlistBuddy -x -c 'Print:Entitlements' provision.plist > entitlements.plist
# Note that extra ' is added because name contains whitespace in path
/usr/libexec/PlistBuddy -x -c "Merge '$name/$name.entitlements'" entitlements.plist
# Replace `YOUR NAME (TEAM)` with the actual value of your Apple Development Certificate name (found in KeyChain Access)
codesign -d --entitlements entitlements.plist -f -s "Apple Development: YOUR NAME (TEAM)" $build - Place the
KDE Connect.appin a folder namedPayload, zip thePayloadfolder, and (re)name itKDE Connect.ipa - Install self-signed
KDE Connect.ipaon your own physical device for testing (requires jailbreaking or apps like Sideloadly)