Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ stdenv 2, lib 3, fetchurl 4, meson 5, ninja 6, pkg-config 7, gobject-introspection 8, vala 9, gi-docgen 10, glib 11, gtk4 12, libadwaita 13, gnome 14}: 15 16stdenv.mkDerivation rec { 17 pname = "libpanel"; 18 version = "1.6.0"; 19 20 outputs = [ "out" "dev" "devdoc" ]; 21 outputBin = "dev"; 22 23 src = fetchurl { 24 url = "mirror://gnome/sources/libpanel/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; 25 hash = "sha256-t3NJSjxpMANFzY4nAnRI0RiRgwJswTeAL4hkF8bqMLY="; 26 }; 27 28 nativeBuildInputs = [ 29 meson 30 ninja 31 pkg-config 32 gobject-introspection 33 vala 34 gi-docgen 35 ]; 36 37 buildInputs = [ 38 glib 39 gtk4 40 libadwaita 41 ]; 42 43 mesonFlags = [ 44 "-Dinstall-examples=true" 45 ]; 46 47 postFixup = '' 48 # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. 49 moveToOutput "share/doc" "$devdoc" 50 ''; 51 52 passthru = { 53 updateScript = gnome.updateScript { 54 packageName = pname; 55 }; 56 }; 57 58 meta = with lib; { 59 description = "Dock/panel library for GTK 4"; 60 mainProgram = "libpanel-example"; 61 homepage = "https://gitlab.gnome.org/GNOME/libpanel"; 62 license = licenses.lgpl3Plus; 63 maintainers = teams.gnome.members; 64 platforms = platforms.unix; 65 }; 66}