---
Function {
    argument: None,
    arguments: FunctionArguments {
        arguments: [
            FunctionArgument {
                identifier: "wavpack",
                default: None,
            },
            FunctionArgument {
                identifier: "vamp-plugin-sdk",
                default: None,
            },
            FunctionArgument {
                identifier: "upower",
                default: None,
            },
            FunctionArgument {
                identifier: "taglib",
                default: None,
            },
            FunctionArgument {
                identifier: "sqlite",
                default: None,
            },
            FunctionArgument {
                identifier: "sratom",
                default: None,
            },
            FunctionArgument {
                identifier: "soundtouch",
                default: None,
            },
            FunctionArgument {
                identifier: "sord",
                default: None,
            },
            FunctionArgument {
                identifier: "serd",
                default: None,
            },
            FunctionArgument {
                identifier: "rubberband",
                default: None,
            },
            FunctionArgument {
                identifier: "qtx11extras",
                default: None,
            },
            FunctionArgument {
                identifier: "qtsvg",
                default: None,
            },
            FunctionArgument {
                identifier: "qtscript",
                default: None,
            },
            FunctionArgument {
                identifier: "qtkeychain",
                default: None,
            },
            FunctionArgument {
                identifier: "qtbase",
                default: None,
            },
            FunctionArgument {
                identifier: "protobuf",
                default: None,
            },
            FunctionArgument {
                identifier: "portmidi",
                default: None,
            },
            FunctionArgument {
                identifier: "portaudio",
                default: None,
            },
            FunctionArgument {
                identifier: "pkg-config",
                default: None,
            },
            FunctionArgument {
                identifier: "pcre",
                default: None,
            },
            FunctionArgument {
                identifier: "opusfile",
                default: None,
            },
            FunctionArgument {
                identifier: "mp4v2",
                default: None,
            },
            FunctionArgument {
                identifier: "lv2",
                default: None,
            },
            FunctionArgument {
                identifier: "lilv",
                default: None,
            },
            FunctionArgument {
                identifier: "libxcb",
                default: None,
            },
            FunctionArgument {
                identifier: "libvorbis",
                default: None,
            },
            FunctionArgument {
                identifier: "libusb1",
                default: None,
            },
            FunctionArgument {
                identifier: "libsndfile",
                default: None,
            },
            FunctionArgument {
                identifier: "libshout",
                default: None,
            },
            FunctionArgument {
                identifier: "libsecret",
                default: None,
            },
            FunctionArgument {
                identifier: "libopus",
                default: None,
            },
            FunctionArgument {
                identifier: "libmodplug",
                default: None,
            },
            FunctionArgument {
                identifier: "libmad",
                default: None,
            },
            FunctionArgument {
                identifier: "libkeyfinder",
                default: None,
            },
            FunctionArgument {
                identifier: "libid3tag",
                default: None,
            },
            FunctionArgument {
                identifier: "libGLU",
                default: None,
            },
            FunctionArgument {
                identifier: "libebur128",
                default: None,
            },
            FunctionArgument {
                identifier: "lame",
                default: None,
            },
            FunctionArgument {
                identifier: "hidapi",
                default: None,
            },
            FunctionArgument {
                identifier: "glibcLocales",
                default: None,
            },
            FunctionArgument {
                identifier: "flac",
                default: None,
            },
            FunctionArgument {
                identifier: "fftw",
                default: None,
            },
            FunctionArgument {
                identifier: "ffmpeg",
                default: None,
            },
            FunctionArgument {
                identifier: "faad2",
                default: None,
            },
            FunctionArgument {
                identifier: "cmake",
                default: None,
            },
            FunctionArgument {
                identifier: "chromaprint",
                default: None,
            },
            FunctionArgument {
                identifier: "fetchFromGitHub",
                default: None,
            },
            FunctionArgument {
                identifier: "fetchurl",
                default: None,
            },
            FunctionArgument {
                identifier: "mkDerivation",
                default: None,
            },
            FunctionArgument {
                identifier: "stdenv",
                default: None,
            },
            FunctionArgument {
                identifier: "lib",
                default: None,
            },
        ],
        ellipsis: false,
    },
    definition: FunctionApplication {
        function: Variable {
            identifier: "mkDerivation",
            position: (54, 1),
        },
        arguments: [
            Map {
                bindings: [
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "pname",
                                    position: (55, 3),
                                },
                            ],
                        },
                        String {
                            parts: [
                                Raw {
                                    content: "mixxx",
                                    position: (55, 12),
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "version",
                                    position: (56, 3),
                                },
                            ],
                        },
                        String {
                            parts: [
                                Raw {
                                    content: "2.3.2",
                                    position: (56, 14),
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "src",
                                    position: (58, 3),
                                },
                            ],
                        },
                        FunctionApplication {
                            function: Variable {
                                identifier: "fetchFromGitHub",
                                position: (58, 9),
                            },
                            arguments: [
                                Map {
                                    bindings: [
                                        KeyValue(
                                            AttributePath {
                                                attributes: [
                                                    Raw {
                                                        content: "owner",
                                                        position: (59, 5),
                                                    },
                                                ],
                                            },
                                            String {
                                                parts: [
                                                    Raw {
                                                        content: "mixxxdj",
                                                        position: (59, 14),
                                                    },
                                                ],
                                            },
                                        ),
                                        KeyValue(
                                            AttributePath {
                                                attributes: [
                                                    Raw {
                                                        content: "repo",
                                                        position: (60, 5),
                                                    },
                                                ],
                                            },
                                            String {
                                                parts: [
                                                    Raw {
                                                        content: "mixxx",
                                                        position: (60, 13),
                                                    },
                                                ],
                                            },
                                        ),
                                        KeyValue(
                                            AttributePath {
                                                attributes: [
                                                    Raw {
                                                        content: "rev",
                                                        position: (61, 5),
                                                    },
                                                ],
                                            },
                                            Variable {
                                                identifier: "version",
                                                position: (61, 11),
                                            },
                                        ),
                                        KeyValue(
                                            AttributePath {
                                                attributes: [
                                                    Raw {
                                                        content: "sha256",
                                                        position: (62, 5),
                                                    },
                                                ],
                                            },
                                            String {
                                                parts: [
                                                    Raw {
                                                        content: "sha256-EnOO5OGcaIITqfF9gpGktarzYOx128C1M2VmYNzdRsA=",
                                                        position: (62, 15),
                                                    },
                                                ],
                                            },
                                        ),
                                    ],
                                    recursive: false,
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "nativeBuildInputs",
                                    position: (65, 3),
                                },
                            ],
                        },
                        List {
                            elements: [
                                Variable {
                                    identifier: "cmake",
                                    position: (65, 25),
                                },
                                Variable {
                                    identifier: "pkg-config",
                                    position: (65, 31),
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "buildInputs",
                                    position: (67, 3),
                                },
                            ],
                        },
                        List {
                            elements: [
                                Variable {
                                    identifier: "chromaprint",
                                    position: (68, 5),
                                },
                                Variable {
                                    identifier: "faad2",
                                    position: (69, 5),
                                },
                                Variable {
                                    identifier: "ffmpeg",
                                    position: (70, 5),
                                },
                                Variable {
                                    identifier: "fftw",
                                    position: (71, 5),
                                },
                                Variable {
                                    identifier: "flac",
                                    position: (72, 5),
                                },
                                Variable {
                                    identifier: "glibcLocales",
                                    position: (73, 5),
                                },
                                Variable {
                                    identifier: "hidapi",
                                    position: (74, 5),
                                },
                                Variable {
                                    identifier: "lame",
                                    position: (75, 5),
                                },
                                Variable {
                                    identifier: "libebur128",
                                    position: (76, 5),
                                },
                                Variable {
                                    identifier: "libGLU",
                                    position: (77, 5),
                                },
                                Variable {
                                    identifier: "libid3tag",
                                    position: (78, 5),
                                },
                                Variable {
                                    identifier: "libkeyfinder",
                                    position: (79, 5),
                                },
                                Variable {
                                    identifier: "libmad",
                                    position: (80, 5),
                                },
                                Variable {
                                    identifier: "libmodplug",
                                    position: (81, 5),
                                },
                                Variable {
                                    identifier: "libopus",
                                    position: (82, 5),
                                },
                                Variable {
                                    identifier: "libsecret",
                                    position: (83, 5),
                                },
                                Variable {
                                    identifier: "libshout",
                                    position: (84, 5),
                                },
                                Variable {
                                    identifier: "libsndfile",
                                    position: (85, 5),
                                },
                                Variable {
                                    identifier: "libusb1",
                                    position: (86, 5),
                                },
                                Variable {
                                    identifier: "libvorbis",
                                    position: (87, 5),
                                },
                                Variable {
                                    identifier: "libxcb",
                                    position: (88, 5),
                                },
                                Variable {
                                    identifier: "lilv",
                                    position: (89, 5),
                                },
                                Variable {
                                    identifier: "lv2",
                                    position: (90, 5),
                                },
                                Variable {
                                    identifier: "mp4v2",
                                    position: (91, 5),
                                },
                                Variable {
                                    identifier: "opusfile",
                                    position: (92, 5),
                                },
                                Variable {
                                    identifier: "pcre",
                                    position: (93, 5),
                                },
                                Variable {
                                    identifier: "portaudio",
                                    position: (94, 5),
                                },
                                Variable {
                                    identifier: "portmidi",
                                    position: (95, 5),
                                },
                                Variable {
                                    identifier: "protobuf",
                                    position: (96, 5),
                                },
                                Variable {
                                    identifier: "qtbase",
                                    position: (97, 5),
                                },
                                Variable {
                                    identifier: "qtkeychain",
                                    position: (98, 5),
                                },
                                Variable {
                                    identifier: "qtscript",
                                    position: (99, 5),
                                },
                                Variable {
                                    identifier: "qtsvg",
                                    position: (100, 5),
                                },
                                Variable {
                                    identifier: "qtx11extras",
                                    position: (101, 5),
                                },
                                Variable {
                                    identifier: "rubberband",
                                    position: (102, 5),
                                },
                                Variable {
                                    identifier: "serd",
                                    position: (103, 5),
                                },
                                Variable {
                                    identifier: "sord",
                                    position: (104, 5),
                                },
                                Variable {
                                    identifier: "soundtouch",
                                    position: (105, 5),
                                },
                                Variable {
                                    identifier: "sratom",
                                    position: (106, 5),
                                },
                                Variable {
                                    identifier: "sqlite",
                                    position: (107, 5),
                                },
                                Variable {
                                    identifier: "taglib",
                                    position: (108, 5),
                                },
                                Variable {
                                    identifier: "upower",
                                    position: (109, 5),
                                },
                                Variable {
                                    identifier: "vamp-plugin-sdk",
                                    position: (110, 5),
                                },
                                Variable {
                                    identifier: "wavpack",
                                    position: (111, 5),
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "qtWrapperArgs",
                                    position: (114, 3),
                                },
                            ],
                        },
                        List {
                            elements: [
                                String {
                                    parts: [
                                        Raw {
                                            content: "--set LOCALE_ARCHIVE ",
                                            position: (115, 6),
                                        },
                                        Expression {
                                            expression: Variable {
                                                identifier: "glibcLocales",
                                                position: (115, 29),
                                            },
                                        },
                                        Raw {
                                            content: "/lib/locale/locale-archive",
                                            position: (115, 42),
                                        },
                                    ],
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "cmakeFlags",
                                    position: (121, 3),
                                },
                            ],
                        },
                        List {
                            elements: [
                                String {
                                    parts: [
                                        Raw {
                                            content: "-DINSTALL_USER_UDEV_RULES=OFF",
                                            position: (122, 6),
                                        },
                                    ],
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "postInstall",
                                    position: (125, 3),
                                },
                            ],
                        },
                        FunctionApplication {
                            function: PropertyAccess {
                                expression: Variable {
                                    identifier: "lib",
                                    position: (125, 17),
                                },
                                attribute_path: AttributePath {
                                    attributes: [
                                        Raw {
                                            content: "optionalString",
                                            position: (125, 21),
                                        },
                                    ],
                                },
                                default: None,
                            },
                            arguments: [
                                PropertyAccess {
                                    expression: Variable {
                                        identifier: "stdenv",
                                        position: (125, 36),
                                    },
                                    attribute_path: AttributePath {
                                        attributes: [
                                            Raw {
                                                content: "isLinux",
                                                position: (125, 43),
                                            },
                                        ],
                                    },
                                    default: None,
                                },
                                String {
                                    parts: [
                                        Raw {
                                            content: "rules=\"$src/res/linux/mixxx-usb-uaccess.rules\"\nif [ ! -f \"$rules\" ]; then\n    echo \"$rules is missing, must update the Nix file.\"\n    exit 1\nfi\nmkdir -p \"$out/lib/udev/rules.d\"\ncp \"$rules\" \"$out/lib/udev/rules.d/69-mixxx-usb-uaccess.rules\"\n",
                                            position: (126, 1),
                                        },
                                    ],
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "meta",
                                    position: (135, 3),
                                },
                            ],
                        },
                        With {
                            expression: Variable {
                                identifier: "lib",
                                position: (135, 15),
                            },
                            target: Map {
                                bindings: [
                                    KeyValue(
                                        AttributePath {
                                            attributes: [
                                                Raw {
                                                    content: "homepage",
                                                    position: (136, 5),
                                                },
                                            ],
                                        },
                                        String {
                                            parts: [
                                                Raw {
                                                    content: "https://mixxx.org",
                                                    position: (136, 17),
                                                },
                                            ],
                                        },
                                    ),
                                    KeyValue(
                                        AttributePath {
                                            attributes: [
                                                Raw {
                                                    content: "description",
                                                    position: (137, 5),
                                                },
                                            ],
                                        },
                                        String {
                                            parts: [
                                                Raw {
                                                    content: "Digital DJ mixing software",
                                                    position: (137, 20),
                                                },
                                            ],
                                        },
                                    ),
                                    KeyValue(
                                        AttributePath {
                                            attributes: [
                                                Raw {
                                                    content: "license",
                                                    position: (138, 5),
                                                },
                                            ],
                                        },
                                        PropertyAccess {
                                            expression: Variable {
                                                identifier: "licenses",
                                                position: (138, 15),
                                            },
                                            attribute_path: AttributePath {
                                                attributes: [
                                                    Raw {
                                                        content: "gpl2Plus",
                                                        position: (138, 24),
                                                    },
                                                ],
                                            },
                                            default: None,
                                        },
                                    ),
                                    KeyValue(
                                        AttributePath {
                                            attributes: [
                                                Raw {
                                                    content: "maintainers",
                                                    position: (139, 5),
                                                },
                                            ],
                                        },
                                        With {
                                            expression: Variable {
                                                identifier: "maintainers",
                                                position: (139, 24),
                                            },
                                            target: List {
                                                elements: [
                                                    Variable {
                                                        identifier: "goibhniu",
                                                        position: (139, 39),
                                                    },
                                                    Variable {
                                                        identifier: "bfortz",
                                                        position: (139, 48),
                                                    },
                                                ],
                                            },
                                        },
                                    ),
                                    KeyValue(
                                        AttributePath {
                                            attributes: [
                                                Raw {
                                                    content: "platforms",
                                                    position: (140, 5),
                                                },
                                            ],
                                        },
                                        PropertyAccess {
                                            expression: Variable {
                                                identifier: "platforms",
                                                position: (140, 17),
                                            },
                                            attribute_path: AttributePath {
                                                attributes: [
                                                    Raw {
                                                        content: "linux",
                                                        position: (140, 27),
                                                    },
                                                ],
                                            },
                                            default: None,
                                        },
                                    ),
                                ],
                                recursive: false,
                            },
                        },
                    ),
                ],
                recursive: true,
            },
        ],
    },
}