166 pointsby todsacerdoti2 days ago13 comments
  • TheDong2 days ago
    You have to accept Apple's licensing agreement as part of downloading XCode to run this tool (which relies on XCode's SDKs etc).

    Quoting from the license agreement:

    > You may not use the Apple Software, Apple Certificates, or any Services provided hereunder for any purpose not expressly permitted by this Agreement, including any applicable Attachments and Schedules. You agree not to install, use or run the Apple SDKs on any non-Apple-branded computer, and not to install, use or run iOS, iPadOS, macOS, tvOS, visionOS, watchOS, and Provisioning Profiles on or in connection with devices other than Apple-branded products, or to enable others to do so.

    Both xtool itself, and anyone who uses it, is violating this license agreement, and apple has shown itself in the past to be a real ass about this sort of thing.

    I think this can fly under the radar as long as no one uses it, but as soon as people actually start using this tool in any significant amount, I wouldn't be surprised if apple comes for it.

    • gman832 days ago
      These terms and services would also seem to make it a violation to run CI/CD services that enable Windows & Linux users to build React Native or Flutter apps for IOS?
      • meindnoch2 days ago
        Those CI/CD servers are just regular macOS boxes. Typically a bunch of Mac Minis in a rack.
      • wouldbecouldbe2 days ago
        You need a macOS Server or computer to build via CI/CD
        • sebazzz2 days ago
          Mac OS Server has been dead for a very long time.
          • Whatever you want to call it Apple Cloud. Something with Mac OS
        • jasonm23a day ago
          Or a github Macos runner
    • sockbot2 days ago
      So running on Asahi is ok?
      • Jotalea2 days ago
        Asahi isn't Apple-branded but it runs on Apple hardware so.. I think it's ok. Though I'm not a lawyer, so I can't say for sure.
    • CharlesW2 days ago
      > Both xtool itself, and anyone who uses it, is violating this license agreement, and apple has shown itself in the past to be a real ass about this sort of thing.

      Only with people dumb enough to build businesses on the back of Apple's IP (see: Corellium). Hobbyist/enthusiast use of Apple technologies (see: the Hackintosh community) has a long history of being tolerated.

    • broknbottle2 days ago
      The tool can still be used to run on a light weight Linux VM running on a Mac Mini or other Apple hardware. At the bare metal layer the host is an Apple branded computer running macOS.
    • scripturial2 days ago
      I’m curious, would Apple know if you are building on Linux on a Mac, or building on Linux on PC?
      • bornfreddy2 days ago
        I would be surprised if they didn't. It is trivial to detect this.
        • scripturial2 days ago
          How would they detect it? If the interface with Apple is simply an API to fetch and upload data. How would they know if the underlying physical machine is an Apple built computer running Linux, or a dell built computer running Linux?
          • mystified50162 days ago
            What possible reason do you have to assume it fetches only this data?

            Apple is absolutely slurping up any and all data they can get about your machine, you, whatever is visible on the network, nearby WiFi networks and your physical location.

            They have no reason whatsoever to not do this, they explicitly do this on iOS, and there is a lot of money for them to sell the data they collect about you.

            This is how modern corporations are. Apple is no different from Google, Facebook, Microsoft, et al.

            • a day ago
              undefined
            • scripturiala day ago
              I have not seen any evidence that would lead to a conclusion one way or another.
    • m4632 days ago
      from what I have always understood...

      running under windows/linux booted on apple hardware is fine.

      running in a vm/container on apple hardware is fine.

      I suspect apple's new container support (like docker supported by apple) is going to make this sort of thing common.

    • paxcoder2 days ago
      Touched upon here: https://forums.swift.org/t/xtool-cross-platform-xcode-replac...

      We need to get EU on this case.

      • bornfreddy2 days ago
        This! There is no reason Apple should be able to dictate how their software and devices can be used just so they can exclude other companies from their ecosystem. This measure is a clear example of anti-competitive practices. Free market sometimes needs regulation to be kept free.
  • Abishek_Muthian2 days ago
    I was one of the early mobile app developers and after nearly a decade of wrangling with the tools & environment of the duopoly I got fed up and quit mobile app development.

    Recently I picked up Flutter and I really liked it. Apart from the declarative programming, not having to touch Android Studio and Xcode for building the app in Linux was the main contributor for the pleasant experience.

    I plan to release the app soon so I’ve already paid the Apple Tax for dev license and hardware but I still dread having to use Xcode; hopefully tools like xtool will help in that regard.

  • sherdil20222 days ago
    Looks promising. But I am getting the following error when I run 'xtool dev':

    > status: "409", code: "ENTITY_ERROR", title: "There is a problem with the request entity", detail: "You already have a current Development certificate or a pending certificate request."

    I have even manually copied the development certificate and installed on the iPhone - but keep getting the same error when I do 'xtool dev'

    I have searched but none of the solutions worked so far. Will keep trying.

    Did anyone get this error and get past it? Please let me know how you got past this error.

    • sherdil20222 days ago
      Also, it looks like using tools like xtool will violate Apple Developer license. Not a lawyer - but do your due diligence.
  • zombot2 days ago
    More info about xtool:

    https://xtool.sh/documentation/xtool/

    This looks damn cool.

  • zoobab2 days ago
    I use the language of my choice, not those programming languages imposed on us by the GAFAMs.
  • surrTurr2 days ago
    has anyone actually published an app using this?
  • sureglymop2 days ago
    Can I sideload the app to test/debug it on device without having to log into any online account?

    Can I sign the app bundle with my own debug keys?

    If no, it's still not interesting to me.

  • zer0zzz2 days ago
    Are they using ldprime/ld64 or lld?
  • iJohnDoe2 days ago
    Can someone explain what this?
    • v5v32 days ago
      To make and release an android app you can do it on any windows, Linux or apple laptop or desktop.

      To make and release an iOS app, apple insist you can only do it on an apple machine.

      This is a cross platform solution challenging Apple's arrogance and greed.

    • yellow_lead2 days ago
      A tutorial showing how to use xtool to develop for iOS on Linux/Windows. Normally, it's limited to Mac OS only.
    • scripturial2 days ago
      It allows automated builds of an Xcode project on a CI machine, VPS, or docker instance.
  • kapildev2 days ago
    Now, all that's remaining is an iOS simulator and developers can build for iOS without paying Apple anything except the $100 developer fee.
  • malloc-0x902 days ago
    Never built on Apple, last time I tried:

    it asked me to update Xcode;

    Xcode asked me to update the OS first;

    and the OS asked me to buy a new 1300$€ MacBook hardware (with similar specs, the one I was using wasn't even that old/slow).

    So to quote Rick and Morty i though: "That's just subscription with extra steps!" - and made a windows program and an Android app.

    • zombot2 days ago
      Exactly. Apparently Apple still finds enough idiots who perform that dance, but they've lost me. I can only hope others will follow and xtool looks like it can help.
      • can16358p2 days ago
        Don't worry, those "idiots" are doing perfectly fine with great salaries and a nice developer experience who apparently figured out using archaic hardware for developing newer devices is practically pointless even if there were software support.
        • Daedren2 days ago
          I've developed a lot of iOS apps for over a decade and have yet to see any semblance of the "nice developer experience" you're mentioning.
          • can16358pa day ago
            I don't use Xcode anymore in practice (Vscode+React Native here) yet back in the ObjC+storyboard days I loved storyboard and general expressiveness of Objective-C.

            Sure it had quirks (codesigning issues, weird errors from underlying C-level calls, ObjC "primitives" bot playing nicely with C primitives without boxing etc.) but I generally loved the experience especially around WYSIWYG of storyboards.

            • zombot2 hours ago
              > back in the ObjC+storyboard days

              That must have been on very, very archaic hardware, by your own words.

        • touwer2 days ago
          I wouldn't call XCode a nice developer experience. Hell comes closer
          • croes2 days ago
            Stockholm syndrome
        • hu32 days ago
          There are great salaries in all spectrums of technology.

          As for calling XCode a "nice developer experience", I can only attribute to stockholm syndrome, lack of experience with better tools or both.

          • can16358pa day ago
            It's a matter of taste then. As a fullstack dev I still end up loving how Xcode cleanly represents things visually even though I'm not using it much other than building step anymore.

            I already could jump to other stuff if I didn't like it, the reason I kept using it because I simply liked the experience, at least to my personal taste of seeing things.

            If you think having a different personal taste is "stockholm syndrome" I don't have much else to say though.

        • realusername2 days ago
          Good salary for sure but as for the developer experience, the iOS tooling is one of the worst you can have in the modern era. I'd even pick the nodejs anarchy over xcode and that says a lot.
      • lynx972 days ago
        Do you call anyone who isn't of your opinion an idiot?
        • zombot2 days ago
          I'd argue it's not about my opinion. What my parent comment describes is a recognizable pattern that Apple has been pulling for over a decade now. Fool me once, shame on you. Fool me ad nauseam again and again — well...
      • razemio2 days ago
        I daily every os for 2-3 years and then switch. There are lots of benefits to OSX. Stability, perfect Standby and battery runtime to name a few. This would not be possible if they would support older Hardware. As long as windows and linux is unable to archive similar metrics, they prove apples point about this topic. Just look how fast everybody transitions to M Processors including the software developers. There is no point to stay on old hardware with apple.
      • jamil72 days ago
        Most of us get compensated to do it and the hardware either paid for or tax deductible. Whatever positions you take as a developer, there is strong end-user demand for software on iOS and to a certain extent macOS so there will continue to be people who'll do that dance.
    • realusername2 days ago
      I hope you also have a good internet connection because even in 2025, MacOS is incapable of resuming downloads.
      • sunshinerag2 days ago
        That is not MacOS you are using?
      • razemio2 days ago
        What are you talking about?
        • realusername2 days ago
          I had to redownload 4 times xcode from the Mac App Store because any problem when downloading breaks it.

          I think it's the last modern OS which can't resume downloads.

          • razemio2 days ago
            That is not an OS issue but an issue with the App Store. Also this is not true. I just tried it: https://youtu.be/Z6v1adrsqQM

            I guess you have some kind of issue with your clock or io issues which corrupts the package. Are you using a vm?

            • realusername2 days ago
              No I was on real hardware, resuming with the button works but I guess it was cut in the middle by a wifi issue and in this case it just errors out.
    • sunshinerag2 days ago
      Yes, I gave up on Apple too after my Intel Celeron box could not be used
  • techlatest_net2 days ago
    [dead]
  • lynx972 days ago
    [flagged]