Please familiarise yourself with the forum, including policy on feature requests, rules & guidelines

Using Github to backup your XML files for kits, songs, and synths.

alifeinbinaryalifeinbinary Vancouver, CanadaBeta Tester Posts: 19

I was periodically backing up my SD card to my Dropbox but found the process to be cumbersome, since I only wanted to update the songs/synths/kits that had changed since the last backup instead of overwriting everything. Then I had the idea to use git to backup the XML files in the KITS/ SYTHNS/ and SONGS/ directories, since git is made for doing exactly this. I created a .gitignore file to ignore the /SAMPLES/ directory (this still gets stored on Dropbox/Nextcloud) and any hidden files the Deluge creates.


This is a much better solution as it saves a lot of time and worry during backup. Having version control for your sounds and songs is ideal in the event that you want to return to a previous version down the road. You could maintain separate branches for [production], [live] etc. Anyway, just thought I would share. Also, take this as a friendly reminder to backup your data!

Post edited by alifeinbinary on


  • 0
    HeptagenHeptagen Posts: 277

    Very good idea, thanks!

  • 0
    phillipadsmithphillipadsmith United StatesBeta Tester Posts: 89


  • 0
    ceetronicceetronic Chepstow, South Wales, UKBeta Tester Posts: 62

    Great idea!

  • 0
    neilbaldwinneilbaldwin UKBeta Tester Posts: 143

    Love this, great idea!

  • 1
    musirafaelmusirafael madridPosts: 11

    Seems like a good idea! Just make it a private repository if you have bought commercial presets.

    I wonder why the community have not produced a central repository for free patches in GitHub with a common agreed directory structure.

  • 0
    BolganiBolgani SuomiPosts: 61

    Took a look at this out of curiosity. It seems that GitHub has some public synth patch storages and I was wondering what this would take to create a public repository:

    • The repository itself (meh)
    • Probably the best course of action would be that a someone or preferably a group of people would manage this and take contributions by email/whatever and download them to the repository.
    • The alternative would be that the contributors must have a GitHub account and a Contribution right to the repository and should push branches of their changes and someone would have to review and approve them and I'm afraid that it would get rather confusing for some. GitHub is tool made for coding and has it's own workflow suited for that environment.

    But I think that the main problem is that it seems GitHub recommends repositories to be under 1GB or at least 5GB. Which would store a very large coding project but we have samples. In comparision Google Drive offers 15GB free for an account. Don't know then. :|

  • 1
    alifeinbinaryalifeinbinary Vancouver, CanadaBeta Tester Posts: 19

    I'm not advocating that anyone store the /SAMPLES/ directory within a git repository for the same reason you mentioned, it will balloon in size. I backup /SAMPLES/ separately in my Dropbox. Everything else is text-based in XML format, so git works perfectly. As for the idea of maintaining a public repo for non-commercial Deluge patches, it could work. You're right, people who want to contribute would need to be familiar with the git workflow and commands in order to simplify the maintainance of said project. In order to manage all the sounds, Rohan may need to implement a sub-directory functionality for /SYNTHS/ so it could be further split up into sub-categories like /SYNTHS/PADS/, /SYNTHS/LEADS/, etc. This functionality may be in the development pipeline anyway.

  • 0
    BugahBugah Posts: 29
    edited August 2021

    Initial thoughts:

    If we don't have Synth sub-directory functionalities, then we'd need to agree on a naming convention Bass-Distorted-023 or something so it'd be easy to remember and search with the deluge keyboard. Or if we're minimizing keystrokes BSDIST023 or something similarly horrible to read :).

    I have very basic git experience, how do we manage for example 20 people with different versions of the repo and their unique additions all wanting to push or pull? Would it be better to have one person or group manage submissions so only one person or group is updating the repo and then everyone just pulls down whenever they want to update to the latest version?

    Looking at Arturia Pigments Presets for naming inspiration:
    Bass, Keys, Synth Lead, Pad, Piano, Electric Piano, Organ, Strings, Brass & Winds, Drums, Sequence, Vocal, Sound Effects

    Then each of those main types has an adjective describing that type, for example Bass -> Plucked Bass, Synth Lead -> Dirty Lead, or Poly Lead, or Soft Lead, or Solo Lead

    So if we've got about 12 different main types, each of those would have to have some adjectives to describe them, then I'd say we'd just increment the numbers for each subtype.

    We'd also have to differentiate this "pile of presets" from the Board of Deluge "pile of presets" and prefix the names like Public Repository PR or something?

    Possible names = PublicRepo + "Type" + "Subtype" + "Preset Slot Number"

    This then indicates 99 possible presets per subtype.
    12 Types * 5 subtypes * 99 preset slots = 5940 presets
    how big is that? XML files aren't that big right?
    We'd have to pin down some Types and corresponding Subtypes

    Post edited by Bugah on
  • 2
    BugahBugah Posts: 29
    edited August 2021

    After talking to people in the Discord:
    It was commented that git seemed excessive to our needs. Version control for a preset PR.Bass.Sub.02 seemed generally unnecessary since if I was an author I wouldn't be constantly updating the preset, I'd probably make a new one if I needed to change things enough. It's also hard to use git if people don't know how.

    ## What's the problem?
    There's a million synth presets. New users first question is "how do you all manage your presets?" "how do you find things?" Once you download all the cool preset packs, you've got to scroll through hundreds of things to find everything or make up your naming convention to find stuff. Then you've got to rename all the presets you download online to your own format if you're going this deep. XML files are scattered across Discord, Forum, Facebook, and so on each without a naming convention for general organization.

    ## What do we want? Who wants this?
    We asked @volsteh who has a million presets and they said it is a great idea. They're currently organizing presets as "B45.Let him grow 3.XML" and so on. Maybe instead of a Preset Number we could have a memorable name like "Let him grow" instead of "057". Other users have expressed interest in a library.

    ## Doesn't this already exist?
    The Deluge Presets section of the forum exists already, but the presets are kind of random. Basically we'd just consolidate these threads and standardize the naming convention of the synth presets so we can easily find things. I believe multisamples and sample management would be out of scope.

    @bleurgh started a cool project here:
    But often with these projects someone tries to start it and then life intervenes and keeping up management of the app and presets becomes difficult

    this already exists? but it doesn't seem anyone knows about it or uses it? I don't know the history of this thing but it seems to fit all our needs for synth presets but I don't see any posts yet. I know the Zoia community uses this site to great effect.

    ## What else could we do?
    We thought that Google Drive would be a decent option. Synthstrom already uses their google account to host the Deluge manual, so setting up a folder labeled "Community Synth Presets" in their Drive would be easy for them. They would be the Owners and have the ability to set permissions for other users. Most people already have a google account but I don't think you even need one to browse and download files off of Drive. Synthstrom could set some people (10 - 20?) as Editors who would have the ability to add and remove files and folders from this Drive. We'd agree upon some sort of naming convention, then it'd be the Editor's job to upload the preset to the correct folder. If everyone gets bored, it's okay since Synthstrom is the owner of the folder. If Synsthrom doesn't want more work managing things, that's okay because it'd be managed by the users (Editors) and forum people. Viewers (everyone) could scroll through the file directories easily and download whatever they want. There's even basic version control if some Editor goes mad with power and deletes everything, Owner can just boot them and revert the files.

    I don't think it'd be possible to "download the file structure straight to the SD card" since currently Deluge doesn't support subfolders for synth preset loading. Instead a user would scroll through the folders and download the XML files which would be named according to whatever convention we agree on (ideas for such in the above post).

    ## Out of scope
    I don't want to touch sample management, just synth preset management. This includes not dealing with multisamples and hosting hundreds of GB of keyboard samples somewhere. Limit this to just Deluge XML synth preset files. Paid presets packs like the Boards of Deluge will not be admitted to the Community Collection.

    could set up a zoom meeting with like... idk 10 deluge nerds and synthstrom for an hour and talk about it?

    EDIT: Sorry to spam this thread! This: works great. Zoia community uses it extensively. Easy to sign up for an account. Sort by Date, Views, Likes, Downloads. Search for keywords. I uploaded a test patch shared on the Deluge Discord.

    Post edited by Bugah on
  • 0
    tomtobblestoptomtobblestop Portland, Maine, USABeta Tester Posts: 16

    Great stuff Bugah. Any update on your workflow or if subfolder support is incoming? Threre's definitely a need to streamline the management of presets and I think either Github or Drive sounds ideal.

  • 0
    tomtobblestoptomtobblestop Portland, Maine, USABeta Tester Posts: 16

    Heads up that there's subfolder support in the v4 beta firmware!

  • 0
    drbourbondrbourbon ItalyBeta Tester Posts: 55

    Just discovered this thread.. I am working at a web frontend to github as a SYNTHS, KITS and SONGS repository. This is meant mainly for sharing and downloading Deluge content as zip files including referenced samples, but the idea is almost the same 🙂

    There's a thread named Delugist where I'll post development advancements. Feedbacks and suggestions are more than welcome.

Sign In or Register to comment.