guru-files
Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
guru-files [2021/09/03 19:38] – created shane | guru-files [2023/05/08 18:59] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== About .guru files ====== | ====== About .guru files ====== | ||
+ | //.guru// files provide a convenient way to package, distribute, and install batches of related files in Unify, e.g., patch libraries, sample collections, | ||
+ | |||
+ | A //.guru// file is simply a renamed //.zip// file, whose contents (files and folders) are set up to unzip into Unify' | ||
+ | |||
+ | ===== Example .guru file ===== | ||
+ | The following example //.guru// file was created in support of a new video about the [[patch-variations|Patch Variations]] feature in Unify v1.6.0: | ||
+ | |||
+ | {{ :: | ||
+ | |||
+ | Click the link above to download this //.guru// file, and note that //it has been re-zipped//, | ||
+ | |||
+ | This particular //.guru// file has the following folder structure: | ||
+ | * file: //Unify Step Curves.guru// | ||
+ | * folder: // | ||
+ | * folder: //User Library// | ||
+ | * folder: //Media// | ||
+ | * file: // | ||
+ | * folder: //Patches// | ||
+ | * file: //3 Parts Song Switcher.unify// | ||
+ | * folder: Presets | ||
+ | * folder: //Macro Link Curves// | ||
+ | * 18 //.curve// files | ||
+ | |||
+ | When this //.guru// file is dropped into the Unify GUI, Unify will unzip its contents into the main data folder. Hence, everything inside the // | ||
+ | |||
+ | What happens is exactly the same as if you put the //.guru// file itself into the main Unify data folder, and unzipped its contents using the " | ||
+ | |||
+ | ===== How Unify unzips the .guru file ===== | ||
+ | |||
+ | Any **folders** present in the //.guru// file, which don't yet exist in the corresponding locations under the main Unify data folder, will **get created automatically.** This is why it is VERY important to get the folders inside your //.guru// files just right, or files and folders will go into the wrong places, and anyone to whom you send your //.guru// file will end up with a mess to clean up. | ||
+ | |||
+ | Individual **Files** present in the //.guru// file will be **created** if they don't already exist, but if a file by the same name does exist in that location, it will be **overwritten** with the new file. This is another reason to be very careful when setting up //.guru// files. | ||
+ | |||
+ | If the //.guru// file contains any patch files (i.e., files which go into the //Patches// sub-folder of any Library folder), Unify will take note of the library name (i.e., the name of the parent folder of the //Patches// folder containing the patch file) and trigger the [[playing-patches# | ||
+ | |||
+ | ===== Limitations of .guru files ===== | ||
+ | When Unify unzips the contents of a //.guru// file, it can only //add// or // | ||
+ | |||
+ | ===== Creating a .guru file (the safe way) ===== | ||
+ | Suppose you have created a new library called //My Awesome Library// in Unify, and you'd like to make a //.guru// file to help others install it quickly. Here are the steps: | ||
+ | - Start by creating an empty " | ||
+ | - Open your working folder, and also the main Unify data folder, in //Windows Explorer// or Mac //Finder//. | ||
+ | * To quickly open the main Unify data folder, click the " | ||
+ | - In the window representing your working folder: | ||
+ | * Create an empty // | ||
+ | - In the main Unify data folder window: | ||
+ | * Navigate into the // | ||
+ | * Locate the folder for your library (in this case //My Awesome Library//) | ||
+ | - **Copy** the entire //My Awesome Library// folder to the empty // | ||
+ | - In your working-folder window, navigate back up to where you started (where you see the // | ||
+ | - Select the // | ||
+ | * On a Mac, right-click the // | ||
+ | * On a Windows PC with [[https:// | ||
+ | - Rename the resulting //.zip// file to whatever you want, and //change the extension from .zip to .guru//. | ||
+ | * Your operating system will pop up some kind of message asking you to confirm that you really want to change the extension to //.guru//. | ||
+ | * Click " | ||
+ | |||
+ | At this point, assuming you followed the above steps precisely, you will have a valid //.guru// file, which others can now use to install //My Awesome Library// quickly. | ||
+ | |||
+ | If you want to upload your //.guru// file to some kind of file-sharing service, attach to an email, etc., it's usually best to //re-zip// the //.guru// file, and share/ | ||
+ | |||
+ | ===== Creating a .guru file (the risky way) ===== | ||
+ | If you know what you're doing, you can use these steps instead: | ||
+ | - Open the main Unify data folder, and navigate into // | ||
+ | - Create a new empty // | ||
+ | - Drag (i.e., move) your own library folder into this new // | ||
+ | - Compress the new // | ||
+ | - Make sure to move your library folder back out into the main // | ||
+ | |||
+ | ===== Creating a .guru file (more generic) ===== | ||
+ | The above instructions described how to make a //.guru// file for a single patch library, but //.guru// files can contain multiple libraries, or no libraries (i.e., no top-level // | ||
+ | |||
+ | Whatever you do, just make sure that the folder structure of your //.guru// file exactly corresponds to where all of your own files need to go. | ||
+ | |||
+ | ===== Testing your .guru files ===== | ||
+ | It's a very good idea to test dragging your //.guru// file into Unify, to make sure everything goes into the right places. The best way to do this is to create a second "main Unify data folder" | ||
+ | |||
+ | To create a second Unify data folder: | ||
+ | - Create an empty folder in a suitable location on your disk, then create empty // | ||
+ | * If you do not create these sub-folders, | ||
+ | - In Unify, go to the Settings view, click the " | ||
+ | - IMPORTANT: **Quit Unify** immediately. | ||
+ | * This step ensures that your patch database will not be damaged. | ||
+ | - Optionally, copy over any other content you may want (patch libraries, presets, etc.) from your real Unify data folder to your testing folder. | ||
+ | * Be very careful that to COPY (not MOVE) files/ | ||
+ | - Re-start Unify | ||
+ | * Unify will automatically create an empty database file // | ||
+ | * If you copied over any libraries, click the lightning-bolt icon at the top of the patch browser, to update this newly-created database to include entries for whatever patches you copied. | ||
+ | - Optional, but recommended: | ||
+ | * This will allow you to delete and re-create it quickly, for future tests. | ||
+ | - Drag/drop your //.guru// file, and verify that Unify responds as you would wish. | ||
+ | - Examine the contents of your test data folder carefully, and verify that all files/ | ||
+ | |||
+ | If you notice any problems at steps 7/8, you will need to re-build your //.guru// file accordingly. Before trying it again, delete your entire test data folder, and re-create it as it was at step 6, by unzipping the zip file you created at step 6. Then you can simply re-start Unify and repeat steps 7/8. | ||
+ | |||
+ | When you are finished testing: | ||
+ | - Go to Settings, click the " | ||
+ | - **Quit Unify** immediately, | ||
+ | * Everything should now be back exactly as it was, including your patch database. | ||
guru-files.1630697931.txt.gz · Last modified: 2023/05/08 18:59 (external edit)