80 lines
1.5 KiB
Nix
80 lines
1.5 KiB
Nix
{
|
|
lib,
|
|
buildNpmPackage,
|
|
fetchFromGitHub,
|
|
meson,
|
|
ninja,
|
|
pkg-config,
|
|
gobject-introspection,
|
|
gjs,
|
|
glib-networking,
|
|
gnome,
|
|
gtk-layer-shell,
|
|
libpulseaudio,
|
|
libsoup_3,
|
|
networkmanager,
|
|
upower,
|
|
typescript,
|
|
wrapGAppsHook3,
|
|
linux-pam,
|
|
nix-update-script,
|
|
}:
|
|
|
|
buildNpmPackage rec {
|
|
pname = "ags";
|
|
version = "1.8.2";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "Aylur";
|
|
repo = "ags";
|
|
rev = "v${version}";
|
|
hash = "sha256-ebnkUaee/pnfmw1KmOZj+MP1g5wA+8BT/TPKmn4Dkwc=";
|
|
fetchSubmodules = true;
|
|
};
|
|
|
|
npmDepsHash = "sha256-ucWdADdMqAdLXQYKGOXHNRNM9bhjKX4vkMcQ8q/GZ20=";
|
|
|
|
mesonFlags = [ (lib.mesonBool "build_types" true) ];
|
|
|
|
nativeBuildInputs = [
|
|
meson
|
|
ninja
|
|
pkg-config
|
|
gjs
|
|
gobject-introspection
|
|
typescript
|
|
wrapGAppsHook3
|
|
];
|
|
|
|
# Most of the build inputs here are basically needed for their typelibs.
|
|
buildInputs = [
|
|
gjs
|
|
glib-networking
|
|
gnome.gnome-bluetooth
|
|
gtk-layer-shell
|
|
libpulseaudio
|
|
libsoup_3
|
|
linux-pam
|
|
networkmanager
|
|
upower
|
|
];
|
|
|
|
postPatch = ''
|
|
chmod u+x ./post_install.sh && patchShebangs ./post_install.sh
|
|
'';
|
|
|
|
passthru.updateScript = nix-update-script {};
|
|
|
|
meta = {
|
|
homepage = "https://github.com/Aylur/ags";
|
|
description = "A EWW-inspired widget system as a GJS library";
|
|
changelog = "https://github.com/Aylur/ags/releases/tag/v${version}";
|
|
license = lib.licenses.gpl3Plus;
|
|
maintainers = with lib.maintainers; [
|
|
foo-dogsquared
|
|
johnrtitor
|
|
];
|
|
mainProgram = "ags";
|
|
platforms = lib.platforms.linux;
|
|
};
|
|
}
|