Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Is it possible to install iCloud or iTunes without using the Windows app store? (Read 3225 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Is it possible to install iCloud or iTunes without using the Windows app store?

I was gonna try the latest qaac to to play around with it a little. Now, normally, I'd have used Quicktime but I noticed that Quicktime has been deprecated, and I'm stuck with either using iTunes or iCloud. OK fine, I'll download one of those then - especially since I can probably extract the necessary components without installing the entire software suite.

But it seems I have to download it from the Windows app store. I can't just download either software from the Apple website - they just link to the Windows app store thing. Now the problem is: I'd need a Windows account or something, and I'm not gonna get one of those. All the Windows software I use lives in Windows VMs, I haven't had Windows on bare metal at least since 1998 - and I'm not planing to change that.

Is there some nice way to get the necessary Apple DLLs, without the Windows app store detour? I don't necessarily trust Microsoft, and I'd like to use their services as little as possible.

I found this: https://support.apple.com/en_GB/downloads/itunes I downloaded the 64bit version (the only one I'm interested in right now) (iTunes64Setup.exe).
I extracted that file (which is essentially an archive):

Code: [Select]
AppleMobileDeviceSupport64.msi
AppleSoftwareUpdate.msi
Bonjour64.msi
SetupAdmin.exe
iTunes64.msi

Now, it looks the only file I should be interested in, is iTunes64.msi, everything else is just installer fluff.

I tried extracting iTunes64.msi but it doesn't really yield usable results. Most files have names like: filFFEDC7C69B53C24CDB8917A86D13E2C4
Some file names have proper names, others have weird suffixes, like: msvcp140.dll.DFEFC2FE_EEE6_424C_841B_D4E66F0C84A3
I can still inspect some of the files with garbled names, by identifying them by their magic number.

That's how far I got. I'm not sure if I should just install iTunes64.msi on Windows, or if I can extract that one or two DLLs from the contained files to get qaac running. If anyone could tell me what libraries I need, that would be helpful, because then I can perhaps look for them inside the archives.

Re: Is it possible to install iCloud or iTunes without using the Windows app store?

Reply #1
Have you seen makeportable.cmd? It extracts the required files from the iTunes installer and puts them in a folder (QTfiles64). I think it extracts more files than it's necessary now, but either way it should work.

Re: Is it possible to install iCloud or iTunes without using the Windows app store?

Reply #2
Have you seen makeportable.cmd? It extracts the required files from the iTunes installer and puts them in a folder (QTfiles64). I think it extracts more files than it's necessary now, but either way it should work.
I didn't know about this, and I'm very happy you pointed me to it. Really appreciate it!

It seems I did like half of the legwork, and the next step would be to run msiexec, which only works on Windows, of course. I was kinda hoping I could do most of the extraction process on Linux, but I guess I can't. From there on, it's essentially picking out the files you need. I still don't know which one of the DLLs is actually needed for QAAC, I'll see if I can find something like ldd but on Windows.

 

Re: Is it possible to install iCloud or iTunes without using the Windows app store?

Reply #3
Ok got it. I merged the directory with the extracted DLLs with the existing qaac directory, and it seems to work.

It kinda remains to be seen, just for how long we can still directly download the iTunes installer from the apple.com website. It seems they try to shove people off to the Microsoft app store.

Also I just realized I've perhaps downloaded the wrong language, perhaps (en_GB instead of en_US). Probably a non-issue, but it might end up messing with my locale settings.

Re: Is it possible to install iCloud or iTunes without using the Windows app store?

Reply #4
FWIW, these are the files that I have in my QTfiles64 folder, from a couple of years ago:
Code: [Select]
ASL.dll
CoreAudioToolbox.dll
CoreFoundation.dll
icudt62.dll
libdispatch.dll
libicuin.dll
libicuuc.dll
msvcp100.dll
msvcp140.dll
msvcr100.dll
objc.dll
vcruntime140.dll
I've read that nothing has changed regarding Apple's encoder for AAC (and ALAC) for some years now, so there's no need to update these files. QAAC itself has had a few changes/fixes, though.

Re: Is it possible to install iCloud or iTunes without using the Windows app store?

Reply #5
FWIW, these are the files that I have in my QTfiles64 folder, from a couple of years ago:
[…]
That's a lot less than what I have. I simply followed the code @Brand posted. I'll throw away all the DLLs that seem superfluous and check if things are still running alright.

It would be nice to see exactly what DLLs QAAC depends on. I haven't found any hints in the source so far, but I haven't really been looking into this too deeply. Apparently, all the api-ms-win*.dlls aren't needed.
I've since found a way to decompress the .msi files on Linux, such that the correct names and folder structure is preserved, which is nice.

Re: Is it possible to install iCloud or iTunes without using the Windows app store?

Reply #6
I was also curious about which DLLs are needed from those extracted with makeportable with the current QAAC and iTunes (both 64bit on Windows 10).
My procedure was to check with ./qaac64 --check and in the end do a couple of encodes with foobar2000 to make sure.

This is what I found:
1. you need all the Apple DLLs.
2. if you have the correct Visual C++ Redistributables installed in Windows you don't need any MS DLLs.
3. if you don't have any Visual C++ Redistributables installed you only need msvcp140.dll.
So this is the list:
Code: [Select]
ASL.dll
CoreAudioToolbox.dll
CoreFoundation.dll
icudt62.dll
libdispatch.dll
libicuin.dll
libicuuc.dll
msvcp140.dll
objc.dll

But let me know if something isn't right or if you encounter any issues with these.
And I guess a QAAC update in the future could change the DLL requirements.

Re: Is it possible to install iCloud or iTunes without using the Windows app store?

Reply #7
@Brand: I ran through the DLLs with strings | rg dll and even though some of the references made them show up, none of the api-ms-win-crt*dll files are needed.

I've also come to the exact same conclusion as to which DLLs are required, however I didn't check with refalac, only qaac64.

I managed to get all the files prepared on Linux:
Code: [Select]
$ 7z e iTunes64Setup.exe iTunes64.msi
$ msiextract -C __MSI__ iTunes64.msi
msvcp140.dll is in __MSI__/System64/ all other DLLs are in __MSI__/iTunes/

The relevant iTunes files together with the libsox*.dll that come with QAAC and qaac64.exe itself is 44 Megabytes - not as lean as I'd like it. Perfectly fine on a desktop OS, but I have to fire up a VM to encode AAC files like that.

It's too bad we can't just link to DLLs at runtime on Linux like this.