In the contemporary Common Lisp ecosystem, software is distributed via Quicklisp[1], which is a centralized software repository, where, once a month, a new software distribution is created, encompassing the most recent releases of all software included in the dist. This means that changes in software can take up to a month to be reflected in Quicklisp.
Ultralisp is a Quicklisp-compatible distribution, except it's a bleeding-edge one. Each time a piece of software included in it releases a new version/release/commit, a new dist is created, and the modified software is available in Ultralisp within minutes.
Ah. Understood. I solve this problem by forking every Quicklisp repo I use, and telling ASDF to look in my local clones first. This also solves the problem of making it easy to submit a pull request when I fix a bug in a Quicklisp library.
Also -- and this is very important to me -- it means I'm in control of which version of every library I use. I've been burned too many times by Quicklisp "updating" a library that was previously working which doesn't any more. Now I have direct git control over my version coherency and I'm a happy camper.
I have been doing this for a while by following a pattern found here[0]. I typically follow this and copy every asdf package dependency into the working directory of whatever project I'm working on [setting the subdir-search-registry to (list (truename "./asdf-systems/")) and placing the files into a subdirectory of that name] .This way I have the option to make changes in them without affecting anything else on the system depending on the same package. In general this means I use Quicklisp as a (huge) convenience in finding packages when programming interactively in the REPL, but not in deployment. I think this setup is also nice because it is dead simple to drop in copies of asdf packages from the web that aren't found in the Quicklisp library.
It's all manual now but not that hard. Buried in Quicklisp are the locations of all its repos. The reason I haven't automated it is I don't know if there's a Github API for "Please fork this URI into my account if that's not already done." (Plus not every repo is on Github, and not every QL repo is a proper repo.) I haven't bothered to look into automating it because I don't use that many QL libraries, so manual operation is fine for me. Happy to work with you if you want to try to automate the process.