168 pointsby todsacerdoti7 months ago13 comments
  • TheDong7 months 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.

    • gman837 months 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?
      • meindnoch7 months ago
        Those CI/CD servers are just regular macOS boxes. Typically a bunch of Mac Minis in a rack.
      • wouldbecouldbe7 months ago
        You need a macOS Server or computer to build via CI/CD
        • sebazzz7 months ago
          Mac OS Server has been dead for a very long time.
          • wouldbecouldbe7 months ago
            Whatever you want to call it Apple Cloud. Something with Mac OS
        • jasonm237 months ago
          Or a github Macos runner
    • sockbot7 months ago
      So running on Asahi is ok?
      • Jotalea7 months 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.
    • CharlesW7 months 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.

    • broknbottle7 months 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.
    • scripturial7 months ago
      I’m curious, would Apple know if you are building on Linux on a Mac, or building on Linux on PC?
      • bornfreddy7 months ago
        I would be surprised if they didn't. It is trivial to detect this.
        • scripturial7 months 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?
          • mystified50167 months 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.

            • 7 months ago
              undefined
            • scripturial7 months ago
              I have not seen any evidence that would lead to a conclusion one way or another.
    • m4637 months 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.

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

      We need to get EU on this case.

      • bornfreddy7 months 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.
  • sherdil20227 months 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.

    • sherdil20227 months ago
      Also, it looks like using tools like xtool will violate Apple Developer license. Not a lawyer - but do your due diligence.
  • Abishek_Muthian7 months 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.

    • 7 months ago
      undefined
  • zombot7 months ago
    More info about xtool:

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

    This looks damn cool.

  • zoobab7 months ago
    I use the language of my choice, not those programming languages imposed on us by the GAFAMs.
  • surrTurr7 months ago
    has anyone actually published an app using this?
  • sureglymop7 months 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.

  • zer0zzz7 months ago
    Are they using ldprime/ld64 or lld?
  • iJohnDoe7 months ago
    Can someone explain what this?
    • v5v37 months 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_lead7 months ago
      A tutorial showing how to use xtool to develop for iOS on Linux/Windows. Normally, it's limited to Mac OS only.
    • scripturial7 months ago
      It allows automated builds of an Xcode project on a CI machine, VPS, or docker instance.
  • kapildev7 months 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-0x907 months 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.

    • zombot7 months 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.
      • can16358p7 months 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.
        • Daedren7 months 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.
          • can16358p7 months 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.

            • Daedren7 months ago
              Until you got to code review a coworker's storyboard. The underlying XML was absolutely horrible to deal with.

              Simply opening a storyboard without editing anything would also trigger file changes. I'm glad storyboards are gone.

            • zombot7 months ago
              > back in the ObjC+storyboard days

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

        • touwer7 months ago
          I wouldn't call XCode a nice developer experience. Hell comes closer
          • croes7 months ago
            Stockholm syndrome
        • hu37 months 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.

          • can16358p7 months 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.

        • realusername7 months 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.
      • lynx977 months ago
        Do you call anyone who isn't of your opinion an idiot?
        • zombot7 months 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...
      • razemio7 months 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.
      • jamil77 months 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.
    • realusername7 months ago
      I hope you also have a good internet connection because even in 2025, MacOS is incapable of resuming downloads.
      • sunshinerag7 months ago
        That is not MacOS you are using?
      • razemio7 months ago
        What are you talking about?
        • realusername7 months 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.

          • razemio7 months 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?

            • realusername7 months 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.
    • sunshinerag7 months ago
      Yes, I gave up on Apple too after my Intel Celeron box could not be used
  • techlatest_net7 months ago
    [dead]
  • lynx977 months ago
    [flagged]