nixpkgs/doc/languages-frameworks/astal.section.md
2025-02-04 15:06:56 +01:00

839 B

Astal

Astal is a collection of building blocks for creating custom desktop shells.

Bundling

Bundling Astal application is done using ags tool, you can use it like this:

ags.bundle {
  pname = "hyprpanel";
  version = "1.0.0";

  src = fetchFromGitHub { ... };

  # change your entry file (default is `app.ts`)
  entry = "app.ts";

  dependencies = [
    # list here astal modules, that your package depends on
    # `astal3`, `astal4` and `astal.io` are automatically included
    astal.apps
    astal.battery
    astal.bluetooth

    # you can also list here other runtime dependencies
    hypridle
    hyprpicker
    hyprsunset
  ];

  # GTK 4 support is opt-in
  enableGtk4 = true;

  meta = { ... };
}

You can also pass all other arguments that are supported by stdenv.mkDerivation.