final: prev:

let
    fetchzip = prev.fetchzip;
    use = path: prev.callPackage (import path) { pkgs = prev; };
in
{
    wallpaper = use ./wallpaper;
    tetrio.desktop = use ./tetrio;
    tetrio.plus =
        let
            repo = {
                owner = "UniQMG";
                name = "tetrio-plus";
                job = "11675178434";
            };
            src = fetchzip {
                url = "https://gitlab.com/${repo.owner}/${repo.name}/-/jobs/${repo.job}/artifacts/raw/app.asar.zip";
                hash = "sha256-j3ACcnT64eMQtWYDGOE2oGXpnN5EUqk+lyV6ARBEtU8=";
            };
        in
        "${src}/app.asar";
    tetrio.skins = {
        simple-connected = use ./tetrio/skins/simple-connected.nix;
    };

    leveldb-cli = use ./leveldb;

    configs.neovim = use ./neovim;
    configs.fish = use ./fish;

    nimbus-roman = use ./nimbus;
    monaco = use ./monaco-font;
}
