Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at devShellTools-shell 88 lines 1.6 kB view raw
1{ 2 stdenv, 3 lib, 4 fetchFromGitHub, 5 meson, 6 ninja, 7 pkg-config, 8 sassc, 9 vala, 10 wrapGAppsHook4, 11 appstream, 12 dbus, 13 flatpak, 14 glib, 15 granite7, 16 gtk4, 17 json-glib, 18 libadwaita, 19 libgee, 20 libportal-gtk4, 21 libsoup_3, 22 libxml2, 23 polkit, 24 nix-update-script, 25}: 26 27stdenv.mkDerivation rec { 28 pname = "appcenter"; 29 version = "8.2.0"; 30 31 src = fetchFromGitHub { 32 owner = "elementary"; 33 repo = pname; 34 rev = version; 35 hash = "sha256-dginzwQrzcgnVdRO54cGPVh6+yVx0zLsFeeAVhxWFnE="; 36 }; 37 38 nativeBuildInputs = [ 39 meson 40 ninja 41 pkg-config 42 sassc 43 vala 44 wrapGAppsHook4 45 ]; 46 47 buildInputs = [ 48 appstream 49 dbus 50 flatpak 51 glib 52 granite7 53 gtk4 54 json-glib 55 libadwaita 56 libgee 57 libportal-gtk4 58 libsoup_3 59 libxml2 60 polkit 61 ]; 62 63 mesonFlags = [ 64 "-Dpayments=false" 65 "-Dcurated=false" 66 ]; 67 68 postPatch = '' 69 # Since we do not build libxml2 with legacy support, 70 # we cannot use compressed appstream metadata. 71 # https://gitlab.gnome.org/GNOME/libxml2/-/commit/f7f14537727bf6845d0eea08cd1fdc30accc2a53 72 substituteInPlace src/Core/FlatpakBackend.vala \ 73 --replace-fail ".xml.gz" ".xml" 74 ''; 75 76 passthru = { 77 updateScript = nix-update-script { }; 78 }; 79 80 meta = with lib; { 81 homepage = "https://github.com/elementary/appcenter"; 82 description = "Open, pay-what-you-want app store for indie developers, designed for elementary OS"; 83 license = licenses.gpl3Plus; 84 platforms = platforms.linux; 85 teams = [ teams.pantheon ]; 86 mainProgram = "io.elementary.appcenter"; 87 }; 88}