The simplest solution to maintain local storage for Apple updates is Reposado (free open-source tool). This article describes configuring this tool.
- 400 GB of available storage
- IIS should be installed and configured on the server you are installing Reposado on
Download and install Python:
- Download Python-2.7.9 and install it.
In Control Panel > System and Security > System applet click on Advanced system settings > Advanced > Environment Variables > in System variables locate Path variable > double-click it and add directory where Python is located in the end of Variable value using semicolon separator:
- Download and install py2exe in the Python directory.
Download and install cURL:
Run the installer and click on Advanced button:
Configure installation options and note installation directory.
Restart the server.
Open Command Prompt and execute the following
curl www.google.com -o %userprofile%\Desktop\test.txt
- Make sure that non-empty test.txt has been created on the Desktop and there were no errors in the output
Note: If The program can not start because api-ms-win-crt-runtime-l1-1-0.dll is missing from your computer error appears during command execution, install Visual C++ Redistributable on the server.
Create directories that will contain Updates, Catalogs, and Reposado Metadata, e.g. create the following folders:
Open Internet Information Services (IIS) Manager
Right click on Default Web Site and click Add Virtual Directory...
Type any name in Alias field (e.g. repo) and specify the path to folder with Reposado downloaded updates (e.g. C:\reposado\html) in Physical path field:
Click on Connect as... > choose Specific user > click Set... and specify user name and password (e.g. use domain admin credentials).
Click on just created virtual directory in Default Web Site > find Directory Browsing (IIS section in the center pane) and double click on it.
Click Enable in the right pane.
Click on Default Web Site ->
and click Browse:80 (http) in the right pane: page must be opened in the Internet browser without any errors.
Double click on MIME Types for
(IIS section in the center pane) > click Add... button in the right pane and add the following MIME types (extension - MIME type):
.dist - text/xml .sucatalog - text/xml .pkg - application/x-newton-compatible-pkg .pkm - application/x-newton-compatible-pkg
- Download Reposado.
Unzip downloaded archive e.g.into C:\reposado-master
Do the following to setup Reposado:
Open command prompt and change directory to folder with reposado e.g.
Executing the following commands:
setup.py build setup.py install
Run the following command line to configure Reposado: python
>\build\scripts-2.7\repoutil --configure e.g.
python "C:\reposado-master\build\scripts-2.7\repoutil" --configure
Specify the following when asking:
Filesystem path to store replicated catalogs and updates (e.g. C:\reposado\html)
Filesystem path to store Reposado metadata (e.g. C:\reposado\metadata)
URL (base URL) to virtual directory created in IIS (looks like http://
>/repo - without "/" symbol at the end of the URL), e.g.
- Path to cURL binary file (e.g. C:\Program Files (x86)\cURL\bin\curl.exe). Note: do not use quote marks when specifying the path.
Replicate Update Catalogs and Packages with Reposado:
Run synchronization by executing the following command - python
After synchronization is finished, there must be *.sucatalog (in the folder for storing catalogs which was specified during Reposado configuration). This catalog contains links (with specified base URL during Reposado configuration) to downloaded updates.
We recommend running Reposado synchronization once a day in order to have the latest updates downloaded.