---
Function {
    argument: None,
    arguments: FunctionArguments {
        arguments: [
            FunctionArgument {
                identifier: "systemd",
                default: None,
            },
            FunctionArgument {
                identifier: "linuxHeaders",
                default: None,
            },
            FunctionArgument {
                identifier: "dbus",
                default: None,
            },
            FunctionArgument {
                identifier: "pkg-config",
                default: None,
            },
            FunctionArgument {
                identifier: "ninja",
                default: None,
            },
            FunctionArgument {
                identifier: "meson",
                default: None,
            },
            FunctionArgument {
                identifier: "docutils",
                default: None,
            },
            FunctionArgument {
                identifier: "fetchFromGitHub",
                default: None,
            },
            FunctionArgument {
                identifier: "stdenv",
                default: None,
            },
            FunctionArgument {
                identifier: "lib",
                default: None,
            },
        ],
        ellipsis: false,
    },
    definition: FunctionApplication {
        function: PropertyAccess {
            expression: Variable {
                identifier: "stdenv",
                position: (4, 1),
            },
            attribute_path: AttributePath {
                attributes: [
                    Raw {
                        content: "mkDerivation",
                        position: (4, 8),
                    },
                ],
            },
            default: None,
        },
        arguments: [
            Map {
                bindings: [
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "pname",
                                    position: (5, 3),
                                },
                            ],
                        },
                        String {
                            parts: [
                                Raw {
                                    content: "dbus-broker",
                                    position: (5, 12),
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "version",
                                    position: (6, 3),
                                },
                            ],
                        },
                        String {
                            parts: [
                                Raw {
                                    content: "29",
                                    position: (6, 14),
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "src",
                                    position: (8, 3),
                                },
                            ],
                        },
                        FunctionApplication {
                            function: Variable {
                                identifier: "fetchFromGitHub",
                                position: (8, 9),
                            },
                            arguments: [
                                Map {
                                    bindings: [
                                        KeyValue(
                                            AttributePath {
                                                attributes: [
                                                    Raw {
                                                        content: "owner",
                                                        position: (9, 5),
                                                    },
                                                ],
                                            },
                                            String {
                                                parts: [
                                                    Raw {
                                                        content: "bus1",
                                                        position: (9, 15),
                                                    },
                                                ],
                                            },
                                        ),
                                        KeyValue(
                                            AttributePath {
                                                attributes: [
                                                    Raw {
                                                        content: "repo",
                                                        position: (10, 5),
                                                    },
                                                ],
                                            },
                                            String {
                                                parts: [
                                                    Raw {
                                                        content: "dbus-broker",
                                                        position: (10, 15),
                                                    },
                                                ],
                                            },
                                        ),
                                        KeyValue(
                                            AttributePath {
                                                attributes: [
                                                    Raw {
                                                        content: "rev",
                                                        position: (11, 5),
                                                    },
                                                ],
                                            },
                                            String {
                                                parts: [
                                                    Raw {
                                                        content: "v",
                                                        position: (11, 15),
                                                    },
                                                    Expression {
                                                        expression: Variable {
                                                            identifier: "version",
                                                            position: (11, 18),
                                                        },
                                                    },
                                                ],
                                            },
                                        ),
                                        KeyValue(
                                            AttributePath {
                                                attributes: [
                                                    Raw {
                                                        content: "sha256",
                                                        position: (12, 5),
                                                    },
                                                ],
                                            },
                                            String {
                                                parts: [
                                                    Raw {
                                                        content: "1abbi8c0mgdqjidlp2wnmy0a88xv173hq88sh5m966c5r1h6alkq",
                                                        position: (12, 15),
                                                    },
                                                ],
                                            },
                                        ),
                                        KeyValue(
                                            AttributePath {
                                                attributes: [
                                                    Raw {
                                                        content: "fetchSubmodules",
                                                        position: (13, 5),
                                                    },
                                                ],
                                            },
                                            Variable {
                                                identifier: "true",
                                                position: (13, 23),
                                            },
                                        ),
                                    ],
                                    recursive: false,
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "nativeBuildInputs",
                                    position: (16, 3),
                                },
                            ],
                        },
                        List {
                            elements: [
                                Variable {
                                    identifier: "docutils",
                                    position: (16, 25),
                                },
                                Variable {
                                    identifier: "meson",
                                    position: (16, 34),
                                },
                                Variable {
                                    identifier: "ninja",
                                    position: (16, 40),
                                },
                                Variable {
                                    identifier: "pkg-config",
                                    position: (16, 46),
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "buildInputs",
                                    position: (18, 3),
                                },
                            ],
                        },
                        List {
                            elements: [
                                Variable {
                                    identifier: "dbus",
                                    position: (18, 19),
                                },
                                Variable {
                                    identifier: "linuxHeaders",
                                    position: (18, 24),
                                },
                                Variable {
                                    identifier: "systemd",
                                    position: (18, 37),
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "mesonFlags",
                                    position: (20, 3),
                                },
                            ],
                        },
                        List {
                            elements: [
                                String {
                                    parts: [
                                        Raw {
                                            content: "-D=system-console-users=gdm,sddm,lightdm",
                                            position: (20, 19),
                                        },
                                    ],
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "PKG_CONFIG_SYSTEMD_SYSTEMDSYSTEMUNITDIR",
                                    position: (22, 3),
                                },
                            ],
                        },
                        String {
                            parts: [
                                Expression {
                                    expression: FunctionApplication {
                                        function: Variable {
                                            identifier: "placeholder",
                                            position: (22, 48),
                                        },
                                        arguments: [
                                            String {
                                                parts: [
                                                    Raw {
                                                        content: "out",
                                                        position: (22, 61),
                                                    },
                                                ],
                                            },
                                        ],
                                    },
                                },
                                Raw {
                                    content: "/lib/systemd/system",
                                    position: (22, 66),
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "PKG_CONFIG_SYSTEMD_SYSTEMDUSERUNITDIR",
                                    position: (23, 3),
                                },
                            ],
                        },
                        String {
                            parts: [
                                Expression {
                                    expression: FunctionApplication {
                                        function: Variable {
                                            identifier: "placeholder",
                                            position: (23, 46),
                                        },
                                        arguments: [
                                            String {
                                                parts: [
                                                    Raw {
                                                        content: "out",
                                                        position: (23, 59),
                                                    },
                                                ],
                                            },
                                        ],
                                    },
                                },
                                Raw {
                                    content: "/lib/systemd/user",
                                    position: (23, 64),
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "PKG_CONFIG_SYSTEMD_CATALOGDIR",
                                    position: (24, 3),
                                },
                            ],
                        },
                        String {
                            parts: [
                                Expression {
                                    expression: FunctionApplication {
                                        function: Variable {
                                            identifier: "placeholder",
                                            position: (24, 38),
                                        },
                                        arguments: [
                                            String {
                                                parts: [
                                                    Raw {
                                                        content: "out",
                                                        position: (24, 51),
                                                    },
                                                ],
                                            },
                                        ],
                                    },
                                },
                                Raw {
                                    content: "/lib/systemd/catalog",
                                    position: (24, 56),
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "postInstall",
                                    position: (26, 3),
                                },
                            ],
                        },
                        String {
                            parts: [
                                Raw {
                                    content: "install -Dm644 $src/README.md $out/share/doc/dbus-broker/README\n\nsed -i $out/lib/systemd/{system,user}/dbus-broker.service \\\n  -e 's,^ExecReload.*busctl,ExecReload=",
                                    position: (27, 1),
                                },
                                Expression {
                                    expression: Variable {
                                        identifier: "systemd",
                                        position: (30, 46),
                                    },
                                },
                                Raw {
                                    content: "/bin/busctl,'\n",
                                    position: (30, 54),
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "doCheck",
                                    position: (33, 3),
                                },
                            ],
                        },
                        Variable {
                            identifier: "true",
                            position: (33, 13),
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "meta",
                                    position: (35, 3),
                                },
                            ],
                        },
                        With {
                            expression: Variable {
                                identifier: "lib",
                                position: (35, 15),
                            },
                            target: Map {
                                bindings: [
                                    KeyValue(
                                        AttributePath {
                                            attributes: [
                                                Raw {
                                                    content: "description",
                                                    position: (36, 5),
                                                },
                                            ],
                                        },
                                        String {
                                            parts: [
                                                Raw {
                                                    content: "Linux D-Bus Message Broker",
                                                    position: (36, 20),
                                                },
                                            ],
                                        },
                                    ),
                                    KeyValue(
                                        AttributePath {
                                            attributes: [
                                                Raw {
                                                    content: "homepage",
                                                    position: (37, 5),
                                                },
                                            ],
                                        },
                                        String {
                                            parts: [
                                                Raw {
                                                    content: "https://github.com/bus1/dbus-broker/wiki",
                                                    position: (37, 20),
                                                },
                                            ],
                                        },
                                    ),
                                    KeyValue(
                                        AttributePath {
                                            attributes: [
                                                Raw {
                                                    content: "license",
                                                    position: (38, 5),
                                                },
                                            ],
                                        },
                                        PropertyAccess {
                                            expression: Variable {
                                                identifier: "licenses",
                                                position: (38, 19),
                                            },
                                            attribute_path: AttributePath {
                                                attributes: [
                                                    Raw {
                                                        content: "asl20",
                                                        position: (38, 28),
                                                    },
                                                ],
                                            },
                                            default: None,
                                        },
                                    ),
                                    KeyValue(
                                        AttributePath {
                                            attributes: [
                                                Raw {
                                                    content: "platforms",
                                                    position: (39, 5),
                                                },
                                            ],
                                        },
                                        PropertyAccess {
                                            expression: Variable {
                                                identifier: "platforms",
                                                position: (39, 19),
                                            },
                                            attribute_path: AttributePath {
                                                attributes: [
                                                    Raw {
                                                        content: "linux",
                                                        position: (39, 29),
                                                    },
                                                ],
                                            },
                                            default: None,
                                        },
                                    ),
                                    KeyValue(
                                        AttributePath {
                                            attributes: [
                                                Raw {
                                                    content: "maintainers",
                                                    position: (40, 5),
                                                },
                                            ],
                                        },
                                        With {
                                            expression: Variable {
                                                identifier: "maintainers",
                                                position: (40, 24),
                                            },
                                            target: List {
                                                elements: [
                                                    Variable {
                                                        identifier: "peterhoeg",
                                                        position: (40, 39),
                                                    },
                                                ],
                                            },
                                        },
                                    ),
                                ],
                                recursive: false,
                            },
                        },
                    ),
                ],
                recursive: true,
            },
        ],
    },
}